Ignore:
Timestamp:
Jun 22, 2010, 9:32:27 PM (14 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.