Newsgroup: it.comp.www.php
Titolo: modificare parte già caricata..?

Allora ho un problema:
Immaginiamo un sito classico
- testata -menu sx- corpo - footer -
ora io devo trovare il modo di modificare dal corpo un parte del menu di 
sinistra.
č possibile ? si č capito cosa voglio fare ?
vi faccio un esempio:
menu1 <-lo seleziono
carico corpo menu1 ora io vorrei che menu1 (in quanto selezionato)
sia diverso dai restanti io vorrei scrivere del codice che da corpomenu1.php
modifichi menu1(item del menu)
se pň fa ? in pratica per ogni menu1..n ho diversi corpi corpo1..n ed ogni 
corpo ha un pattern diverso da appliccare al menu.
se menu venisse dopo come ordine di caricamento non ci sarebbero problemi ma 
purtroppo non č cosě
qualche idea ? 

 problemi ma purtroppo non h cosl
Vuoi farlo lato client? Se si sei OT (it.comp.lang.javascript etc). Lo
vuoi fare lato server? Allora quando carichi la pagina hai gia' tutte
le informazioni necessarie per "personalizzare" la grafica della pagina.
-- 
I am what I am, I do what I can
Sei un newbie? Leggi questo 
http://url.repository.biz/go/3C
Vuoi supportarmi? 
http://url.repository.biz/go/3E
Do. Or do not. There is not try.


no no lato server... bò forse hai ragione magari mi sto perdendendo in un 
bicchier d'acqua....

 ha scritto nel messaggio
news:ZkFZd.1065287$35.39...@news4.tin.it...

[ot]
Eurekaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa .
Sono contento di far sapere a tutti quelli del NG che ho risolto FInALMENTE!
era da tempo che mi creava problemi sta cosa
in pratica quello che stavo manipolando era cos' strutturato. (lo scrivo
magari può essere uno spunto per qualche altro).
Io sto gestendo un sistema di amministrazione.
Dopo vari studi ecc. sono arrivato ad una struttura che.
Mi permette di aggiungere funzionalità al CMS senza una riga di codice stile
plug-in.
Niente di particolare cmq solo arrivarci elegantemente non era facile.
In pratica io ho una adminPage (una classe che deriva da una page base
interfaccia)
che al suo interno dialoga con una serie di oggetti ed essi  svolgono una
serie di servizi
upload , template-engine, gestione logerrori etc.
Ogni sezione (modulo aggiuntivo) deriva da questa il che concettualmente
corretto è rispetta il criterio is-a (è un)
visto che sempre di pagine stiamo parlando, sembrerà stupido ma rispettare
certe regole anche a livello di nomi
oltre ad essere oneroso come lavoro, aiuta anche, visto che tramite un
"Nome" noi identifichiamo una classe di "cose" in pratica stiamo già
applicando un processo di astrazione..  non mi dilungo...
In definitiva quale era il problema , era trovare un modo che mi permetteva
di attivare / disattivare un menu del cms, visto che
il rapporto fra voce menu /funzionalità non era uno a uno. in pratica una
voce del menu poteva servire a gestire sotto funzionalità di una
detterminata sezione(per intenderci il layout è il classico testata menu a
sinistra,corpo)
Una prima soluzione era quella di passare delle variabili nell'url ma non mi
piaceva perchè?!?, semplice perchè questo legava
il menu al  modulo ed ogni volta che aggiungevo un modulo dovevo
"inventermi" un nuovo id per poter
differenziare quella sezione da un'altra. (quanto incominci ad avere 30/40
menu le cose si complicano)
bando alle ciance e vi dico come ho risolto.
Ho scritto (in realtà la sto scrivendo) un'altra classe (stackMenuItem : il
nome non è tanto bello lo devo rivedere...)
che mi permette di inserire degli item nel menu (la classe menu legge questo
stack e compila il menu)
parliamo subito dei vantaggi. Ora ogni volta che creo un nuovo modulo devo
semplicemente fare un push in questo stack
con nomemodulo.php nomemetodo metodo (il rapporto metodo / itemmenu è 1a1)
come detto sopra ogni classe deriva da adminpage
benissimo ora ogni volta che costruisco la pagina nel costruttore di admin
page viene chiamata una funzione
che recupera il metodo utilizzando al momento e tramite la chiave unica :
nome modulo, nome metodo , estrae l'id dallo stackitem
e imposta il menu attivo (senza che faccia niente) tutto in automatico.
Per oggi è tutto passo e chiudo. Alla prossima.
p.s
è solo un sfogo di felicità...
Buono Lavoro a Tutti.
[/ot]