Changeset 4058


Ignore:
Timestamp:
Oct 19, 2009, 3:07:22 AM (11 years ago)
Author:
LucMorizur
Message:

[Event Cats] Add entry modification ability, as finally it is required for outdating

Location:
extensions/event_cats
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • extensions/event_cats/admin/autolog_new.inc.php

    r4048 r4058  
    8080
    8181$ec_default_action = 'create';
     82$ec_default_entry  = '-1';
    8283$ec_def_auto_code_dg_nb = read_ec_conf('auto_code_dg_nb');
    8384
     
    8687*****************************************************************************/
    8788
    88 if (isset($_POST['ec_act1']) and $_POST['ec_act1'] == 'duplicate_entry') {
    89   if (isset($_POST['ec_entry_sel'])) {
    90     if (array_key_exists($_POST['ec_entry_sel'], $ec_lists['ec_table']))
    91      $ec_default_action = $_POST['ec_entry_sel'];
    92     else
    93      $page['errors'][] = 'Tentative de duplication d\'une entrée inexistante';
     89if (isset($_POST['ec_act1']) and isset($_POST['ec_entry_sel'])) {
     90  if (
     91    array_key_exists($_POST['ec_entry_sel'], $ec_lists['ec_table']) or
     92    $_POST['ec_entry_sel'] == '-1'
     93  ) {
     94    switch ($_POST['ec_act1']) {
     95      case 'duplicate_entry_ask':
     96      case 'modify_entry_ask':
     97      case 'disable':
     98      case 'create':
     99        $ec_default_action = $_POST['ec_act1'];
     100        $ec_default_entry = $_POST['ec_entry_sel'];
     101      break;
     102      default:
     103        $page['errors'][] = 'Demande inconnue : $_POST[\'ec_act1\'] = '.$_POST['ec_act1'];
     104    }
    94105  }
    95   else {
    96     $page['errors'][] = 'Tentative de duplication sans entrée';
    97   }
     106  else
     107   $page['errors'][] = 'Tentative d\'utilisation d\'une entrée inexistante ($_POST[\'ec_entry_sel\'] = '.$_POST['ec_entry_sel'].')';
    98108}
    99109
     
    108118  (count($ec_lists['user_ids']) == 0) ? 'style = "display:none;"' : ''
    109119);
     120$template->assign('ec_is_creation',
     121  ($ec_default_action == 'duplicate_entry_ask' or
     122   $ec_default_action == 'create')
     123);
    110124$template->assign('ec_default_action',$ec_default_action);
     125$template->assign('ec_default_entry',$ec_default_entry);
    111126$template->assign('ec_def_auto_code_dg_nb',$ec_def_auto_code_dg_nb);
    112127
  • extensions/event_cats/admin/evntcats_admin.php

    r4048 r4058  
    8181  WHERE `code` IS NOT NULL
    8282'))))) ? 'autolog_new' : 'autolog_entries';
     83
     84// Rajouter un test pour que si $ec_exist_entries est faux, mais qu'il y a
     85// quand même des entrées dans la table (donc pour gérer la duplication de
     86// compte), l'onglet sélectionné par défaut soit celui de la gestion de la
     87// duplication de compte.
     88
    8389if (isset($_POST['ec_act1'])) {
    84   if (
    85     $_POST['ec_act1'] == 'autolog_new' or
    86     $_POST['ec_act1'] == 'duplicate_entry'
     90  if (                                          /*
     91    $_POST['ec_act1'] == 'autolog_new' or  // ? */
     92    $_POST['ec_act1'] == 'duplicate_entry_ask' or
     93    $_POST['ec_act1'] == 'disable' or
     94    $_POST['ec_act1'] == 'modify_entry_ask'
    8795  )
    8896   $page['tab'] = 'autolog_new';
    8997  elseif ($_POST['ec_act1'] == 'create')
    9098   $page['tab'] = (ec_create_entry_OK()) ? 'autolog_entries' : 'autolog_new';
    91   elseif (is_numeric($_POST['ec_act1'])) // Entry duplication : $_POST['ec_act1'] is entry #
    92    $page['tab'] = (ec_duplicate_entry_OK()) ? 'autolog_entries' : 'autolog_new';
     99  elseif (isset($_POST['ec_entry_sel']) and is_numeric($_POST['ec_entry_sel'])) {
     100    if ($_POST['ec_act1'] == 'duplicate_entry_submit') $page['tab'] =
     101     (ec_duplicate_entry_OK()) ? 'autolog_entries' : 'autolog_new';
     102    elseif ($_POST['ec_act1'] == 'modify_entry_submit') $page['tab'] =
     103     (ec_modify_entry_OK()) ? 'autolog_entries' : 'autolog_new';
     104  }
    93105}
    94106else if (isset($_GET['tab'])) switch ($_GET['tab']) {
  • extensions/event_cats/admin/template/autolog_entries.js

    r4011 r4058  
    11/* Event Cats Javascript functions LucMorizur June - ... 2009 */
     2
     3/*
     4déplacer les liens de test et de suppression en-dessous de la table (en-dessous du champ "URL"), éventuellement en les accompagnant des
     5icônes ; et y rajouter le lien de modification (envoyer $_POST{['ec_act1'] = 'modify_entry_ask' et $_POST{['ec_entry_sel'] = <# entré concernée>)
     6*/
    27
    38var ec_checked_line = 0;
     
    4045function ec_duplicate_entry(ec_id) {
    4146  ec_mark_line(ec_id);
    42   document.getElementById('ec_act1_id').value = 'duplicate_entry';
     47  document.getElementById('ec_act1_id').value = 'duplicate_entry_ask';
    4348  document.forms['ec_view_codes'].submit();
    4449}
  • extensions/event_cats/admin/template/autolog_entries.tpl

    r4048 r4058  
    6060             alt = "{'ec_test_tooltip'|@translate}" title = "{'ec_test_tooltip'|@translate}" />
    6161          </a>
    62           <a href = "javascript:void();" onclick = "ec_check_d({$code_line.id}, 'delete');">
     62          <a href = "javascript:void(0);" onclick = "ec_check_d({$code_line.id}, 'delete');">
    6363            <img src = "{$EVNTCATS_URLS.ROOT}icon/delete.png" class = "button"
    6464             alt = "{'ec_url_delete'|@translate}" title = "{'ec_url_delete'|@translate}" />
    6565          </a>
    6666          {if $code_line.log_OK}
    67             <a href = "javascript:void();" onclick = "ec_check_d({$code_line.id}, 'disable');">
     67            <a href = "javascript:void(0);" onclick = "ec_check_d({$code_line.id}, 'disable');">
    6868              <img src = "{$EVNTCATS_URLS.ROOT}icon/disable.png" class = "button"
    6969               alt = "{'ec_url_disable'|@translate}" title = "{'ec_url_disable'|@translate}" />
    7070            </a>
    7171            {if $code_line.Forced == 'true'}
    72               <a href = "javascript:void()" title = "{'ec_url_forced'|@translate}" onclick = "ec_toggle_forced({$code_line.id}, false);">
     72              <a href = "javascript:void(0);" title = "{'ec_url_forced'|@translate}" onclick = "ec_toggle_forced({$code_line.id}, false);">
    7373                <img class = "button" src = "{$EVNTCATS_URLS.ROOT}icon/forced.png"
    7474                 {if $code_line.f_pb} style = "border:solid medium red;" {/if}
     
    7777              </a>
    7878            {else}
    79               <a href = "javascript:void()" title = "{'ec_url_nforced'|@translate}" onclick = "ec_toggle_forced({$code_line.id}, true);">
     79              <a href = "javascript:void(0);" title = "{'ec_url_nforced'|@translate}" onclick = "ec_toggle_forced({$code_line.id}, true);">
    8080                <img class = "button" src = "{$EVNTCATS_URLS.ROOT}icon/nforced.png"
    8181                 alt = "{'ec_url_nforced'|@translate}" title = "{'ec_url_nforced'|@translate}"/>
    8282              </a>
    8383              {if !$code_line.f_pb}
    84                 <a href = "javascript:void()" title = "{'ec_url_duplicate'|@translate}" onclick = "ec_duplicate_entry({$code_line.id});">
     84                <a href = "javascript:void(0);" title = "{'ec_url_duplicate'|@translate}" onclick = "ec_duplicate_entry({$code_line.id});">
    8585                  <img src = "{$EVNTCATS_URLS.ROOT}icon/duplicate.png" class = "button" style = "border:none"
    8686                   alt = "{'ec_url_duplicate'|@translate}" title = "{'ec_url_duplicate'|@translate}" />
  • extensions/event_cats/admin/template/autolog_new.js

    r4048 r4058  
    11/* Event Cats Javascript functions LucMorizur June - ... 2009 */
     2
     3/*
     4Attention le résultat du dépôt du formulaire ne peut plus être "create" ou "<numéro de l'entrée dupliquée>"
     5car il faut fournir du "create", "duplicate_entry_submit", "modify_entry_submit" avec dans ces deux derniers cas
     6le numéro de l'entrée concernée.
     7De toutes façons il y a aussi le "cas" modification d'entrée à créer.
     8*/
    29
    310var ec_avoid_infinite_loop      = true;
    411var ec_flag1                    = false;
    512var ec_flag2                    = false;
     13var ec_dont_check               = false;
    614var ec_err                      = '';
    715var ec_selected_action          = '';
     
    1422var ec_auto_code_digits_nb      = '';
    1523var ec_default_action           = '';
     24var ec_default_entry            = '';
     25var ec_up_code_lbl_forced_txt   = '';
     26var ec_selected_old_entry       = '-1';
     27var ec_selected_old_code        = '-1';
    1628var ec_selected_old_user        = '-1';
    17 var ec_selected_old_code        = '-1';
    1829var ec_selected_AP              = '-1';
    1930var ec_selected_cat             = '-1';
     
    2233var ec_JS_message               = new Array();
    2334var ec_duplic_codes             = new Array();
     35
     36function ec_check_exist_value(ec_id, ec_val) {
     37  var e = document.getElementById(ec_id);
     38  for (var i = 0; i < e.length; i++) {
     39    if (e.options[i].value == ec_val) return true;
     40  }
     41  return false;
     42}
     43
     44function ec_mark_entry(ec_id) {
     45  var i = 0;
     46  var t = new Array();
     47  var r = /,/g;
     48  document.getElementById('ec_act2_id').value = ec_id;
     49  t = document.getElementById('ec_in_up_entry_list_id').options[
     50   document.getElementById('ec_in_up_entry_list_id').selectedIndex
     51  ].label.split(r);
     52// t[0] : user_id ; t[1] : action ; t[2] : arg1 ; t[3] : arg2 ; t[4] : forced
     53  if (ec_check_exist_value('ec_in_up_usr_list_id', t[0])) {
     54    ec_selected_user = 'ec_sel_user_old';
     55    ec_selected_old_user = t[0];
     56    if (t[2] != '' && t[1].lastIndexOf('ec_ok') != -1) i++;
     57    if (t[3] != '') { i++; i++; }
     58    switch (i) {
     59      case 0: // Home
     60        ec_selected_action = 'ec_input_action_home';
     61      break;
     62      case 1: // Category
     63        ec_selected_action = 'ec_input_action_cat';
     64        ec_selected_cat = t[2];
     65      break;
     66      case 2: // Additionnal Page
     67        ec_selected_action = 'ec_input_action_add_p';
     68        ec_selected_AP = t[3];
     69      break;
     70      case 3: // Image
     71        ec_selected_action = 'ec_input_action_img';
     72        ec_selected_cat = t[2];
     73        ec_selected_img = t[3];
     74      break;
     75    }
     76    document.getElementById('ec_in_up_forced_id').checked =
     77     (t[4] == 'true') ? 'checked' : '';
     78    ec_mark_action(ec_selected_action);
     79  }
     80  else {
     81    ec_selected_user = 'ec_sel_user_none';
     82    document.getElementById('ec_in_up_forced_id').checked = '';
     83    if (ec_check_exist_value('ec_in_up_aps_id', t[3])) {
     84      ec_selected_AP = t[3];
     85      ec_mark_action('ec_input_action_add_p');
     86    }
     87    else {
     88      ec_mark_action('ec_input_action_refused');
     89    }
     90  }
     91}
    2492
    2593function ec_mark_code(ec_id) {
     
    33101    switch (ec_selected_code) {
    34102      case 'ec_sel_code_new':
     103        document.getElementById('ec_act1_id').value = 'create';
    35104        document.getElementById('ec_in_up_code_list_id').value = '-1';
    36105        document.getElementById('ec_in_up_code_id').value = ec_new_code_text;
    37106      break;
    38107      case 'ec_sel_code_old':
     108        document.getElementById('ec_act1_id').value = '????'; // Dépend de ce qui a été demandé au départ
     109        document.getElementById('ec_act2_id').value =
     110         ec_selected_old_code;
    39111        document.getElementById('ec_in_up_code_list_id').value =
    40112         ec_selected_old_code;
     
    66138    document.getElementById(ec_selected_user).checked = 'checked';
    67139    switch (ec_selected_user) {
     140      case 'ec_sel_user_none': // None
     141        ec_selected_action =
     142         (ec_ap_ok && (ec_selected_action != 'ec_input_action_home')) ?
     143         'ec_input_action_add_p' : 'ec_input_action_home';
     144        document.getElementById('ec_in_up_usr_txt_id').value = '';
     145        document.getElementById('ec_in_up_psd_txt_id').value = '';
     146        document.getElementById('ec_in_up_usr_list_id').value = '-1';
     147      break;
    68148      case 'ec_sel_user_new': // New user
    69149        document.getElementById('ec_in_up_usr_txt_id').value =
     
    104184        document.getElementById('ec_in_up_cats_id').value = ec_selected_cat;
    105185        document.getElementById('ec_in_up_imgs_id').value = '';
     186        ec_selected_user = (ec_selected_user == 'ec_sel_user_none') ?
     187         'ec_sel_user_old' : ec_selected_user;
    106188        document.getElementById('ec_in_up_imgs_warn').innerHTML = '';
    107189      break;
     
    110192        document.getElementById('ec_in_up_cats_id').value = ec_selected_cat;
    111193        document.getElementById('ec_in_up_imgs_id').value = ec_selected_img;
     194        ec_selected_user = (ec_selected_user == 'ec_sel_user_none') ?
     195         'ec_sel_user_old' : ec_selected_user;
    112196        ec_check_img_text();
    113197      break;
     
    118202        document.getElementById('ec_in_up_imgs_warn').innerHTML = '';
    119203      break;
     204      case 'ec_input_action_refused': // Access denied
     205        document.getElementById('ec_in_up_aps_id').value = '-1';
     206        document.getElementById('ec_in_up_cats_id').value = '-1';
     207        document.getElementById('ec_in_up_imgs_id').value = '';
     208        ec_selected_user = 'ec_sel_user_none';
     209        document.getElementById('ec_in_up_imgs_warn').innerHTML = '';
     210      break;
    120211    }
    121212    if (ec_avoid_infinite_loop) {
     
    124215      ec_avoid_infinite_loop = true;
    125216    }
    126   }
     217    ec_mark_forced();
     218  }
     219}
     220
     221function ec_mark_forced() {
     222  document.getElementById('ec_style_forced_id').innerHTML =
     223    (document.getElementById('ec_in_up_forced_id').checked != '') ?
     224     '<span style = "font-weight:bold; color:red;">' +
     225     ec_up_code_lbl_forced_txt + '</span>'
     226    :
     227     ec_up_code_lbl_forced_txt
     228  ;
    127229}
    128230
     
    292394
    293395function ec_check_submit() {
     396  if (ec_dont_check) return true;
    294397  if ((
    295398    document.getElementById('ec_sel_code_new').checked != '' &&
     
    338441}
    339442
     443function ec_mark_type(ec_id) {
     444  document.getElementById('ec_act1_id').value = ec_id;
     445  document.getElementById('ec_act2_id').value = '-1';
     446  ec_dont_check = true;
     447  document.forms['ec_new_code'].submit();
     448}
     449
    340450function ec_test() {
    341451  alert('OK.');
     
    343453
    344454function ec_init() {
    345   ec_err = '';
    346   ec_selected_user = 'ec_sel_user_old';
    347   ec_selected_code = 'ec_sel_code_new';
     455  var d = document;
     456  ec_err               = '';
     457  ec_selected_user     = 'ec_sel_user_old';
     458  ec_selected_code     = 'ec_sel_code_new';
    348459  ec_selected_old_user = '-1';
    349460  ec_selected_old_code = '-1';
    350   ec_selected_AP = '-1';
    351   ec_selected_cat = '-1';
    352   ec_selected_action = '';
    353   ec_selected_img = '';
    354   ec_new_code_text = '';
    355   ec_new_user_text = '';
    356   ec_new_psd_text = '';
    357   ec_old_new_psd_text = '';
    358   ec_test_reg = '';
    359   document.getElementById('ec_act1_id').value                    =
     461  ec_selected_AP       = '-1';
     462  ec_selected_cat      = '-1';
     463  ec_selected_action   = '';
     464  ec_selected_img      = '';
     465  ec_new_code_text     = '';
     466  ec_new_user_text     = '';
     467  ec_new_psd_text      = '';
     468  ec_old_new_psd_text  = '';
     469  ec_test_reg          = '';
     470  d.getElementById('ec_style_forced_id').innerHTML        =
     471   ec_up_code_lbl_forced_txt;
     472  d.getElementById('ec_act1_id').value                    =
    360473   ec_default_action;
    361   document.getElementById('ec_in_up_auto_code_length_id').value  =
    362    ec_auto_code_digits_nb;
    363   document.getElementById('ec_in_up_code_id').value              = '';
    364   document.getElementById('ec_in_up_usr_txt_id').value           = '';
    365   document.getElementById('ec_in_up_psd_txt_id').value           = '';
    366   document.getElementById('ec_in_up_pwd_warn').innerHTML         = '';
    367   document.getElementById('ec_in_up_aps_id').value               = '-1';
    368   document.getElementById('ec_in_up_cats_id').value              = '-1';
    369   document.getElementById('ec_in_up_imgs_id').value              = '';
    370   document.getElementById('ec_in_up_imgs_warn').innerHTML        = '';
    371   document.getElementById('ec_input_action_home').checked        = 'checked';
    372   document.getElementById('ec_input_action_home').checked        = '';
     474  d.getElementById('ec_in_up_usr_txt_id').value           = '';
     475  d.getElementById('ec_in_up_psd_txt_id').value           = '';
     476  d.getElementById('ec_in_up_pwd_warn').innerHTML         = '';
     477  d.getElementById('ec_in_up_aps_id').value               = '-1';
     478  d.getElementById('ec_in_up_cats_id').value              = '-1';
     479  d.getElementById('ec_in_up_imgs_id').value              = '';
     480  d.getElementById('ec_in_up_imgs_warn').innerHTML        = '';
     481  d.getElementById('ec_input_action_home').checked        = 'checked';
     482  d.getElementById('ec_input_action_home').checked        = '';
    373483 
    374   if (ec_default_action == 'create') {
    375     document.getElementById('ec_in_up_code_list_id').value       = '-1';
    376     document.getElementById('ec_sel_code_old').checked           = 'checked';
    377     document.getElementById('ec_sel_code_old').checked           = '';
    378     document.getElementById('ec_sel_user_old').checked           = 'checked';
    379     document.getElementById('ec_sel_user_old').checked           = '';
    380     document.getElementById('ec_in_up_usr_list_id').value        = '-1';
    381     document.getElementById('ec_submit_gen_full_auto_id').disabled = '';
    382     document.getElementById('ec_submit_gen_code_id').disabled    = '';
    383     document.getElementById('ec_in_up_auto_code_length_id').disabled = '';
    384     document.getElementById('ec_in_up_code_id').disabled         = '';
    385     document.getElementById('ec_sel_code_new').disabled          = '';
    386     document.getElementById('ec_sel_code_old').disabled          = '';
    387     document.getElementById('ec_in_up_code_list_id').disabled    = '';
    388     document.getElementById('ec_sel_user_new').disabled          = '';
    389     document.getElementById('ec_submit_gen_user_id').disabled    = '';
    390     document.getElementById('ec_in_up_usr_txt_id').disabled      = '';
    391     document.getElementById('ec_in_up_psd_txt_id').disabled      = '';
    392     document.getElementById('ec_sel_user_old').disabled          = '';
    393     document.getElementById('ec_in_up_usr_list_id').disabled     = '';
    394   }
    395   else {
    396     document.getElementById('ec_in_up_code_list_id').value       =
    397      ec_default_action;
    398     document.getElementById('ec_sel_code_old').checked           = 'checked';
    399     document.getElementById('ec_submit_gen_full_auto_id').disabled =
    400      'disabled';
    401     document.getElementById('ec_submit_gen_code_id').disabled    = 'disabled';
    402     document.getElementById('ec_in_up_auto_code_length_id').disabled =
    403      'disabled';
    404     document.getElementById('ec_in_up_code_id').disabled         = 'disabled';
    405     document.getElementById('ec_sel_code_new').disabled          = 'disabled';
    406     document.getElementById('ec_sel_code_old').disabled          = 'disabled';
    407     document.getElementById('ec_in_up_code_list_id').disabled    = 'disabled';
    408     ec_selected_old_code = ec_duplic_codes[ec_default_action];
    409     ec_flag2 = true;
    410     ec_mark_code('ec_sel_code_old');
    411     ec_flag2 = false;
    412   }
    413   ec_default_action                                              = 'create';
    414 }
     484  if (
     485    ec_default_action == 'create' ||
     486    ec_default_action == 'duplicate_entry_ask'
     487  ) { // Entry creation
     488    d.getElementById('ec_in_up_auto_code_length_id').value=
     489     ec_auto_code_digits_nb;
     490    d.getElementById('ec_in_up_code_id').value            = '';
     491    d.getElementById('ec_sel_code_old').checked           = 'checked';
     492    d.getElementById('ec_sel_user_old').checked           = 'checked';
     493    if (ec_default_action == 'create') {            // Create entry from blank
     494      d.getElementById('ec_in_up_usr_list_id').value      = '-1';
     495      d.getElementById('ec_in_up_code_list_id').value     = '-1';
     496      d.getElementById('ec_sel_code_old').checked         = '';
     497      d.getElementById('ec_sel_user_old').checked         = '';
     498      d.getElementById('ec_submit_gen_full_auto_id').disabled = '';
     499      d.getElementById('ec_submit_gen_code_id').disabled  = '';
     500      d.getElementById('ec_in_up_auto_code_length_id').disabled = '';
     501      d.getElementById('ec_in_up_code_id').disabled       = '';
     502      d.getElementById('ec_sel_code_new').disabled        = '';
     503      d.getElementById('ec_sel_code_old').disabled        = '';
     504      d.getElementById('ec_in_up_code_list_id').disabled  = '';
     505      d.getElementById('ec_sel_user_new').disabled        = '';
     506      d.getElementById('ec_submit_gen_user_id').disabled  = '';
     507      d.getElementById('ec_in_up_usr_txt_id').disabled    = '';
     508      d.getElementById('ec_in_up_psd_txt_id').disabled    = '';
     509      d.getElementById('ec_sel_user_old').disabled        = '';
     510      d.getElementById('ec_in_up_usr_list_id').disabled   = '';
     511    }
     512    else {                                          // Duplicate entry
     513      d.getElementById('ec_in_up_code_list_id').value     =
     514       ec_default_entry;
     515      d.getElementById('ec_submit_gen_full_auto_id').disabled =
     516       'disabled';
     517      d.getElementById('ec_submit_gen_code_id').disabled  = 'disabled';
     518      d.getElementById('ec_in_up_auto_code_length_id').disabled =
     519       'disabled';
     520      d.getElementById('ec_in_up_code_id').disabled       = 'disabled';
     521      d.getElementById('ec_sel_code_new').disabled        = 'disabled';
     522      d.getElementById('ec_sel_code_old').disabled        = 'disabled';
     523      d.getElementById('ec_in_up_code_list_id').disabled  = 'disabled';
     524      ec_selected_old_code = ec_duplic_codes[ec_default_entry];
     525      ec_flag2 = true;
     526      ec_mark_code('ec_sel_code_old');
     527      ec_flag2 = false;
     528    }
     529    ec_default_action                                     = 'create';
     530  }
     531  else { // Entry modification
     532    d.getElementById('ec_sel_user_old').checked           = 'checked';
     533    d.getElementById('ec_in_up_forced_id').checked        = '';
     534    if (ec_default_action == 'modify_entry_ask') {  // Modify entry
     535      d.getElementById('ec_in_up_entry_list_id').value    = '-1';
     536      d.getElementById('ec_in_up_usr_list_id').value      = '-1';
     537      d.getElementById('ec_sel_user_old').checked         = '';
     538      d.getElementById('ec_sel_user_new').disabled        = '';
     539      d.getElementById('ec_submit_gen_user_id').disabled  = '';
     540      d.getElementById('ec_in_up_usr_txt_id').disabled    = '';
     541      d.getElementById('ec_in_up_psd_txt_id').disabled    = '';
     542      d.getElementById('ec_sel_user_old').disabled        = '';
     543      d.getElementById('ec_in_up_usr_list_id').disabled   = '';
     544    }
     545    else {                                          // Outdate entry
     546      d.getElementById('ec_in_up_entry_list_id').value    =
     547       ec_default_entry;
     548      ec_mark_entry(ec_default_entry);
     549    }
     550    ec_default_action                                     =
     551     'modify_entry_ask';
     552  }
     553}
  • extensions/event_cats/admin/template/autolog_new.tpl

    r4048 r4058  
    2121<form class = "filter" method = "post" name = "ec_new_code" action = "" onsubmit = "return ec_check_submit();">
    2222  <input type = "hidden" id = "ec_act1_id" name = "ec_act1" />
     23  <input type = "hidden" id = "ec_act2_id" name = "ec_entry_sel" />
    2324 
    2425  <div style = "text-align:center;">
    25     <a href = "#ec_top" name = "ec_top">
    26       <span style = "font-weight:bold; font-size:120%;" title = "{'ec_top_title'|@translate}">{'ec_new_entry_table_title'|@translate}</span>
    27     </a><br>
    28     <br>
    29     <input class = "submit" type = "button" name = "ec_submit_gen_full_auto" value = "{'ec_new_full_auto'|@translate}"
    30      id = "ec_submit_gen_full_auto_id" onclick = "ec_gen_full_auto();" style = "margin-top:0;"/>
     26    <span style = "font-weight:bold; font-size:120%;">
     27      {if $ec_hidden_when_no_code != ''}
     28        <a href = "#ec_top" name = "ec_top" title = "{'ec_top_title'|@translate}">
     29      {/if}
     30      <label for = "ec_page_type_create" onclick = "ec_mark_type('create');">
     31        <input type = "radio" id = "ec_page_type_create" onclick = "ec_mark_type('create');" {if $ec_is_creation} checked = "checked" {/if} />
     32        {'ec_new_entry_title'|@translate}
     33      </label>
     34      {if $ec_hidden_when_no_code == ''}
     35        <a href = "#ec_top" name = "ec_top" title = "{'ec_top_title'|@translate}">&nbsp;/&nbsp;
     36      {/if}
     37      </a>
     38      <label for = "ec_page_type_modify" onclick = "ec_mark_type('modify_entry_ask');" {$ec_hidden_when_no_code}>
     39        <input type = "radio" id = "ec_page_type_modify" onclick = "ec_mark_type('modify_entry_ask');" {if !$ec_is_creation} checked = "checked" {/if} />
     40        {'ec_modify_entry_title'|@translate}
     41      </label>
     42    </span>
     43    {if $ec_is_creation}
     44      <br><br>
     45      <input class = "submit" type = "button" name = "ec_submit_gen_full_auto" value = "{'ec_new_full_auto'|@translate}"
     46       id = "ec_submit_gen_full_auto_id" onclick = "ec_gen_full_auto();" style = "margin-top:0;"/>
     47    {/if}
    3148  </div><br>
    3249 
    3350  <table style = "border-spacing:15px" width = "97%">
    3451   
    35     {* <!-- Code selection --> *}
    3652    <tr>
    37       <td style = "vertical-align:top;"><strong>{'ec_new_entry'|@translate}</strong></td>
     53      <td style = "vertical-align:top; font-weight:bold;">
     54        {if $ec_is_creation}
     55          {'ec_new_entry'|@translate}
     56        {else}
     57          {'ec_sel_entry'|@translate}
     58        {/if}
     59      </td>
    3860      <td>
    39         <li>
    40           {* <!-- New code (to create) --> *}
    41           <label for = "ec_in_up_code_id" onclick = "ec_mark_code('ec_sel_code_new');" {$ec_hidden_when_no_code}>
    42             <input type = "radio" name = "ec_sel_code" for = "ec_in_up_code_id" value = "new"
    43              id = "ec_sel_code_new" onclick = "ec_mark_code('ec_sel_code_new');" {$ec_hidden_when_no_code}
    44             />
    45             {'ec_up_code_lbl_code_new'|@translate}
    46           </label>
    47           &nbsp;
    48           <label for = "ec_in_up_code_id" style = "margin:0;">
    49             <input class = "submit" type = "button" name = "ec_submit_gen_code" value = "{'ec_new_entry_button'|@translate}"
    50              id = "ec_submit_gen_code_id" onclick = "ec_gen_code();" style = "margin:0;"
    51             />
    52           </label>
    53           {'ec_gen_code_nb_pre'|@translate}
    54           <select name = "ec_in_up_auto_code_length" id = "ec_in_up_auto_code_length_id" onchange = "ec_auto_code_digits_nb = this.value;">
    55             <option value =  "4" >4{'ec_gen_code_nb_min'|@translate}</option>
    56             <option value =  "5" >5</option>
    57             <option value =  "8" >8</option>
    58             <option value = "10">10</option>
    59             <option value = "12">12</option>
    60             <option value = "15">15</option>
    61             <option value = "16">16</option>
    62             <option value = "20">20</option>
    63             <option value = "24">24</option>
    64             <option value = "25">25</option>
    65             <option value = "30">30</option>
    66             <option value = "32">32{'ec_gen_code_nb_max'|@translate}</option>
    67           </select>
    68           {'ec_gen_code_nb_end'|@translate}<br>
    69           <ul><li>
    70             <input type = "text" name = "ec_in_up_code" maxlength = "32" size = "40"
    71              id = "ec_in_up_code_id" onblur = "ec_check_code_text();"
    72             />
    73           </li></ul>
    74         </li>
    75        
    76         <li>
    77           {* <!-- Known code --> *}
    78           <label for = "ec_in_up_code_list_id" onclick = "ec_mark_code('ec_sel_code_old');" {$ec_hidden_when_no_code} >
    79             <input type = "radio" name = "ec_sel_code" for = "ec_in_up_code_list_id" {$ec_hidden_when_no_code}
    80              value = "old" id = "ec_sel_code_old" onclick = "ec_mark_code('ec_sel_code_old');"
    81             />
    82             {'ec_up_code_lbl_code_old'|@translate}
    83           </label>
    84           <select name = "ec_in_up_code_list" id = "ec_in_up_code_list_id" onclick = "ec_mark_code('ec_sel_code_old');"
    85            onchange = "ec_change_code_list(this.value);" {$ec_hidden_when_no_code}
    86           >
    87             <option label = "------------" value = "-1" {* id = "ec_old_code_-1" *} {$ec_hidden_when_no_code} >------------</option>
    88             {foreach from=$ec_lists.duplicable_codes key=ec_key item=ec_val}
    89               <option label = "{$ec_val.user_id}" value = "{$ec_val.id}" {* id = "ec_old_code_{$ec_val.id}" *}>{$ec_key}</option>
    90             {/foreach}
    91           </select><br>
    92         </li>
     61        {if $ec_is_creation}
     62         
     63          {* <!-- Code selection --> *}
     64          <li>
     65            {* <!-- New code (to create) --> *}
     66            <label for = "ec_in_up_code_id" onclick = "ec_mark_code('ec_sel_code_new');" {$ec_hidden_when_no_code} >
     67              <input type = "radio" name = "ec_sel_code" for = "ec_in_up_code_id" value = "new"
     68               id = "ec_sel_code_new" onclick = "ec_mark_code('ec_sel_code_new');"
     69              />
     70              {'ec_up_code_lbl_code_new'|@translate}
     71            </label>
     72            &nbsp;
     73            <label for = "ec_in_up_code_id" style = "margin:0;">
     74              <input class = "submit" type = "button" name = "ec_submit_gen_code" value = "{'ec_new_entry_button'|@translate}"
     75               id = "ec_submit_gen_code_id" onclick = "ec_gen_code();" style = "margin:0;"
     76              />
     77            </label>
     78            {'ec_gen_code_nb_pre'|@translate}
     79            <select name = "ec_in_up_auto_code_length" id = "ec_in_up_auto_code_length_id" onchange = "ec_auto_code_digits_nb = this.value;">
     80              <option value =  "4" >4{'ec_gen_code_nb_min'|@translate}</option>
     81              <option value =  "5" >5</option>
     82              <option value =  "8" >8</option>
     83              <option value = "10">10</option>
     84              <option value = "12">12</option>
     85              <option value = "15">15</option>
     86              <option value = "16">16</option>
     87              <option value = "20">20</option>
     88              <option value = "24">24</option>
     89              <option value = "25">25</option>
     90              <option value = "30">30</option>
     91              <option value = "32">32{'ec_gen_code_nb_max'|@translate}</option>
     92            </select>
     93            {'ec_gen_code_nb_end'|@translate}<br>
     94            <ul><li>
     95              <input type = "text" name = "ec_in_up_code" maxlength = "32" size = "40"
     96               id = "ec_in_up_code_id" onblur = "ec_check_code_text();"
     97              />
     98            </li></ul>
     99          </li>
     100         
     101          <li>
     102            {* <!-- Known code --> *}
     103            <label for = "ec_in_up_code_list_id" onclick = "ec_mark_code('ec_sel_code_old');" {$ec_hidden_when_no_code}>
     104              <input type = "radio" name = "ec_sel_code" for = "ec_in_up_code_list_id"
     105                value = "old" id = "ec_sel_code_old" onclick = "ec_mark_code('ec_sel_code_old');"
     106              />
     107              {'ec_up_code_lbl_code_old'|@translate}
     108            </label>
     109            <select name = "ec_in_up_code_list" id = "ec_in_up_code_list_id" onclick = "ec_mark_code('ec_sel_code_old');"
     110             onchange = "ec_change_code_list(this.value);" {$ec_hidden_when_no_code}
     111            >
     112              <option label = "------------" value = "-1">------------</option>
     113              {foreach from=$ec_lists.duplicable_codes key=ec_key item=ec_val}
     114                <option label = "{$ec_val.user_id}" value = "{$ec_val.id}">{$ec_key}</option>
     115              {/foreach}
     116            </select><br>
     117          </li>
     118         
     119        {else}
     120         
     121          {* <!-- Entry selection --> *}
     122          <li>
     123            {* <!-- Entry choice --> *}
     124            <select name = "ec_in_up_entry_list" id = "ec_in_up_entry_list_id" onchange = "ec_mark_entry(this.value);">
     125              <option label = "" value = "-1">------------</option>
     126              {foreach from=$ec_lists.ec_table item=ec_val}
     127                <option value = "{$ec_val.id}" label = "{$ec_val.user_id},{$ec_val.action},{$ec_val.arg1},{$ec_val.arg2},{$ec_val.forced}">
     128                  {$ec_val.id} : {$ec_val.code}
     129                </option>
     130              {/foreach}
     131            </select>
     132          </li>
     133         
     134        {/if}
    93135      </td>
    94136    </tr>
     
    96138    {* <!-- User to identify --> *}
    97139    <tr>
    98       <td style = "vertical-align:top;"><strong>{'ec_up_code_lbl_user'|@translate}</strong></td>
     140      <td style = "vertical-align:top; font-weight:bold;">{'ec_up_code_lbl_user'|@translate}</td>
    99141      <td>
     142        {if !$ec_is_creation}
     143          <li>
     144            {* <!-- None --> *}
     145            <label onclick = "ec_mark_user('ec_sel_user_none');">
     146              <input type = "radio" name = "ec_sel_user" value = "none" id = "ec_sel_user_none"
     147               onclick = "ec_mark_user('ec_sel_user_none');"
     148              />
     149              {'ec_up_code_lbl_user_none'|@translate}
     150            </label><br>
     151          </li>
     152        {/if}
     153       
    100154        <li>
    101155          {* <!-- New user (to create) --> *}
     
    139193           onchange = "ec_selected_old_user = this.value;" {$ec_hidden_when_no_user}
    140194          >
    141             <option label = "------------" value = "-1" {* id = "ec_old_user_-1" *} {$ec_hidden_when_no_user} >------------</option>
     195            <option label = "------------" value = "-1" {$ec_hidden_when_no_user} >------------</option>
    142196            {foreach from=$ec_lists.user_ids key=ec_key item=ec_val}
    143               <option label = "{$ec_val}" value = "{$ec_key}" {* id = "ec_old_user_{$ec_key}" *} >{$ec_val}</option>
     197              <option label = "{$ec_val}" value = "{$ec_key}" >{$ec_val}</option>
    144198            {/foreach}
    145199          </select><br>
     
    150204    {* <!-- Page to display --> *}
    151205    <tr>
    152       <td style = "vertical-align:top;"><strong>{'ec_up_code_lbl_action'|@translate}</strong></td>
     206      <td style = "vertical-align:top;">
     207        <span style = "font-weight:bold;">{'ec_up_code_lbl_action'|@translate}</span><br>
     208        <label class = "ec_block" for = "ec_in_up_forced_id" style = "margin-top:5px;" onclick = "ec_mark_forced();">
     209          <input type = "checkbox" name = "ec_in_up_forced" id = "ec_in_up_forced_id" onclick = "ec_mark_forced();">
     210          <span id = "ec_style_forced_id"></span>
     211        </label>
     212      </td>
    153213      <td>
    154214       
    155         {* <!-- Additionnal Page, provided the plugin is activated --> *}
     215        {* <!-- Additionnal Page, provided the plugin is activated and at least one Add. P. is available --> *}
    156216        <label class = "ec_block" for = "ec_in_up_aps_id" onclick = "ec_mark_action('ec_input_action_add_p');"
    157          {if !$ec_ap_ok}style = "display:none;"{/if}
     217         {if !$ec_ap_ok or count($ec_lists.add_pages) == 0} style = "display:none;"{/if}
    158218        >
    159219          <input type = "radio" name = "ec_input_action" value = "add_p" id = "ec_input_action_add_p" for = "ec_in_up_aps_id"
     
    202262          {'ec_up_code_lbl_home'|@translate}
    203263        </label>
     264       
     265        {* <!-- Access denied page (only when modifying an entry) --> *}
     266        {if !$ec_is_creation}
     267          <label class = "ec_block" onclick = "ec_mark_action('ec_input_action_refused');">
     268            <input type = "radio" name = "ec_input_action" value = "refused" id = "ec_input_action_refused"
     269             onclick = "ec_mark_action('ec_input_action_refused');"
     270            />
     271            {'ec_up_code_lbl_refused'|@translate}
     272          </label>
     273        {/if}
    204274      </td>
    205275    </tr>
     
    214284<script type = "text/javascript" src = "{$RACINE_URL}{$EVNTCATS_PATH}admin/template/autolog_new.js"></script>
    215285<script type = "text/javascript"><!--
     286  ec_up_code_lbl_forced_txt              = "{'ec_up_code_lbl_forced'|@translate}";
    216287  ec_JS_message['ec_gen_user_act_miss']  = "{'ec_gen_user_act_miss'|@translate|@escape:javascript}";
    217288  ec_JS_message['ec_act_cat_miss']       = "{'ec_act_cat_miss'|@translate|@escape:javascript}";
     
    224295  ec_JS_message['ec_submit_code_bad']    = "{'ec_submit_code_bad'|@translate}";
    225296  ec_default_action                      = "{$ec_default_action}";
     297  ec_default_entry                       = "{$ec_default_entry}";
    226298  ec_auto_code_digits_nb                 = "{$ec_def_auto_code_dg_nb}";
    227299  {foreach from=$ec_lists.duplicable_codes.ids key=ec_key item=ec_val}
  • extensions/event_cats/include/evntcats_funcs.inc.php

    r4026 r4058  
    314314 * ec_duplicate_entry_OK()
    315315 * returns true or false whether the duplication of an existing entry which #
    316  * is given by $_POST['ec_act1'] was OK or not.
     316 * is given by $_POST['ec_entry_sel'] was OK or not.
    317317 *
    318318 * @param
     
    322322 */
    323323function ec_duplicate_entry_OK() {
     324  return false;
     325}
     326
     327/*
     328 * ec_modify_entry_OK()
     329 * returns true or false whether the modification of an existing entry which #
     330 * is given by $_POST['ec_entry_sel'] was OK or not.
     331 *
     332 * @param
     333 *   no param
     334 * @return
     335 *   true if modification was OK ; false if not
     336 */
     337function ec_modify_entry_OK() {
    324338  return false;
    325339}
  • extensions/event_cats/language/fr_FR/plugin.lang.php

    r4048 r4058  
    2020$lang['ec_plugin_ap_nok']         = 'Plugin <a href = "http://fr.piwigo.org/ext/extension_view.php?eid=153" title = "Ouvrir une nouvelle fenêtre sur le plugin Additional Pages" target = "_blank">Additional Pages</a> : inactif';
    2121$lang['ec_entry_table_title']     = 'Entrées du paramètre "autolog"';
    22 $lang['ec_new_entry_table_title'] = 'Nouvelle entrée du paramètre "autolog"';
     22$lang['ec_new_entry_title']       = 'Nouvelle entrée du paramètre "autolog"';
     23$lang['ec_modify_entry_title']    = 'Modification d\'une entrée du paramètre "autolog"';
    2324$lang['ec_top_title']             = 'Placer ce titre en haut de la page';
    2425// Table
     
    4243$lang['ec_new_entry']             = 'Code';
    4344$lang['ec_up_code_lbl_code_new']  = 'Nouveau code :';
     45$lang['ec_sel_entry']             = 'Entrée sélectionnée :';
    4446$lang['ec_new_entry_button']      = 'Générer un code automatiquement';
    4547$lang['ec_gen_code_nb_pre']       = 'de';
     
    4951$lang['ec_up_code_lbl_code_old']  = 'Code existant :';
    5052$lang['ec_up_code_lbl_user']      = 'Utilisateur identifié';
     53$lang['ec_up_code_lbl_user_none'] = 'Aucun (entrée périmée) :';
    5154$lang['ec_up_code_lbl_user_new']  = 'Nouvel utilisateur (créer un compte générique) :';
    5255$lang['ec_new_user_name']         = 'Nom d\'utilisateur';
     
    5457$lang['ec_up_code_lbl_gen_user']  = 'Générer un nom d\'utilisateur d\'après l\'action choisie';
    5558$lang['ec_up_code_lbl_user_old']  = 'Utilisateur existant :';
    56 $lang['ec_up_code_lbl_home']      = 'Accueil';
    5759$lang['ec_up_code_lbl_action']    = 'Page affichée';
     60$lang['ec_up_code_lbl_forced']    = 'Forcée';
    5861$lang['ec_up_code_lbl_aps']       = 'Additional Page';
    5962$lang['ec_up_code_lbl_cats']      = 'Catégorie';
    6063$lang['ec_up_code_lbl_img']       = 'Image';
     64$lang['ec_up_code_lbl_home']      = 'Accueil';
     65$lang['ec_up_code_lbl_refused']   = 'Accès refusé';
    6166// JS checks
    6267$lang['ec_confirm_test']          = "Vraiment tester le code sélectionné ?\n\rCela terminera votre session d'administration.";
Note: See TracChangeset for help on using the changeset viewer.