Pagina 1 di 2
Id pagina estensione
Inviato: 12/02/2015, 12:09
da systemcrack
Ciao ragazzi, da una settimana sto lavorando su 2 estensioni: la prima
The Wall che come per la phpbb socialnetwork mod quando si va nel profilo di un utente ti manda alla pagina
app.php/wall/userprofile
, la seconda è
Custom Code che permette di apportare modifiche al forum tramite codice.
Ho utilizzato la seconda per mettere un overhallheader grafico personalizzato a seconda della sezione.
Essendo che nella mod wall si da la possibilità agli utenti di caricare una propria immagine di copertina vorrei fare in mod che il banner personalizzato non fosse visualizzato quando si visita la pagina profilo utente (che è quella in cui si visualizza la copertina degli utenti).
Non riesco a capire come identificare la pagina: se vado sul mio profilo è
forum/app.php/wall/systemcrack
se di un altro
forum/app.php/wall/altro
Re: Id pagina estensione
Inviato: 12/02/2015, 12:45
da systemcrack
Cioè non c'è un id.. potrebbe essere viewprofile... se si come lo inserisco nelle variabili? vieprofile.php
oppure memberlist.php?mode=viewprofile&u
?
Re: R: Id pagina estensione
Inviato: 12/02/2015, 13:52
da brunino
Utilizza nel template la condizione <!-- IF SCRIPT_NAME neq 'app' -->
Inviato dal mio GT-S5360 con Tapatalk 2
Re: Id pagina estensione
Inviato: 12/02/2015, 15:32
da systemcrack
em.. no perchè non è in app che deve essere nascosto l'header ma solamente quando un utente guarda il profilo di un altro utente, perchè questo può avere messo una sua copertina di default e che quindi (stilisticamente parlando) non avrebbe senso.
Io ora ho provato così:
Codice: Seleziona tutto
<!-- headerbar forum styling -->
<style>
.headerbar {
<!-- IF FORUM_ID == '3' || FORUM_ID eq '43' || FORUM_ID eq '76' || FORUM_ID eq '97' || FORUM_ID eq '128' -->
background-image: url("{ROOT_PATH}images/headerimagebar.png");
<!-- ELSE IF FORUM_ID eq '8' || FORUM_ID eq '12' || FORUM_ID eq '13' || FORUM_ID eq '14' || FORUM_ID eq '40' || FORUM_ID eq '130' || FORUM_ID eq '59' || FORUM_ID eq '101' -->
background-image: url("{ROOT_PATH}images/headerimagecommunity.png");
<!-- ELSE IF FORUM_ID eq '6' || FORUM_ID eq '18' || FORUM_ID eq '131' || FORUM_ID eq '22' || FORUM_ID eq '16' || FORUM_ID eq '15' || FORUM_ID eq '19' -->
background-image: url("{ROOT_PATH}images/headerimagetuttophone.png");
<!-- ELSE IF FORUM_ID eq '7' || FORUM_ID eq '46' || FORUM_ID eq '54' || FORUM_ID eq '114' || FORUM_ID eq '91' -->
background-image: url("{ROOT_PATH}images/headerimagepc.png");
<!-- ELSE IF FORUM_ID eq '42' || FORUM_ID eq '60' -->
background-image: url("{ROOT_PATH}images/headerimageweb.png");
<!-- ELSE IF FORUM_ID eq '117' || FORUM_ID eq '118' -->
background-image: url("{ROOT_PATH}images/headerimagemac.png");
<!-- ELSE IF FORUM_ID eq '62' || FORUM_ID eq '39' || FORUM_ID eq '133' || FORUM_ID eq '132' || FORUM_ID eq '134' || FORUM_ID eq '135' || FORUM_ID eq '56' || FORUM_ID eq '96' || FORUM_ID eq '23' || FORUM_ID eq '119' || FORUM_ID eq '88' || FORUM_ID eq '10' || FORUM_ID eq '11' || FORUM_ID eq '136' || FORUM_ID eq '138' || FORUM_ID eq '139' || FORUM_ID eq '55' || FORUM_ID eq '89' || FORUM_ID eq '63' || FORUM_ID eq '64' || FORUM_ID eq '90' -->
background-image: url("{ROOT_PATH}images/headerimagecinemaetv.png");
<!-- ELSE IF FORUM_ID eq '24' || FORUM_ID eq '26' || FORUM_ID eq '27' || FORUM_ID eq '93' || FORUM_ID eq '28' || FORUM_ID eq '94' -->
background-image: url("{ROOT_PATH}images/headerimageconsolle.png");
<!-- ELSE IF FORUM_ID eq '52' || FORUM_ID eq '51' || FORUM_ID eq '58' || FORUM_ID eq '53' || FORUM_ID eq '57' || FORUM_ID eq '100' || FORUM_ID eq '95' -->
background-image: url("{ROOT_PATH}images/headerimageletture.png");
<!-- ELSE IF SCRIPT_NAME == 'viewprofile' -->
background-image: none;
<!-- ELSE -->
background-image: url("{ROOT_PATH}images/headerimage.png"); /* default image */
<!-- ENDIF -->
}
/** remove the logo and increase the height of the headerbar **/
.imageset.site_logo {
background-image: none;
padding-left: 0;
padding-top: 155px;
}
</style>
Specifico:
Codice: Seleziona tutto
<!-- ELSE IF SCRIPT_NAME == 'viewprofile' -->
background-image: none;
Ma niente l'header quando si visita un profilo persiste...
Re: Id pagina estensione
Inviato: 12/02/2015, 16:07
da systemcrack
Per chi volesse testare fisicamente.. potete accedere con utente test e vedere come funziona le 2 modifiche in questione il link al forum è nel profilo e di seguito il login tester
Nik: tester phpbb
Pass: tester
Re: R: Id pagina estensione
Inviato: 12/02/2015, 16:33
da brunino
Scusa se metti di non mostrarlo con script name app, non dovrebbe mostrarlo nel profilo
Edit: nuova idea... Nel ttemplate del profilo che trovi nella cartella dell'estensione wall aggiungi
<style>
.headerbar{
background-image: none !important
}
</style>
Inviato dal mio GT-S5360 con Tapatalk 2
Re: Id pagina estensione
Inviato: 14/02/2015, 12:24
da systemcrack
Effettivamente l'idea non è male... ho trovato il file di cui parli...
wall_user_profile.html
Codice: Seleziona tutto
<div class="wall-main">
<div class="wall-main-profile">
<div class="wall-profile-header">
<!-- IF not S_ON_PHPBB_PROFILE -->
<div class="wall-profile-cover">
<img src="{PROFILE_BANNER_IMG}" ng-hide="cover.link" style="margin-top:calc({PROFILE_BANNER_TOP}px + <[coverHeight]>%); width:100%;" class="coverUpdated" my-cover/>
<img-cropped ng-model="cover.link" src="<[cover.link]>" style="width:100%;" id="<[cover.id]>" user="{U_USER_WALL}" ng-show="cover.link" class="crop_me" >
</img-cropped>
<input type="hidden" id="cover-lang" value="{L_WALL_PROFILE_COVER_DRAG}" />
</div>
<div class="wall-profile-avatar">{S_WALL_PROFILE_AVATAR}</div>
<!-- IF S_OWN_PROFILE -->
<div class="btn-group wall-banner-edit" ng-hide="cover.link" dropdown>
<button data-toggle="dropdown" type="button" class="btn btn-default btn-sm dropdown-toggle">
<i class="glyphicon glyphicon-edit"></i>
</button>
<ul class="dropdown-menu">
<li><a href="{U_PROFILE_AVATAR}">{L_UCP_PROFILE_AVATAR}</a></li>
<li><a href="javascript:void(0);" ng-click="updateCover()">{L_WALL_PROFILE_UPDATE_COVER}</a></li>
</ul>
</div>
<!-- ENDIF -->
<div class="wall-profile-actions">
<!-- IF S_ZEBRA -->
<a href="javascript:void(0);" ng-hide="newAction" class="btn btn-default btn-sm" ng-click="friendAction()">
<i class="glyphicon glyphicon-{WALL_FRIEND_ACT_ICON}"></i>
<span class="wall-profile-actions-text">{WALL_FRIEND_ACTION}</span>
</a>
<a href="javascript:void(0);" ng-show="newAction" class="btn btn-default btn-sm" ng-click="friendAction()">
<i class="glyphicon <[friend_action_icon]>"></i> <[friend_action_text]>
</a>
<!-- ENDIF -->
<!-- IF not S_OWN_PROFILE and U_PM -->
<a href="{U_PM}" class="btn btn-default btn-sm" ng-click="sendPM()">
<i class="glyphicon glyphicon glyphicon-envelope"></i>
<span class="wall-profile-actions-text">{L_SEND_PRIVATE_MESSAGE}</span>
</a>
<!-- ENDIF -->
</div>
<div class="wall-profile-info-section">
<!-- IF S_ONLINE -->
<i class="wall-user-online"></i>
<!-- ENDIF -->
<h1> {WALL_USERNAME}</h1>
</div>
<!-- ENDIF -->
<ul class="wall-profile-tabs nav nav-tabs">
<li ng-class="getTabClass(1)" ng-click="openTabs(1)" ng-model="radioModel" btn-radio="'1'">
<a href="javascript:void(0);"><i class="glyphicon glyphicon-list-alt"></i> <span class="wall-profile-tabs-l">{L_WALL_TAB_MAIN}</span></a>
</li>
<!-- <li ng-class="getTabClass(2)" ng-click="infoTab(2)" ng-model="radioModel" btn-radio="'2'">
<a href="javascript:void(0);"><i class="glyphicon glyphicon-info-sign"></i> <span class="wall-profile-tabs-l">{L_WALL_TAB_INFO} </span></a>
</li>-->
<li ng-class="getTabClass(3)" ng-click="friendsTab(3)" ng-model="radioModel" btn-radio="'3'">
<a href="javascript:void(0);"><i class="glyphicon glyphicon glyphicon-user"></i> <span class="wall-profile-tabs-l">{L_WALL_TAB_FRIENDS} <span class="badge">{WALL_TOTAL_FRIENDS}</span></span></a>
</li>
<li ng-class="getTabClass(4)" ng-click="photosTab(4)" ng-model="radioModel" btn-radio="'4'">
<a href="javascript:void(0);"><i class="glyphicon glyphicon-picture"></i> <span class="wall-profile-tabs-l">{L_WALL_TAB_PHOTOS} <span class="badge">{WALL_TOTAL_PHOTOS}</span></span></a>
</li>
<!-- IF WALL_MUSIC_ENABLED -->
<li ng-class="getTabClass(5)" ng-click="musicTab(5)" ng-model="radioModel" btn-radio="'5'">
<a href="javascript:void(0);"><i class="glyphicon glyphicon-music"></i> <span class="wall-profile-tabs-l">{L_WALL_TAB_MUSIC}</span></a>
</li>
<!-- ENDIF -->
</ul>
</div>
<div class="wall-profile-columnMain tab-content">
<div class="btn-group-tabs" ng-hide="openTab1">
<div class="wall-profile-columnLeft">
<!-- INCLUDE wall_user_about_block.html -->
</div>
<div class="wall-profile-columnCenter">
<!-- INCLUDE wall_status.html -->
</div>
</div>
<div class="btn-group-tabs" ng-show="openTab==2"> </div>
<div class="btn-group-tabs" ng-show="openTab==3">
<!-- INCLUDE wall_user_friends_tab.html -->
</div>
<div class="btn-group-tabs" ng-show="openTab==4">
<!-- INCLUDE wall_user_photos_tab.html -->
</div>
<!-- IF WALL_MUSIC_ENABLED -->
<div class="btn-group-tabs" ng-show="openTab==5">
<!-- INCLUDE wall_user_music_tab.html -->
</div>
<!-- ENDIF -->
</div>
<!-- closing columnCenter -->
</div>
</div>
inserendoci però l'esclusione, non cambia nulla...

