Welcome,
Guest
.
Please
login
or
register
.
Did you miss your
activation email
?
News:
Convert
Wordpress to Elxis
with
Elxis importer
!
Home
Help
Login
Register
Elxis CMS Forum
»
Ελληνικό Forum
»
Γενικά Θέματα για το Elxis CMS
(Moderators:
CREATIVE Options
,
akalant
) »
Migration from mambo/joomla to elxis
« previous
next »
Print
Pages: [
1
]
Author
Topic: Migration from mambo/joomla to elxis (Read 6249 times)
NewAge
Jr. Member
Posts: 57
Migration from mambo/joomla to elxis
«
on:
November 16, 2006, 10:52:47 »
Υπάρχει κάποιος τρόπος να γίνει migration μια εφαρμογή που είναι φτιαγμένη στο joomla στο elxis;
Πόσο ταιριαζουν οι βάσεις;
Με κάποιο sql comparer;
Logged
datahell
Elxis Team
Hero Member
Posts: 10356
Re: Migration from mambo/joomla to elxis
«
Reply #1 on:
November 16, 2006, 12:11:02 »
Όταν λες εφαρμογή εννοείς κάποιο component, module, mambot φαντάζομαι. Βεβαίως και μπορεί να γίνει, το έχουμε κάνει πολλές φορές μετατρέποντας μη-συμβατά με το elxis component του mambo/joomla σε συμβατά για το elxis. Μερικές φορές μπαίνουμε και στον πειρασμό να τα αλλάξουμε και λίγο προσθέτοντάς τους δυνατότητες που υπάρχουν σε όλες τις άλλες εφαρμογές του elxis (πχ το σύστημα πολυγλωσσίας) και δεν υποάρχουν στα αυθεντικά αφού δεν υποστηρίζονται αυτές οι λειτουργίες από τα mambo/joomla.
Γενικά για την συμβατότητα θα πρέπει να προσέξεις τα ακόλουθα:
Τα queries να είναι συμβατά με ADODB και να μην περιέχουν functions της mysql. Σε αντίθετη περίπτωση το component θα τρέχει μόνο σε Mysql. αν δεν σε ενοχλεί αυτό, δεν υπάρχει πρόβλημα. Βέβαια οι functions της mysql ίσως προκαλούν πρόβλημα στο ADODB οπότε καλό είναι να κάνουμε έναν έλεγχο για σφάλματα. Για να ελέγξουμε μία function για σφάλματα σχετιζόμενα με τη βάση/queries μπορούμε να γράψουμε:
$database->_resource->debug = true;
Μίοα κλασσική αλλαγή στα queries είναι το LIMIT. Στο elxis το LIMIT δεν μπαίνει μέσα στο query αλλά στη function setQuery.
Παράδειγμα
mambo/joomla:
$query = "SELECT * FROM #__USERS LIMIT 5";
$database->setQuery($query);
Elxis:
$query = "SELECT * FROM #__USERS";
$database->setQuery($query, '#__', 5, 0);
Αν θέλουμε να λάβουμε όλα τα αποτελέσματα το γράφουμε όπως στα mambo/joomla:
$database->setQuery($query);
Συνήθως δεν χρειάζεται να γνωρίζεται για το adodb, αφού σαν παρέχουμε όλες τις συναρτήσεις έτοιμες εντός της κλάσης $database (που είναι ίδια με του mambo αλλά εμπεριέχει το ADODB) εκτός αν θέλετε να κάνετε κάτι πολύ εξειδικευμένο. Ωστόσο, για αυτούς που θέλουν να το ψάξουν περισσότερο:
Η σελίδα του ADODB
Το manual του ADODB
Εκτός από τα queries πολύ μεγάλη σημασία έχει το σύστημα πρόσβασης. Τα ψευδο-group visitors, registered, special των mambo/joomla δεν υπάρχουν στο elxis αλλά οι πραγματικές ομάδες.
Τα ονόματα των ομάδων δεν είναι στάνταρ στο elxis αφού μπορείτε να τα μετονομάζετε/διαγράφετε ή να δημιουργείτε νέα. Οπότε είναι ΤΕΡΑΣΤΙΟ ΛΑΘΟΣ να ελέγχετε την πρόσβαση με βάση τον όνομα του group. Στο Elxis χρησιμοποιούμε το $my->allowed και τις function του ACL.
Παράδειγμα
mambo/joomla:
if ($my->gid >0) {....
ή
if ($my->usertype == 'superadministrator') {.....
elxis:
$allowed = explode(',', $my->allowed);
if (in_array($access, $allowed)) { .....
ή
ιδιαίτερο παράδειγμα από το Elxis:
if (($mosConfig_access == '1') || ($mosConfig_access == '3')) {
if ( $my->usertype == '' ) {
$usertype = eUTF::utf8_strtolower($acl->get_group_name('29'));
} else {
$usertype = eUTF::utf8_strtolower($my->usertype);
}
if (!($acl->acl_check( 'action', 'view', 'users', $usertype, 'components', 'all' ) ||
$acl->acl_check( 'action', 'view', 'users', $usertype, 'components', 'com_content' ) ||
$acl->acl_check( 'action', 'view', 'users', $usertype, 'components', 'com_frontpage' ))) {
echo _NOT_AUTH;
exit();
}
}
Για το χειρισμό των αρχείων χρησιμοποιούμε την κλάση
File Manager
που έχει ενσωματωμένη υποστήριξη FTP και είναι απλούστατη στο χειρισμό. Άνοιξε το αρχείο includes/Core/filemanager.class.php για να δεις τις συναρτήσεις της και τη χρήση τους.
Ψάξε σε αυτή την αγορά διάφορα άλλα σχετικά Post που έχω γράψει.
«
Last Edit: November 16, 2006, 12:20:59 by datahell
»
Logged
Elxis Team
|
Is Open Source
|
IOS Rentals | IOS AERO
NewAge
Jr. Member
Posts: 57
Re: Migration from mambo/joomla to elxis
«
Reply #2 on:
November 16, 2006, 12:21:14 »
Πολύ χρήσιμα τα παραδείγματα σου ευχαριστώ πολύ...
Θα χρειαστούν γιατί για την εφαρμογή που ετοιμάζω μάλλον θα χρειαστώ και δικά μου component.
Στη συγκεκριμένη περίπτωση όμως δεν εννοούσα ακριβώς αυτό.
Λάθος δικό μου ίσως η λέξη "εφαρμογή"
Εννοώ ολοκληρωμένο σύστημα. Ένα site δηλαδή που το έχω στήσει σε joomla, έχει ήδη δεδομένα και τώρα θέλω να το ξαναστήσω από την άρχη βασισμένο σε elxis
Αυτό που εννοούσα και θα έπρεπε να πω από την αρχή είναι migration της βάσης ενός συστήματος joomla σε μία βάση ενός συστήματος elxis
p.x αν το prmanager ήταν στημένο με joomla και είχε μπόλικο υλικό μέσα (κείμενο, menus κτλ) πως θα το άλλαζα και θα το έκανα elxis
Ευχαριστώ πολύ και συγγνώμη για την παρεξήγηση...
Logged
datahell
Elxis Team
Hero Member
Posts: 10356
Re: Migration from mambo/joomla to elxis
«
Reply #3 on:
November 16, 2006, 12:37:16 »
Η βάση του Elxis περιέχει αρκετές αλλαγές σε σχέση με τα mambo/joomla αλλά δεν αποτελούν ιδιαίτερο πρόβλημα αφού έχουμε προνοήσει ώστε να δέχεται NULL τιμές στα μη-υποχρεωτικά πεδία (σε αντίθεση με τα mambo/joomla: NOT NULL default ''). Η μετατροπή μπορεί να γίνει αλλά μόνο χειροκίνητα και με πολύ προσοχή.
Τα δεδομένα σου πρέπει να εισαχθούν ως σωστά UTF-8, ούτε καραγκιοζάκια, ούτε iso-8859-7.
Θα πρότεινα να κάνεις την default εγκατάσταση του elxis και μετά να κάνεις export τα δεδομένα από το Joomla. Αν τα queries είναι σε ολοκληρωμένη μορφή (περιέχουν δηλ. και τα ονόματα των πεδίων) κάπου θα πρέπει να κάνεις μετονομασίες και προσθήκες (πχ language). Κόψε αυτό το αρχείο σε κομμάτια και πέρασέ τα πίνακα-πίνακα. Πχ πέρασε πρώτα του τομείς. Μετά τις κατηγορίες και μετά τα αντικείμενα περιεχομένου. Έλεγχε τα ids των rows ώστε να αντιστοιχούν πχ τα άρθρα στις σωστές κατηγορίες. Πρόσθεσε κατόπιν τα μενού και γενικότερα τους υπόλοιπους πίνακες. Αν έχεις χρήστες προτείνω ΝΑ ΜΗΝ τους μεταφέρεις γιατί είναι πολύ δύκολη εργασία και είναι σχεδόν βέβαιο ότι θα κάνεις λάθος. Πρόσθεσέ τους έναν-έναν από τη διαχείριση καλύτερα γραφωντάς τους ξανά εσύ.
Logged
Elxis Team
|
Is Open Source
|
IOS Rentals | IOS AERO
Print
Pages: [
1
]
« previous
next »
Elxis CMS Forum
»
Ελληνικό Forum
»
Γενικά Θέματα για το Elxis CMS
(Moderators:
CREATIVE Options
,
akalant
) »
Migration from mambo/joomla to elxis