Ignore:
Timestamp:
06/22/10 21:32:27 (9 years ago)
Author:
datajulien
Message:

ThemeChanger version 2.1.0.b
bug correction.

Location:
extensions/nbc_ThemeChanger
Files:
3 added
4 edited

Legend:

Unmodified
Added
Removed
  • extensions/nbc_ThemeChanger/Version.txt

    r4083 r6573  
     1Version 2.1.0.b 
     2 
     3[lang=fr] 
     4 
     5Correction du bug sur les noms de menu avec espace. 
     6Correction du bug sur la fonctionnalité "modifiée" (lorsqu'on clique sur "modifier l'association",  la catégorie sélectionnée par défaut est celle à modifier (et non plus la première de la liste)) 
     7 
     8Fichiers impactés : 
     9        main.inc.php 
     10        admin/nbc_ThemeChanger_admin.php 
     11        admin/nbc_ThemeChanger_admin.tpl 
     12[/lang=fr] 
     13[lang=en] 
     14 
     15Correction of the bug on menu name with spaces. 
     16Correction of a regretion bug on the "Modify" functionality , "Modify association" will now correctly fill in the form. 
     17         
     18Files modifies: 
     19        main.inc.php 
     20        admin/nbc_ThemeChanger_admin.php 
     21        admin/nbc_ThemeChanger_admin.tpl 
     22[/lang=en] 
     23 
     24[lang=it]        
     25 
     26Correzione del bug sulla denominazione delle teme con spazio. 
     27Correzione della funzionalità "Modificare". "Modificare l'associazione" riempirà correttamente il formulario. 
     28 
     29File modificati :        
     30        main.inc.php 
     31        admin/nbc_ThemeChanger_admin.php 
     32        admin/nbc_ThemeChanger_admin.tpl 
     33 
     34         
     35[/lang=it] 
     36-------------------------------------------------- 
     37Version 2.1.0.a 
     38 
     39[lang=fr] 
     40Portage plugin on piwigo 2.1.x 
     41[/lang=fr] 
     42[lang=en] 
     43compatibility for piwigo 2.1.x 
     44[/lang=en] 
     45[lang=it] 
     46compatibilità per la versione piwigo 2.1.x 
     47[/lang=it] 
     48-------------------------------------------------- 
    149Version 2.0.1.b 
    250[lang=fr] 
     
    1159        admin/nbc_ThemeChanger_admin.tpl 
    1260[/lang=fr] 
    13 [lang=US] 
     61[lang=en] 
    1462Add of the possibility of applying the theme modification on all the sub-categories of the category selected. 
    1563Add of the full category's name path ("Photo/Nuit" instead of "Nuit" only) 
     
    2169        admin/nbc_ThemeChanger_admin.php 
    2270        admin/nbc_ThemeChanger_admin.tpl 
    23 [/lang=US] 
     71[/lang=en] 
    2472 
    2573[lang=IT] 
  • extensions/nbc_ThemeChanger/admin/nbc_ThemeChanger_admin.php

    r6552 r6573  
    11<?php 
    2 //if (!defined(PHPWG_ROOT_PATH)) die('Hacking attempt!'); 
     2 
     3include_once (NBC_ThemeChanger_PATH.'include/functions_ThemeChanger.inc.php'); 
    34 
    45global $user, $conf, $template; 
     6 
     7$__BEBUG = 0; 
    58 
    69// Check Access and exit when user status is not ok 
     
    811 
    912$me = get_plugin_data($plugin_id); 
    10  
    1113load_language('plugin.lang', NBC_ThemeChanger_PATH); 
    1214$page_ThemeChanger_admin = get_admin_plugin_menu_link(__FILE__); 
    1315 
    1416 
    15  
    16 $cat=array(); 
    17 $categories = array(); 
    18  
    19  
    2017//chargement des catégories 
    21  $query = ' 
    22     SELECT id, name, uppercats, global_rank 
    23     FROM '.CATEGORIES_TABLE.' ; 
    24   '; 
    25    $result = pwg_query($query); 
    26  
    27    while (($cat = mysql_fetch_array($result)) <> null) 
    28    { 
    29    array_push($categories , array("id" => $cat['id'], 
    30                                 "name" => $cat['name'], 
    31                                 "uppercats" =>$cat['uppercats'], 
    32                                 "longName" => get_cat_display_name_cache($cat['uppercats'], null, false), 
    33                                 "global_rank" => $cat['global_rank'], 
    34                                 )); 
    35                 } 
    36  
     18$categories = my_get_pwg_categories(); 
     19                 
    3720 
    3821//chargement des thèmes 
    39 $themes = array(); 
    40 foreach (get_pwg_themes() as $pwg_template) 
    41 { 
    42         $selected = $pwg_template; 
    43         array_push($themes, $selected); 
    44 } 
    45  
     22$themes = my_get_pwg_themes(); 
     23  if ($__BEBUG) 
     24  { 
     25  echo '0 '.$themes[0]['id'] .':'. $themes[0]['name'] .'<br>'; 
     26  echo '0 '.$themes[1]['id'] .':'. $themes[1]['name'] .'<br>'; 
     27  echo '0 '.$themes[2]['id'] .':'. $themes[2]['name'] .'<br>'; 
     28  echo '0 '.$themes[3]['id'] .':'. $themes[3]['name'] .'<br>'; 
     29  } 
    4630 
    4731// Configuration du template 
     
    5135        'F_ACTION' => add_url_params($page_ThemeChanger_admin, array()), 
    5236    'U_ADD_ASSOC' => add_url_params($page_ThemeChanger_admin, array('action' => 'add_assoc')), 
    53     'U_HELP' => PHPWG_ROOT_PATH.'popuphelp.php?page=ThemeChanger_admin', 
     37    'U_HELP' => PHPWG_ROOT_PATH.'popuphelp.php?page=ThemeChanger', 
    5438        'Themes' => $themes, 
    5539        'Categories' => $categories, 
     40        'page_banner' => $conf['page_banner'], 
     41        'gallery_title' => $conf['gallery_title'] 
    5642)); 
    5743 
    58 // Mise a jour de la base de donnee 
     44// Configuration du formulaire 
     45$template->assign('formulaire',array( 
     46    'DESCRIPION' => $lang['add_assoc'], 
     47  )); 
     48   
     49//Recupération options du plugin 
     50$conf_nbc_ThemeChanger = isset($conf['nbc_ThemeChanger']) ? explode(";" , $conf['nbc_ThemeChanger']) : array(); 
     51   
     52   
     53// Mise a jour des paramètres du plugin 
    5954if (isset($_POST['submit']) and !is_adviser()) 
    6055        if ( (isset($_POST['categorychoise']) or isset($_POST['category_id'])) and isset($_POST['template'])) 
    61         { 
    62                 $conf_nbc_ThemeChanger = isset($conf['nbc_ThemeChanger']) ? explode(";" , $conf['nbc_ThemeChanger']) : array(); 
     56        {        
     57                 
    6358                $listcategory = array(); 
    6459                $newconf_nbc_ThemeChanger = ''; 
    65                 //evol $theme = explode("/" , $_POST['template']); 
     60                $add_ok = false; 
     61                //recupération des variables 
    6662                $theme = $_POST['template']; 
    67                 $add_ok = false; 
    68  
    6963                $applysubcategory = isset($_POST['ApplySubCategories']) ? $_POST['ApplySubCategories'] : ''; 
    7064                $thecategory = isset($_POST['categorychoise']) ? $_POST['categorychoise'] : ( isset($_POST['category_id']) ? $_POST['category_id'] : ''); 
     
    136130        } 
    137131 
    138 $conf_nbc_ThemeChanger = isset($conf['nbc_ThemeChanger']) ? explode(";" , $conf['nbc_ThemeChanger']) : array(); 
    139  
    140 $catsused = array(); 
    141 $assoc_ThemeChanger = array(); 
    142  
    143 foreach ($conf_nbc_ThemeChanger as $Theme_Cat) 
    144 { 
    145   $element_ThemeChanger = explode("," , $Theme_Cat); 
    146  
    147   if ($element_ThemeChanger[0] <> '' and $element_ThemeChanger[1] <> '') 
    148   { 
    149     array_push($catsused, $element_ThemeChanger[0]); 
    150  
    151     $query = ' 
    152       SELECT uppercats 
    153         FROM '.CATEGORIES_TABLE.' 
    154         WHERE id = \''.$element_ThemeChanger[0].'\' 
    155       ;'; 
    156  
    157     $result = pwg_query($query); 
    158     $row = mysql_fetch_array($result); 
    159  
    160     $assoc_ThemeChanger[$element_ThemeChanger[0]] = array( 
    161       'CATEGORY_NAME' => get_cat_display_name_cache($row['uppercats'], null, false), 
    162       'TEMPLATE' => $element_ThemeChanger[1], 
    163     ); 
    164   } 
    165 } 
    166132 
    167133//delete an association 
    168134if ( isset($_GET['action']) and ($_GET['action']=='del_assoc') and isset($_GET['id_cat']) and is_numeric($_GET['id_cat']) and !is_adviser() ) 
    169135{ 
    170   $conf_nbc_ThemeChanger = isset($conf['nbc_ThemeChanger']) ? explode(";" , $conf['nbc_ThemeChanger']) : array(); 
    171  
    172   $newconf_nbc_ThemeChanger = ''; 
     136 
     137        $newconf_nbc_ThemeChanger = ''; 
    173138 
    174139  foreach ($conf_nbc_ThemeChanger as $Theme_Cat) 
     
    198163 
    199164//modify an association 
    200 else if ( isset($_GET['action']) and ($_GET['action']=='mod_assoc') and isset($_GET['id_cat']) and is_numeric($_GET['id_cat']) ) 
     165else if ( isset($_GET['action']) and ($_GET['action']=='mod_assoc') and isset($_GET['id_cat']) and is_numeric($_GET['id_cat']) and isset($_GET['id_theme']) ) 
    201166{ 
    202167  $template->assign('formulaire',array( 
    203     'DESCRIPION' => $lang['modify_assoc'].' : '.$assoc_ThemeChanger[$_GET['id_cat']]['CATEGORY_NAME'], 
    204     'NAMETOMODIFY' => $assoc_ThemeChanger[$_GET['id_cat']]['CATEGORY_NAME'], 
     168        'DESCRIPION' => $lang['modify_assoc'].' : '.get_long_categorie_name($_GET['id_cat']), 
     169        'THEMETOMODIFY' => $_GET['id_theme'], 
     170        'NAMETOMODIFY' => get_long_categorie_name($_GET['id_cat']), 
    205171    'IDTOMODIFY' => $_GET['id_cat'], 
    206172  )); 
    207  
    208   $template->assign('formulaire.categoryfield', array( 
    209     'NAME' => $assoc_ThemeChanger[$_GET['id_cat']]['CATEGORY_NAME'], 
    210     'ID' => $_GET['id_cat'], 
    211   )); 
    212  
    213   $blockname = 'formulaire.template_option'; 
    214  
    215   foreach (get_pwg_themes() as $pwg_template) 
    216   { 
    217     if ($assoc_ThemeChanger[$_GET['id_cat']]['TEMPLATE'] == $pwg_template) 
    218     { 
    219       $selected = 'selected="selected"'; 
    220     } 
    221     else 
    222     { 
    223       $selected = ''; 
    224     } 
    225  
    226         $template->assign( 
    227       $blockname, 
    228       array( 
    229         'VALUE'=> $pwg_template, 
    230         'CONTENT' => $pwg_template, 
    231         'SELECTED' => $selected 
    232         )); 
    233   } 
    234173} 
    235174 
     
    237176else if ( isset($_GET['action']) and ($_GET['action']=='add_assoc') ) 
    238177{ 
    239         //$template->assign_var('formulaire',array( 
    240         $template->assign( 
    241                 'formulaire', 
    242                 array('DESCRIPION' => $lang['add_assoc'], 
    243                 ) 
    244         ); 
    245  
    246         $template->assign('formulaire.categorylist', array()); 
    247         $blockname = 'formulaire.categorylist.parent_option'; 
    248  
    249   $template->assign($blockname, array()); 
    250  
    251  
    252   $query = ' 
    253     SELECT id, name, uppercats, global_rank 
    254     FROM '.CATEGORIES_TABLE.' 
    255   '; 
    256   if (!empty($catsused)) 
    257   { 
    258     $query .= ' 
    259       WHERE id NOT IN ('.implode(',', $catsused).') 
    260     '; 
    261   } 
    262   $query .= ' ;'; 
    263   display_select_cat_wrapper($query, array(), $blockname); 
    264  
    265   $blockname = 'formulaire.template_option'; 
    266  
    267   foreach (get_pwg_themes() as $pwg_template) 
    268   { 
    269         $template->assign( 
    270       $blockname, 
    271       array( 
    272         'VALUE'=> $pwg_template, 
    273         'CONTENT' => $pwg_template, 
    274         'SELECTED' => '', 
    275       ) 
    276     ); 
    277   } 
    278 } 
    279  
     178        $template->assign('formulaire', array( 
     179                'DESCRIPION' => $lang['add_assoc'], 
     180        )); 
     181} 
     182 
     183 
     184//needed to relaod the good configuration after delete 
    280185$conf_nbc_ThemeChanger = isset($conf['nbc_ThemeChanger']) ? explode(";" , $conf['nbc_ThemeChanger']) : array(); 
    281186 
    282187$num = 0; 
    283188$catsused = array(); 
    284 $assoc_ThemeChanger = array(); 
    285189$assoc = array(); 
    286190 
     191//reconstruction du tableau d'association. 
    287192foreach ($conf_nbc_ThemeChanger as $Theme_Cat) 
    288193{ 
     
    304209     array_push($assoc , array( 
    305210        'CLASS' => ($num++ % 2 == 1) ? 'row2' : 'row1', 
    306         'CATEGORY_NAME' => get_cat_display_name_cache($row['uppercats'], null, false), 
    307         'CATEGORY_ID'   => $element_ThemeChanger[0], 
    308         'TEMPLATE' => $element_ThemeChanger[1], 
     211        'CATEGORY_NAME' => get_cat_display_name_cache($row['uppercats'], null, false), 
     212        'CATEGORY_ID'   => $element_ThemeChanger[0], 
     213        'TEMPLATE'              => my_get_pwg_themeName($element_ThemeChanger[1]), 
    309214        'U_MODIFY'      => add_url_params($page_ThemeChanger_admin, array( 
    310           'action' => 'mod_assoc', 
    311           'id_cat' => $element_ThemeChanger[0], 
    312           )), 
    313         'U_DELETE'      => add_url_params($page_ThemeChanger_admin, array( 
    314           'action' => 'del_assoc', 
    315           'id_cat' => $element_ThemeChanger[0], 
    316           )),)); 
    317  
    318     $assoc_ThemeChanger[$element_ThemeChanger[0]] = array( 
    319       'CATEGORY_NAME' => get_cat_display_name_cache($row['uppercats'], null, false), 
    320       'TEMPLATE' => $element_ThemeChanger[1], 
    321     ); 
     215                        'action'                => 'mod_assoc', 
     216                        'id_cat'                => $element_ThemeChanger[0], 
     217                        'id_theme'              => $element_ThemeChanger[1], 
     218        )), 
     219        'U_DELETE'              => add_url_params($page_ThemeChanger_admin, array( 
     220                        'action'                => 'del_assoc', 
     221                        'id_cat'                => $element_ThemeChanger[0], 
     222                )), 
     223        )); 
    322224  } 
    323225} 
    324 $template->assign( 
    325       'assoc',$assoc ); 
     226$template->assign('assoc',$assoc ); 
    326227 
    327228 
  • extensions/nbc_ThemeChanger/admin/nbc_ThemeChanger_admin.tpl

    r3954 r6573  
    33</div> 
    44<ul class="categoryActions"> 
    5         <li><a href="{$params.U_HELP}" onclick="popuphelp(this.href); return false;" title="{'HELP'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> 
     5        <!--li><a href="{$params.U_HELP}" onclick="popuphelp(this.href); return false;" title="{'HELP'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li--> 
    66</ul> 
    77 
     
    6262                        <!-- BEGIN template_option --> 
    6363                        {foreach from=$params.Themes item=Themes key=i} 
    64                                 <option value="{$Themes}" {$Themes}>{$Themes}</option> 
     64                        {if ($formulaire.THEMETOMODIFY==$Themes.id)} 
     65                                        <option value="{$Themes.id}" selected ="selected">{$Themes.name}</option> 
     66                                         
     67                                {else} 
     68                                        <option value="{$Themes.id}" {$Themes.id}>{$Themes.name}</option> 
     69                                {/if} 
     70                                 
    6571            {/foreach} 
    6672                        <!-- END template_option --> 
  • extensions/nbc_ThemeChanger/main.inc.php

    r6553 r6573  
    22/* 
    33Plugin Name: NBC ThemeChanger 
    4 Version: 2.1.0.a 
     4Version: 2.1.0.B 
    55Description: Permet d'associer à chaque catégorie virtuel ou physique un thème spécifique. 
    6         ThemeChanger vous permet de spécifier pour chaque catégorie un thème différent. 
     6        ThemeChanger vous permet de spécifier pour chaque catérie un thème différent. 
    77        Pour les catégories non spécifiées, le thème par défaut s'applique. 
    88        ThemeChanger allow you to associate for each category a specific theme.  
     
    1717define('NBC_ThemeChanger_PATH' , PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/'); 
    1818 
    19 //if (!defined(NBC_ThemeChanger_PATH)) die('Hacking attempt - ThemeChanger main.inc.php - NBC_ThemeChanger_PATH!'); 
     19if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!'); 
    2020 
    2121/* Set the administration panel of the plugin */ 
     22 
    2223 
    2324class ThemeChanger 
     
    5758  { 
    5859    $user['theme'] = $category_theme[$page['category']['id']]; 
    59         $template = new Template(PHPWG_ROOT_PATH.'themes', $user['theme'] ); 
     60         
     61        $template = new Template(PHPWG_ROOT_PATH.'themes', $user['theme']); 
    6062  } 
    6163} 
Note: See TracChangeset for help on using the changeset viewer.