Jump to content
Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble

Leaderboard


Popular Content

Showing content with the highest reputation on 01/31/2017 in Posts

  1. 3 points
    Βασικά βήματα για την πολυγλωσσικότητα σε Joomla. Η διαδικασία είναι κοινή για τα 3.x. Προτίμησα το 3.7 για να δούμε και τα νέα features. Παρατηρώ αλλαγή σε εικονίδια. Ανηπομονώ να δω τα νέα features τα οποία μας βοηθάνε ακόμα περισσότερο και στα πολυγλωσσικά. Η διαδικασία πάντως δεν έχει αλλάξει. 1) Κάνουμε login στο διαχειριστηκό μας. 2) Επιλέγουμε Extensions->Languages->Installed 3) Πατάμε το Install Languages 4) Κάνουμε Search για Greek και επιλέγουμε Install 5) Από το Extensions->Languages->Installed διαλέγουμε το default language για το site μας 6) Πηγαίνουμε στο Extensions -> Languages -> Content Languages 7) Publish το Greek 8) Πηγαίνουμε στο Extensions -> Modules. Από το dropdown που γράφει site επιλέγουμε administrator και ενεργοποιούμε το Multilanguage status. (αυτό χρησιμεύει στους admins για να δουν αν όλα τα στάδια για πολυγλωσσικό είναι ΟΚ). στην μπάρα status κατω θα μας εμφανιστεί άλλη μία επιλογή για να βλέπουμε την κατάσταση του πολυγλωσικού μας ιστότοπου) 9) Στο Menus -> Manage -> Add New Menu θα πρέπει να προσθέσουμε 2 μενού (1 για κάθε γλώσσα όπου θα έχουμε τις default/κεντρικές σελίδες κάθε γλώσσας). 10) Μία διαφορά προς το παρών είναι ο Client. (Αν θα θέλουμε ένα μενού να το χρησιμοποιήσουμε σε frontend ή backend). Καλό σκεπτικό διαχωρίζει τα μενού σε front & admin και μας δίνεται επιτέλους η δυνατότητα να φτιάξουμε και custom μενού για το admin. Ας φτιάξουμε ενα "Greek Menu" και ένα "English Menu" με site client. 11) Αφού φτιάξουμε τα μενού πρέπει να φτιάξουμε και 1 στοιχείo μενού για τις αρχικές/default τις κάθε γλώσσας. Έτσι επιλέγουμε Menus->(Greek or English)->Add New Menu Item. 12) Πάμε να φτιάξουμε τα 2 στοιχεία. Γραφουμε Τίτλο (Ηome/Αρχική) , alias (home-en/home-el), επιλέγουμε language (English/Greek), και Default Page Checked. 13) Βλέπουμε πλέον ότι στα μενού έχουμε τα εικονίδια των γλωσσών το οποίο σημαίνει οτι τα συγκεκριμένα μενού περιέχουν τις default σελίδες κάθε γλώσσας. 14) Επόμενο βήμα είναι η ενεργοποίηση Plugins. Έτσι πάμε Extensions->Plugins. Κάνουμε search "lang" και ενεργοποιούμε τα 2 language plugins 15) Προσθήκη module εναλαγής γλώσσας στο frontend. Extensions->Modules. Επιλέγουμε site από το dropdown και New 16) Module Type -> Language Switcher 17) Βάζουμε τίτλο, επιλέγουμε position και είμαστε έτοιμοι. 18) Αν πατήσουμε τώρα στην επιλογή στο status για Multilanguage Status πρέπει να τα δούμε όλα ΟΚ 19) Πάμε να βάλουμε και 2 άρθρα. Content -> Articles -> Add New Article 20) Ας φτιαξουμε το Ελληνικό. Γράφουμε τίτλο (Αρχική), alias (home-el), επιλέγουμε γλώσσα Ελληνικά και πατάμε save (όχι save & close για να σας δείξω κατι νέο). 21) Από τα tabs επιλέγουμε Associations. Βλέπουμε ότι κάτι νέο εμφανίστηκε!!! Γρήγορη επιλογή για create Association. (H επιλογή αυτή υπάρχει και στα μενού και γενικά όπου το component επιτρέπει multilanguage. Απλά δεν το ανέφερα παραπάνω γιατί θεωρώ ότι τα default καλό είναι να γίνονται ξεχωριστά, για οποιοδήποτε άλλο μενού μπορείτε να το δοκιμάσετε.) Πίσω στα δικά μας. Πατάμε Create. 22) Φτιάχνουμε το τίτλο (Home), alias (home-en) γλώσσα είναι προεπιλεγμένη αγγλικά! Save & Close. 23) To association είναι έτοιμο. Save & Close. Το 3.7 μας βάζει νέες δυνατότητες για προσθήκη custom fields σε articles. Έτσι μπορούμε εύκολα να επεκτείνουμε επιτέλους ένα άρθρο χωρίς να είμαστε προγραμματιστές. Ελπίζω να ασχοληθεί κάποιος και να δώσει παραδείγματα. Σας ευχαριστώ!
  2. 1 point
    παιδιά γνωρίζει κανείς πως το Forum Logo (PNG) θα μπορούσε να αναδομηθεί σε vector ? (PSD, AI) ? λογικά πρεπει να ξανασχεδιαστεί από την αρχή νομίζω
  3. 1 point
    To check all SQL databases, use the following commands: Check repair and optimize all SQL databases mysqlcheck --all-databases -r #repair mysqlcheck --all-databases -a #analyze mysqlcheck --all-databases -o #optimize Useful! You can copy this code in a new .sh file and use it as a script, or even automate the optimisation using Cron
  4. 1 point
    ok, αλλά με InnoDB ειναι μια άλλη ιστορία ...! http://www.tocker.ca/2013/05/02/optimize-check-repair-analyze-table-innodb-edition.html OPTIMIZE/CHECK/REPAIR/ANALYZE TABLE InnoDB Edition I find a good interview question for a MySQL DBA position is to ask what the following commands actually do in InnoDB, which has been the default storage engine since MySQL 5.5. From my perspective there is a lot of miss-understanding what still applies. ANALYZE TABLE From the MySQL manual: ANALYZE TABLE analyzes and stores the key distribution for a table. During the analysis, the table is locked with a read lock for InnoDB and MyISAM. What this means is, as part of query optimization MySQL will often have to decide which is the best index if there are multiple candidates, which indexes should be avoided, and what order should tables be joined in. Indexes need to eliminate work - so if for example you were trying to index a column called "Country" in a table full of all people in the USA, then it would be faster to avoid that index. What is also important to note, is that InnoDB will often update these statistics internally without you needing to do so, and that the 'read lock' that the manual describes is kind of weird (shameless plug for a bug I filed back in 2007). Up until 5.6, statistics are in memory only, and very coarse - sampling just a small amount of data. With 5.6, there is now the new Persistent Optimizer Statistics enhancement as well as innodb_stats_auto_recalc is also a variable, and STATS_PERSISTENT, STATS_AUTO_RECALC, and STATS_SAMPLE_PAGES are configurable per table as CREATE TABLE options. It's a shame features like this don't get enough press. I still find myself using ANALYZE TABLE as part of debugging slow queries to confirm that it is not a stale causing a problem, but I don't find any routine operational use case for it. Pro-tip: My explaination above with a "Country" table being filled with all "USA" was a bit of a simplification, since not all optimizer decisions will use these pre-computed statistics. I believe in many cases if we are just talking about a single table (and not trying to determine join order), the optimizer will just ask InnoDB to estimate how many records there are in a given range. I am hoping these sort of behaviors will be more exposed in future MySQL versions. I was very happy to see EXPLAIN for UPDATE and DELETE statements in MySQL 5.6 - and in some cases the new JSON EXPLAIN format seems to show more information. CHECK TABLE CHECK TABLE to me is a MyISAM-ism. As noted in the manual: If CHECK TABLE finds a problem for an InnoDB table, the server shuts down to prevent error propagation. Details of the error will be written to the error log. InnoDB is an ACID compliant (durable) data store, so it doesn't have the same inconsistency situations that MyISAM does. The behavior that the manual is describing here is the same behavior that happens if the server detects corruption through standard operation - which is detected via CRC checksums on each page it stores. As Oli writes check table probably won't work on very large tables (> 200-400 GB), so this command does not really have any practical use for me. REPAIR TABLE From the MySQL manual: REPAIR TABLE only applies to MyISAM, ARCHIVE, and CSV tables. See Section 14.3, "The MyISAM Storage Engine", and Section 14.6, "The ARCHIVE Storage Engine", and Section 14.5, "The CSV Storage Engine" So no use for this either. OPTIMIZE TABLE For InnoDB, the wording in the in the MySQL manual and the error message is very specific on this one: For InnoDB tables, OPTIMIZE TABLE is mapped to ALTER TABLE, which rebuilds the table to update index statistics and free unused space in the clustered index. Beginning with MySQL 5.1.27, this is displayed in the output of OPTIMIZE TABLE when you run it on an InnoDB table, as shown here: mysql> OPTIMIZE TABLE foo; +----------+----------+----------+-------------------------------------------------------------------+ | Table | Op | Msg_type | Msg_text | +----------+----------+----------+-------------------------------------------------------------------+ | test.foo | optimize | note | Table does not support optimize, doing recreate + analyze instead | | test.foo | optimize | status | OK | +----------+----------+----------+-------------------------------------------------------------------+ So what this means, is that internally we create a new table - much like the existing table, then we trickle load the data into it one row at a time. For the clustered index (aka primary key) this may result in a significant space saving if data was inserted out of order, or if there have been modifications which have caused there to be some gaps which have affected fill-factor. It's important to note while explaining this, that some gaps are expected - as InnoDB only fills pages 15/16ths full. For the secondary key indexes they will be trickle loaded one row at a time in the order of the clustered index - which may result in them going straight back to being fragmented anyway. InnoDB's implementation of MVCC does have multiple versions in the secondary indexes however, so it is possible that gaps may be reclaimed here. In MySQL 5.5, InnoDB introduced a feature called "fast index create" that could create these secondary indexes more optimally by presorting the data first and then creating the index. However, this feature is not tied into OPTIMIZE TABLE (yet) in official Oracle MySQL releases. See Bug #57583. Due to it's massively high cost, I find I run OPTIMIZE a lot less than other people (read: almost never), and Baron Schwartz has even has a humorous way of describing it: .. like something you'd hear from a naive Windows user who buys a $99 piece of software to make his PC "boot faster" or "fix his registry" or something.
  5. 1 point
    Today a strange new customer ordered and purchased an unmanaged VPS with 5 IPs from me. Upon further investigation, the user’s order and ID where problematic, as they had been flagged as fraudulent by Maxmind (and by a few hosting companies as well). Since there is nothing wrong with selling a VPS to anyone, but obliging him/them to a specific SLA and AUP, we can use iptables of the node in order to limit any kind of malevolent behavior and spamming, thus securing our remaining IP addresses from being blacklisted by major spam-listing organisations. IPtables can be configured in the following way: iptables -A FORWARD -o eth0 -p tcp -s 10.1.1.1 --dport 25 -m limit --limit 3/minute -m state --state NEW -j ACCEPT iptables -A FORWARD -o eth0 -p tcp -s 10.1.1.1 --dport 25 -m state --state NEW -j LOG iptables -A FORWARD -o eth0 -p tcp -s 10.1.1.1 --dport 25 -m state --state NEW -j DROP # Limit outgoing mail to 5/hour, plus log and drop anyt surplusing mail. This way we won't cause loss of mail (mailserver will queue/spool and retry), but it will prevent spammers causing too much trouble iptables -A FORWARD -p tcp --sport 25 --syn -m hashlimit --hashlimit-mode srcip --hashlimit-limit 5/hour --hashlimit-burst 6 -j ACCEPT iptables -A FORWARD -p tcp --sport 25 --syn -j LOG iptables -A FORWARD -p tcp --sport 25 --syn -j DROP
  6. 1 point
    αυτός ειναι ο Γιάννης που όλοι αγαπούν
  7. 1 point
  8. 1 point
    You're reading Create a Full-Screen Slider Using HTML, CSS3 and jQuery, originally posted on Designmodo. If you've enjoyed this post, be sure to follow on Twitter, Facebook, Google+! Topic: HTML / CSS3 / jQuery Difficulty: Intermediate Estimated Completion Time: 30 minutes In this tutorial, we are going to create a full-screen slider using HTML, CSS3 and jQuery. You can us it for product presentations on your shop website. In this tutorial, we use Google Fonts, specifically Montserrat and Oswald. Make sure to include […] View the full article
  9. 1 point
    Question: I'm using Exim mail server under CentOS Linux. How do I remove all messages from the Exim mail queue using a shell prompt? Answer: Exim is a mail transfer agent (MTA) used on Unix-like operating systems. It aims to be a general and flexible mailer with extensive facilities for checking incoming e-mail. To print a list of the messages in the queue, enter: # exim -bp To remove a message from the queue, enter: # exim -Mrm {message-id} To remove all messages from the queue, enter: # exim -bp | awk '/^ *[0-9]+[mhd]/{print "exim -Mrm " $3}' | bash Dallas Marlow, suggested following clean command: # exim -bp | exiqgrep -i | xargs exim -Mrm
  10. 1 point
    Βιντεάτσι για τους οπτικούς τύπους. Γυρισμένο εξ'ολοκλήρου στα υπερσύγχρονα εργαστήριά μας (σαλοτραπεζαρία)
  11. 1 point
    παιδιά, όποιος ενδιαφέρεται ένα PM για να τον εντάξουμε στην αντίστοιχη κατηγορία
  12. 1 point
    Δεν γνωριζω αν υπαρχει καποιο plugin για αυτο το σκοπο. Αλλα μπορεις να το πετυχεις με λιγο κωδικα. 1) Περνας τις φωτο στον υπολογιστη σου σε εναν φακελο ολες μαζι. Τις μετονομαζεις με ενα μοναδικο κωδικο πχ. foto-gamou-12312-01.jpg, foto-gamou-12312-02.jpg, foto-gamou-12312-03.jpg, κοκ) 2) Τις ανεβαζεις στη σελιδα μαζικα. 3) Η σελιδα ειναι password protected απο το Wordpress και εμφανιζει μια γκαλλερι με τις φωτο σε μικρογραφιες. 4) Το ονομα του αρχειου (που δεν θα περιεχει κενα ή ελληνικους χαρακτηρες) θα ειναι το ID του img (πχ. <img src="..." id="foto-gamou-12312-01" />) 5) Καθε εικονα θα ειναι paired με ενα checkbox. Και η εικονα αλλα και το checkbox θα μοιραζονται το ιδιο id. 6) Ο επισκεπτης κανοντας κλικ σε μια εικονα, θα κανει στην ουσια checked το αντιστοιχο checkbox της εικονας. 7) Στο τελος, θα πατησει submit και θα σου ερθει email με ολους τους κωδικους (id) στο inbox σου (μπορει η φορμα να εχει και ονομα, τηλεφωνο, κλπ για να ξερεις σε πιο πελατη αναφερεται η συγκεκριμενη λιστα φωτογραφιων) 8) Εσυ τοτε βλεπεις την λιστα που διαλεξε ο πελατης και τις επιλεγεις απο τον φακελο στον υπολογιστη σου (αφου οι κωδικοι των checkbox ειναι αντιστοιχοι με των φωτο που εχεις στον υπολογιστη) 9) Κανεις εναν φακελο με τις επιλεγμενες φωτο και τις στελνεις για εκτυπωση. Ειναι λιγο ταλαιπωρια αν ο πελατης επιλεξει παρα πολλες φωτο (300 οπως ειπες) αλλα αυτο το σταδιο νομιζω δε μπορεις να το αποφυγεις. Καπως πρεπει η επιλογη των 300 φωτο να γινει και απο τον πελατη αλλα και απο εσενα. --------------------- Αν θελεις ψαξε για NextGen Gallery + Contact Form 7 μηπως υπαρχει καποια συνεργασια μεταξυ αυτων. Ή Quform ή Gravity Forms, αντι για CF7.
×