Odyssey PHP Framework

συζητήσεις για το Ελληνικό Odyssey CMS

Συντονιστές: korgr, WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

Odyssey PHP Framework

Δημοσίευση από fafos » 30 Οκτ 2010 05:53

Kontopatrida.. tokopses to kapistri mou fainetai :lol:

nice job dude.. an kai ta video me "progkyksan" ligo gia to kata poso tha einai eukolh h diaxeirish gia ton aplo xrhsth..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από korgr » 30 Οκτ 2010 10:31

fafos έγραψε:Kontopatrida.. tokopses to kapistri mou fainetai :lol:

nice job dude.. an kai ta video me "progkyksan" ligo gia to kata poso tha einai eukolh h diaxeirish gia ton aplo xrhsth..
χαχα σε ευχαριστώ δάσκαλε! :D
Ο απλός χρήστης (τουτέστιν ο πελάτης) δεν θα βλέπει ούτε το 1/3 αυτών που δείχνω στα video. Θα βλέπει "βάλε προϊόν", "επεξεργάσου ή διέγραψε προϊόν", άντε και κάποιες λίγες ρυθμίσεις να μπορεί να επέμβει. Στην πράξη θέλουν ένα σεμινάριο της μισής ώρας και γίνονται ξεφτέρια :lol:

Μόλις είδα την αντιμετώπιση σου στις πολυγλωσσικές κατηγορίες!
Χάρηκα γιατί αποτέλεσαν για μένα μια επιβεβαίωση για την δομή που ακολούθησα και εγώ στο Odyssey. Σου παραθέτω τους αντίστοιχους πίνακες μιας συγκεκριμένης κατηγορίας και θα καταλάβεις τι εννοώ:

Κώδικας: Επιλογή όλων

CREATE TABLE `api_categories` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `parent` int(11) unsigned NOT NULL DEFAULT '0',
  `target` varchar(255) DEFAULT NULL,
  `sort` int(11) unsigned NOT NULL DEFAULT '0',
  `access` tinyint(3) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;


CREATE TABLE `content_api_categories` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `catID` int(11) unsigned NOT NULL DEFAULT '0',
  `langID` tinyint(3) unsigned NOT NULL DEFAULT '0',
  `title` varchar(255) DEFAULT NULL,
  `link` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;


CREATE TABLE `languages` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `extension` varchar(20) DEFAULT NULL,
  `active` tinyint(3) unsigned NOT NULL DEFAULT '0',
  `defaultlanguage` tinyint(3) unsigned NOT NULL DEFAULT '0',
  `title` varchar(255) DEFAULT NULL,
  `title_translated` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
Ούτε από το πίσω θρανίο να αντέγραφα :lol:

Άβαταρ μέλους
cordis
Administrator, [F|H]ounder, [C|S]EO
Δημοσιεύσεις: 27626
Εγγραφή: 09 Οκτ 1999 03:00
Τοποθεσία: Greece
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από cordis » 30 Οκτ 2010 17:31

migration από άλλα συστήματα, πχ oscommerce υπάρχει/ θα υπάρχει;

το αντίθετο;
Δεν απαντάω σε προσωπικά μηνύματα με ερωτήσεις που καλύπτονται από τις ενότητες του forum. Για ο,τι άλλο είμαι εδώ για εσάς.
- follow me @twitter

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από korgr » 31 Οκτ 2010 00:51

cordis έγραψε:migration από άλλα συστήματα, πχ oscommerce υπάρχει/ θα υπάρχει;

το αντίθετο;
Προς το παρών δεν υπάρχει τέτοια σκέψη γιατί ως γνωστόν δεν είμαι και ο καλύτερος γνώστης αυτών των πλατφορμών.

webresources
Δημοσιεύσεις: 11
Εγγραφή: 19 Οκτ 2010 18:08
Τοποθεσία: Corfu
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από webresources » 01 Νοέμ 2010 09:13