Re: R: Id pagina estensione
Inviato: 14/02/2015, 14:02
da brunino
Giustamente... Il file dell'header viene caricato prima, quindi quando lo nascondi é già visualizzato.
L'unica opzione che mi resta é di bloccare tutto app.php mettendo l'esclusione app come script_name
Se proprio non ti va bene, ci sarebbe l'opzione di definire nel controller dell'estensione, relativo al profilo, una variabile template e poi controllare nel template e se é definita nascondi il banner.
Inviato dal mio GT-S5360 con Tapatalk 2
Re: Id pagina estensione
Inviato: 14/02/2015, 17:55
da systemcrack
Scusa Brunino, ma se io ho usato l'estensione per creare l'immagine header perchè dovrei complicarmi la vita e non agire con una semplice condizione nella stessa pagina..? L'unica cosa è sapere a che pagina corrisponde.. io credo che sia quella del profilo, che se non erro è viewprofile... io credo che per non complicarsi la vita si debba lavorare lì..
ovviamente correggimi, anche selvaggiamente se sbaglio

Re: R: Id pagina estensione
Inviato: 14/02/2015, 19:05
da brunino
L'estensione cambia il link del profilo in app.php/wall/nick, quindi non è più viewprofile. Se non vuoi lavorare con php devi nascondere il banner con script_name eq 'app'.
Così la blocchi in tutte le pagine generate da estensioni.
Se invece vuoi fare una cosa precisa devi aprire il controller dell'estensione wall e assegnare una variabile template tipo NO_BANNER (se non sai come si fa te lo spiego), e nel template del banner metti
Codice: Seleziona tutto
<!-- IF NO_BANNER -->
Codice css per nascondere il banner
<!-- ENDIF -->
Inviato dal mio GT-S5360 con Tapatalk 2