Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Euphoria è un modular content management system. E' pensato per essere un ambiente di sviluppo per applicazioni basate su Codeigniter
PHP JavaScript HTML CSS ActionScript Perl
tree: a5da10eb05

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
application
docs
euphoria/admin
public
system
.htaccess
.project
README
euphoria_license.txt
index.php
license.txt
robots.txt

README

[ README IN COSTRUZIONE ]

Euphoria è un modular content management system.

E' pensato per essere un ambiente di sviluppo per aplicazioni basate su Codeigniter

Euphoria può essere considerato una distribuzione del framework codeigniter.
All'interno sono preconfigurate alcune patch:

My_Controller concept
HMVC
ROUTES database driven

Rispettando la struttura HMVC i moduli devono essere depositati all'interno della directory /euphoria/euphoria ( verra' prima o poi rinominata in modules )

Ogni modulo è composto da:

directory models/                    oggetti definiti come classi operazioni sul db
directory views/                    html e php VEDI GESTIONE TEMPLATE
            adminmenu.php           facoltativo contiene html per la gestione dei link nella barra laterale in backoffice
directory controller/     
directory assets/                   librerie javascript/css htaccess consente accesso solo qui.
directory docs/                     documentazione , bloccato da htaccess
directory config/                   impostazioni di base.
            database.php            file obbligatorio deve contenere i dati per la connessione al database  ( stesso stile di codeigniter )
            defaultmodule.php       file vuoto indica che il modulo è considerato principale.
  

Euphoria fornisce un modulo Admin con un tema per l'area di backoffice.
template grafico wordpress: http://www.onextrapixel.com/2009/07/01/how-to-design-and-style-your-wordpress-plugin-admin-panel/

modulo admin:
  Si occupa di gestire tutta l'area di amministrazione
  E' composto dai Model:
  auth.php: contiene le query per l'accesso ai dati delle autorizzazioni, login e utenti
  bug.php:  contiene le query per gestione dei bug e malfunzionamenti
  logger.php: contiene le query per la memorizzazioni delle operazioni effettuate dagli utenti.
  Utilizza i seguenti Controller:
  admin.php: gestisce la logica dei permessi degli utenti, dell'area di amministrazione e i menu dell'area di amministrazione 
  bacheca.php: gestisce la logica della bacheca
  bugs.php: gestisce la logica dei malfunzionamenti, le funzioni crea, elimina, modifica
  login.php: gestisce la logica di accesso al sistema
  Utilizza le seguenti view:
  bacheca.php: codice html della pagina bacheca
  bug.php : codice html della pagina  bug
  template.php; struttura principale del sito che collega menu e contenuti
  menu.php: codice html dei menu
  raw.php: codice html che visualizza il contenuto dinamico della sezione destra del pannello di amministrazione

un sistema di autenticazione user/group/module che consente di gestire l'accesso all'area di amministrazione, 
assegnare utenti a gruppi ed assegnare metodi al gruppo.

Il sistema di accesso ai moduli ed ai metodi fa riferimento alla struttura:
www.domain.com/NomeModulo/NomeController/NomeMetodo

per consentire all'utente A di accedere alla medotod NomeMetodo del controller NomeController del modulo NomeModulo
l'utente A deve appartenere ad un gruppo al quale e' associato il modulo NomeModulo ed il controller NomeController

GESTIONE TEMPLATE:
  alla fine di index() viene chiamata una funzione che si chiama $this->loadview(); 
  questa è una funzione di Euphoria che si occupa di chiamare le views: 
  template.php che contiene richiami ben formattati in html a:
  header.php
  menu.php
  raw.php  - che stampa il contenuto della variabile data['content]
  footer.php
  caricare una vista: quando si carica una vista il comportamento di default è la stampa, noi non usiamo quasi mai la stampa, generalmente prendiamo la vista e infiliamo il suo contenuto nella variabile data[content] e poi loadview() si preoccuperà di infilarla nel posto giusto. 
  
  la sintassi da usare è $thid->data['content'] = $this->load->view("nomedelfiledentrocartellaview",$arraydidatidausarenellaview,TRUE );
  se setto ,$arraydidatidausarenellaview['pippo'] = "pluto"; nella view potro' usare echo $pippo che stamperà pluto.



Come creare moduli per il backoffice ( extend Admin_Controller )

Come creare moduli per il frontend  ( extend Public_Controller )


Gestione visualizzazione contenuti in backoffice:
            $data['tables'] =$this->load->view('yourview', $data,TRUE);
            $data['main_content'] = 'raw';
            $this->loadview( $data);

Gestione utente in backoffice:
            array: $this->user_info;
            oggetto user $this->user_info[0];

Getsione alert interni backoffice:
            $this->session->set_flashdata("message", "your alert message");

Gestione log eventi backoffice:
            $this->logger->line("yout text message");




Developing under Euphoria:
hmvc fix form helper validationhttp://www.mahbubblog.com/php/form-validation-callbacks-in-hmvc-in-codeigniter/
Something went wrong with that request. Please try again.