korgr έγραψε: Όσον αφορά τις παρατηρήσεις του φίλτατου συναδέλφου του webresources:
Επειδή μπορεί και να είμαι λίγο αδιάβαστος σχετικά με τα Zend και CakePHP frameworks, θα ήθελα να μάθω αν παρέχουν GUI μέσω του οποίου να δημιουργούνται οι φόρμες εισαγωγής δεδομένων στους χρόνους που είδες στο video.
Προφανώς και δεν υπάρχει κάποιο Framework που να κάνει κάτι ανάλογο για αυτά τα εργαλεία (Zend, CakePHP), αλλά δεν είναι και δύσκολο από τη μεριά τους να αναπτυχθεί κάτι ανάλογο σε μορφή Plugin και να παρέχει πάλι την ίδια λειτουργικότητα σε εξίσου καλούς χρόνους, αρκεί απλά να δοθεί η ιδέα στις ανάλογες κοινότητες και τότε να δεις το Framework σου να κυκλοφορεί σε μορφή ανοικτού κώδικα με άλλη ονομασία.
korgr έγραψε: Όπως προείπα θα παραδωθεί πλήρες documentation του API. Που ακριβώς δεμεύεται ο developer ώστε να χρειάζεται πρόσβαση στον κώδικα του πυρήνα? Μπορεί να δημιουργήσει οποιαδήποτε επέκταση plug-in κλπ, στηριζόμενος στην δική του φιλοσοφία κάνοντας όπου χρειάζεται χρήση κάποιων εντολών του API για να κάνει πιο γρήγορα τη δουλειά του. Αυτό δεν σημαίνει πως δεν μπορεί να γράψει pure php και να ενσωματώσει το αποτέλεσμα της δουλειάς του στο odyssey.
Πλήρη τεκμηρίωση νομίζω πως παρέχει και η Microsoft για όλα της τα Framework, όμως όπως και να έχει πάντα κάτι σου λείπει και το θέλεις !
korgr έγραψε: Τέλος δεν κατάλαβα τα περί πολυγλωσσικής υποστήριξης. Τι εννοείς μετάφραση? Αυτόματη από το google Translate? Οι εφαρμογές που σέβονται τον εαυτό τους προσφέρουν το περιβάλλον για υποστήριξη πολυγλωσσική. Αυτό σημαίνει να υπάρχει η υποδομή στις φόρμες για να εισάγει ο admin τις μεταφράσεις.
Εκτός αν δεν κατάλαβα τι εννοείς :wink:
Προφανώς και δεν κατάλαβες καλά ;) Σε καμία περίπτωση δεν θα εννοούσα το Google Translate ή κάποιο άλλο ανάλογο εργαλείο.

Στην πρώτη μου απάντηση αναφέρθηκα στο video που είδα. Στο Framework είδα που είχες εγκατεστημένες πολλές γλώσσες και ενεργοποιημένες μόνο την ελληνική και την αγγλική.

Αυτό σημαίνει πως κάθε πεδίο που χρησιμοποιεί κείμενο για τις φόρμες εισαγωγής δεδομένων (τουλάχιστον για τις φόρμες εισαγωγής δεδομένων που θα βλέπει ο πελάτης) θα πρέπει να δέχεται την ελληνική και την αγγλική έκδοση του ιδίου κειμένου.

Η παρατήρηση μου απευθυνόταν στη φόρμα εισαγωγής νέου προϊόντος (ΤΕΣΤ) στην οποία τα μόνα πεδία που βλέπω να μπορούν να δεχτούν ελληνικά και αγγλικά είναι τα πεδία "Τίτλος". Με τα υπόλοιπα πεδία τι γίνετε ? Θα βλέπει για παράδειγμα ο επισκέπτης της σελίδας τον όρο Motherboard και όταν θα μπαίνει να δει το προϊόν θα είναι όλα στα ελληνικά;

Αυτά ίσως να τα έχεις προβλέψει και να μην τα εφάρμοσες κατά λάθος ή να μου ξέφυγε εμένα κάτι.

korgr έγραψε: Το αν κάποιος θα προτιμήσει ένα άλλο framework σίγουρα είναι μέσα στα πλαίσια της επιλογής του. Το θέμα είναι, υπάρχει κάποιο που να παίζει τον ρόλο του Odyssey? Να είναι δηλαδή Admin Panel Creator?
Αν ναι, let your links speak! It's simple as that!
Σε αυτό το ερώτημα έχω ήδη απαντήσει ;) Θα μας πει η κοινότητα του CakePHP και Zend Framework αν μπορούν να το αναπαράγουν και σε πόσο χρόνο έτσι ώστε να σου απαντήσω με link σε ερώτημα σου

Πάντα φιλικά : Web Resources.eu
Εικόνα

webresources
Δημοσιεύσεις: 11
Εγγραφή: 19 Οκτ 2010 18:08
Τοποθεσία: Corfu
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από webresources » 01 Νοέμ 2010 09:32

