Changeset 4058


Ignore:
Timestamp:
10/19/09 03:07:22 (10 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.