Dotclear

Changeset 2654


Ignore:
Timestamp:
09/21/10 11:28:34 (13 years ago)
Author:
Tomtom33
Message:

dcCron 2.0-RC2:

  • Exception management for check() function
  • Improved filters
  • Improved UI
Location:
plugins/dcCron/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • plugins/dcCron/trunk/_define.php

    r2650 r2654  
    1717          /* Description*/         "Schedule any tasks", 
    1818          /* Author */             "Tomtom (http://blog.zenstyle.fr)", 
    19           /* Version */            '2.0-RC1', 
     19          /* Version */            '2.0-RC2', 
    2020          /* Permissions */        'usage,contentadmin', 
    2121                                   null, 
  • plugins/dcCron/trunk/inc/class.dc.cron.php

    r2650 r2654  
    1111# -- END LICENSE BLOCK ------------------------------------ 
    1212 
     13/** 
     14Custom exception implementation. Provide more information about the current 
     15type of exception. 
     16*/ 
     17abstract class customException extends Exception 
     18{ 
     19     protected $name = ''; 
     20     protected $prefix = ''; 
     21      
     22     public function __construct($message = null,$code = null) 
     23     { 
     24          if (is_null($message) || $message === '') { 
     25               throw new $this(sprintf(__('Unknown error for exception %s'),get_class($this))); 
     26          } 
     27          if (is_string($this->name) && $this->name !== '') { 
     28               $this->prefix = sprintf((is_string($code) && $code !== '' ? '[%s:%s] ' : '[%s] '),$this->name,$code); 
     29          } 
     30          parent::__construct($message); 
     31     } 
     32      
     33     public function getErrorMessage() 
     34     { 
     35          return 
     36          $this->prefix.$this->getMessage(). 
     37          (DC_DEBUG ? sprintf(" in %s(%d)\n%s",$this->getFile(),$this->getLine(),$this->getTraceAsString()) : ''); 
     38     } 
     39} 
     40/** 
     41Custom exception used in dcCron plugin 
     42*/ 
     43class dcCronException extends customException { protected $name = 'dcCron'; } 
     44class taskException extends customException { protected $name = 'Task'; } 
     45class lockException extends customException { protected $name = 'Lock'; } 
     46 
    1347class dcCron 
    1448{ 
     
    4983                          
    5084                         if (!is_callable($v['callback'])) { 
    51                               $cur = $this->core->con->openCursor($this->core->prefix.'log'); 
    52                               $cur->log_table = 'dcCron'; 
    53                               $cur->log_msg = sprintf(__('[%s] Impossible to execute task: Callback not available'),$k); 
    54                               $this->core->log->addLog($cur); 
     85                              throw new taskException(__('Callback not available'),$k); 
    5586                         } 
    5687                         else { 
     
    5889                               
    5990                              if (($e = call_user_func($v['callback'],$k)) === false) { 
    60                                    $cur = $this->core->con->openCursor($this->core->prefix.'log'); 
    61                                    $cur->log_table = 'dcCron'; 
    62                                    $cur->log_msg = sprintf(__('[%s] Impossible to execute task: %s'),$k,$e); 
    63                                    $this->core->log->addLog($cur); 
     91                                   throw new taskException($e,$k); 
    6492                              } 
    6593                              else { 
     
    77105                              } 
    78106                         } 
    79                     } catch (Exception $e) { 
     107                    } catch (lockException $e) { 
     108                         $this->tasks[$k]['last_run'] = $now; 
    80109                         $this->tasks[$k]['status'] = (integer) -1; 
     110                         $this->save(); 
    81111                         $cur = $this->core->con->openCursor($this->core->prefix.'log'); 
    82112                         $cur->log_table = 'dcCron'; 
    83                          $cur->log_msg = sprintf($e->getMessage()); 
     113                         $cur->log_msg = $e->getErrorMessage(); 
     114                         $this->core->log->addLog($cur); 
     115                    } catch (taskException $e) { 
     116                         $this->tasks[$k]['last_run'] = $now; 
     117                         $this->delLock($k); 
     118                         $this->save(); 
     119                         $cur = $this->core->con->openCursor($this->core->prefix.'log'); 
     120                         $cur->log_table = 'dcCron'; 
     121                         $cur->log_msg = $e->getErrorMessage(); 
     122                         $this->core->log->addLog($cur); 
     123                    } catch (Exception $e) { 
     124                         $this->tasks[$k]['last_run'] = $now; 
     125                         $this->delLock($k); 
     126                         $this->save(); 
     127                         $cur = $this->core->con->openCursor($this->core->prefix.'log'); 
     128                         $cur->log_table = 'dcCron'; 
     129                         $cur->log_msg = $e->getMessage(); 
    84130                         $this->core->log->addLog($cur); 
    85131                    } 
     
    102148           
    103149          if (!preg_match('#^[a-zA-Z0-9\_\-]*$#',$nid)) { 
    104                throw new Exception(__('[dcCron] Provide a valid id. Should be composed by [a-zA-Z0-9_-] characters')); 
     150               throw new dcCronException(__('Provide a valid id. Should be composed by [a-zA-Z0-9_-] characters'),$nid); 
    105151          } 
    106152          if (!is_numeric($interval)) { 
    107                throw new Exception(__('[dcCron] Provide a valid interval. Should be a number')); 
     153               throw new dcCronException(__('Provide a valid interval. Should be a number'),$nid); 
    108154          } 
    109155          if (!is_array($callback) || !is_callable($callback) || is_object($callback[0])) { 
    110                throw new Exception(__('[dcCron] Provide a valid callback. Should be a static method')); 
     156               throw new dcCronException(__('Provide a valid callback. Should be a static method'),$nid); 
    111157          } 
    112158          if ($first_run === false) { 
    113                throw new Exception(__('[dcCron] Provide a valid date for the first execution')); 
     159               throw new dcCronException(__('Provide a valid date for the first execution'),$nid); 
    114160          } 
    115161           
     
    121167           
    122168          if (!array_key_exists($nid,$this->tasks) && $first_run < $now) { 
    123                throw new Exception(__('[dcCron] Date of the first execution must be higher than now')); 
     169               throw new dcCronException(__('Date of the first execution must be higher than now'),$nid); 
    124170          } 
    125171           
     
    151197          } 
    152198          elseif (!is_array($nid)) { 
    153                throw new Exception(__('[dcCron] Impossible to delete task: Invalid id format')); 
     199               throw new dcCronException(__('Impossible to delete task: Invalid id format'),$nid); 
    154200          } 
    155201          elseif (count($nid) === 0) { 
    156                throw new Exception(__('[dcCron] No task specified to delete')); 
     202               throw new dcCronException(__('No task specified to delete')); 
    157203          } 
    158204 
     
    162208               } 
    163209               else { 
    164                     throw new Exception(sprintf(__('[dcCron] Impossible to delete task: %s. It does not exist'),$v)); 
     210                    throw new dcCronException(__('Impossible to delete task. It does not exist'),$v); 
    165211               } 
    166212          } 
     
    180226          } 
    181227          elseif (!is_array($nid)) { 
    182                throw new Exception(__('[dcCron] Impossible to enable task: Invalid id format')); 
     228               throw new dcCronException(__('Impossible to enable task: Invalid id format'),$nid); 
    183229          } 
    184230          elseif (count($nid) === 0) { 
    185                throw new Exception(__('[dcCron] No task specified to delete')); 
     231               throw new dcCronException(__('No task specified to delete')); 
    186232          } 
    187233           
     
    191237               } 
    192238               else { 
    193                     throw new Exception(sprintf(__('[dcCron] Impossible to enable task: %s. It does not exist'),$v)); 
     239                    throw new dcCronException(__('Impossible to enable task. It does not exist'),$v); 
    194240               } 
    195241          } 
     
    209255          } 
    210256          elseif (!is_array($nid)) { 
    211                throw new Exception(__('[dcCron] Impossible to disable task: Invalid id format')); 
     257               throw new dcCronException(__('Impossible to disable task: Invalid id format'),$nid); 
    212258          } 
    213259          elseif (count($nid) === 0) { 
    214                throw new Exception(__('[dcCron] No task specified to delete')); 
     260               throw new dcCronException(__('No task specified to delete')); 
    215261          } 
    216262           
     
    220266               } 
    221267               else { 
    222                     throw new Exception(sprintf(__('[dcCron] Impossible to disable task: %s. It does not exist'),$v)); 
     268                    throw new dcCronException(__('Impossible to disable task. It does not exist'),$v); 
    223269               } 
    224270          } 
     
    363409     { 
    364410          if (!is_dir($dir)) { 
    365                throw new Exception($dir.' is not a valid directory.'); 
     411               throw new lockException($dir.' is not a valid directory.'); 
    366412          } 
    367413           
    368414          if (!is_writable($dir)) { 
    369                throw new Exception($dir.' is not writable.'); 
     415               throw new lockException($dir.' is not writable.'); 
    370416          } 
    371417           
     
    402448           
    403449          if (file_exists($lock)) { 
    404                throw new Exception(sprintf(__('[%s] Task already in progress or locked'),$task)); 
     450               throw new lockException(__('Task already in progress or locked'),$task); 
    405451          } 
    406452           
    407453          files::makeDir(dirname($lock),true); 
    408454          if (!@file_put_contents($lock,'LOCK',LOCK_EX)) { 
    409                throw new Exception(sprintf(__('[%s] Impossible to get lock'),$task)); 
     455               throw new lockException(__('Impossible to get lock'),$task); 
    410456          } 
    411457           
  • plugins/dcCron/trunk/index.php

    r2650 r2654  
    2424# POST var 
    2525$ids           = isset($_POST['ids']) ? $_POST['ids'] : null; 
    26 $log_ids       = isset($_POST['log_ids']) ? $_POST['log_ids'] : null; 
    2726$id            = isset($_POST['id']) ? html::escapeHTML($_POST['id']) : null; 
    2827$old_id        = isset($_POST['old_id']) ? html::escapeHTML($_POST['old_id']) : null; 
     
    6766          } 
    6867          http::redirect($p_url.$t_url); 
    69      } 
    70      catch (Exception $e) { 
    71           $core->error->add($e->getMessage()); 
    72      } 
    73 } 
    74  
    75 #  Delete logs 
    76 if (isset($_POST['del_log'])) 
    77 { 
    78      try { 
    79           $core->log->del($log_ids); 
    80           http::redirect($p_url.'&log=1'); 
    8168     } 
    8269     catch (Exception $e) { 
     
    118105          $msg = __('Task has been successfully updated'); 
    119106     } 
    120      if (isset($_GET['log']) && (integer) $_GET['log'] === 1) { 
    121           $msg = __('Logs have been successfully deleted'); 
    122      } 
    123107      
    124108     echo !empty($msg) ? '<p class="message">'.$msg.'</p>' : ''; 
     
    133117 
    134118# Gets tasks & prepares display object 
    135 $params = $status !== null ? array('status' => $status) : null; 
     119$params = $status !== null && (int) $status !== 2 ? array('status' => $status) : null; 
    136120$t_rs = $core->cron->getTasks($params); 
    137121$t_nb = count($t_rs); 
     
    193177     ); 
    194178     $combo_status = array( 
     179          __('all') => 2, 
    195180          __('enabled') => 1, 
    196181          __('disabled') => 0, 
     
    199184      
    200185     echo 
    201      '<h3>'.__('Planned tasks').'</h3>'. 
    202186     '<p><a id="filter-control" class="form-control" href="#">'. 
    203187     __('Filters').'</a></p>'; 
     
    239223           
    240224          echo 
    241           '<div class="error">'. 
    242           __('There are error logs related to some of your tasks.'). 
    243           '<br />'; 
     225          '<p class="error">'. 
     226          __('There are error logs related to some of your tasks.').' '; 
    244227           
    245228          if ($core->plugins->moduleExists('dcLog')) { 
     
    253236          } 
    254237           
    255           echo '</div>'; 
     238          echo '</p>'; 
    256239     } 
    257240} 
  • plugins/dcCron/trunk/locales/fr/main.po

    r1672 r2654  
    1 # Français translation of dcCron, a plugin for dotclear 
    2 # This file is generated by LangOmatic, a plugin for Dotclear 
     1# Language: Français 
     2# Module: dcCron - 2.0-RC2 
     3# Date: 2010-09-21 09:10:06 
     4# Translated with translater 1.5 
    35 
    46msgid "" 
    5 msgstr "Content-Type: text/plain; charset=UTF-8\n" 
     7msgstr "" 
     8"Content-Type: text/plain; charset=UTF-8\n" 
     9"Project-Id-Version: dcCron 2.0-RC2\n" 
     10"POT-Creation-Date: \n" 
     11"PO-Revision-Date: 2010-09-21T09:10:06+00:00\n" 
     12"Last-Translator: fdple\n" 
     13"Language-Team: \n" 
     14"MIME-Version: 1.0\n" 
     15"Content-Transfer-Encoding: 8bit\n" 
    616 
    717#: _admin.php:15 
     18#: index.php:78 
     19#: index.php:114 
    820msgid "Cron" 
    921msgstr "Programmateur" 
    1022 
    11 #: inc/class.dc.cron.list.php:34 
    12 #: inc/class.dc.cron.list.php:164 
    13 #: index.php:107 
    14 #: index.php:132 
     23#: _services.php:26 
     24msgid "No interval" 
     25msgstr "Aucun intervalle" 
     26 
     27#: _services.php:30 
     28msgid "Interval must be a number" 
     29msgstr "L'intervalle doit être un entier" 
     30 
     31#: inc/class.dc.cron.list.php:39 
     32#: index.php:152 
    1533msgid "Task id" 
    16 msgstr "Id de la tâche" 
    17  
    18 #: inc/class.dc.cron.list.php:35 
    19 #: inc/class.dc.cron.list.php:165 
     34msgstr "Identifiant de la tâche" 
     35 
     36#: inc/class.dc.cron.list.php:40 
    2037msgid "Interval" 
    2138msgstr "Intervalle" 
    2239 
    23 #: inc/class.dc.cron.list.php:36 
    24 #: inc/class.dc.cron.list.php:166 
     40#: inc/class.dc.cron.list.php:41 
    2541msgid "Last run" 
    2642msgstr "Dernière exécution" 
    2743 
    28 #: inc/class.dc.cron.list.php:37 
     44#: inc/class.dc.cron.list.php:42 
    2945msgid "Next run planned" 
    3046msgstr "Prochaine exécution programmée" 
    3147 
    32 #: inc/class.dc.cron.list.php:38 
    33 #: inc/class.dc.cron.list.php:167 
    34 msgid "Actions" 
    35 msgstr "Actions" 
    36  
    37 #: inc/class.dc.cron.list.php:47 
    38 msgid "Delete selected modules" 
    39 msgstr "Supprimer les tâches sélectionnées" 
    40  
    41 #: inc/class.dc.cron.list.php:88 
    42 msgid "Edit" 
    43 msgstr "Modifier" 
    44  
    45 #: inc/class.dc.cron.list.php:90 
    46 msgid "Disable" 
    47 msgstr "Désactiver" 
    48  
    49 #: inc/class.dc.cron.list.php:120 
     48#: inc/class.dc.cron.list.php:72 
     49msgid "No tasks" 
     50msgstr "Aucune tâche" 
     51 
     52#: inc/class.dc.cron.list.php:86 
     53msgid "Never" 
     54msgstr "Jamais" 
     55 
     56#: inc/class.dc.cron.list.php:97 
     57#: index.php:180 
     58msgid "enabled" 
     59msgstr "activé" 
     60 
     61#: inc/class.dc.cron.list.php:101 
     62#: index.php:181 
     63msgid "disabled" 
     64msgstr "désactivé" 
     65 
     66#: inc/class.dc.cron.list.php:105 
     67msgid "blocked" 
     68msgstr "bloqué" 
     69 
     70#: inc/class.dc.cron.list.php:109 
     71msgid "Execute once" 
     72msgstr "Exécuter une seule fois" 
     73 
     74#: inc/class.dc.cron.list.php:114 
     75#: index.php:115 
     76msgid "Edit task" 
     77msgstr "Modifier la tâche" 
     78 
     79#: inc/class.dc.cron.php:25 
     80msgid "Unknown error for exception %s" 
     81msgstr "Erreur inconnue pour l'exception %s" 
     82 
     83#: inc/class.dc.cron.php:85 
     84msgid "Callback not available" 
     85msgstr "Callback invalide" 
     86 
     87#: inc/class.dc.cron.php:150 
     88msgid "Provide a valid id. Should be composed by [a-zA-Z0-9_-] characters" 
     89msgstr "Veuillez entrer un ID valide. Il doit être composé des caractères suivant [a-zA-Z0-9_-]" 
     90 
     91#: inc/class.dc.cron.php:153 
     92msgid "Provide a valid interval. Should be a number" 
     93msgstr "Veuillez enter un intervalle valide. Ce doit être un entier" 
     94 
     95#: inc/class.dc.cron.php:156 
     96msgid "Provide a valid callback. Should be a static method" 
     97msgstr "Veuillez enter un callback valide. Ce doit être une fonction statique" 
     98 
     99#: inc/class.dc.cron.php:159 
     100msgid "Provide a valid date for the first execution" 
     101msgstr "Veuillez enter une date valide pour la première exécution" 
     102 
     103#: inc/class.dc.cron.php:169 
     104msgid "Date of the first execution must be higher than now" 
     105msgstr "La date de première exécution doit être supérieure à maintenant" 
     106 
     107#: inc/class.dc.cron.php:199 
     108msgid "Impossible to delete task: Invalid id format" 
     109msgstr "Impossible de supprimer la tâche: Identifiant invalide" 
     110 
     111#: inc/class.dc.cron.php:202 
     112#: inc/class.dc.cron.php:231 
     113#: inc/class.dc.cron.php:260 
     114msgid "No task specified to delete" 
     115msgstr "Aucune tâche à supprimer" 
     116 
     117#: inc/class.dc.cron.php:210 
     118msgid "Impossible to delete task. It does not exist" 
     119msgstr "Impossible de supprimer la tâche, elle n'existe pas" 
     120 
     121#: inc/class.dc.cron.php:228 
     122msgid "Impossible to enable task: Invalid id format" 
     123msgstr "Impossible d'activer la tâche: Identifiant invalide" 
     124 
     125#: inc/class.dc.cron.php:239 
     126msgid "Impossible to enable task. It does not exist" 
     127msgstr "Impossible d'activer la tâche, elle n'existe pas" 
     128 
     129#: inc/class.dc.cron.php:257 
     130msgid "Impossible to disable task: Invalid id format" 
     131msgstr "Impossible de désactiver la tâche: Identifiant invalide" 
     132 
     133#: inc/class.dc.cron.php:268 
     134msgid "Impossible to disable task. It does not exist" 
     135msgstr "Impossible de désactiver la tâche, elle n'existe pas" 
     136 
     137#: inc/class.dc.cron.php:378 
    50138msgid "week" 
    51139msgstr "semaine" 
    52140 
    53 #: inc/class.dc.cron.list.php:120 
     141#: inc/class.dc.cron.php:378 
    54142msgid "weeks" 
    55143msgstr "semaines" 
    56144 
    57 #: inc/class.dc.cron.list.php:125 
     145#: inc/class.dc.cron.php:383 
    58146msgid "day" 
    59147msgstr "jour" 
    60148 
    61 #: inc/class.dc.cron.list.php:130 
     149#: inc/class.dc.cron.php:388 
    62150msgid "hour" 
    63151msgstr "heure" 
    64152 
    65 #: inc/class.dc.cron.list.php:130 
     153#: inc/class.dc.cron.php:388 
    66154msgid "hours" 
    67155msgstr "heures" 
    68156 
    69 #: inc/class.dc.cron.list.php:135 
     157#: inc/class.dc.cron.php:393 
    70158msgid "minute" 
    71159msgstr "minute" 
    72160 
    73 #: inc/class.dc.cron.list.php:135 
     161#: inc/class.dc.cron.php:393 
    74162msgid "minutes" 
    75163msgstr "minutes" 
    76164 
    77 #: inc/class.dc.cron.list.php:139 
     165#: inc/class.dc.cron.php:397 
    78166msgid "seconde" 
    79167msgstr "seconde" 
    80168 
    81 #: inc/class.dc.cron.list.php:139 
     169#: inc/class.dc.cron.php:397 
    82170msgid "secondes" 
    83171msgstr "secondes" 
    84172 
    85 #: inc/class.dc.cron.list.php:200 
    86 msgid "Enable" 
    87 msgstr "Activer" 
    88  
    89 #: index.php:35 
    90 msgid "Task: %s has been successfully created" 
    91 msgstr "La tâche : %s a été créée avec succès" 
    92  
    93 #: index.php:35 
    94 msgid "Task: %s has been successfully edited" 
    95 msgstr "La tâche : %s a été modifiée avec succès" 
    96  
    97 #: index.php:41 
    98 msgid "All Tasks selected have been deleted successfully" 
    99 msgstr "Toutes les tâches sélectionnées ont été supprimées avec succès" 
    100  
    101 #: index.php:46 
    102 msgid "Task: %s has been successfully disabled" 
    103 msgstr "La tâche : %s a été désactivée avec succès" 
    104  
    105 #: index.php:51 
    106 msgid "Task: %s has been successfully enabled" 
    107 msgstr "La tâche : %s a été activée avec succès" 
    108  
    109 #: index.php:75 
    110 #: index.php:88 
    111 msgid "dcCron" 
    112 msgstr "dcCron" 
    113  
    114 #: index.php:81 
    115 msgid "Edit task" 
    116 msgstr "Modifier la tâche" 
    117  
    118 #: index.php:82 
    119 #: index.php:104 
     173#: inc/class.dc.cron.php:450 
     174msgid "Task already in progress or locked" 
     175msgstr "Tâche en cours d'exécution ou bloquée" 
     176 
     177#: inc/class.dc.cron.php:455 
     178msgid "Impossible to get lock" 
     179msgstr "Impossible d’acquérir le lock" 
     180 
     181#: index.php:84 
     182msgid "Are you sure you want to delete selected tasks?" 
     183msgstr "Êtes vous sur de vouloir supprimer les tâches sélectionnées" 
     184 
     185#: index.php:93 
     186msgid "Task has been successfully created" 
     187msgstr "La tâche a été créé avec succès" 
     188 
     189#: index.php:96 
     190msgid "Selected tasks have been successfully deleted" 
     191msgstr "Les tâches sélectionnées ont été supprimé avec succès" 
     192 
     193#: index.php:99 
     194msgid "Selected tasks have been successfully disabled" 
     195msgstr "Les tâches sélectionnées ont été désactivé avec succès" 
     196 
     197#: index.php:102 
     198msgid "Selected tasks have been successfully enabled" 
     199msgstr "Les tâches sélectionnées ont été activé avec succès" 
     200 
     201#: index.php:105 
     202msgid "Task has been successfully updated" 
     203msgstr "La tâche a été mise à jour avec succès" 
     204 
     205#: index.php:115 
    120206msgid "New task" 
    121207msgstr "Nouvelle tâche" 
    122208 
    123 #: index.php:92 
    124 msgid "Are you sure you want to delete these tasks?" 
    125 msgstr "Êtes-vous sur de vouloir supprimer ces tâches ?" 
    126  
    127 #: index.php:111 
    128 #: index.php:136 
     209#: index.php:132 
     210msgid "Reschedule first run" 
     211msgstr "Reprogrammer la date de première exécution" 
     212 
     213#: index.php:145 
     214msgid "First run" 
     215msgstr "Première exécution" 
     216 
     217#: index.php:150 
     218msgid "Task edit" 
     219msgstr "Modifier la tâche" 
     220 
     221#: index.php:154 
    129222msgid "Class name" 
    130223msgstr "Nom de classe" 
    131224 
    132 #: index.php:115 
    133 #: index.php:140 
     225#: index.php:156 
    134226msgid "Function name" 
    135227msgstr "Nom de la fonction" 
    136228 
    137 #: index.php:119 
    138 #: index.php:144 
    139 msgid "Interval" 
    140 msgstr "Intervalle" 
    141  
    142 #: index.php:125 
    143 msgid "Add task" 
    144 msgstr "Ajouter la tâche" 
    145  
    146 #: index.php:129 
    147 msgid "Task edit" 
    148 msgstr "Modifier la tâche" 
    149  
    150 #: index.php:151 
     229#: index.php:158 
     230msgid "Interval (in second)" 
     231msgstr "Intervalle (en seconde)" 
     232 
     233#: index.php:160 
     234msgid "Put 0 for only one execution" 
     235msgstr "Entrer 0 pour une seule exécution" 
     236 
     237#: index.php:164 
     238msgid "Leave blank for now" 
     239msgstr "Laisser blanc pour maintenant" 
     240 
     241#: index.php:168 
    151242msgid "Save configuration" 
    152243msgstr "Enregistrer la configuration" 
    153244 
    154 #: index.php:155 
     245#: index.php:174 
     246msgid "enable" 
     247msgstr "activer" 
     248 
     249#: index.php:175 
     250msgid "disable" 
     251msgstr "désactiver" 
     252 
     253#: index.php:182 
     254msgid "locked" 
     255msgstr "bloqué" 
     256 
     257#: index.php:186 
    155258msgid "Planned tasks" 
    156259msgstr "Tâches programmées" 
    157260 
    158 #: index.php:155 
    159 msgid "No tasks planned" 
    160 msgstr "Aucune tâche programmée" 
    161  
    162 #: index.php:159 
    163 msgid "Disabled tasks" 
    164 msgstr "Tâches désactivées" 
    165  
    166 #: inc/class.dc.cron.php:41 
    167 msgid "[%s] Impossible to execute task : %s" 
    168 msgstr "[%s] Impossible d'exécuter la tâche %s" 
    169  
    170 #: inc/class.dc.cron.php:64 
    171 msgid "[dcCron] Provide a valid id. Should be just letters and numbers" 
    172 msgstr "[dcCron] Veuillez entrer un ID valide. Il doit être composé de lettres et/ou chiffres" 
    173  
    174 #: inc/class.dc.cron.php:68 
    175 msgid "[dcCron] Provide a valid interval. Should be a number in second" 
    176 msgstr "[dcCron] Veuillez entrer un intervalle valide. Ce doit être un nombre ayant pour unité la seconde" 
    177  
    178 #: inc/class.dc.cron.php:72 
    179 msgid "[dcCron] Provide a valid callback for task: %s" 
    180 msgstr "[dcCron] Veuillez entrer un callback valide pour la tâche : %s" 
    181  
    182 #: inc/class.dc.cron.php:131 
    183 msgid "[dcCron] Impossible to delete task: %s. It does not exist" 
    184 msgstr "[dcCron] Impossible de supprimer la tâche : %s. Elle n'existe pas." 
    185  
    186 #: inc/class.dc.cron.php:113 
    187 msgid "[dcCron] Invalid format to delete task" 
    188 msgstr "[dcCron] Format invalide pour supprimer des tâches" 
    189  
    190 #: inc/class.dc.cron.php:118 
    191 msgid "[dcCron] No task specified to delete" 
    192 msgstr "[dcCron] Aucune tâche spécifiée à supprimer" 
    193  
    194 #: inc/class.dc.cron.php:152 
    195 msgid "[dcCron] Impossible to enable task: %s. It does not exist" 
    196 msgstr "[dcCron] Impossible d'activer la tâche : %s. Elle n'existe pas." 
    197  
    198 #: inc/class.dc.cron.php:170 
    199 msgid "[dcCron] Impossible to disable task: %s. It does not exist" 
    200 msgstr "[dcCron] Impossible de désactiver la tâche : %s. Elle n'existe pas." 
    201  
    202 #: inc/class.dc.cron.php:81 
    203 msgid "[dcCron] Provide a valid date for the first execution" 
    204 msgstr "[dcCron] Veuillez fournir une date valide pour la première exécution" 
    205  
    206 #: inc/class.dc.cron.php:85 
    207 msgid "[dcCron] Date of the first execution must be higher than now" 
    208 msgstr "[dcCron] La date de la première exécution doit être postérieure à maintenant" 
    209  
    210 #: index.php:156 
    211 msgid "First run" 
    212 msgstr "Première exécution" 
    213  
    214 #: inc/class.dc.cron.list.php:61 
    215 msgid "Never" 
    216 msgstr "Jamais" 
     261#: index.php:214 
     262msgid "Selected tasks actions:" 
     263msgstr "Actions sur les tâches séctionnées" 
     264 
     265#: index.php:227 
     266msgid "There are error logs related to some of your tasks." 
     267msgstr "Il existe des logs d'erreurs relatifs à vos tâches" 
     268 
     269#: index.php:231 
     270msgid "Go to see logs" 
     271msgstr "Aller voir les logs" 
     272 
     273#: index.php:234 
     274#: index.php:237 
     275msgid "To see logs, please download dcLog plugin" 
     276msgstr "Pour voir les logs, merci de télécharger le plugin dcLog" 
     277 
Note: See TracChangeset for help on using the changeset viewer.

Sites map