korgr έγραψε: Παράδειγμα εμφάνισης πλευρικού menu με κατηγορίες προϊόντων:

Κώδικας: Επιλογή όλων

<div id="menu_container">
<?php
$menu = new menu&#40;&#41;;
$menu->displayMenu&#40;'vertical', 'products'&#41;;
?>
</div>
Αυτό το μικρό κομμάτι κώδικα που παρουσιάζεις εδώ, έχει αρχίσει να μου προκαλεί ήδη ερωτήματα του τύπου :

Τι θα γίνει αν εγώ θέλω να έχω ένα μενού μέσα σε <ol></ol> ή <div></div> και όχι σε κάποιο <ul></ul> για παράδειγμα;

Θα μου παρέχει το documentation τις κατάλληλες πληροφορίες για να κάνω overwrite την μέθοδο displayMenu με μια δική μου μέθοδο και κατ επέκταση να δημιουργήσω ένα μενού όπως εγώ το θέλω;

Υ.Γ. : Να σημειωθεί πως όσα γράφω τα γράφω απλά και μόνο για να σε βοηθήσω να δεις κάποια πράγματα που ίσως σου έχουν ξεφύγει, κάτι φυσικά που μπορεί να συμβεί στον καθένα μας δεν έχει να κάνει με το άτομο σου αυτό, και πως κατανοώ το σύνολο της προσπάθειας σου για αν δημιουργήσεις το Framework. Είναι σήγουρα μια επίπονη εργασία που απαιτεί χρόνο και αφοσίωση. Τέλος να ξέρεις πως δεν αντιτίθεμαι στο εγχείρημα σου, κάθε άλλο, καμαρώνω για τις ελληνικές πρωτοτυπίες που διαπρέπουν ή έχουν τη δυνατότητα να διαπρέψουν.

Εγώ από τη μεριά μου σου εύχομαι καλή τύχη :)
Εικόνα

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από korgr » 01 Νοέμ 2010 14:52

webresources έγραψε: Υ.Γ. : Να σημειωθεί πως όσα γράφω τα γράφω απλά και μόνο για να σε βοηθήσω να δεις κάποια πράγματα που ίσως σου έχουν ξεφύγει, κάτι φυσικά που μπορεί να συμβεί στον καθένα μας δεν έχει να κάνει με το άτομο σου αυτό, και πως κατανοώ το σύνολο της προσπάθειας σου για αν δημιουργήσεις το Framework. Είναι σήγουρα μια επίπονη εργασία που απαιτεί χρόνο και αφοσίωση. Τέλος να ξέρεις πως δεν αντιτίθεμαι στο εγχείρημα σου, κάθε άλλο, καμαρώνω για τις ελληνικές πρωτοτυπίες που διαπρέπουν ή έχουν τη δυνατότητα να διαπρέψουν.

Εγώ από τη μεριά μου σου εύχομαι καλή τύχη :)
Όχι μόνο δεν παρεξηγώ τα γραφόμενά σου αλλά σε ευχαριστώ πολύ για την πραγματικά επικοδομητική κριτική! Να 'σαι καλά :)

Στις παρατηρήσεις σου:

Στο πολυγλωσσικό δες ξανά το 3ο video. Θα δεις πως η πολυγλωσσικότητα ορίζεται ξεχωριστά σε κάθε πεδίο που προσθέτουμε σε μια ενότητα. Στο ΤΕΣΤ απλά δεν επέλεξα πολυγλωσσικές τις περιγραφές :)
Για όσα πεδία επιλέγουμε πολυγλωσσική υποστήριξη, θα εμφανίζονται στις φόρμες τα ανάλογα στοιχεία εισαγωγής για όσες γλώσσες είναι ενεργές.

Το ότι ανά πάσα στιγμή μπορεί να αντιγραφεί το framework, είναι πάντα ένας παράγοντας που ισχύει και καλώς ισχύει για να υπάρχει ανταγωνισμός και να βελτιώνονται τα λογισμικά. Εγώ ποντάρω στην ελληνικότητα του συγκεκριμένου και κυρίως στο ότι θα διαθέτω συνεχώς τις βελτιώσεις που θα επέρχονται με το πέρας του χρόνου.
Δεν υποστήριξα πως έχω κάνει το τέλειο και δεν θα βρεθεί κάτι καλύτερο στο μέλλον (ή στο παρόν αν υπάρχει και δεν το έχω βρει)...

Για το θέμα του Ordered vs Unordered List, νομίζω πως αν ένας developer ενδιαφέρεται για μια τέτοια λεπτομέρεια (μην ξεχνάμε πως η πλειοψηφία των js menu απαιτούν Unordered Lists), θα μπορέσει να καλυφθεί από τις δευτερεύουσες παραμέτρους της κλάσσης, ακόμα και αν δεν λάβει ordered list.
Για την προκειμένη περίπτωση το πλήρες documentation αυτής της κλάσσης είναι:
Παράμετροι:
  • menuType (string) [default = 'vertical']
    tableSection (string)
    bulletPath (string) [default = 'mediabank/icons/']
    markup (boolean) [default = false]
    overrideClass (string) [default = null]
Περιγραφή:
Δημιουργεί ένα οριζόντιο ή κάθετο τύπου «suckerfish» menu, ανάλογα με την τιμή της `menuType`, με περιεχόμενο τις επιλογές που περιέχει η ενότητα `tableSection`.
  • menuType = καθορίζει αν το menu θα είναι οριζόντιο ή κάθετο
    tableSection = το όνομα της ενότητας που θα χρησιμοποιηθεί ως πηγή των επιλογών του menu
    bulletPath = η διαδρομή στην οποία θα αναζητηθούν τυχόν εικονίδια για τις αρχικές επιλογές του menu
    markup = καθορίζει αν ο παραγόμενος κώδικας θα επιστραφεί στην οθόνη ή σε array (για την εξαγωγή του unordered list markup)
    overrideClass= καθορίζει αν θα αντικατασταθεί το εξ ορισμού css className του superfish menu, με το όνομα της `overrideClass`
Σύνταξη:
$menu = new menu()
$menu->displayMenu($menuType='vertical', $tableSection='options', $bulletPath='mediabank/icons/', $markup=false, $overrideClass=null)
όπως βλέπεις αν η $markup=true θα επιστραφεί ένα αποτέλεσμα όπως το:

Κώδικας: Επιλογή όλων

<ul id="here_goes_your_id">
   <li rel="1"><a href="javascript&#58;void&#40;0&#41;" target="_self">Κύρια Επιλογή Νο 1</a>
   <ul id="here_goes_your_id">
      <li rel="3"><a href="" target="_self">Υποεπιλογή Νο1</a>
      </li>
      <li rel="4"><a href="" target="_self">Υποεπιλογή Νο2</a>
      </li>
      <li rel="5"><a href="" target="_self">Υποεπιλογή Νο3</a>
      </li>
   </ul>
   </li>
   <li rel="2"><a href="javascript&#58;void&#40;0&#41;" target="_self">Κύρια Επιλογή Νο 2</a>
   <ul id="here_goes_your_id">
      <li rel="6"><a href="" target="_self">Υποεπιλογή Νο1</a>
      </li>
      <li rel="7"><a href="" target="_self">Υποεπιλογή Νο2</a>
      </li>
      <li rel="8"><a href="" target="_self">Υποεπιλογή Νο3</a>
      </li>
   </ul>
   </li>
</ul>
Νομίζω πως για έναν developer είναι πολύ απλό με ένα expression να μετατρέψει τον ανωτέρω κώδικα σε ordered list.

Είμαι στη διάθεσή σου και αν το επιθυμείς μπορώ να σου δώσω πρόσβαση να δουλέψεις στο demo ώστε να σχηματίσεις μια καλύτερη άποψη επί των δυνατοτήτων. Είναι λογικό όμως να υπάρχουν πολλές τέτοιες απορίες μέχρι να δωθεί το API για μελέτη :)

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από korgr » 01 Νοέμ 2010 15:01

O ανωτέρω κώδικας επιστρέφεται σε array με κάθε element να περιέχει και μια γραμμή του κώδικα και το μόνο που έχουμε να κάνουμε είναι ένα array parsing και να οδηγήσουμε το αποτέλεσμα στην έξοδο με ότι φίλτρο θέλουμε (πχ str_replace() κλπ)

webresources
Δημοσιεύσεις: 11
Εγγραφή: 19 Οκτ 2010 18:08
Τοποθεσία: Corfu
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από webresources » 01 Νοέμ 2010 15:35

Σου εύχομαι να σου πάει τόσο καλά όσο θέλεις ! :) Απλά όπως και να έχει νομίζω πως αν το ανοίξεις και μπουν μέσα και άλλοι developers θα δεις άμεση ανταπόκριση από πολύ κόσμο γιατί όπως σου έχω ξανά πει είναι πολύ καλή ιδέα.

Το να ανοίξεις τον πυρήνα του και να τον δουν όλοι δεν είναι και τόσο κακό. Δες τρανά παραδείγματα ανοικτού κώδικα που είναι και τι κάνουν : Joomla, Wordpress, Linux, MySQL, Apache, ............

Και πάλι καλή τύχη και μακάρι κάποια στιγμή να σε δούμε σε πρωτοσέλιδα για την επιτυχία σου ;)
Εικόνα

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από korgr » 01 Νοέμ 2010 16:07

Να 'σαι καλά
έχεις pm :wink:

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από korgr » 15 Νοέμ 2010 10:33

Update
Η επίσημη ιστοσελίδα του Odyssey Framework με το μέχρι στιγμής διαμορφωμένο API Documentation και τις τελικές βίντεο παρουσιάσεις:

www.korinthorama.gr/new/odyssey/

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Odyssey PHP Framework

Δημοσίευση από korgr » 02 Δεκ 2011 21:01

Μετά από ένα χρόνο και ενώ το Odyssey εξελίσσεται σε CMS (90% ready) θέλω να παραθέσω το entry point (index.php)

Κώδικας: Επιλογή όλων

<?php 
require_once&#40;"dll.php"&#41;;
$variables->getSafeVars&#40;array&#40;'section', 'view'&#41;&#41;;
$document = new document&#40;$section, $view&#41;;
?>
<!DOCTYPE HTML>
<html>
<head>
<?php 
$document->getMeta&#40;&#41;;
$document->getStyles&#40;&#41;;
$document->getJsFiles&#40;&#41;;
$document->getJsReady&#40;&#41;;
$document->includeModules&#40;"plugins"&#41;;
?>
</head>
<body>
<?php
$document->getNoScript&#40;&#41;;
$document->getContent&#40;&#41;;
$document->getBodyJs&#40;&#41;;
?>
</body>
</html>
Παίζει να είναι από τα πιο συμμαζεμένα που υπάρχουν?
Και το κυριότερο να μην χρειάζεται καν η παράθεση comments...
Τουλάχιστον εγώ έχω μείνει πολύ ευχαριστημένος :)

Επιγραμματικά τα κυριότερα νέα features:
  • Νέο Admin UI interface με έμφαση την φιλικότητα στην πλοήγηση. Το menu επιλογών είναι πλέον τύπου accordion ώστε να μας συνοδεύουν όλες οι γειτονικές επιλογές ανοικτές σε όποια ενότητα και αν βρισκόμαστε. Παράλληλα μπορούμε να αποφύγουμε την πλοήγηση μέσω αυτού του menu, κάνοντας χρήση μιας εξειδικευμένης μηχανής αναζήτησης των επιλογών του menu ή μέσω ενός βοηθητικού menu που καταγράφει τις κινήσεις μας στον πίνακα διαχείρισης. Περισσότερα στο http://www.youtube.com/watch?v=ASTqU9KO3gg

    Δυνατότητα on the fly προσθήκης επιλογών στα Select Menus (και Select Lists) στις φόρμες καταχώρησης δεδομένων. Στην ουσία ενσωματώθηκε στον πυρήνα η δυνατότητα που δημιουργήθηκε ειδικά για το MyManagement

    Δυνατότητα on-off των εγγραφών με ένα κλικ από το listing

    Backup-Restore σε δομές και δεδομένα

    MVC αρχιτεκτονική για την εύκολη διαχείριση templates & modules

    Επαναστατική εφαρμογή των modules που εκτός από την βασική τους λειτουργία μπορούν να λειτουργούν και ως plugins ή ακόμα και ως content επτρέποντας την ένθεση (module includes modules). Επίσης δίνεται η δυνατότητα για επεξεργασία αυτών των modules από το front-end!

    Βελτιωμένο αυτόματο σύστημα διαχείρισης css των menus της σελίδας.

    Και τελευταία άφησα την δυνατότητα αυτοματοποιημένης διαχείρισης εικόνων sprites, τόσο ως menu icons όσο και σε ελεύθερη χρήση μέσα στο περιβάλλον των modules! Περισσότερα στο http://www.youtube.com/watch?v=Dd0wjaKSrIM

Απάντηση

Επιστροφή στο “Odyssey CMS”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 2 επισκέπτες