Dotclear


Ignore:
Files:
5 added
45 edited

Legend:

Unmodified
Added
Removed
  • admin/_charte.php

    r1840 r2038  
    6666 
    6767<body id="dotclear-admin" class="no-js"> 
    68      <div id="header"> 
    6968          <ul id="prelude"> 
    7069               <li><a href="#content">Aller au contenu</a></li> 
     
    7271               <li><a href="#qx">Aller à la recherche</a></li> 
    7372          </ul> 
    74           <div id="top"><h1><a href="./index.php">Bibliothèque de styles - Dotclear - 2.6+</a></h1></div> 
    75           <div id="info-boxes"> 
    76                <div id="info-box1"> 
    77                     <p>Informations sur les styles disponibles dans l'admin pour les développeurs de plugins</p> 
    78                </div> 
    79                <div id="info-box2">Octobre 2013</div> 
    80           </div>     
     73     <div id="header"> 
     74          <h1><a href="./index.php"><span class="hidden">Dotclear</span></a></h1> 
     75          <div id="top-info-blog"> 
     76                    <p>Bibliothèque de styles - Dotclear - 2.6+</p> 
     77          </div> 
     78          <ul id="top-info-user"><li>Octobre 2013</li></ul> 
    8179     </div><!-- /header --> 
    8280 
    8381     <div id="wrapper" class="clearfix"> 
     82          <div class="hidden-if-no-js collapser-box"><a href="#" id="collapser"> 
     83          <img class="collapse-mm" src="images/collapser-hide.png" alt="Cacher le menu" /> 
     84          <img class="expand-mm" src="images/collapser-show.png" alt="Montrer le menu" /> 
     85          </a></div>'. 
    8486          <div id="main"> 
    8587               <div id="content" class="clearfix"> 
  • admin/blog_pref.php

    r2019 r2028  
    493493     '<div class="two-cols">'. 
    494494     '<div class="col">'. 
    495      '<p><label for="date_format">'.__('Date format:').'</label>'. 
     495     '<p><label for="date_format">'.__('Date format:').'</label> '. 
    496496     form::field('date_format',30,255,html::escapeHTML($blog_settings->system->date_format)). 
    497      form::combo('date_format_select',$date_formats_combo). 
    498      '</p>'. 
    499      '<p class="chosen form-note">'.dt::str(html::escapeHTML($blog_settings->system->date_format)).'</p>'. 
     497     form::combo('date_format_select',$date_formats_combo,'','','',false,'title="'.__('Pattern of date').'"'). 
     498     '</p>'. 
     499     '<p class="chosen form-note">'.__('Sample:').' '.dt::str(html::escapeHTML($blog_settings->system->date_format)).'</p>'. 
    500500 
    501501     '<p><label for="time_format">'.__('Time format:').'</label>'. 
    502502     form::field('time_format',30,255,html::escapeHTML($blog_settings->system->time_format)). 
    503      form::combo('time_format_select',$time_formats_combo). 
    504      '</p>'. 
    505      '<p class="chosen form-note">'.dt::str(html::escapeHTML($blog_settings->system->time_format)).'</p>'. 
     503     form::combo('time_format_select',$time_formats_combo,'','','',false,'title="'.__('Pattern of time').'"'). 
     504     '</p>'. 
     505     '<p class="chosen form-note">'.__('Sample:').' '.dt::str(html::escapeHTML($blog_settings->system->time_format)).'</p>'. 
    506506      
    507507     '<p><label for="use_smilies" class="classic">'. 
  • admin/js/_blog_theme.js

    r3 r2033  
    6565          details.removeClass('theme-selected'); 
    6666          $(e).addClass('theme-selected'); 
    67           $('input:radio',e).attr('checked','checked'); 
     67          $('input:radio',e).prop('checked',true); 
    6868     } 
    6969      
  • admin/js/jquery/jquery.pageTabs.js

    r2018 r2054  
    1818               $('ul li a[href$="#'+hash+'"]').parent().trigger('click'); 
    1919               active_tab = hash; 
    20           } else { // open first part 
     20          } else if (active_tab == '') { // open first part 
    2121               active_tab = $('.'+options.contentClass+':eq(0)').attr('id'); 
    2222          } 
  • admin/js/prelude.js

    r2009 r2029  
    1 // Accessibility links thks to vie-publique.fr 
    2 aFocus = function() { 
    3      if(document.getElementById("prelude")) { 
    4           var aElts = document.getElementById("prelude").getElementsByTagName("A"); 
    5           for (var i=0; i<aElts.length; i++) { 
    6                aElts[i].className="hidden"; 
    7                aElts[i].onfocus=function() { 
     1$(function() { 
     2     if ($('#prelude').length > 0) { 
     3          $('#prelude a') 
     4               .addClass('hidden') 
     5               .focus(function() { 
    86                    $('#prelude a').removeClass('hidden'); 
    9                     $('#wrapper').css('padding-top', '1em'); // il vaudrait mieux ajouter une class with-prelude … 
    10                     $('#help-button').css('top', '1em'); // … mais addClass ne marche pas (?) 
    11                     $('#collapser').css('top', '1em'); 
    12                } 
    13           } 
     7                    $('#wrapper, #help-button, #collapser').addClass('with-prelude'); 
     8               }); 
    149     } 
    15 } 
    16 // events onload 
    17 function addLoadEvent(func) { 
    18      if (window.addEventListener) 
    19           window.addEventListener("load", func, false); 
    20      else if (window.attachEvent) 
    21           window.attachEvent("onload", func); 
    22 } 
    23 addLoadEvent(aFocus); 
     10}); 
  • admin/posts.php

    r2130 r2133  
    106106$posts_actions_page = new dcPostsActionsPage($core,'posts.php'); 
    107107 
    108 $posts_actions_page->process(); 
    109  
    110 /* Get posts 
    111 -------------------------------------------------------- */ 
    112 $user_id = !empty($_GET['user_id']) ?   $_GET['user_id'] : ''; 
    113 $cat_id = !empty($_GET['cat_id']) ?     $_GET['cat_id'] : ''; 
    114 $status = isset($_GET['status']) ? $_GET['status'] : ''; 
    115 $selected = isset($_GET['selected']) ?  $_GET['selected'] : ''; 
    116 $month = !empty($_GET['month']) ?       $_GET['month'] : ''; 
    117 $lang = !empty($_GET['lang']) ?         $_GET['lang'] : ''; 
    118 $sortby = !empty($_GET['sortby']) ?     $_GET['sortby'] : 'post_dt'; 
    119 $order = !empty($_GET['order']) ?       $_GET['order'] : 'desc'; 
    120  
    121 $show_filters = false; 
    122  
    123 $page = !empty($_GET['page']) ? max(1,(integer) $_GET['page']) : 1; 
    124 $nb_per_page =  30; 
    125  
    126 if (!empty($_GET['nb']) && (integer) $_GET['nb'] > 0) { 
    127      if ($nb_per_page != $_GET['nb']) { 
    128           $show_filters = true; 
    129      } 
    130      $nb_per_page = (integer) $_GET['nb']; 
    131 } 
    132  
    133 $params['limit'] = array((($page-1)*$nb_per_page),$nb_per_page); 
    134 $params['no_content'] = true; 
    135  
    136 # - User filter 
    137 if ($user_id !== '' && in_array($user_id,$users_combo)) { 
    138      $params['user_id'] = $user_id; 
    139      $show_filters = true; 
    140 } else { 
    141      $user_id=''; 
    142 } 
    143  
    144 # - Categories filter 
    145 if ($cat_id !== '' && isset($categories_values[$cat_id])) { 
    146      $params['cat_id'] = $cat_id; 
    147      $show_filters = true; 
    148 } else { 
    149      $cat_id=''; 
    150 } 
    151  
    152 # - Status filter 
    153 if ($status !== '' && in_array($status,$status_combo)) { 
    154      $params['post_status'] = $status; 
    155      $show_filters = true; 
    156 } else { 
    157      $status=''; 
    158 } 
    159  
    160 # - Selected filter 
    161 if ($selected !== '' && in_array($selected,$selected_combo)) { 
    162      $params['post_selected'] = $selected; 
    163      $show_filters = true; 
    164 } else { 
    165      $selected=''; 
    166 } 
    167  
    168 # - Month filter 
    169 if ($month !== '' && in_array($month,$dt_m_combo)) { 
    170      $params['post_month'] = substr($month,4,2); 
    171      $params['post_year'] = substr($month,0,4); 
    172      $show_filters = true; 
    173 } else { 
    174      $month=''; 
    175 } 
    176  
    177 # - Lang filter 
    178 if ($lang !== '' && in_array($lang,$lang_combo)) { 
    179      $params['post_lang'] = $lang; 
    180      $show_filters = true; 
    181 } else { 
    182      $lang=''; 
    183 } 
    184  
    185 # - Sortby and order filter 
    186 if ($sortby !== '' && in_array($sortby,$sortby_combo)) { 
    187      if ($order !== '' && in_array($order,$order_combo)) { 
    188           $params['order'] = $sortby.' '.$order; 
    189      } else { 
     108if (!$posts_actions_page->process()) { 
     109 
     110     /* Get posts 
     111     -------------------------------------------------------- */ 
     112     $user_id = !empty($_GET['user_id']) ?   $_GET['user_id'] : ''; 
     113     $cat_id = !empty($_GET['cat_id']) ?     $_GET['cat_id'] : ''; 
     114     $status = isset($_GET['status']) ? $_GET['status'] : ''; 
     115     $selected = isset($_GET['selected']) ?  $_GET['selected'] : ''; 
     116     $month = !empty($_GET['month']) ?       $_GET['month'] : ''; 
     117     $lang = !empty($_GET['lang']) ?         $_GET['lang'] : ''; 
     118     $sortby = !empty($_GET['sortby']) ?     $_GET['sortby'] : 'post_dt'; 
     119     $order = !empty($_GET['order']) ?       $_GET['order'] : 'desc'; 
     120 
     121     $show_filters = false; 
     122 
     123     $page = !empty($_GET['page']) ? max(1,(integer) $_GET['page']) : 1; 
     124     $nb_per_page =  30; 
     125 
     126     if (!empty($_GET['nb']) && (integer) $_GET['nb'] > 0) { 
     127          if ($nb_per_page != $_GET['nb']) { 
     128               $show_filters = true; 
     129          } 
     130          $nb_per_page = (integer) $_GET['nb']; 
     131     } 
     132 
     133     $params['limit'] = array((($page-1)*$nb_per_page),$nb_per_page); 
     134     $params['no_content'] = true; 
     135 
     136     # - User filter 
     137     if ($user_id !== '' && in_array($user_id,$users_combo)) { 
     138          $params['user_id'] = $user_id; 
     139          $show_filters = true; 
     140     } else { 
     141          $user_id=''; 
     142     } 
     143 
     144     # - Categories filter 
     145     if ($cat_id !== '' && isset($categories_values[$cat_id])) { 
     146          $params['cat_id'] = $cat_id; 
     147          $show_filters = true; 
     148     } else { 
     149          $cat_id=''; 
     150     } 
     151 
     152     # - Status filter 
     153     if ($status !== '' && in_array($status,$status_combo)) { 
     154          $params['post_status'] = $status; 
     155          $show_filters = true; 
     156     } else { 
     157          $status=''; 
     158     } 
     159 
     160     # - Selected filter 
     161     if ($selected !== '' && in_array($selected,$selected_combo)) { 
     162          $params['post_selected'] = $selected; 
     163          $show_filters = true; 
     164     } else { 
     165          $selected=''; 
     166     } 
     167 
     168     # - Month filter 
     169     if ($month !== '' && in_array($month,$dt_m_combo)) { 
     170          $params['post_month'] = substr($month,4,2); 
     171          $params['post_year'] = substr($month,0,4); 
     172          $show_filters = true; 
     173     } else { 
     174          $month=''; 
     175     } 
     176 
     177     # - Lang filter 
     178     if ($lang !== '' && in_array($lang,$lang_combo)) { 
     179          $params['post_lang'] = $lang; 
     180          $show_filters = true; 
     181     } else { 
     182          $lang=''; 
     183     } 
     184 
     185     # - Sortby and order filter 
     186     if ($sortby !== '' && in_array($sortby,$sortby_combo)) { 
     187          if ($order !== '' && in_array($order,$order_combo)) { 
     188               $params['order'] = $sortby.' '.$order; 
     189          } else { 
     190               $order='desc'; 
     191          } 
     192           
     193          if ($sortby != 'post_dt' || $order != 'desc') { 
     194               $show_filters = true; 
     195          } 
     196     } else { 
     197          $sortby='post_dt'; 
    190198          $order='desc'; 
    191199     } 
    192       
    193      if ($sortby != 'post_dt' || $order != 'desc') { 
    194           $show_filters = true; 
    195      } 
    196 } else { 
    197      $sortby='post_dt'; 
    198      $order='desc'; 
    199 } 
    200  
    201 # Get posts 
    202 try { 
    203      $posts = $core->blog->getPosts($params); 
    204      $counter = $core->blog->getPosts($params,true); 
    205      $post_list = new adminPostList($core,$posts,$counter->f(0)); 
    206 } catch (Exception $e) { 
    207      $core->error->add($e->getMessage()); 
    208 } 
    209  
    210 /* DISPLAY 
    211 -------------------------------------------------------- */ 
    212  
    213 dcPage::open(__('Entries'), 
    214      dcPage::jsLoad('js/_posts_list.js'). 
    215      dcPage::jsLoad('js/filter-controls.js'). 
    216      '<script type="text/javascript">'."\n". 
    217      "//<![CDATA["."\n". 
    218      dcPage::jsVar('dotclear.msg.show_filters', $show_filters ? 'true':'false')."\n". 
    219      dcPage::jsVar('dotclear.msg.filter_posts_list',__('Filter posts list'))."\n". 
    220      dcPage::jsVar('dotclear.msg.cancel_the_filter',__('Cancel the filter'))."\n". 
    221      "//]]>". 
    222      "</script>", 
    223      dcPage::breadcrumb( 
    224           array( 
    225                html::escapeHTML($core->blog->name) => '', 
    226                '<span class="page-title">'.__('Entries').'</span>' => '' 
    227           )) 
    228 ); 
    229 if (!empty($_GET['upd'])) { 
    230      dcPage::success(__('Selected entries have been successfully updated.')); 
    231 } elseif (!empty($_GET['del'])) { 
    232      dcPage::success(__('Selected entries have been successfully deleted.')); 
    233 } 
    234 if (!$core->error->flag()) 
    235 { 
    236      echo 
    237      '<p class="top-add"><a class="button add" href="post.php">'.__('New entry').'</a></p>'. 
    238      '<form action="posts.php" method="get" id="filters-form">'. 
    239      '<h3 class="out-of-screen-if-js">'.__('Filters and display options').'</h3>'. 
    240       
    241      '<div class="table">'. 
    242      '<div class="cell">'. 
    243      '<h4>'.__('Filters').'</h4>'. 
    244      '<p><label for="user_id" class="ib">'.__('Author:').'</label> '. 
    245      form::combo('user_id',$users_combo,$user_id).'</p>'. 
    246      '<p><label for="cat_id" class="ib">'.__('Category:').'</label> '. 
    247      form::combo('cat_id',$categories_combo,$cat_id).'</p>'. 
    248      '<p><label for="status" class="ib">'.__('Status:').'</label> ' . 
    249      form::combo('status',$status_combo,$status).'</p> '. 
    250      '</div>'. 
    251       
    252      '<div class="cell filters-sibling-cell">'. 
    253      '<p><label for="selected" class="ib">'.__('Selected:').'</label> '. 
    254      form::combo('selected',$selected_combo,$selected).'</p>'. 
    255      '<p><label for="month" class="ib">'.__('Month:').'</label> '. 
    256      form::combo('month',$dt_m_combo,$month).'</p>'. 
    257      '<p><label for="lang" class="ib">'.__('Lang:').'</label> '. 
    258      form::combo('lang',$lang_combo,$lang).'</p> '. 
    259      '</div>'. 
    260       
    261      '<div class="cell filters-options">'. 
    262      '<h4>'.__('Display options').'</h4>'. 
    263      '<p><label for="sortby" class="ib">'.__('Order by:').'</label> '. 
    264      form::combo('sortby',$sortby_combo,$sortby).'</p>'. 
    265      '<p><label for="order" class="ib">'.__('Sort:').'</label> '. 
    266      form::combo('order',$order_combo,$order).'</p>'. 
    267      '<p><span class="label ib">'.__('Show').'</span> <label for="nb" class="classic">'. 
    268      form::field('nb',3,3,$nb_per_page).' '. 
    269      __('entries per page').'</label></p>'. 
    270      '</div>'. 
    271      '</div>'. 
    272  
    273      '<p><input type="submit" value="'.__('Apply filters and display options').'" />'. 
    274      '<br class="clear" /></p>'. //Opera sucks 
    275      '</form>'; 
    276       
    277      # Show posts 
    278      $post_list->display($page,$nb_per_page, 
    279      '<form action="posts.php" method="post" id="form-entries">'. 
    280       
    281      '%s'. 
    282       
    283      '<div class="two-cols">'. 
    284      '<p class="col checkboxes-helpers"></p>'. 
    285       
    286      '<p class="col right"><label for="action" class="classic">'.__('Selected entries action:').'</label> '. 
    287      form::combo('action',$posts_actions_page->getCombo()). 
    288      '<input type="submit" value="'.__('ok').'" /></p>'. 
    289      form::hidden(array('user_id'),$user_id). 
    290      form::hidden(array('cat_id'),$cat_id). 
    291      form::hidden(array('status'),$status). 
    292      form::hidden(array('selected'),$selected). 
    293      form::hidden(array('month'),$month). 
    294      form::hidden(array('lang'),$lang). 
    295      form::hidden(array('sortby'),$sortby). 
    296      form::hidden(array('order'),$order). 
    297      form::hidden(array('page'),$page). 
    298      form::hidden(array('nb'),$nb_per_page). 
    299      $core->formNonce(). 
    300      '</div>'. 
    301      '</form>', 
    302      $show_filters 
    303      ); 
    304 } 
    305  
    306 dcPage::helpBlock('core_posts'); 
    307 dcPage::close(); 
     200 
     201     # Get posts 
     202     try { 
     203          $posts = $core->blog->getPosts($params); 
     204          $counter = $core->blog->getPosts($params,true); 
     205          $post_list = new adminPostList($core,$posts,$counter->f(0)); 
     206     } catch (Exception $e) { 
     207          $core->error->add($e->getMessage()); 
     208     } 
     209 
     210     /* DISPLAY 
     211     -------------------------------------------------------- */ 
     212 
     213     dcPage::open(__('Entries'), 
     214          dcPage::jsLoad('js/_posts_list.js'). 
     215          dcPage::jsLoad('js/filter-controls.js'). 
     216          '<script type="text/javascript">'."\n". 
     217          "//<![CDATA["."\n". 
     218          dcPage::jsVar('dotclear.msg.show_filters', $show_filters ? 'true':'false')."\n". 
     219          dcPage::jsVar('dotclear.msg.filter_posts_list',__('Filter posts list'))."\n". 
     220          dcPage::jsVar('dotclear.msg.cancel_the_filter',__('Cancel the filter'))."\n". 
     221          "//]]>". 
     222          "</script>", 
     223          dcPage::breadcrumb( 
     224               array( 
     225                    html::escapeHTML($core->blog->name) => '', 
     226                    '<span class="page-title">'.__('Entries').'</span>' => '' 
     227               )) 
     228     ); 
     229     if (!empty($_GET['upd'])) { 
     230          dcPage::success(__('Selected entries have been successfully updated.')); 
     231     } elseif (!empty($_GET['del'])) { 
     232          dcPage::success(__('Selected entries have been successfully deleted.')); 
     233     } 
     234     if (!$core->error->flag()) 
     235     { 
     236          echo 
     237          '<p class="top-add"><a class="button add" href="post.php">'.__('New entry').'</a></p>'. 
     238          '<form action="posts.php" method="get" id="filters-form">'. 
     239          '<h3 class="out-of-screen-if-js">'.__('Filters and display options').'</h3>'. 
     240      
     241          '<div class="table">'. 
     242          '<div class="cell">'. 
     243          '<h4>'.__('Filters').'</h4>'. 
     244          '<p><label for="user_id" class="ib">'.__('Author:').'</label> '. 
     245          form::combo('user_id',$users_combo,$user_id).'</p>'. 
     246          '<p><label for="cat_id" class="ib">'.__('Category:').'</label> '. 
     247          form::combo('cat_id',$categories_combo,$cat_id).'</p>'. 
     248          '<p><label for="status" class="ib">'.__('Status:').'</label> ' . 
     249          form::combo('status',$status_combo,$status).'</p> '. 
     250          '</div>'. 
     251           
     252          '<div class="cell filters-sibling-cell">'. 
     253          '<p><label for="selected" class="ib">'.__('Selected:').'</label> '. 
     254          form::combo('selected',$selected_combo,$selected).'</p>'. 
     255          '<p><label for="month" class="ib">'.__('Month:').'</label> '. 
     256          form::combo('month',$dt_m_combo,$month).'</p>'. 
     257          '<p><label for="lang" class="ib">'.__('Lang:').'</label> '. 
     258          form::combo('lang',$lang_combo,$lang).'</p> '. 
     259          '</div>'. 
     260           
     261          '<div class="cell filters-options">'. 
     262          '<h4>'.__('Display options').'</h4>'. 
     263          '<p><label for="sortby" class="ib">'.__('Order by:').'</label> '. 
     264          form::combo('sortby',$sortby_combo,$sortby).'</p>'. 
     265          '<p><label for="order" class="ib">'.__('Sort:').'</label> '. 
     266          form::combo('order',$order_combo,$order).'</p>'. 
     267          '<p><span class="label ib">'.__('Show').'</span> <label for="nb" class="classic">'. 
     268          form::field('nb',3,3,$nb_per_page).' '. 
     269          __('entries per page').'</label></p>'. 
     270          '</div>'. 
     271          '</div>'. 
     272 
     273          '<p><input type="submit" value="'.__('Apply filters and display options').'" />'. 
     274          '<br class="clear" /></p>'. //Opera sucks 
     275          '</form>'; 
     276           
     277          # Show posts 
     278          $post_list->display($page,$nb_per_page, 
     279          '<form action="posts.php" method="post" id="form-entries">'. 
     280           
     281          '%s'. 
     282           
     283          '<div class="two-cols">'. 
     284          '<p class="col checkboxes-helpers"></p>'. 
     285           
     286          '<p class="col right"><label for="action" class="classic">'.__('Selected entries action:').'</label> '. 
     287          form::combo('action',$posts_actions_page->getCombo()). 
     288          '<input type="submit" value="'.__('ok').'" /></p>'. 
     289          form::hidden(array('user_id'),$user_id). 
     290          form::hidden(array('cat_id'),$cat_id). 
     291          form::hidden(array('status'),$status). 
     292          form::hidden(array('selected'),$selected). 
     293          form::hidden(array('month'),$month). 
     294          form::hidden(array('lang'),$lang). 
     295          form::hidden(array('sortby'),$sortby). 
     296          form::hidden(array('order'),$order). 
     297          form::hidden(array('page'),$page). 
     298          form::hidden(array('nb'),$nb_per_page). 
     299          $core->formNonce(). 
     300          '</div>'. 
     301          '</form>', 
     302          $show_filters 
     303          ); 
     304     } 
     305 
     306     dcPage::helpBlock('core_posts'); 
     307     dcPage::close(); 
     308} 
    308309?> 
  • admin/style/default.css

    r2132 r2133  
    2525     display: table; 
    2626     } 
    27 #wrapper, #wrapper.with-prelude { 
     27#wrapper { 
    2828     position: relative; 
    2929     padding-top: 1.5em; 
     
    490490     box-shadow: 1px 1px 2px #F1F1F1 inset; 
    491491     padding: 3px;  
     492     vertical-align: top; 
    492493     } 
    493494     input:focus, textarea:focus, select:focus { 
     
    517518               background: transparent url(../images/check-on.png) no-repeat 0 50%; 
    518519               } 
     520          option.sub-option1 { 
     521               margin-left: .5em; 
     522          } 
     523          option.sub-option2 { 
     524               margin-left: 1.5em; 
     525          } 
     526          option.sub-option3 { 
     527               margin-left: 2.5em; 
     528          } 
     529          option.sub-option4 { 
     530               margin-left: 3.5em; 
     531          } 
     532          option.sub-option5 { 
     533               margin-left: 4.5em; 
     534          } 
     535          option.sub-option6 { 
     536               margin-left: 5.5em; 
     537          } 
     538          option.sub-option7 { 
     539               margin-left: 6.5em; 
     540          } 
     541          option.sub-option8 { 
     542               margin-left: 7.5em; 
     543          } 
     544          option.sub-option1:before, option.sub-option2:before, option.sub-option3:before, option.sub-option4:before, 
     545          option.sub-option5:before, option.sub-option6:before, option.sub-option7:before, option.sub-option8:before { 
     546               content: "\002022\0000a0"; 
     547          } 
    519548     input.invalid, textarea.invalid, select.invalid { 
    520549          border: 1px solid red; 
     
    571600          display: inline-block; 
    572601          width: 14em; 
     602          } 
     603     p.field.wide label { 
     604          width: 21em; 
    573605          } 
    574606     p.field input, p.field select { 
     
    605637     border: 1px solid #ccc; 
    606638     font-family: "DejaVu Sans","Lucida Grande","Lucida Sans Unicode",Arial,sans-serif; 
    607      padding: 4px 10px; 
     639     padding: 3px 10px; 
    608640     line-height: normal !important; 
    609641     display: inline-block; 
     
    849881          background: #A2CBE9; 
    850882          color: #000; 
    851           border-bottom-color: #A2CBE9; 
    852           } 
     883          text-decoration: underline; 
     884          } 
     885     #prelude li a:hover, #prelude li a:focus { 
     886          background: #FFF; 
     887          } 
     888/* si le prélude est affiché on repousse les trucs dessous */ 
     889#wrapper.with-prelude {  
     890     padding-top: 1em; 
     891     } 
     892#help-button.with-prelude, #collapser.with-prelude { 
     893     top: 1em; 
     894     } 
    853895/* header global h1, form#top-info-blog, ul#top-info-user */ 
    854896#header a { 
     
    875917          top: 0; 
    876918          left: 0; 
    877           width: 174px; /* ie < 9 sucks */ 
    878           width: 17.4rem; 
     919          width: 15em; 
    879920          height: 36px; /* ie < 9 sucks */ 
    880921          height: 3.6rem; 
     
    922963     border-bottom-color: #fff; 
    923964     margin: 0; 
    924      padding: 16px .5em; 
     965     padding: 18px .5em; 
    925966     background-color: #fff; 
    926967     color: #333; 
     
    13101351     background: transparent url(dc_logos/w-dotclear240.png) no-repeat top left; 
    13111352     height: 66px; 
     1353     width: 20em; 
    13121354     margin-bottom: .5em; 
    13131355     margin-left: 0; 
     
    20862128     } 
    20872129/* password indicator */ 
    2088 .install .pw-table, .install .pw-cell, .install .pwindicator { 
    2089      display: block; 
    2090      } 
    20912130.pw-table { 
    20922131     display: table; 
     
    23322371/* ------------------------------------------------------------------------------------ 
    23332372                                                                           UN POIL DE MEDIA QUERIES 
    2334 ------------------------------------------------------------------------------------ 
    2335 @media screen and (max-width: 920px) { 
    2336      #top, #top h1 a { 
    2337           width: 42px !important;  
    2338           height:100%;  
    2339           overflow: hidden; 
    2340           } 
    2341           #top h1 a:link { 
    2342                background: transparent url(dc_logos/b-dotclear120.png) no-repeat -180px 6px; 
    2343                border-right: 1px solid #ccc; 
    2344                } 
    2345           #top h1 a:hover, #top h1 a:focus { 
    2346                background: url(dc_logos/b-dotclear120.png) no-repeat -180px -94px; 
    2347                border-right: 1px solid #A2CBE9; 
    2348                } 
    2349      } 
    2350 @media screen and (max-width: 800px) { 
    2351      #top, #info-boxes, #info-box1, #info-box2 { 
    2352           display:inline-block; 
    2353           vertical-align:middle; 
    2354           margin:0; 
    2355           padding:0; 
    2356           line-height: 32px; line-height: 3.2rem; 
    2357           } 
    2358           #info-box1 { margin-left: .75em; } 
    2359           #info-box1 select { width: 140px; width: 14rem; } 
    2360      #main-menu, #main, #content, #content h2, #entry-wrapper, #entry-sidebar, #entry-content,  
    2361      .two-cols .col, .three-cols .col, .two-cols .col30, .two-cols .col70, .two-boxes, .three-boxes { 
    2362           display:block !important; 
    2363           width: 98% !important; 
    2364           margin:0 auto !important; 
    2365           padding:0; 
    2366           float:none; 
    2367           text-align: left; 
    2368           clear: both; 
    2369           } 
    2370      #content { 
     2373------------------------------------------------------------------------------------ */ 
     2374@media screen and (max-width: 1000px) { 
     2375     #header { 
     2376          display: block; 
    23712377          width: 100%; 
    2372           padding-top: .5em; 
    2373           } 
    2374      } 
    2375 @media screen and (max-width: 720px) { 
    2376      .smallscreen { display: none; } 
    2377      #info-box2 { float:none; } 
    2378      #help-button { 
    2379           height:26px;  
    2380           width:26px;  
    2381           background-color: #A2CBE9;  
    2382           padding: 0;  
     2378          text-align: right; 
     2379          background: #333; 
     2380          }  
     2381     #header h1, #header h1 a { 
     2382          width: 120px; 
     2383          padding: 0; 
     2384          margin: 0; 
     2385          } 
     2386     h1, #top-info-blog { 
     2387          display: inline-block; 
     2388          vertical-align: top; 
     2389          margin-right: 1em; 
     2390          } 
     2391     #top-info-user { 
     2392          display: block; 
     2393          width: 100%; 
     2394          background: #676e78; 
     2395          padding-right: 0; 
     2396          } 
     2397     #top-info-user li:last-child { 
     2398          padding-right: 1em; 
     2399          } 
     2400     #top-info-user a.active { 
     2401          padding: 2px 8px; 
     2402          }  
     2403     .three-boxes, .three-boxes .box, 
     2404     .three-boxes:first-child, .three-boxes.first-child, 
     2405     .three-boxes:last-child, .three-boxes.last-child, 
     2406     .two-cols .col70, .two-cols .col30 { 
     2407          width: 100%; 
     2408          margin-left: 0; 
     2409          margin-right: 0;  
     2410          } 
     2411     } 
     2412@media screen and (max-width: 700px) { 
     2413      #help-button { 
     2414          height:26px; 
     2415          width:26px; 
     2416          background-color: #A2CBE9; 
     2417          padding: 0; 
    23832418          margin: 0; 
    23842419          font-size: 10px; font-size: 1rem; 
    23852420          line-height: 68px; 
    23862421          overflow: hidden; 
    2387           } 
    2388      .one-box, .two-boxes, .three-boxes { 
     2422          }     
     2423     #content.with-help #help-button { 
     2424          top: 77px; 
     2425          } 
     2426     } 
     2427@media screen and (max-width: 600px) { 
     2428     #header h1, #header h1 a { 
     2429          width: 42px !important;  
     2430          height: 42px; 
     2431          } 
     2432     h1 a:link { 
     2433          background: transparent url(dc_logos/b-dotclear120.png) no-repeat -180px 6px; 
     2434          border-right: 1px solid #ccc; 
     2435          } 
     2436     h1 a:hover, h1 a:focus { 
     2437          background: url(dc_logos/b-dotclear120.png) no-repeat -180px -94px; 
     2438          border-right: 1px solid #A2CBE9; 
     2439          } 
     2440     #wrapper, #main, #main-menu { 
     2441          display: block; 
     2442          float: none; 
     2443          width: 100%; 
     2444          margin: 0; 
     2445          } 
     2446     #main-menu a { 
     2447          display: block; 
     2448          width: 100%; 
     2449          } 
     2450     #main-menu h3 a { 
     2451          display: inline; 
     2452          } 
     2453     #content { 
     2454          margin: 0; 
     2455          padding: 0 .5em; 
     2456          } 
     2457     #collapser { 
     2458          display: none; 
     2459          } 
     2460     #main #content > h2 { 
     2461          margin: 0; 
     2462          padding: 6px 0; 
     2463          } 
     2464     .one-box, .two-boxes, 
     2465     .one-box .box, .two-boxes .box, 
     2466     .two-boxes:first-child, .two-boxes.odd, .two-boxes.odd:last-child, 
     2467     .two-boxes.even:last-child, .two-boxes.even, 
     2468     .two-cols .col { 
    23892469          width: 100%; 
    23902470          margin-left: 0; 
     
    23922472          } 
    23932473     } 
    2394 @media screen and (max-width: 492px) { 
    2395      #header { height: 36px; height: 3.6rem; } 
    2396      #wrapper { font-size: 16px; font-size: 1.6rem; } 
    2397      .page-title, #info-boxes { display: inline-block; } 
    2398      #info-box1 select { 
    2399           width: 120px; width: 12rem;  
    2400           margin-right: .6rem; 
    2401           } 
    2402      #info-box1 p.nomobile, label.nomobile { display: none; } 
    2403      } 
    2404 */ 
     2474@media screen and (max-width: 500px) { 
     2475     h1, h1 a { 
     2476          padding: 0; 
     2477          border-right: #333 !important; 
     2478          } 
     2479     #top-info-blog label, .nomobile { 
     2480          display: none; 
     2481          } 
     2482     #top-info-blog select { 
     2483          margin-bottom: .5em; 
     2484          margin-right: 0 !important; 
     2485          } 
     2486     #top-info-blog p { 
     2487          display: block; 
     2488          } 
     2489     #dashboard-boxes .box { /* a revoir quand le dashboard sera fini */ 
     2490          margin: 10px 0; 
     2491          min-width: 280px; 
     2492          width: 280px; 
     2493          } 
     2494     #content.with-help #help-button { 
     2495          top: 101px; 
     2496          } 
     2497     } 
  • admin/style/install.css

    r1620 r2031  
    162162/* --------------------------------------------------------------- password indcator */ 
    163163.pw-table { 
    164      display: table; 
    165      margin-bottom: 1em; 
     164     display: block; 
     165     margin-bottom: .25em; 
    166166} 
    167167.pw-cell { 
    168      display: table-cell; 
    169      margin-bottom: 1em; 
     168     display: block; 
     169     margin-bottom: .25em; 
    170170} 
    171171#pwindicator { 
    172      display: table-cell; 
     172     display: block; 
    173173     vertical-align: bottom; 
    174174     padding-left: 1.5em; 
    175      height: 3.8em; 
    176175} 
    177176#pwindicator .bar { 
  • inc/admin/actions/class.dcaction.php

    r2015 r2055  
    4444     protected $cb_title; 
    4545      
     46     /** @var string title for caller page title */ 
     47     protected $caller_title; 
     48      
    4649    /** 
    4750     * Class constructor 
     
    6669          $this->from = new ArrayObject($_POST); 
    6770          $this->field_entries = 'entries'; 
     71          $this->caller_title = __('Entries'); 
    6872     } 
    6973      
     
    194198     } 
    195199 
     200 
    196201     /** 
    197202     * getRedirection - returns redirection URL 
     
    213218          return $this->uri.'?'.http_build_query($redir_args); 
    214219     } 
    215  
     220      
    216221     /** 
    217222     * redirect - redirects to redirection page 
     
    223228     public function redirect($params=array(),$with_selected_entries=false) { 
    224229          http::redirect($this->getRedirection($params,$with_selected_entries)); 
     230          exit; 
    225231     }     
    226232      
    227233     /** 
     234     * getURI - returns current form URI, if any 
     235     * 
     236     * @access public 
     237      * 
     238     * @return string the form URI 
     239     */ 
     240     public function getURI() { 
     241          return $this->uri; 
     242     } 
     243 
     244     /** 
     245     * getCallerTitle - returns current form URI, if any 
     246     * 
     247     * @access public 
     248      * 
     249     * @return string the form URI 
     250     */ 
     251     public function getCallerTitle() { 
     252          return $this->caller_title; 
     253     } 
     254      
     255     /** 
    228256     * getAction - returns current action, if any 
    229257     * 
    230       * @see getRedirection for arguments details 
    231       * 
    232258     * @access public 
    233259      * 
     
    261287                    } 
    262288                    if ($performed) { 
    263                          exit; 
     289                         return true; 
    264290                    } 
    265291               } catch (Exception $e) { 
    266292                    $this->error($e); 
     293                    return true; 
    267294               } 
    268295          } 
  • inc/admin/actions/class.dcactionposts.php

    r2001 r2059  
    1919          'selected','month','lang','sortby','order','page','nb'); 
    2020          $this->loadDefaults(); 
    21           $core->callBehavior('adminPostsActionsPage',$core,$this); 
    2221     } 
    2322 
     
    2625          // to be setup first 
    2726          dcDefaultPostActions::adminPostsActionsPage($this->core,$this); 
     27          $this->core->callBehavior('adminPostsActionsPage',$this->core,$this); 
     28 
    2829     } 
    2930      
     
    4849               array( 
    4950                    html::escapeHTML($this->core->blog->name) => '', 
    50                     __('Entries') => 'posts.php', 
     51                    $this->getCallerTitle() => $this->getRedirection(array(),true), 
    5152                    '<span class="page-title">'.__('Entries actions').'</span>' => '' 
    5253               )) 
     
    8788class dcDefaultPostActions  
    8889{ 
    89      public static function adminPostsActionsPage($core, dcPostsActionsPage $ap) { 
     90     public static function adminPostsActionsPage($core, $ap) { 
    9091          if ($core->auth->check('publish,contentadmin',$core->blog->id)) { 
    9192               $ap->addAction( 
     
    211212               $ap->redirect(array('upd'=>1),true); 
    212213          } else { 
     214 
    213215               $ap->beginPage( 
    214216                    dcPage::breadcrumb( 
    215217                         array( 
    216218                              html::escapeHTML($core->blog->name) => '', 
    217                               __('Entries') => 'posts.php', 
    218                               '<span class="page-title">'.__('Change category for entries').'</span>' => '' 
     219                              $ap->getCallerTitle() => $ap->getRedirection(array(),true), 
     220                              '<span class="page-title">'.__('Change category for this selection').'</span>' => '' 
    219221               ))); 
    220                 
    221222               # categories list 
    222223               # Getting categories 
    223224               $categories_combo = dcAdminCombos::getCategoriesCombo( 
    224                     $core->blog->getCategories(array('post_type'=>'post')) 
     225                    $core->blog->getCategories() 
    225226               );              
    226227               echo 
    227                '<form action="posts.php" method="post">'. 
     228               '<form action="'.$ap->getRedirection(array(),true).'" method="post">'. 
    228229               $ap->getCheckboxes(). 
    229230               '<p><label for="new_cat_id" class="classic">'.__('Category:').'</label> '. 
    230                form::combo('new_cat_id',$categories_combo,''); 
     231               form::combo(array('new_cat_id'),$categories_combo,''); 
    231232                
    232233               if ($core->auth->check('categories', $core->blog->id)) { 
     
    244245               echo 
    245246               $core->formNonce(). 
     247               $ap->getHiddenFields(). 
    246248               form::hidden(array('action'),'category'). 
    247249               '<input type="submit" value="'.__('Save').'" /></p>'. 
     
    285287                         array( 
    286288                              html::escapeHTML($core->blog->name) => '', 
    287                               __('Entries') => 'posts.php', 
    288                               '<span class="page-title">'.__('Change author for entries').'</span>' => '')), 
     289                              $ap->getCallerTitle() => $ap->getRedirection(array(),true), 
     290                              '<span class="page-title">'.__('Change author for this selection').'</span>' => '')), 
    289291                         dcPage::jsLoad('js/jquery/jquery.autocomplete.js'). 
    290292                         '<script type="text/javascript">'."\n". 
     
    296298 
    297299               echo 
    298                '<form action="posts_actions.php" method="post">'. 
     300               '<form action="'.$ap->getRedirection(array(),true).'" method="post">'. 
    299301               $ap->getCheckboxes(). 
    300302               '<p><label for="new_auth_id" class="classic">'.__('New author (author ID):').'</label> '. 
     
    302304                
    303305               echo 
    304                     $core->formNonce(). 
     306                    $core->formNonce().$ap->getHiddenFields(). 
    305307                    form::hidden(array('action'),'author'). 
    306308                    '<input type="submit" value="'.__('Save').'" /></p>'. 
     
    326328                         array( 
    327329                              html::escapeHTML($core->blog->name) => '', 
    328                               __('Entries') => 'posts.php', 
    329                               '<span class="page-title">'.__('Change language for entries').'</span>' => '' 
     330                              $ap->getCallerTitle() => $ap->getRedirection(array(),true), 
     331                              '<span class="page-title">'.__('Change language for this selection').'</span>' => '' 
    330332               ))); 
    331333               # lang list 
     
    346348                
    347349               echo 
    348                '<form action="posts_actions.php" method="post">'. 
     350               '<form action="'.$ap->getRedirection(array(),true).'" method="post">'. 
    349351               $ap->getCheckboxes(). 
    350352                
     
    353355                
    354356               echo 
    355                     $core->formNonce(). 
     357                    $core->formNonce().$ap->getHiddenFields(). 
    356358                    form::hidden(array('action'),'lang'). 
    357359                    '<input type="submit" value="'.__('Save').'" /></p>'. 
    358360                    '</form>'; 
     361               $ap->endPage(); 
    359362          } 
    360363     } 
  • inc/admin/lib.admincombos.php

    r1780 r2049  
    3737          while ($categories->fetch()) { 
    3838               $categories_combo[] = new formSelectOption ( 
    39                     str_repeat('&nbsp;&nbsp;',$categories->level-1).($categories->level-1 == 0 ? '' : '&bull; '). 
    4039                    html::escapeHTML($categories->cat_title).' ('.$categories->nb_post.')', 
    41                     $categories->cat_id 
     40                    $categories->cat_id, 
     41                    ($categories->level-1 ? 'sub-option'.($categories->level-1) : '') 
    4242               ); 
    4343          } 
  • inc/admin/lib.dc.page.php

    r2011 r2054  
    142142          '<li><a class="smallscreen'.(preg_match('/preferences.php(\?.*)?$/',$_SERVER['REQUEST_URI']) ? ' active' : ''). 
    143143          '" href="preferences.php">'.__('My preferences').'</a></li>'. 
    144           '<li><a href="index.php?logout=1" class="logout">'.sprintf(__('Logout %s'),$core->auth->userID()). 
    145           '<img src="images/logout.png" alt="" /></a></li>'. 
     144          '<li><a href="index.php?logout=1" class="logout"><span class="nomobile">'.sprintf(__('Logout %s'),$core->auth->userID()). 
     145          '</span><img src="images/logout.png" alt="" /></a></li>'. 
    146146          '</ul>'. 
    147147          '</div>'; // end header 
     
    160160          { 
    161161               echo 
    162                '<div class="error"><h3>'.__('Safe mode').'</h3>'. 
     162               '<div class="warning"><h3>'.__('Safe mode').'</h3>'. 
    163163               '<p>'.__('You are in safe mode. All plugins have been temporarily disabled. Remind to log out then log in again normally to get back all functionalities').'</p>'. 
    164164               '</div>'; 
     
    275275          '<body id="dotclear-admin" class="popup">'."\n". 
    276276 
    277           '<div id="top hidden"><h1>'.DC_VENDOR_NAME.'</h1></div>'."\n"; 
     277          '<h1>'.DC_VENDOR_NAME.'</h1>'."\n"; 
    278278 
    279279          echo 
     
    298298          "</div>\n".         // End of #content 
    299299          "</div>\n".         // End of #main 
     300          "</div>\n".         // End of #wrapper 
    300301          '<div id="footer"><p>&nbsp;</p></div>'."\n". 
    301           "</div>\n".         // End of #wrapper 
    302302          '</body></html>'; 
    303303     } 
     
    650650          "//<![CDATA[\n". 
    651651          '$(function() {'."\n". 
    652           '$.pageTabs(".$default.");'."\n". 
     652          '$.pageTabs('.$default.');'."\n". 
    653653          '});'."\n". 
    654654          "\n//]]>\n". 
  • locales/_pot/main.pot

    r2132 r2133  
    88"Project-Id-Version: Dotclear 2\n" 
    99"Report-Msgid-Bugs-To: \n" 
    10 "POT-Creation-Date: 2013-09-22 16:57+0000\n" 
     10"POT-Creation-Date: 2013-09-24 07:51+0000\n" 
    1111"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 
    1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 
     
    1818"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" 
    1919 
     20#: admin/_fake_l10n.php:4 
     21msgid "medium" 
     22msgstr "" 
     23 
     24#: admin/_fake_l10n.php:5 
     25msgid "small" 
     26msgstr "" 
     27 
     28#: admin/_fake_l10n.php:6 
     29msgid "thumbnail" 
     30msgstr "" 
     31 
     32#: admin/_fake_l10n.php:7 
     33msgid "square" 
     34msgstr "" 
     35 
     36#: admin/_fake_l10n.php:11 
     37msgid "Manage every blog configuration directive" 
     38msgstr "" 
     39 
     40#: admin/_fake_l10n.php:12 
     41msgid "Akismet interface for Dotclear" 
     42msgstr "" 
     43 
     44#: admin/_fake_l10n.php:13 
     45msgid "Generic antispam plugin for Dotclear" 
     46msgstr "" 
     47 
     48#: admin/_fake_l10n.php:14 
     49msgid "Manage post attachments" 
     50msgstr "" 
     51 
     52#: admin/_fake_l10n.php:15 
     53msgid "Manage your blogroll" 
     54msgstr "" 
     55 
     56#: admin/_fake_l10n.php:16 
     57msgid "Configure your Blowup Theme" 
     58msgstr "" 
     59 
     60#: admin/_fake_l10n.php:17 
     61msgid "Install and update your plugins live from DotAddict.org" 
     62msgstr "" 
     63 
     64#: admin/_fake_l10n.php:18 
     65msgid "Trackback validity check" 
     66msgstr "" 
     67 
     68#: admin/_fake_l10n.php:19 
     69msgid "Import and Export your blog" 
     70msgstr "" 
     71 
     72#: admin/_fake_l10n.php:20 
     73msgid "Maintain your installation" 
     74msgstr "" 
     75 
     76#: admin/_fake_l10n.php:21 
     77msgid "Serve entries as simple web pages" 
     78msgstr "" 
     79 
     80#: admin/_fake_l10n.php:22 
     81msgid "Ping services" 
     82msgstr "" 
     83 
     84#: admin/_fake_l10n.php:23 
     85msgid "Simple menu for Dotclear" 
     86msgstr "" 
     87 
     88#: admin/_fake_l10n.php:24 
     89msgid "Tags for posts" 
     90msgstr "" 
     91 
     92#: admin/_fake_l10n.php:25 
     93msgid "Theme Editor" 
     94msgstr "" 
     95 
     96#: admin/_fake_l10n.php:26 
     97msgid "Manage every user preference directive" 
     98msgstr "" 
     99 
     100#: admin/_fake_l10n.php:27 
     101msgid "Widgets for your blog sidebars" 
     102msgstr "" 
     103 
     104#: admin/_fake_l10n.php:31 
     105msgid "Search engine form" 
     106msgstr "" 
     107 
     108#: admin/_fake_l10n.php:32 
     109msgid "List of navigation links" 
     110msgstr "" 
     111 
     112#: admin/_fake_l10n.php:33 
     113msgid "List of selected entries" 
     114msgstr "" 
     115 
     116#: admin/_fake_l10n.php:34 
     117msgid "List of available languages" 
     118msgstr "" 
     119 
     120#: admin/_fake_l10n.php:35 
     121msgid "List of categories" 
     122msgstr "" 
     123 
     124#: admin/_fake_l10n.php:36 
     125msgid "RSS or Atom feed subscription links" 
     126msgstr "" 
     127 
     128#: admin/_fake_l10n.php:37 
     129msgid "Last entries from feed" 
     130msgstr "" 
     131 
     132#: admin/_fake_l10n.php:38 
     133msgid "Simple text" 
     134msgstr "" 
     135 
     136#: admin/_fake_l10n.php:39 
     137msgid "List of last entries published" 
     138msgstr "" 
     139 
     140#: admin/_fake_l10n.php:40 
     141msgid "List of last comments posted" 
     142msgstr "" 
     143 
     144#: admin/_fake_l10n.php:41 
     145msgid "Tags cloud" 
     146msgstr "" 
     147 
     148#: admin/_fake_l10n.php:42 
     149msgid "List of published pages" 
     150msgstr "" 
     151 
     152#: admin/_fake_l10n.php:43 
     153msgid "Blogroll list" 
     154msgstr "" 
     155 
     156#: admin/_fake_l10n.php:44 
     157msgid "List of simple menu items" 
     158msgstr "" 
     159 
     160#: admin/_fake_l10n.php:52 
     161msgid "Posts" 
     162msgstr "" 
     163 
     164#: admin/_fake_l10n.php:53 admin/_fake_l10n.php:63 
     165msgid "Pages" 
     166msgstr "" 
     167 
     168#: admin/_fake_l10n.php:57 admin/index.php:122 admin/index.php:356 
     169#: admin/post.php:35 admin/post.php:554 admin/posts.php:232 
     170#: inc/admin/prepend.php:327 inc/admin/prepend.php:378 
     171msgid "New entry" 
     172msgstr "" 
     173 
     174#: admin/_fake_l10n.php:58 admin/post.php:361 admin/post.php:375 
     175#: admin/posts.php:217 admin/posts.php:221 admin/users_actions.php:216 
     176#: inc/admin/actions/class.dcaction.php:71 
     177#: inc/admin/actions/class.dcactionposts.php:33 inc/admin/prepend.php:324 
     178msgid "Entries" 
     179msgstr "" 
     180 
     181#: admin/_fake_l10n.php:59 admin/post.php:641 admin/post.php:654 
     182#: inc/admin/actions/class.dcactioncomments.php:21 
     183#: inc/admin/actions/class.dcactioncomments.php:34 
     184#: inc/admin/actions/class.dcactioncomments.php:52 inc/admin/lib.pager.php:175 
     185#: inc/admin/prepend.php:321 
     186msgid "Comments" 
     187msgstr "" 
     188 
     189#: admin/_fake_l10n.php:60 admin/index.php:124 admin/media.php:440 
     190#: admin/preferences.php:17 inc/admin/lib.dc.page.php:143 
     191msgid "My preferences" 
     192msgstr "" 
     193 
     194#: admin/_fake_l10n.php:61 admin/blog_pref.php:272 admin/blog_pref.php:279 
     195#: admin/blog_pref.php:283 inc/admin/prepend.php:309 
     196msgid "Blog settings" 
     197msgstr "" 
     198 
     199#: admin/_fake_l10n.php:62 admin/blog_theme.php:214 admin/blog_theme.php:220 
     200#: admin/blog_theme.php:225 inc/admin/prepend.php:306 
     201msgid "Blog appearance" 
     202msgstr "" 
     203 
     204#: admin/_fake_l10n.php:64 
     205msgid "Blogroll" 
     206msgstr "" 
     207 
    20208#: admin/auth.php:46 inc/libs/clearbricks/tests/unit/common/lib.l10n.php:49 
    21209#: inc/libs/clearbricks/tests/unit/common/lib.l10n.php:183 
     
    58246msgstr "" 
    59247 
    60 #: admin/auth.php:166 admin/install/index.php:84 admin/preferences.php:109 
     248#: admin/auth.php:166 admin/install/index.php:84 admin/preferences.php:110 
    61249#: admin/user.php:101 
    62250msgid "Passwords don't match" 
     
    92280 
    93281#: admin/auth.php:338 admin/blog_pref.php:662 admin/comment.php:218 
    94 #: admin/install/index.php:324 admin/post.php:687 admin/preferences.php:424 
     282#: admin/install/index.php:324 admin/post.php:687 admin/preferences.php:426 
    95283#: admin/user.php:262 inc/admin/lib.dc.page.php:539 
    96284msgid "Email:" 
     
    105293msgstr "" 
    106294 
    107 #: admin/auth.php:353 admin/install/index.php:333 admin/preferences.php:443 
     295#: admin/auth.php:353 admin/install/index.php:333 admin/preferences.php:445 
    108296#: admin/user.php:223 
    109297msgid "New password:" 
     
    304492 
    305493#: admin/blog_pref.php:112 admin/posts.php:91 
    306 #: inc/admin/actions/class.dcaction.php:64 inc/admin/lib.pager.php:171 
     494#: inc/admin/actions/class.dcaction.php:67 inc/admin/lib.pager.php:171 
    307495#: inc/admin/lib.pager.php:284 
    308496msgid "Title" 
     
    365553msgstr "" 
    366554 
    367 #: admin/blog_pref.php:272 admin/blog_pref.php:279 admin/blog_pref.php:283 
    368 #: inc/admin/prepend.php:309 inc/core/_fake_l10n.php:20 
    369 msgid "Blog settings" 
    370 msgstr "" 
    371  
    372555#: admin/blog_pref.php:287 
    373556msgid "Warning: except for special configurations, it is generally advised to have a trailing \"/\" in your blog URL in PATH_INFO mode." 
     
    518701msgstr "" 
    519702 
     703#: admin/blog_pref.php:497 
     704msgid "Pattern of date" 
     705msgstr "" 
     706 
     707#: admin/blog_pref.php:499 admin/blog_pref.php:505 
     708msgid "Sample:" 
     709msgstr "" 
     710 
    520711#: admin/blog_pref.php:501 
    521712msgid "Time format:" 
     713msgstr "" 
     714 
     715#: admin/blog_pref.php:503 
     716msgid "Pattern of time" 
    522717msgstr "" 
    523718 
     
    597792#: admin/index.php:377 admin/install/index.php:345 admin/media_item.php:550 
    598793#: admin/post.php:571 admin/post.php:702 admin/user.php:308 
    599 #: admin/users_actions.php:292 inc/admin/actions/class.dcactionposts.php:247 
    600 #: inc/admin/actions/class.dcactionposts.php:306 
    601 #: inc/admin/actions/class.dcactionposts.php:357 
     794#: admin/users_actions.php:292 inc/admin/actions/class.dcactionposts.php:249 
     795#: inc/admin/actions/class.dcactionposts.php:308 
     796#: inc/admin/actions/class.dcactionposts.php:359 
    602797msgid "Save" 
    603798msgstr "" 
     
    613808#: admin/blog_pref.php:625 admin/user.php:187 admin/users.php:96 
    614809#: admin/users.php:100 admin/users_actions.php:137 admin/users_actions.php:144 
    615 #: admin/users_actions.php:150 inc/admin/prepend.php:340 
     810#: admin/users_actions.php:150 inc/admin/actions/class.dcactionusers.php:21 
     811#: inc/admin/actions/class.dcactionusers.php:34 
     812#: inc/admin/actions/class.dcactionusers.php:52 inc/admin/prepend.php:340 
    616813msgid "Users" 
    617814msgstr "" 
     
    696893#: admin/blog_theme.php:196 
    697894msgid "Configure theme" 
    698 msgstr "" 
    699  
    700 #: admin/blog_theme.php:214 admin/blog_theme.php:220 admin/blog_theme.php:225 
    701 #: inc/admin/prepend.php:306 inc/core/_fake_l10n.php:21 
    702 msgid "Blog appearance" 
    703895msgstr "" 
    704896 
     
    8861078#: admin/blogs.php:141 admin/comments.php:46 admin/post.php:438 
    8871079#: admin/post.php:852 admin/posts.php:94 admin/users_actions.php:217 
    888 #: inc/admin/actions/class.dcactionposts.php:92 inc/admin/lib.pager.php:177 
     1080#: inc/admin/actions/class.dcactionposts.php:93 inc/admin/lib.pager.php:177 
    8891081#: inc/admin/lib.pager.php:287 inc/admin/lib.pager.php:386 
    8901082msgid "Status" 
     
    9601152msgstr "" 
    9611153 
    962 #: admin/categories.php:163 admin/category.php:204 admin/preferences.php:427 
     1154#: admin/categories.php:163 admin/category.php:204 admin/preferences.php:429 
    9631155#: admin/user.php:267 
    9641156msgid "URL:" 
     
    10031195#: admin/category.php:184 admin/index.php:357 admin/index.php:369 
    10041196#: admin/media.php:433 admin/post.php:476 admin/post.php:527 
    1005 #: inc/admin/actions/class.dcactionposts.php:236 
     1197#: inc/admin/actions/class.dcactionposts.php:237 
    10061198msgid "Title:" 
    10071199msgstr "" 
    10081200 
    10091201#: admin/category.php:191 admin/category.php:230 admin/index.php:371 
    1010 #: admin/post.php:478 inc/admin/actions/class.dcactionposts.php:238 
     1202#: admin/post.php:478 inc/admin/actions/class.dcactionposts.php:239 
    10111203msgid "Parent:" 
    10121204msgstr "" 
     
    11251317#: admin/search.php:155 admin/users.php:34 
    11261318#: inc/admin/actions/class.dcactioncomments.php:100 
    1127 #: inc/admin/actions/class.dcactionposts.php:130 
    11281319#: inc/admin/actions/class.dcactionposts.php:131 
     1320#: inc/admin/actions/class.dcactionposts.php:132 
     1321#: inc/admin/actions/class.dcactionusers.php:100 
    11291322msgid "Delete" 
    11301323msgstr "" 
     
    12281421msgstr "" 
    12291422 
    1230 #: admin/index.php:122 admin/index.php:356 admin/post.php:35 
    1231 #: admin/post.php:554 admin/posts.php:232 inc/admin/prepend.php:327 
    1232 #: inc/admin/prepend.php:378 inc/core/_fake_l10n.php:16 
    1233 msgid "New entry" 
    1234 msgstr "" 
    1235  
    1236 #: admin/index.php:124 admin/media.php:440 admin/preferences.php:17 
    1237 #: inc/admin/lib.dc.page.php:143 inc/core/_fake_l10n.php:19 
    1238 msgid "My preferences" 
    1239 msgstr "" 
    1240  
    12411423#: admin/index.php:146 
    12421424msgid "Dotclear news" 
     
    13351517 
    13361518#: admin/index.php:364 admin/post.php:470 admin/posts.php:248 
    1337 #: inc/admin/actions/class.dcactionposts.php:229 
     1519#: inc/admin/actions/class.dcactionposts.php:230 
    13381520msgid "Category:" 
    13391521msgstr "" 
     
    14631645#: admin/install/index.php:273 admin/install/index.php:274 
    14641646#: admin/install/index.php:275 admin/install/index.php:276 
    1465 #: admin/install/index.php:277 admin/preferences.php:365 
    1466 #: admin/preferences.php:366 admin/preferences.php:367 
    1467 #: admin/preferences.php:368 admin/preferences.php:369 admin/user.php:172 
     1647#: admin/install/index.php:277 admin/preferences.php:367 
     1648#: admin/preferences.php:368 admin/preferences.php:369 
     1649#: admin/preferences.php:370 admin/preferences.php:371 admin/user.php:172 
    14681650#: admin/user.php:173 admin/user.php:174 admin/user.php:175 admin/user.php:176 
    14691651#, php-format 
     
    14711653msgstr "" 
    14721654 
    1473 #: admin/install/index.php:273 admin/preferences.php:365 admin/user.php:172 
     1655#: admin/install/index.php:273 admin/preferences.php:367 admin/user.php:172 
    14741656msgid "very weak" 
    14751657msgstr "" 
    14761658 
    1477 #: admin/install/index.php:274 admin/preferences.php:366 admin/user.php:173 
     1659#: admin/install/index.php:274 admin/preferences.php:368 admin/user.php:173 
    14781660msgid "weak" 
    14791661msgstr "" 
    14801662 
    1481 #: admin/install/index.php:275 admin/preferences.php:367 admin/user.php:174 
     1663#: admin/install/index.php:275 admin/preferences.php:369 admin/user.php:174 
    14821664msgid "mediocre" 
    14831665msgstr "" 
    14841666 
    1485 #: admin/install/index.php:276 admin/preferences.php:368 admin/user.php:175 
     1667#: admin/install/index.php:276 admin/preferences.php:370 admin/user.php:175 
    14861668msgid "strong" 
    14871669msgstr "" 
    14881670 
    1489 #: admin/install/index.php:277 admin/preferences.php:369 admin/user.php:176 
     1671#: admin/install/index.php:277 admin/preferences.php:371 admin/user.php:176 
    14901672msgid "very strong" 
    14911673msgstr "" 
     
    15221704msgstr "" 
    15231705 
    1524 #: admin/install/index.php:320 admin/preferences.php:418 admin/user.php:254 
     1706#: admin/install/index.php:320 admin/preferences.php:420 admin/user.php:254 
    15251707msgid "First Name:" 
    15261708msgstr "" 
    15271709 
    1528 #: admin/install/index.php:322 admin/preferences.php:415 admin/user.php:250 
     1710#: admin/install/index.php:322 admin/preferences.php:417 admin/user.php:250 
    15291711msgid "Last Name:" 
    15301712msgstr "" 
     
    23792561msgstr "" 
    23802562 
    2381 #: admin/post.php:361 admin/post.php:375 admin/posts.php:217 
    2382 #: admin/posts.php:221 admin/users_actions.php:216 
    2383 #: inc/admin/actions/class.dcactionposts.php:32 
    2384 #: inc/admin/actions/class.dcactionposts.php:50 
    2385 #: inc/admin/actions/class.dcactionposts.php:217 
    2386 #: inc/admin/actions/class.dcactionposts.php:287 
    2387 #: inc/admin/actions/class.dcactionposts.php:328 inc/admin/prepend.php:324 
    2388 #: inc/core/_fake_l10n.php:17 
    2389 msgid "Entries" 
    2390 msgstr "" 
    2391  
    23922563#: admin/post.php:381 
    23932564msgid "Entry has been successfully updated." 
     
    25172688#: inc/admin/actions/class.dcactioncomments.php:91 
    25182689#: inc/admin/actions/class.dcactioncomments.php:92 
    2519 #: inc/admin/actions/class.dcactionposts.php:93 
     2690#: inc/admin/actions/class.dcactionposts.php:94 
     2691#: inc/admin/actions/class.dcactionusers.php:91 
     2692#: inc/admin/actions/class.dcactionusers.php:92 
    25202693msgid "Publish" 
    25212694msgstr "" 
     
    25232696#: admin/post.php:630 admin/post.php:723 
    25242697#: inc/admin/actions/class.dcactioncomments.php:93 
    2525 #: inc/admin/actions/class.dcactionposts.php:94 
     2698#: inc/admin/actions/class.dcactionposts.php:95 
     2699#: inc/admin/actions/class.dcactionusers.php:93 
    25262700msgid "Unpublish" 
    25272701msgstr "" 
     
    25292703#: admin/post.php:631 admin/post.php:724 
    25302704#: inc/admin/actions/class.dcactioncomments.php:94 
    2531 #: inc/admin/actions/class.dcactionposts.php:96 
     2705#: inc/admin/actions/class.dcactionposts.php:97 
     2706#: inc/admin/actions/class.dcactionusers.php:94 
    25322707msgid "Mark as pending" 
    25332708msgstr "" 
     
    25352710#: admin/post.php:632 admin/post.php:725 
    25362711#: inc/admin/actions/class.dcactioncomments.php:95 
     2712#: inc/admin/actions/class.dcactionusers.php:95 
    25372713msgid "Mark as junk" 
    2538 msgstr "" 
    2539  
    2540 #: admin/post.php:641 admin/post.php:654 
    2541 #: inc/admin/actions/class.dcactioncomments.php:21 
    2542 #: inc/admin/actions/class.dcactioncomments.php:34 
    2543 #: inc/admin/actions/class.dcactioncomments.php:52 inc/admin/lib.pager.php:175 
    2544 #: inc/admin/prepend.php:321 inc/core/_fake_l10n.php:18 
    2545 msgid "Comments" 
    25462714msgstr "" 
    25472715 
     
    26732841msgstr "" 
    26742842 
    2675 #: admin/preferences.php:64 
     2843#: admin/preferences.php:65 
    26762844msgid "Default" 
    26772845msgstr "" 
    26782846 
    2679 #: admin/preferences.php:87 admin/preferences.php:105 
     2847#: admin/preferences.php:88 admin/preferences.php:106 
    26802848msgid "If you want to change your email or password you must provide your current password." 
    26812849msgstr "" 
    26822850 
    2683 #: admin/preferences.php:213 admin/preferences.php:256 
     2851#: admin/preferences.php:215 admin/preferences.php:258 
    26842852msgid "No favorite selected" 
    26852853msgstr "" 
    26862854 
    2687 #: admin/preferences.php:387 
     2855#: admin/preferences.php:389 
    26882856msgid "Personal information has been successfully updated." 
    26892857msgstr "" 
    26902858 
    2691 #: admin/preferences.php:390 
     2859#: admin/preferences.php:392 
    26922860msgid "Personal options has been successfully updated." 
    26932861msgstr "" 
    26942862 
    2695 #: admin/preferences.php:393 
     2863#: admin/preferences.php:395 
    26962864msgid "Dashboard options has been successfully updated." 
    26972865msgstr "" 
    26982866 
    2699 #: admin/preferences.php:396 
     2867#: admin/preferences.php:398 
    27002868msgid "Favorites have been successfully added." 
    27012869msgstr "" 
    27022870 
    2703 #: admin/preferences.php:399 
     2871#: admin/preferences.php:401 
    27042872msgid "Favorites have been successfully updated." 
    27052873msgstr "" 
    27062874 
    2707 #: admin/preferences.php:402 
     2875#: admin/preferences.php:404 
    27082876msgid "Favorites have been successfully removed." 
    27092877msgstr "" 
    27102878 
    2711 #: admin/preferences.php:405 
     2879#: admin/preferences.php:407 
    27122880msgid "Default favorites have been successfully updated." 
    27132881msgstr "" 
    27142882 
    2715 #: admin/preferences.php:409 admin/preferences.php:412 
     2883#: admin/preferences.php:411 admin/preferences.php:414 
    27162884msgid "My profile" 
    27172885msgstr "" 
    27182886 
    2719 #: admin/preferences.php:421 admin/user.php:258 
     2887#: admin/preferences.php:423 admin/user.php:258 
    27202888msgid "Display name:" 
    27212889msgstr "" 
    27222890 
    2723 #: admin/preferences.php:430 
     2891#: admin/preferences.php:432 
    27242892msgid "Language for my interface:" 
    27252893msgstr "" 
    27262894 
    2727 #: admin/preferences.php:433 
     2895#: admin/preferences.php:435 
    27282896msgid "My timezone:" 
    27292897msgstr "" 
    27302898 
    2731 #: admin/preferences.php:440 
     2899#: admin/preferences.php:442 
    27322900msgid "Change my password" 
    27332901msgstr "" 
    27342902 
    2735 #: admin/preferences.php:451 
     2903#: admin/preferences.php:453 
    27362904msgid "Confirm new password:" 
    27372905msgstr "" 
    27382906 
    2739 #: admin/preferences.php:454 
     2907#: admin/preferences.php:456 
    27402908msgid "Your current password:" 
    27412909msgstr "" 
    27422910 
    2743 #: admin/preferences.php:457 
     2911#: admin/preferences.php:459 
    27442912msgid "If you have changed your email or password you must provide your current password to save these modifications." 
    27452913msgstr "" 
    27462914 
    2747 #: admin/preferences.php:464 
     2915#: admin/preferences.php:466 
    27482916msgid "Update my profile" 
    27492917msgstr "" 
    27502918 
    2751 #: admin/preferences.php:470 admin/preferences.php:474 
     2919#: admin/preferences.php:472 admin/preferences.php:476 
    27522920msgid "My options" 
    27532921msgstr "" 
    27542922 
    2755 #: admin/preferences.php:478 admin/user.php:274 
     2923#: admin/preferences.php:480 admin/user.php:274 
    27562924msgid "Interface" 
    27572925msgstr "" 
    27582926 
    2759 #: admin/preferences.php:482 
     2927#: admin/preferences.php:484 
    27602928msgid "Activate enhanced uploader in media manager" 
    27612929msgstr "" 
    27622930 
    2763 #: admin/preferences.php:486 
     2931#: admin/preferences.php:488 
    27642932msgid "Disable javascript powered drag and drop for ordering items" 
    27652933msgstr "" 
    27662934 
    2767 #: admin/preferences.php:487 
     2935#: admin/preferences.php:489 
    27682936msgid "If checked, numeric fields will allow to type the elements' ordering number." 
    27692937msgstr "" 
    27702938 
    2771 #: admin/preferences.php:493 
     2939#: admin/preferences.php:492 
     2940msgid "Number of media displayed per page:" 
     2941msgstr "" 
     2942 
     2943#: admin/preferences.php:499 
    27722944msgid "Do not use standard favicon" 
    27732945msgstr "" 
    27742946 
    2775 #: admin/preferences.php:494 
     2947#: admin/preferences.php:500 
    27762948msgid "This will be applied for all users" 
    27772949msgstr "" 
    27782950 
    2779 #: admin/preferences.php:503 admin/user.php:283 
     2951#: admin/preferences.php:509 admin/user.php:283 
    27802952msgid "Edition" 
    27812953msgstr "" 
    27822954 
    2783 #: admin/preferences.php:505 admin/user.php:284 
     2955#: admin/preferences.php:511 admin/user.php:284 
    27842956msgid "Preferred format:" 
    27852957msgstr "" 
    27862958 
    2787 #: admin/preferences.php:508 admin/user.php:288 
     2959#: admin/preferences.php:514 admin/user.php:288 
    27882960msgid "Default entry status:" 
    27892961msgstr "" 
    27902962 
    2791 #: admin/preferences.php:511 admin/user.php:292 
     2963#: admin/preferences.php:517 admin/user.php:292 
    27922964msgid "Entry edit field height:" 
    27932965msgstr "" 
    27942966 
    2795 #: admin/preferences.php:516 
     2967#: admin/preferences.php:522 
    27962968msgid "Enable WYSIWYG mode" 
    27972969msgstr "" 
    27982970 
    2799 #: admin/preferences.php:521 
     2971#: admin/preferences.php:527 
    28002972msgid "Other options" 
    28012973msgstr "" 
    28022974 
    2803 #: admin/preferences.php:529 
     2975#: admin/preferences.php:535 
    28042976msgid "Save my options" 
    28052977msgstr "" 
    28062978 
    2807 #: admin/preferences.php:535 admin/preferences.php:537 
     2979#: admin/preferences.php:541 admin/preferences.php:543 
    28082980#: inc/admin/lib.dc.page.php:141 
    28092981msgid "My dashboard" 
    28102982msgstr "" 
    28112983 
    2812 #: admin/preferences.php:541 inc/admin/prepend.php:297 
     2984#: admin/preferences.php:547 inc/admin/prepend.php:297 
    28132985msgid "My favorites" 
    28142986msgstr "" 
    28152987 
    2816 #: admin/preferences.php:554 
     2988#: admin/preferences.php:560 
    28172989#, php-format 
    28182990msgid "position of %s" 
    28192991msgstr "" 
    28202992 
    2821 #: admin/preferences.php:568 
     2993#: admin/preferences.php:574 
    28222994msgid "Save order" 
    28232995msgstr "" 
    28242996 
    2825 #: admin/preferences.php:571 
     2997#: admin/preferences.php:577 
    28262998msgid "Delete selected favorites" 
    28272999msgstr "" 
    28283000 
    2829 #: admin/preferences.php:573 
     3001#: admin/preferences.php:579 
    28303002msgid "Are you sure you want to remove selected favorites?" 
    28313003msgstr "" 
    28323004 
    2833 #: admin/preferences.php:577 
     3005#: admin/preferences.php:583 
    28343006msgid "If you are a super administrator, you may define this set of favorites to be used by default on all blogs of this installation." 
    28353007msgstr "" 
    28363008 
    2837 #: admin/preferences.php:578 
     3009#: admin/preferences.php:584 
    28383010msgid "Define as default favorites" 
    28393011msgstr "" 
    28403012 
    2841 #: admin/preferences.php:586 
     3013#: admin/preferences.php:592 
    28423014msgid "Currently no personal favorites." 
    28433015msgstr "" 
    28443016 
    2845 #: admin/preferences.php:604 
     3017#: admin/preferences.php:610 
    28463018msgid "Other available favorites" 
    28473019msgstr "" 
    28483020 
    2849 #: admin/preferences.php:625 
     3021#: admin/preferences.php:631 
    28503022msgid "(default favorite)" 
    28513023msgstr "" 
    28523024 
    2853 #: admin/preferences.php:634 
     3025#: admin/preferences.php:640 
    28543026msgid "Add to my favorites" 
    28553027msgstr "" 
    28563028 
    2857 #: admin/preferences.php:643 
     3029#: admin/preferences.php:649 
    28583030msgid "Menu" 
    28593031msgstr "" 
    28603032 
    2861 #: admin/preferences.php:646 
     3033#: admin/preferences.php:652 
    28623034msgid "Display favorites at the top of the menu" 
    28633035msgstr "" 
    28643036 
    2865 #: admin/preferences.php:651 
     3037#: admin/preferences.php:657 
    28663038msgid "Dashboard icons" 
    28673039msgstr "" 
    28683040 
    2869 #: admin/preferences.php:652 
     3041#: admin/preferences.php:658 
    28703042msgid "Iconset:" 
    28713043msgstr "" 
    28723044 
    2873 #: admin/preferences.php:661 
     3045#: admin/preferences.php:667 
    28743046msgid "Dashboard modules" 
    28753047msgstr "" 
    28763048 
    2877 #: admin/preferences.php:665 
     3049#: admin/preferences.php:671 
    28783050msgid "Display documentation links" 
    28793051msgstr "" 
    28803052 
    2881 #: admin/preferences.php:669 
     3053#: admin/preferences.php:675 
    28823054msgid "Display Dotclear news" 
    28833055msgstr "" 
    28843056 
    2885 #: admin/preferences.php:673 
     3057#: admin/preferences.php:679 
    28863058msgid "Display quick entry form" 
    28873059msgstr "" 
    28883060 
    2889 #: admin/preferences.php:684 
     3061#: admin/preferences.php:690 
    28903062msgid "Save my dashboard options" 
    28913063msgstr "" 
     
    31943366 
    31953367#: inc/admin/actions/class.dcactioncomments.php:40 
    3196 #: inc/admin/actions/class.dcactionposts.php:38 
     3368#: inc/admin/actions/class.dcactionposts.php:39 
     3369#: inc/admin/actions/class.dcactionusers.php:40 
    31973370msgid "Back to entries list" 
    31983371msgstr "" 
     
    32073380msgstr "" 
    32083381 
    3209 #: inc/admin/actions/class.dcactionposts.php:51 
     3382#: inc/admin/actions/class.dcactionposts.php:52 
    32103383msgid "Entries actions" 
    32113384msgstr "" 
    32123385 
    3213 #: inc/admin/actions/class.dcactionposts.php:95 
     3386#: inc/admin/actions/class.dcactionposts.php:96 
    32143387msgid "Schedule" 
    32153388msgstr "" 
    32163389 
    3217 #: inc/admin/actions/class.dcactionposts.php:102 
     3390#: inc/admin/actions/class.dcactionposts.php:103 
    32183391msgid "Mark" 
    32193392msgstr "" 
    32203393 
    3221 #: inc/admin/actions/class.dcactionposts.php:103 
     3394#: inc/admin/actions/class.dcactionposts.php:104 
    32223395msgid "Mark as selected" 
    32233396msgstr "" 
    32243397 
    3225 #: inc/admin/actions/class.dcactionposts.php:104 
     3398#: inc/admin/actions/class.dcactionposts.php:105 
    32263399msgid "Mark as unselected" 
    32273400msgstr "" 
    32283401 
    3229 #: inc/admin/actions/class.dcactionposts.php:109 
    3230 #: inc/admin/actions/class.dcactionposts.php:115 
    3231 #: inc/admin/actions/class.dcactionposts.php:123 
     3402#: inc/admin/actions/class.dcactionposts.php:110 
     3403#: inc/admin/actions/class.dcactionposts.php:116 
     3404#: inc/admin/actions/class.dcactionposts.php:124 
    32323405msgid "Change" 
    32333406msgstr "" 
    32343407 
    3235 #: inc/admin/actions/class.dcactionposts.php:110 
     3408#: inc/admin/actions/class.dcactionposts.php:111 
    32363409msgid "Change category" 
    32373410msgstr "" 
    32383411 
    3239 #: inc/admin/actions/class.dcactionposts.php:116 
     3412#: inc/admin/actions/class.dcactionposts.php:117 
    32403413msgid "Change language" 
    32413414msgstr "" 
    32423415 
    3243 #: inc/admin/actions/class.dcactionposts.php:124 
     3416#: inc/admin/actions/class.dcactionposts.php:125 
    32443417msgid "Change author" 
    32453418msgstr "" 
    32463419 
    3247 #: inc/admin/actions/class.dcactionposts.php:146 
    3248 #: inc/admin/actions/class.dcactionposts.php:156 
    3249 #: inc/admin/actions/class.dcactionposts.php:168 
    3250 #: inc/admin/actions/class.dcactionposts.php:189 
    3251 #: inc/admin/actions/class.dcactionposts.php:259 
    3252 #: inc/admin/actions/class.dcactionposts.php:314 
     3420#: inc/admin/actions/class.dcactionposts.php:147 
     3421#: inc/admin/actions/class.dcactionposts.php:157 
     3422#: inc/admin/actions/class.dcactionposts.php:169 
     3423#: inc/admin/actions/class.dcactionposts.php:190 
     3424#: inc/admin/actions/class.dcactionposts.php:261 
     3425#: inc/admin/actions/class.dcactionposts.php:316 
    32533426msgid "No entry selected" 
    32543427msgstr "" 
    32553428 
    3256 #: inc/admin/actions/class.dcactionposts.php:218 
    3257 msgid "Change category for entries" 
    3258 msgstr "" 
    3259  
    3260 #: inc/admin/actions/class.dcactionposts.php:235 
     3429#: inc/admin/actions/class.dcactionposts.php:220 
     3430msgid "Change category for this selection" 
     3431msgstr "" 
     3432 
     3433#: inc/admin/actions/class.dcactionposts.php:236 
    32613434msgid "Create a new category for the post(s)" 
    32623435msgstr "" 
    32633436 
    3264 #: inc/admin/actions/class.dcactionposts.php:262 
     3437#: inc/admin/actions/class.dcactionposts.php:264 
    32653438msgid "This user does not exist" 
    32663439msgstr "" 
    32673440 
    3268 #: inc/admin/actions/class.dcactionposts.php:288 
    3269 msgid "Change author for entries" 
    3270 msgstr "" 
    3271  
    3272 #: inc/admin/actions/class.dcactionposts.php:300 
     3441#: inc/admin/actions/class.dcactionposts.php:290 
     3442msgid "Change author for this selection" 
     3443msgstr "" 
     3444 
     3445#: inc/admin/actions/class.dcactionposts.php:302 
    32733446msgid "New author (author ID):" 
    32743447msgstr "" 
    32753448 
    3276 #: inc/admin/actions/class.dcactionposts.php:329 
    3277 msgid "Change language for entries" 
    3278 msgstr "" 
    3279  
    3280 #: inc/admin/actions/class.dcactionposts.php:335 
    3281 #: inc/admin/actions/class.dcactionposts.php:339 
     3449#: inc/admin/actions/class.dcactionposts.php:331 
     3450msgid "Change language for this selection" 
     3451msgstr "" 
     3452 
     3453#: inc/admin/actions/class.dcactionposts.php:337 
     3454#: inc/admin/actions/class.dcactionposts.php:341 
     3455#: inc/admin/class.admincombos.php:64 inc/admin/class.admincombos.php:68 
    32823456#: inc/admin/lib.admincombos.php:107 inc/admin/lib.admincombos.php:111 
    32833457msgid "Available" 
    32843458msgstr "" 
    32853459 
    3286 #: inc/admin/actions/class.dcactionposts.php:335 
    3287 #: inc/admin/actions/class.dcactionposts.php:338 
    3288 #: inc/admin/actions/class.dcactionposts.php:341 
    3289 #: inc/admin/lib.admincombos.php:107 inc/admin/lib.admincombos.php:110 
    3290 #: inc/admin/lib.admincombos.php:113 
     3460#: inc/admin/actions/class.dcactionposts.php:337 
     3461#: inc/admin/actions/class.dcactionposts.php:340 
     3462#: inc/admin/actions/class.dcactionposts.php:343 
     3463#: inc/admin/class.admincombos.php:64 inc/admin/class.admincombos.php:67 
     3464#: inc/admin/class.admincombos.php:70 inc/admin/lib.admincombos.php:107 
     3465#: inc/admin/lib.admincombos.php:110 inc/admin/lib.admincombos.php:113 
    32913466msgid "Most used" 
    32923467msgstr "" 
    32933468 
    3294 #: inc/admin/actions/class.dcactionposts.php:351 
     3469#: inc/admin/actions/class.dcactionposts.php:353 
    32953470msgid "Entry language:" 
     3471msgstr "" 
     3472 
     3473#: inc/admin/actions/class.dcactionusers.php:53 
     3474msgid "Users actions" 
     3475msgstr "" 
     3476 
     3477#: inc/admin/actions/class.dcactionusers.php:109 
     3478#: inc/admin/actions/class.dcactionusers.php:125 
     3479msgid "No User selected" 
     3480msgstr "" 
     3481 
     3482#: inc/admin/class.admincombos.php:22 
     3483msgid "(no cat)" 
    32963484msgstr "" 
    32973485 
     
    38224010#: inc/admin/prepend.php:334 
    38234011msgid "Languages" 
    3824 msgstr "" 
    3825  
    3826 #: inc/core/_fake_l10n.php:4 
    3827 msgid "medium" 
    3828 msgstr "" 
    3829  
    3830 #: inc/core/_fake_l10n.php:5 
    3831 msgid "small" 
    3832 msgstr "" 
    3833  
    3834 #: inc/core/_fake_l10n.php:6 
    3835 msgid "thumbnail" 
    3836 msgstr "" 
    3837  
    3838 #: inc/core/_fake_l10n.php:7 
    3839 msgid "square" 
    3840 msgstr "" 
    3841  
    3842 #: inc/core/_fake_l10n.php:11 
    3843 msgid "Posts" 
    3844 msgstr "" 
    3845  
    3846 #: inc/core/_fake_l10n.php:12 inc/core/_fake_l10n.php:22 
    3847 msgid "Pages" 
    3848 msgstr "" 
    3849  
    3850 #: inc/core/_fake_l10n.php:23 
    3851 msgid "Blogroll" 
    38524012msgstr "" 
    38534013 
  • locales/_pot/plugins.pot

    r2132 r2133  
    88"Project-Id-Version: Dotclear 2\n" 
    99"Report-Msgid-Bugs-To: \n" 
    10 "POT-Creation-Date: 2013-09-22 16:57+0000\n" 
     10"POT-Creation-Date: 2013-09-24 07:51+0000\n" 
    1111"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 
    1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 
     
    1818"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" 
    1919 
    20 #: plugins/_fake_plugin/_fake_l10n.php:5 
    21 msgid "Manage every blog configuration directive" 
    22 msgstr "" 
    23  
    24 #: plugins/_fake_plugin/_fake_l10n.php:6 
    25 msgid "Akismet interface for Dotclear" 
    26 msgstr "" 
    27  
    28 #: plugins/_fake_plugin/_fake_l10n.php:7 
    29 msgid "Generic antispam plugin for Dotclear" 
    30 msgstr "" 
    31  
    32 #: plugins/_fake_plugin/_fake_l10n.php:8 
    33 msgid "Manage post attachments" 
    34 msgstr "" 
    35  
    36 #: plugins/_fake_plugin/_fake_l10n.php:9 
    37 msgid "Manage your blogroll" 
    38 msgstr "" 
    39  
    40 #: plugins/_fake_plugin/_fake_l10n.php:10 
    41 msgid "Configure your Blowup Theme" 
    42 msgstr "" 
    43  
    44 #: plugins/_fake_plugin/_fake_l10n.php:11 plugins/daInstaller/index.php:267 
    45 msgid "Install and update your plugins live from DotAddict.org" 
    46 msgstr "" 
    47  
    48 #: plugins/_fake_plugin/_fake_l10n.php:12 
    49 msgid "Trackback validity check" 
    50 msgstr "" 
    51  
    52 #: plugins/_fake_plugin/_fake_l10n.php:13 
    53 msgid "Import and Export your blog" 
    54 msgstr "" 
    55  
    56 #: plugins/_fake_plugin/_fake_l10n.php:14 
    57 msgid "Maintain your installation" 
    58 msgstr "" 
    59  
    60 #: plugins/_fake_plugin/_fake_l10n.php:15 
    61 msgid "Serve entries as simple web pages" 
    62 msgstr "" 
    63  
    64 #: plugins/_fake_plugin/_fake_l10n.php:16 
    65 msgid "Ping services" 
    66 msgstr "" 
    67  
    68 #: plugins/_fake_plugin/_fake_l10n.php:17 
    69 msgid "Simple menu for Dotclear" 
    70 msgstr "" 
    71  
    72 #: plugins/_fake_plugin/_fake_l10n.php:18 
    73 msgid "Tags for posts" 
    74 msgstr "" 
    75  
    76 #: plugins/_fake_plugin/_fake_l10n.php:19 
    77 msgid "Theme Editor" 
    78 msgstr "" 
    79  
    80 #: plugins/_fake_plugin/_fake_l10n.php:20 
    81 msgid "Manage every user preference directive" 
    82 msgstr "" 
    83  
    84 #: plugins/_fake_plugin/_fake_l10n.php:21 
    85 msgid "Widgets for your blog sidebars" 
    86 msgstr "" 
    87  
    88 #: plugins/_fake_plugin/_fake_l10n.php:25 
    89 msgid "Search engine form" 
    90 msgstr "" 
    91  
    92 #: plugins/_fake_plugin/_fake_l10n.php:26 
    93 msgid "List of navigation links" 
    94 msgstr "" 
    95  
    96 #: plugins/_fake_plugin/_fake_l10n.php:27 
    97 msgid "List of selected entries" 
    98 msgstr "" 
    99  
    100 #: plugins/_fake_plugin/_fake_l10n.php:28 
    101 msgid "List of available languages" 
    102 msgstr "" 
    103  
    104 #: plugins/_fake_plugin/_fake_l10n.php:29 
    105 msgid "List of categories" 
    106 msgstr "" 
    107  
    108 #: plugins/_fake_plugin/_fake_l10n.php:30 
    109 msgid "RSS or Atom feed subscription links" 
    110 msgstr "" 
    111  
    112 #: plugins/_fake_plugin/_fake_l10n.php:31 
    113 msgid "Last entries from feed" 
    114 msgstr "" 
    115  
    116 #: plugins/_fake_plugin/_fake_l10n.php:32 
    117 msgid "Simple text" 
    118 msgstr "" 
    119  
    120 #: plugins/_fake_plugin/_fake_l10n.php:33 
    121 msgid "List of last entries published" 
    122 msgstr "" 
    123  
    124 #: plugins/_fake_plugin/_fake_l10n.php:34 
    125 msgid "List of last comments posted" 
    126 msgstr "" 
    127  
    128 #: plugins/_fake_plugin/_fake_l10n.php:35 
    129 msgid "Tags cloud" 
    130 msgstr "" 
    131  
    132 #: plugins/_fake_plugin/_fake_l10n.php:36 
    133 msgid "List of published pages" 
    134 msgstr "" 
    135  
    136 #: plugins/_fake_plugin/_fake_l10n.php:37 
    137 msgid "Blogroll list" 
    138 msgstr "" 
    139  
    140 #: plugins/_fake_plugin/_fake_l10n.php:38 
    141 msgid "List of simple menu items" 
    142 msgstr "" 
    143  
    14420#: plugins/aboutConfig/index.php:78 plugins/userPref/index.php:74 
    14521msgid "no" 
     
    239115 
    240116#: plugins/antispam/_admin.php:75 
    241 msgid "Set spam filters on it's page." 
     117msgid "Set spam filters." 
    242118msgstr "" 
    243119 
     
    833709#: plugins/importExport/inc/class.dc.import.flat.php:203 
    834710#: plugins/importExport/inc/class.dc.import.flat.php:234 
    835 #: plugins/importExport/index.php:98 
     711#: plugins/importExport/index.php:97 
    836712msgid "Import" 
    837713msgstr "" 
     
    13681244#: plugins/importExport/inc/class.dc.export.flat.php:209 
    13691245#: plugins/importExport/inc/class.dc.export.flat.php:231 
    1370 #: plugins/importExport/index.php:99 
    13711246msgid "Export" 
    13721247msgstr "" 
     
    16721547msgstr "" 
    16731548 
    1674 #: plugins/importExport/index.php:69 plugins/maintenance/index.php:128 
     1549#: plugins/importExport/index.php:69 plugins/maintenance/index.php:119 
    16751550msgid "Please wait..." 
    16761551msgstr "" 
    16771552 
    1678 #: plugins/maintenance/_admin.php:16 plugins/maintenance/_admin.php:168 
    1679 #: plugins/maintenance/_admin.php:190 plugins/maintenance/index.php:120 
    1680 #: plugins/maintenance/index.php:144 plugins/maintenance/index.php:170 
    1681 #: plugins/maintenance/index.php:205 
     1553#: plugins/importExport/index.php:103 
     1554#, php-format 
     1555msgid "Export functions are in the page %s." 
     1556msgstr "" 
     1557 
     1558#: plugins/importExport/index.php:104 plugins/maintenance/_admin.php:16 
     1559#: plugins/maintenance/_admin.php:172 plugins/maintenance/_admin.php:194 
     1560#: plugins/maintenance/index.php:111 plugins/maintenance/index.php:135 
     1561#: plugins/maintenance/index.php:160 plugins/maintenance/index.php:195 
    16821562msgid "Maintenance" 
    16831563msgstr "" 
    16841564 
     1565#: plugins/maintenance/_admin.php:49 
     1566msgid "Servicing" 
     1567msgstr "" 
     1568 
     1569#: plugins/maintenance/_admin.php:49 
     1570msgid "Tools to maintain the performance of your blogs." 
     1571msgstr "" 
     1572 
    16851573#: plugins/maintenance/_admin.php:50 
    1686 msgid "Servicing" 
     1574msgid "Backup" 
     1575msgstr "" 
     1576 
     1577#: plugins/maintenance/_admin.php:50 
     1578msgid "Tools to back up your content." 
    16871579msgstr "" 
    16881580 
    16891581#: plugins/maintenance/_admin.php:51 
    1690 msgid "Backup" 
     1582msgid "Development" 
     1583msgstr "" 
     1584 
     1585#: plugins/maintenance/_admin.php:51 
     1586msgid "Tools to assist in development of plugins, themes and core." 
    16911587msgstr "" 
    16921588 
     
    17081604 
    17091605#: plugins/maintenance/_admin.php:57 
    1710 msgid "Compressed file for current blog" 
     1606msgid "Current blog" 
    17111607msgstr "" 
    17121608 
    17131609#: plugins/maintenance/_admin.php:58 
    1714 msgid "Compressed file for all blogs" 
    1715 msgstr "" 
    1716  
    1717 #: plugins/maintenance/_admin.php:125 
     1610msgid "All blogs" 
     1611msgstr "" 
     1612 
     1613#: plugins/maintenance/_admin.php:60 
     1614msgid "Maintain translations" 
     1615msgstr "" 
     1616 
     1617#: plugins/maintenance/_admin.php:60 
     1618msgid "Translations" 
     1619msgstr "" 
     1620 
     1621#: plugins/maintenance/_admin.php:129 
    17181622#, php-format 
    17191623msgid "One task to execute" 
     
    17221626msgstr[1] "" 
    17231627 
    1724 #: plugins/maintenance/_admin.php:153 plugins/maintenance/index.php:236 
     1628#: plugins/maintenance/_admin.php:157 plugins/maintenance/index.php:227 
    17251629msgid "This task has never been executed." 
    17261630msgstr "" 
    17271631 
    1728 #: plugins/maintenance/_admin.php:155 plugins/maintenance/index.php:242 
     1632#: plugins/maintenance/_admin.php:159 plugins/maintenance/index.php:233 
    17291633#, php-format 
    17301634msgid "Last execution of this task was on %s." 
    17311635msgstr "" 
    17321636 
    1733 #: plugins/maintenance/_admin.php:169 
     1637#: plugins/maintenance/_admin.php:173 
    17341638#, php-format 
    17351639msgid "There is a task to execute." 
     
    17381642msgstr[1] "" 
    17391643 
    1740 #: plugins/maintenance/_admin.php:171 
     1644#: plugins/maintenance/_admin.php:175 
    17411645msgid "Manage tasks" 
    17421646msgstr "" 
    17431647 
    1744 #: plugins/maintenance/_admin.php:194 
     1648#: plugins/maintenance/_admin.php:198 
    17451649msgid "Display count of late tasks on maintenance dashboard icon" 
    17461650msgstr "" 
    17471651 
    1748 #: plugins/maintenance/_admin.php:198 
     1652#: plugins/maintenance/_admin.php:202 
    17491653msgid "Display list of late tasks on dashboard items" 
    17501654msgstr "" 
    17511655 
    1752 #: plugins/maintenance/inc/class.dc.maintenance.task.php:70 
     1656#: plugins/maintenance/inc/class.dc.maintenance.task.php:71 
    17531657msgid "Failed to execute task." 
    17541658msgstr "" 
    17551659 
    1756 #: plugins/maintenance/inc/class.dc.maintenance.task.php:73 
     1660#: plugins/maintenance/inc/class.dc.maintenance.task.php:74 
    17571661msgid "Task successfully executed." 
    17581662msgstr "" 
     
    17701674msgstr "" 
    17711675 
     1676#: plugins/maintenance/inc/tasks/class.dc.maintenance.cache.php:24 
     1677msgid "It may be useful to empty this cache when modifying a theme's .html or .css files (or when updating a theme or plugin). Notice : with some hosters, the templates cache cannot be emptied with this plugin. You may then have to delete the directory <strong>/cbtpl/</strong> directly on the server with your FTP software." 
     1678msgstr "" 
     1679 
    17721680#: plugins/maintenance/inc/tasks/class.dc.maintenance.countcomments.php:20 
    17731681msgid "Count again comments and trackbacks" 
     
    17801688#: plugins/maintenance/inc/tasks/class.dc.maintenance.countcomments.php:22 
    17811689msgid "Failed to count comments and trackbacks." 
     1690msgstr "" 
     1691 
     1692#: plugins/maintenance/inc/tasks/class.dc.maintenance.countcomments.php:24 
     1693msgid "Count again comments and trackbacks allows to check their exact numbers. This operation can be useful when importing from another blog platform (or when migrating from dotclear 1 to dotclear 2)." 
    17821694msgstr "" 
    17831695 
     
    17931705#: plugins/maintenance/inc/tasks/class.dc.maintenance.indexcomments.php:25 
    17941706#: plugins/maintenance/inc/tasks/class.dc.maintenance.indexposts.php:25 
     1707#: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:25 
    17951708msgid "Next" 
    17961709msgstr "" 
     
    18091722msgstr "" 
    18101723 
     1724#: plugins/maintenance/inc/tasks/class.dc.maintenance.indexcomments.php:30 
     1725msgid "Index all comments and trackbacks in search engine index. This operation is necessary, after importing content in your blog, to use internal search engine, on public and private pages." 
     1726msgstr "" 
     1727 
    18111728#: plugins/maintenance/inc/tasks/class.dc.maintenance.indexposts.php:24 
    18121729msgid "Index all entries for search engine" 
     
    18261743msgstr "" 
    18271744 
     1745#: plugins/maintenance/inc/tasks/class.dc.maintenance.indexposts.php:30 
     1746msgid "Index all entries in search engine index. This operation is necessary, after importing content in your blog, to use internal search engine, on public and private pages." 
     1747msgstr "" 
     1748 
    18281749#: plugins/maintenance/inc/tasks/class.dc.maintenance.logs.php:20 
    18291750msgid "Delete all logs" 
     
    18381759msgstr "" 
    18391760 
     1761#: plugins/maintenance/inc/tasks/class.dc.maintenance.logs.php:24 
     1762msgid "Logs record all activity and connection to your blog history. Unless you need to keep this history, consider deleting these logs from time to time." 
     1763msgstr "" 
     1764 
     1765#: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:23 
     1766msgid "Entries metadata" 
     1767msgstr "" 
     1768 
     1769#: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:24 
     1770msgid "Synchronize entries metadata" 
     1771msgstr "" 
     1772 
     1773#: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:26 
     1774#, php-format 
     1775msgid "Synchronize entry %d to %d." 
     1776msgstr "" 
     1777 
     1778#: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:27 
     1779msgid "Entries metadata synchronize done." 
     1780msgstr "" 
     1781 
     1782#: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:28 
     1783msgid "Failed to synchronize entries metadata." 
     1784msgstr "" 
     1785 
     1786#: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:30 
     1787msgid "Synchronize all entries metadata could be useful after importing content in your blog or do bad operation on database tables." 
     1788msgstr "" 
     1789 
    18401790#: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:20 
     1791msgid "Optimise database" 
     1792msgstr "" 
     1793 
     1794#: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:21 
    18411795msgid "optimize tables" 
    18421796msgstr "" 
    18431797 
    1844 #: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:21 
     1798#: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:22 
    18451799msgid "Optimization successful." 
    18461800msgstr "" 
    18471801 
    1848 #: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:22 
     1802#: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:23 
    18491803msgid "Failed to optimize tables." 
     1804msgstr "" 
     1805 
     1806#: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:25 
     1807msgid "After numerous delete or update operations on Dotclear's database, it gets fragmented. Optimizing will allow to defragment it. It has no incidence on your data's integrity. It is recommended to optimize before any blog export." 
    18501808msgstr "" 
    18511809 
     
    18541812msgstr "" 
    18551813 
     1814#: plugins/maintenance/inc/tasks/class.dc.maintenance.zipmedia.php:25 
     1815msgid "It may be useful to backup your media folder. This compress all content of media folder into a single zip file. Notice : with some hosters, the media folder cannot be compressed with this plugin if it is too big." 
     1816msgstr "" 
     1817 
    18561818#: plugins/maintenance/inc/tasks/class.dc.maintenance.ziptheme.php:23 
    18571819msgid "Download active theme of current blog" 
    18581820msgstr "" 
    18591821 
     1822#: plugins/maintenance/inc/tasks/class.dc.maintenance.ziptheme.php:25 
     1823msgid "It may be useful to backup the active theme before any change or update. This compress theme folder into a single zip file." 
     1824msgstr "" 
     1825 
    18601826#: plugins/maintenance/index.php:101 
     1827msgid "Never" 
     1828msgstr "" 
     1829 
     1830#: plugins/maintenance/index.php:102 
    18611831msgid "Every week" 
    18621832msgstr "" 
    18631833 
    1864 #: plugins/maintenance/index.php:102 
     1834#: plugins/maintenance/index.php:103 
    18651835msgid "Every two weeks" 
    18661836msgstr "" 
    18671837 
    1868 #: plugins/maintenance/index.php:103 
     1838#: plugins/maintenance/index.php:104 
    18691839msgid "Every month" 
    18701840msgstr "" 
    18711841 
    1872 #: plugins/maintenance/index.php:104 
     1842#: plugins/maintenance/index.php:105 
    18731843msgid "Every two months" 
    18741844msgstr "" 
    18751845 
    1876 #: plugins/maintenance/index.php:108 
    1877 msgid "Use different periods for each task" 
    1878 msgstr "" 
    1879  
    1880 #: plugins/maintenance/index.php:113 
    1881 msgid "Never" 
    1882 msgstr "" 
    1883  
    1884 #: plugins/maintenance/index.php:148 
     1846#: plugins/maintenance/index.php:138 
    18851847msgid "You have not sufficient permissions to view this page." 
    18861848msgstr "" 
    18871849 
    1888 #: plugins/maintenance/index.php:157 
     1850#: plugins/maintenance/index.php:147 
    18891851msgid "Settings successfully updated" 
    18901852msgstr "" 
    18911853 
    1892 #: plugins/maintenance/index.php:194 
     1854#: plugins/maintenance/index.php:172 
    18931855msgid "Back" 
    18941856msgstr "" 
    18951857 
    1896 #: plugins/maintenance/index.php:237 plugins/maintenance/index.php:246 
     1858#: plugins/maintenance/index.php:228 plugins/maintenance/index.php:237 
    18971859msgid "You should execute it now." 
    18981860msgstr "" 
    18991861 
    1900 #: plugins/maintenance/index.php:268 plugins/maintenance/index.php:290 
     1862#: plugins/maintenance/index.php:260 plugins/maintenance/index.php:282 
    19011863msgid "Execute task" 
    19021864msgstr "" 
    19031865 
    1904 #: plugins/maintenance/index.php:271 
     1866#: plugins/maintenance/index.php:263 
    19051867msgid "This may take a very long time." 
    19061868msgstr "" 
    19071869 
    1908 #: plugins/maintenance/index.php:301 plugins/maintenance/index.php:302 
    1909 msgid "Settings" 
    1910 msgstr "" 
    1911  
    1912 #: plugins/maintenance/index.php:305 
     1870#: plugins/maintenance/index.php:293 plugins/maintenance/index.php:294 
     1871msgid "Alert settings" 
     1872msgstr "" 
     1873 
     1874#: plugins/maintenance/index.php:297 
    19131875msgid "Activation" 
    19141876msgstr "" 
    19151877 
    1916 #: plugins/maintenance/index.php:308 
     1878#: plugins/maintenance/index.php:300 
    19171879msgid "Display alert messages on late tasks" 
    19181880msgstr "" 
    19191881 
     1882#: plugins/maintenance/index.php:303 
     1883#, php-format 
     1884msgid "You can place list of late tasks on your %s." 
     1885msgstr "" 
     1886 
     1887#: plugins/maintenance/index.php:307 
     1888msgid "Frequency" 
     1889msgstr "" 
     1890 
    19201891#: plugins/maintenance/index.php:311 
    1921 #, php-format 
    1922 msgid "You can place list of late tasks on your %s." 
    1923 msgstr "" 
    1924  
    1925 #: plugins/maintenance/index.php:315 
    1926 msgid "Frequency" 
    1927 msgstr "" 
    1928  
    1929 #: plugins/maintenance/index.php:317 
     1892msgid "Use one recall time for all tasks" 
     1893msgstr "" 
     1894 
     1895#: plugins/maintenance/index.php:313 
    19301896msgid "Recall time for all tasks:" 
    19311897msgstr "" 
    19321898 
    1933 #: plugins/maintenance/index.php:321 
    1934 msgid "Recall time per task:" 
    1935 msgstr "" 
    1936  
    1937 #: plugins/maintenance/index.php:336 
     1899#: plugins/maintenance/index.php:319 
     1900msgid "Use one recall time per task" 
     1901msgstr "" 
     1902 
     1903#: plugins/maintenance/index.php:334 
    19381904msgid "Save this settings" 
    19391905msgstr "" 
     
    19891955msgstr "" 
    19901956 
    1991 #: plugins/pages/list.php:23 
     1957#: plugins/pages/class.actionpage.php:28 
     1958msgid "Pages actions" 
     1959msgstr "" 
     1960 
     1961#: plugins/pages/class.actionpage.php:39 
     1962msgid "Back to pages list" 
     1963msgstr "" 
     1964 
     1965#: plugins/pages/class.listpage.php:21 
    19921966msgid "No page" 
    19931967msgstr "" 
    19941968 
    1995 #: plugins/pages/list.php:93 
     1969#: plugins/pages/class.listpage.php:91 
    19961970msgid "Hidden" 
    19971971msgstr "" 
    19981972 
    1999 #: plugins/pages/list.php:109 
     1973#: plugins/pages/class.listpage.php:107 
    20001974msgid "Select this page" 
    20011975msgstr "" 
    20021976 
    2003 #: plugins/pages/list.php:164 plugins/pages/list.php:234 
     1977#: plugins/pages/list.php:61 plugins/pages/list.php:67 
    20041978msgid "Are you sure you want to delete selected pages?" 
    20051979msgstr "" 
    20061980 
    2007 #: plugins/pages/list.php:248 
     1981#: plugins/pages/list.php:81 
    20081982msgid "Selected pages have been successfully updated." 
    20091983msgstr "" 
    20101984 
    2011 #: plugins/pages/list.php:250 
     1985#: plugins/pages/list.php:83 
    20121986msgid "Selected pages have been successfully deleted." 
    20131987msgstr "" 
    20141988 
    2015 #: plugins/pages/list.php:252 
     1989#: plugins/pages/list.php:85 
    20161990msgid "Selected pages have been successfully reordered." 
    20171991msgstr "" 
    20181992 
    2019 #: plugins/pages/list.php:255 plugins/pages/page.php:37 
     1993#: plugins/pages/list.php:88 plugins/pages/page.php:37 
    20201994#: plugins/pages/page.php:491 
    20211995msgid "New page" 
    20221996msgstr "" 
    20231997 
    2024 #: plugins/pages/list.php:268 
     1998#: plugins/pages/list.php:101 
    20251999msgid "Selected pages action:" 
     2000msgstr "" 
     2001 
     2002#: plugins/pages/list.php:110 
     2003msgid "To rearrange pages order, change number at the begining of the line, then click on “Save pages order” button." 
     2004msgstr "" 
     2005 
     2006#: plugins/pages/list.php:112 
     2007msgid "To rearrange pages order, move items by drag and drop, then click on “Save pages order” button." 
     2008msgstr "" 
     2009 
     2010#: plugins/pages/list.php:113 
     2011msgid "Save pages order" 
    20262012msgstr "" 
    20272013 
     
    21402126 
    21412127#: plugins/simpleMenu/index.php:92 plugins/tags/_admin.php:14 
    2142 #: plugins/tags/_admin.php:83 plugins/tags/_admin.php:162 
    2143 #: plugins/tags/_admin.php:165 plugins/tags/_widgets.php:21 
     2128#: plugins/tags/_admin.php:80 plugins/tags/_admin.php:103 
     2129#: plugins/tags/_admin.php:109 plugins/tags/_widgets.php:21 
    21442130#: plugins/tags/_widgets.php:22 plugins/tags/tag_posts.php:95 
    21452131#: plugins/tags/tag_posts.php:115 plugins/tags/tags.php:17 
     
    22872273msgstr "" 
    22882274 
    2289 #: plugins/tags/_admin.php:116 plugins/tags/_admin.php:146 
     2275#: plugins/tags/_admin.php:103 
     2276msgid "Add tags" 
     2277msgstr "" 
     2278 
     2279#: plugins/tags/_admin.php:109 
     2280msgid "Remove tags" 
     2281msgstr "" 
     2282 
     2283#: plugins/tags/_admin.php:154 
     2284msgid "Add tags to this selection" 
     2285msgstr "" 
     2286 
     2287#: plugins/tags/_admin.php:164 plugins/tags/_admin.php:276 
    22902288#, php-format 
    22912289msgid "Are you sure you want to remove this %s?" 
    22922290msgstr "" 
    22932291 
    2294 #: plugins/tags/_admin.php:117 plugins/tags/_admin.php:147 
     2292#: plugins/tags/_admin.php:165 plugins/tags/_admin.php:277 
    22952293#, php-format 
    22962294msgid "Add a %s to this entry" 
    22972295msgstr "" 
    22982296 
    2299 #: plugins/tags/_admin.php:118 plugins/tags/_admin.php:148 
     2297#: plugins/tags/_admin.php:166 plugins/tags/_admin.php:278 
    23002298msgid "Choose from list" 
    23012299msgstr "" 
    23022300 
    2303 #: plugins/tags/_admin.php:119 plugins/tags/_admin.php:149 
     2301#: plugins/tags/_admin.php:167 plugins/tags/_admin.php:279 
    23042302msgid "all" 
    23052303msgstr "" 
    23062304 
    2307 #: plugins/tags/_admin.php:121 plugins/tags/_public.php:373 
     2305#: plugins/tags/_admin.php:168 
     2306msgid "Enter tags separated by coma" 
     2307msgstr "" 
     2308 
     2309#: plugins/tags/_admin.php:169 plugins/tags/_admin.php:283 
     2310msgid "used in %e - frequency %p%" 
     2311msgstr "" 
     2312 
     2313#: plugins/tags/_admin.php:170 plugins/tags/_admin.php:284 
     2314#: plugins/tags/tags.php:58 
     2315msgid "entry" 
     2316msgstr "" 
     2317 
     2318#: plugins/tags/_admin.php:171 plugins/tags/_admin.php:285 
     2319#: plugins/tags/tags.php:58 
     2320msgid "entries" 
     2321msgstr "" 
     2322 
     2323#: plugins/tags/_admin.php:179 
     2324msgid "Tags to add:" 
     2325msgstr "" 
     2326 
     2327#: plugins/tags/_admin.php:224 
     2328msgid "No tags for selected entries" 
     2329msgstr "" 
     2330 
     2331#: plugins/tags/_admin.php:231 
     2332msgid "Remove selected tags from this selection" 
     2333msgstr "" 
     2334 
     2335#: plugins/tags/_admin.php:238 
     2336msgid "Following tags have been found in selected entries:" 
     2337msgstr "" 
     2338 
     2339#: plugins/tags/_admin.php:281 plugins/tags/_public.php:373 
    23082340#: plugins/tags/tag_posts.php:116 
    23092341msgid "Tag" 
    23102342msgstr "" 
    23112343 
    2312 #: plugins/tags/_admin.php:123 plugins/tags/_admin.php:151 
    2313 msgid "used in %e - frequency %p%" 
    2314 msgstr "" 
    2315  
    2316 #: plugins/tags/_admin.php:124 plugins/tags/_admin.php:152 
    2317 #: plugins/tags/tags.php:58 
    2318 msgid "entry" 
    2319 msgstr "" 
    2320  
    2321 #: plugins/tags/_admin.php:125 plugins/tags/_admin.php:153 
    2322 #: plugins/tags/tags.php:58 
    2323 msgid "entries" 
    2324 msgstr "" 
    2325  
    2326 #: plugins/tags/_admin.php:150 
    2327 msgid "Enter tags separated by coma" 
    2328 msgstr "" 
    2329  
    2330 #: plugins/tags/_admin.php:162 
    2331 msgid "Add tags" 
    2332 msgstr "" 
    2333  
    2334 #: plugins/tags/_admin.php:166 
    2335 msgid "Remove tags" 
    2336 msgstr "" 
    2337  
    2338 #: plugins/tags/_admin.php:235 
    2339 msgid "Add tags to entries" 
    2340 msgstr "" 
    2341  
    2342 #: plugins/tags/_admin.php:239 
    2343 msgid "Tags to add:" 
    2344 msgstr "" 
    2345  
    2346 #: plugins/tags/_admin.php:270 
    2347 msgid "Remove selected tags from entries" 
    2348 msgstr "" 
    2349  
    2350 #: plugins/tags/_admin.php:274 
    2351 msgid "No tags for selected entries" 
    2352 msgstr "" 
    2353  
    2354 #: plugins/tags/_admin.php:282 
    2355 msgid "Following tags have been found in selected entries:" 
    2356 msgstr "" 
    2357  
    2358 #: plugins/tags/_admin.php:317 
     2344#: plugins/tags/_admin.php:304 
    23592345msgid "Short" 
    23602346msgstr "" 
    23612347 
    2362 #: plugins/tags/_admin.php:318 
     2348#: plugins/tags/_admin.php:305 
    23632349msgid "Extended" 
    23642350msgstr "" 
    23652351 
    2366 #: plugins/tags/_admin.php:323 
     2352#: plugins/tags/_admin.php:310 
    23672353msgid "Tags list format:" 
    23682354msgstr "" 
  • locales/en/plugins.po

    r1989 r2047  
    883883msgstr "" 
    884884 
     885msgid "Export functions are in the page %s." 
     886msgstr "" 
     887 
    885888#, php-format 
    886889msgid "This will import your WordPress content as new content in the current blog: %s." 
     
    959962msgstr "" 
    960963 
     964msgid "Tools to maintain the performance of your blogs." 
     965msgstr "" 
     966 
    961967msgid "Backup" 
    962968msgstr "" 
    963969 
     970msgid "Tools to back up your content." 
     971msgstr "" 
     972 
     973msgid "Development" 
     974msgstr "" 
     975 
     976msgid "Tools to assist in development of plugins, themes and core." 
     977msgstr "" 
     978 
    964979msgid "Optimize" 
    965980msgstr "" 
     
    974989msgstr "" 
    975990 
    976 msgid "Compressed file for current blog" 
    977 msgstr "" 
    978  
    979 msgid "Compressed file for all blogs" 
    980 msgstr "" 
    981  
    982 msgid "One task to execute" 
     991msgid "Current blog" 
     992msgstr "" 
     993 
     994msgid "All blogs" 
     995msgstr "" 
     996 
     997msgid "Translations" 
     998msgstr "" 
     999 
     1000msgid "Maintain translations" 
    9831001msgstr "" 
    9841002 
     
    9911009 
    9921010#, php-format 
    993 msgid_plural "There are %s tasks to execute." 
     1011msgid "There are %s tasks to execute." 
    9941012msgstr "" 
    9951013 
     
    10241042msgstr "" 
    10251043 
     1044msgid "It may be useful to empty this cache when modifying a theme's .html or .css files (or when updating a theme or plugin). Notice : with some hosters, the templates cache cannot be emptied with this plugin. You may then have to delete the directory <strong>/cbtpl/</strong> directly on the server with your FTP software." 
     1045msgstr "" 
     1046 
    10261047msgid "Count again comments and trackbacks" 
    10271048msgstr "" 
     
    10331054msgstr "" 
    10341055 
     1056msgid "Count again comments and trackbacks allows to check their exact numbers. This operation can be useful when importing from another blog platform (or when migrating from dotclear 1 to dotclear 2)." 
     1057msgstr "" 
     1058 
    10351059msgid "Search engine index" 
    10361060msgstr "" 
     
    10521076msgstr "" 
    10531077 
     1078msgid "Index all comments and trackbacks in search engine index. This operation is necessary, after importing content in your blog, to use internal search engine, on public and private pages." 
     1079msgstr "" 
     1080 
    10541081msgid "Index all entries for search engine" 
    10551082msgstr "" 
     
    10641091msgstr "" 
    10651092 
     1093msgid "Index all entries in search engine index. This operation is necessary, after importing content in your blog, to use internal search engine, on public and private pages." 
     1094msgstr "" 
     1095 
     1096msgid "Entries metadata" 
     1097msgstr "" 
     1098 
     1099msgid "Synchronize entries metadata" 
     1100msgstr "" 
     1101 
     1102msgid "Synchronize entry %d to %d." 
     1103msgstr "" 
     1104 
     1105msgid "Entries metadata synchronize done." 
     1106msgstr "" 
     1107 
     1108msgid "Failed to synchronize entries metadata." 
     1109msgstr "" 
     1110 
     1111msgid "Synchronize all entries metadata could be useful after importing content in your blog or do bad operation on database tables." 
     1112msgstr "" 
     1113 
    10661114msgid "Delete all logs" 
    10671115msgstr "" 
     
    10731121msgstr "" 
    10741122 
     1123msgid "Logs record all activity and connection to your blog history. Unless you need to keep this history, consider deleting these logs from time to time." 
     1124msgstr "" 
     1125 
    10751126msgid "optimize tables" 
    10761127msgstr "" 
     
    10821133msgstr "" 
    10831134 
     1135msgid "After numerous delete or update operations on Dotclear's database, it gets fragmented. Optimizing will allow to defragment it. It has no incidence on your data's integrity. It is recommended to optimize before any blog export." 
     1136msgstr "" 
     1137 
    10841138msgid "Download media folder of current blog" 
    10851139msgstr "" 
    10861140 
     1141msgid "It may be useful to backup your media folder. This compress all content of media folder into a single zip file. Notice : with some hosters, the media folder cannot be compressed with this plugin if it is too big." 
     1142msgstr "" 
     1143 
    10871144msgid "Download active theme of current blog" 
    10881145msgstr "" 
    10891146 
     1147msgid "It may be useful to backup the active theme before any change or update. This compress theme folder into a single zip file." 
     1148msgstr "" 
     1149 
    10901150msgid "Every week" 
    10911151msgstr "" 
     
    11241184msgstr "" 
    11251185 
     1186msgid "Activation" 
     1187msgstr "" 
     1188 
    11261189msgid "Display alert messages on late tasks" 
    11271190msgstr "" 
    11281191 
     1192msgid "You can place list of late tasks on your %s." 
     1193msgstr "" 
     1194 
     1195msgid "Frequency" 
     1196msgstr "Périodicité" 
     1197 
     1198msgid "Use one recall time for all tasks" 
     1199msgstr "" 
     1200 
    11291201msgid "Recall time for all tasks:" 
    11301202msgstr "" 
    11311203 
     1204msgid "Use one recall time per task" 
     1205msgstr "" 
     1206 
    11321207msgid "Recall time per task:" 
    11331208msgstr "" 
    11341209 
    1135 msgid "You can place list of late tasks on your %s." 
     1210msgid "Save this settings" 
    11361211msgstr "" 
    11371212 
  • locales/fr/main.po

    r2022 r2057  
    1111"Project-Id-Version: Dotclear\n" 
    1212"Report-Msgid-Bugs-To: \n" 
    13 "POT-Creation-Date: 2013-09-22 16:57+0000\n" 
     13"POT-Creation-Date: 2013-09-24 07:51+0000\n" 
    1414"PO-Revision-Date: 2012-08-13 07:13+0000\n" 
    1515"Last-Translator: xave <xave@dotclear.net>\n" 
     
    2121"Plural-Forms: nplurals=2; plural=(n > 1)\n" 
    2222 
     23msgid "medium" 
     24msgstr "moyenne" 
     25 
     26msgid "small" 
     27msgstr "petite" 
     28 
     29msgid "thumbnail" 
     30msgstr "vignettes" 
     31 
     32msgid "square" 
     33msgstr "carrée" 
     34 
     35msgid "Manage every blog configuration directive" 
     36msgstr "" 
     37 
     38msgid "Akismet interface for Dotclear" 
     39msgstr "" 
     40 
     41msgid "Generic antispam plugin for Dotclear" 
     42msgstr "" 
     43 
     44msgid "Manage post attachments" 
     45msgstr "Gérer les annexes" 
     46 
     47msgid "Manage your blogroll" 
     48msgstr "Gérez votre listes de liens" 
     49 
     50msgid "Configure your Blowup Theme" 
     51msgstr "Configurer votre thème Blowup" 
     52 
     53msgid "Install and update your plugins live from DotAddict.org" 
     54msgstr "" 
     55 
     56msgid "Trackback validity check" 
     57msgstr "" 
     58 
     59msgid "Import and Export your blog" 
     60msgstr "" 
     61 
     62msgid "Maintain your installation" 
     63msgstr "Maintenir votre installation" 
     64 
     65msgid "Serve entries as simple web pages" 
     66msgstr "" 
     67 
     68msgid "Ping services" 
     69msgstr "" 
     70 
     71msgid "Simple menu for Dotclear" 
     72msgstr "Menu simple sur Dotclear" 
     73 
     74msgid "Tags for posts" 
     75msgstr "" 
     76 
     77msgid "Theme Editor" 
     78msgstr "" 
     79 
     80msgid "Manage every user preference directive" 
     81msgstr "" 
     82 
     83msgid "Widgets for your blog sidebars" 
     84msgstr "" 
     85 
     86msgid "Search engine form" 
     87msgstr "Formulaire du moteur de recherche" 
     88 
     89msgid "List of navigation links" 
     90msgstr "Liste des liens de navigation" 
     91 
     92msgid "List of selected entries" 
     93msgstr "Entrées sélectionnées" 
     94 
     95msgid "List of available languages" 
     96msgstr "Langues disponibles" 
     97 
     98msgid "List of categories" 
     99msgstr "Liste des catégories du blog" 
     100 
     101msgid "RSS or Atom feed subscription links" 
     102msgstr "" 
     103 
     104msgid "Last entries from feed" 
     105msgstr "Derniers billets du flux" 
     106 
     107msgid "Simple text" 
     108msgstr "" 
     109 
     110msgid "List of last entries published" 
     111msgstr "Derniers billets publiés" 
     112 
     113msgid "List of last comments posted" 
     114msgstr "Derniers commentaires postés" 
     115 
     116msgid "Tags cloud" 
     117msgstr "" 
     118 
     119msgid "List of published pages" 
     120msgstr "Liste des pages publiées" 
     121 
     122msgid "Blogroll list" 
     123msgstr "Liste des liens" 
     124 
     125msgid "List of simple menu items" 
     126msgstr "" 
     127 
     128msgid "Posts" 
     129msgstr "Billets" 
     130 
     131msgid "Pages" 
     132msgstr "Pages" 
     133 
     134msgid "New entry" 
     135msgstr "Nouveau billet" 
     136 
     137msgid "Entries" 
     138msgstr "Billets" 
     139 
     140msgid "Comments" 
     141msgstr "Commentaires" 
     142 
     143msgid "My preferences" 
     144msgstr "Mes préférences" 
     145 
     146msgid "Blog settings" 
     147msgstr "Paramètres du blog" 
     148 
     149msgid "Blog appearance" 
     150msgstr "Apparence du blog" 
     151 
     152msgid "Blogroll" 
     153msgstr "Liste de liens" 
     154 
    23155msgid "Dotclear has been upgraded." 
    24156msgstr "Dotclear a été mis à jour." 
     
    257389msgstr "Code langue invalide" 
    258390 
    259 msgid "Blog settings" 
    260 msgstr "Paramètres du blog" 
    261  
    262391msgid "Warning: except for special configurations, it is generally advised to have a trailing \"/\" in your blog URL in PATH_INFO mode." 
    263392msgstr "Attention : sauf cas particulier, il est généralement conseillé de terminer l'URL de votre blog par \"/\" en mode PATH_INFO." 
     
    348477 
    349478msgid "No limit: leave blank." 
    350 msgstr "" 
     479msgstr "Aucune limite : laisser vide." 
    351480 
    352481msgid "Wiki syntax for comments" 
     
    372501msgstr "Format des dates :" 
    373502 
     503msgid "Pattern of date" 
     504msgstr "" 
     505 
     506msgid "Sample:" 
     507msgstr "" 
     508 
    374509msgid "Time format:" 
    375510msgstr "Format des heures :" 
    376511 
     512msgid "Pattern of time" 
     513msgstr "" 
     514 
    377515msgid "Display smilies on entries and comments" 
    378516msgstr "Afficher des émoticônes dans les billets, pages et commentaires" 
     
    397535 
    398536msgid "Please note that if you change current settings bellow, they will now apply to all new images in the media manager." 
    399 msgstr "" 
     537msgstr "Veuillez noter que si vous changez ces réglages, ils s'appliqueront désormais à toutes les nouvelles images ajoutées à la médiathèque." 
    400538 
    401539msgid "Be carefull if you share it with other blogs in your installation." 
    402 msgstr "" 
     540msgstr "Soyez prudent si vous plusieurs blogs de l'installation partagent la même médiathèque." 
    403541 
    404542msgid "Generated image sizes (in pixels)" 
     
    502640msgid "Configure theme" 
    503641msgstr "Configurer le thème" 
    504  
    505 msgid "Blog appearance" 
    506 msgstr "Apparence du blog" 
    507642 
    508643msgid "Theme configuration" 
     
    8851020msgstr "%d commentaires" 
    8861021 
    887 msgid "New entry" 
    888 msgstr "Nouveau billet" 
    889  
    890 msgid "My preferences" 
    891 msgstr "Mes préférences" 
    892  
    8931022msgid "Dotclear news" 
    8941023msgstr "Actualité de Dotclear" 
     
    13541483#, php-format 
    13551484msgid "Current settings for medias and images are defined in %s" 
    1356 msgstr "" 
     1485msgstr "Les réglages actuels pour les médias et les images sont définis sur le %s" 
    13571486 
    13581487msgid "Blog parameters" 
     
    13691498msgstr "Nom du répertoire :" 
    13701499 
    1371 #php-format 
     1500# php-format 
     1501#, php-format 
    13721502msgid "Backup content of %s" 
    13731503msgstr "Sauvegarder le contenu de %s" 
     
    17371867msgstr "&ldquo;%s&rdquo;" 
    17381868 
    1739 msgid "Entries" 
    1740 msgstr "Billets" 
    1741  
    17421869msgid "Entry has been successfully updated." 
    17431870msgstr "Billet mis à jour avec succès." 
     
    17801907 
    17811908msgid "Filing" 
    1782 msgstr "" 
     1909msgstr "Classement" 
    17831910 
    17841911msgid "Selected entry" 
     
    18451972msgstr "Mettre en indésirable" 
    18461973 
    1847 msgid "Comments" 
    1848 msgstr "Commentaires" 
    1849  
    18501974msgid "Add a comment" 
    18511975msgstr "Ajouter un commentaire" 
     
    20132137msgstr "Si cette option est cochée, des champs numériques permettront d'indiquer la position des éléments." 
    20142138 
     2139msgid "Number of media displayed per page:" 
     2140msgstr "" 
     2141 
    20152142msgid "Do not use standard favicon" 
    20162143msgstr "Ne pas utiliser le favicon standard de Dotclear" 
     
    23722499msgstr "Aucune entrée sélectionnée" 
    23732500 
    2374 msgid "Change category for entries" 
    2375 msgstr "Changer la catégorie des billets" 
     2501msgid "Change category for this selection" 
     2502msgstr "Changer la catégorie pour cette sélection" 
    23762503 
    23772504msgid "Create a new category for the post(s)" 
     
    23812508msgstr "Cet utilisateur n'existe pas" 
    23822509 
    2383 msgid "Change author for entries" 
    2384 msgstr "Changer l'auteur de ces entrées" 
     2510msgid "Change author for this selection" 
     2511msgstr "Changer l'auteur pour cette sélection" 
    23852512 
    23862513msgid "New author (author ID):" 
    23872514msgstr "Nouvel auteur (identifiant utilisateur) :" 
    23882515 
    2389 msgid "Change language for entries" 
    2390 msgstr "Changer la langue de ces entrées" 
     2516msgid "Change language for this selection" 
     2517msgstr "Changer la langue de cette sélection" 
    23912518 
    23922519msgid "Available" 
     
    23992526msgstr "Langue du billet :" 
    24002527 
     2528msgid "Users actions" 
     2529msgstr "Actions sur les utilisateurs" 
     2530 
     2531msgid "No User selected" 
     2532msgstr "Aucun utilisateur sélectionné" 
     2533 
     2534msgid "(no cat)" 
     2535msgstr "(aucune)" 
     2536 
    24012537msgid "Change blog" 
    24022538msgstr "Changer de blog" 
     
    27982934msgid "Languages" 
    27992935msgstr "Langues" 
    2800  
    2801 msgid "medium" 
    2802 msgstr "moyenne" 
    2803  
    2804 msgid "small" 
    2805 msgstr "petite" 
    2806  
    2807 msgid "thumbnail" 
    2808 msgstr "vignettes" 
    2809  
    2810 msgid "square" 
    2811 msgstr "carrée" 
    2812  
    2813 msgid "Posts" 
    2814 msgstr "Billets" 
    2815  
    2816 msgid "Pages" 
    2817 msgstr "Pages" 
    2818  
    2819 msgid "Blogroll" 
    2820 msgstr "" 
    28212936 
    28222937msgid "administrator" 
     
    33173432#~ msgstr "Classement" 
    33183433 
    3319 #~ msgid "Users actions" 
    3320 #~ msgstr "Actions sur les utilisateurs" 
    3321  
    3322 #~ msgid "(no cat)" 
    3323 #~ msgstr "(aucune)" 
    3324  
    33253434#~ msgid "Category where entries of deleted categories will be moved:" 
    33263435#~ msgstr "Catégorie où seront déplacés les billets des catégories supprimées :" 
     
    33683477#~ msgstr "Catégorie créée avec succès." 
    33693478 
    3370 #~ msgid "List of blog's categories" 
    3371 #~ msgstr "Liste des catégories du blog" 
    3372  
    33733479#~ msgid "Remove a category" 
    33743480#~ msgstr "Supprimer une catégorie" 
     
    34843590#~ msgid "Those favorites are displayed when My Favorites list is empty." 
    34853591#~ msgstr "Favoris affichés quand la liste Mes Favoris est vide." 
    3486  
    3487 #~ msgid "This entry does not exist or is not published" 
    3488 #~ msgstr "Ce billet n'existe pas ou n'est pas publié" 
    34893592 
    34903593#~ msgid "Back to \"%s\"" 
  • locales/fr/plugins.po

    r2022 r2057  
    1111"Project-Id-Version: Dotclear\n" 
    1212"Report-Msgid-Bugs-To: \n" 
    13 "POT-Creation-Date: 2013-09-22 16:57+0000\n" 
     13"POT-Creation-Date: 2013-09-24 07:51+0000\n" 
    1414"PO-Revision-Date: 2012-11-06 10:04+0100\n" 
    1515"Last-Translator: Franck Paul <carnet.franck.paul@gmail.com>\n" 
     
    2222"X-Generator: Poedit 1.5.4\n" 
    2323 
    24 msgid "Manage every blog configuration directive" 
    25 msgstr "Gestion des directives de configuration des blogs" 
    26  
    27 msgid "Akismet interface for Dotclear" 
    28 msgstr "Interface Akismet pour Dotclear" 
    29  
    30 msgid "Generic antispam plugin for Dotclear" 
    31 msgstr "Antispam générique pour Dotclear" 
    32  
    33 msgid "Manage post attachments" 
    34 msgstr "Gestion des fichiers attachés" 
    35  
    36 msgid "Manage your blogroll" 
    37 msgstr "Gestion de votre liste de liens" 
    38  
    39 msgid "Configure your Blowup Theme" 
    40 msgstr "Configurer votre thème Blowup" 
    41  
    42 msgid "Install and update your plugins live from DotAddict.org" 
    43 msgstr "" 
    44  
    45 msgid "Trackback validity check" 
    46 msgstr "Contrôle de validité des rétroliens" 
    47  
    48 msgid "Import and Export your blog" 
    49 msgstr "Importez et exportez votre blog" 
    50  
    51 msgid "Maintain your installation" 
    52 msgstr "Maintenez votre installation" 
    53  
    54 msgid "Serve entries as simple web pages" 
    55 msgstr "Publie des billets comme de simples pages web" 
    56  
    57 msgid "Ping services" 
    58 msgstr "Services de signalement" 
    59  
    60 msgid "Simple menu for Dotclear" 
    61 msgstr "Menu simple pour Dotclear" 
    62  
    63 msgid "Tags for posts" 
    64 msgstr "Mots-clés pour les billets" 
    65  
    66 msgid "Theme Editor" 
    67 msgstr "Éditeur de thème" 
    68  
    69 msgid "Manage every user preference directive" 
    70 msgstr "Gestion des préférences utilisateur" 
    71  
    72 msgid "Widgets for your blog sidebars" 
    73 msgstr "Widgets pour les volets de votre blog" 
    74  
    75 msgid "Search engine form" 
    76 msgstr "Formulaire de recherche" 
    77  
    78 msgid "List of navigation links" 
    79 msgstr "Liste des liens de navigation" 
    80  
    81 msgid "List of selected entries" 
    82 msgstr "Liste des billets sélectionnés" 
    83  
    84 msgid "List of available languages" 
    85 msgstr "Liste des langues disponibles" 
    86  
    87 msgid "List of categories" 
    88 msgstr "Liste des catégories" 
    89  
    90 msgid "RSS or Atom feed subscription links" 
    91 msgstr "Liens d'abonnements aux flux RSS ou Atom" 
    92  
    93 msgid "Last entries from feed" 
    94 msgstr "Derniers billets d'un flux" 
    95  
    96 msgid "Simple text" 
    97 msgstr "Texte simple" 
    98  
    99 msgid "List of last entries published" 
    100 msgstr "Derniers billets publiés" 
    101  
    102 msgid "List of last comments posted" 
    103 msgstr "Liste des derniers commentaires postés" 
    104  
    105 msgid "Tags cloud" 
    106 msgstr "Nuage de mots-clés" 
    107  
    108 msgid "List of published pages" 
    109 msgstr "Liste des pages publiées" 
    110  
    111 msgid "Blogroll list" 
    112 msgstr "Liste de liens" 
    113  
    114 msgid "List of simple menu items" 
    115 msgstr "Liste des éléments de menu simple" 
    116  
    11724msgid "no" 
    11825msgstr "non" 
     
    612519 
    613520msgid "Customization" 
    614 msgstr "" 
     521msgstr "Personnalisation" 
    615522 
    616523msgid "General" 
     
    827734 
    828735msgid "Updates are available" 
    829 msgstr "" 
     736msgstr "Des mises à jour sont disponibles" 
    830737 
    831738#, php-format 
     
    11671074 
    11681075msgid "Database export" 
    1169 msgstr "Export de base de données" 
     1076msgstr "Exporter la base de données" 
    11701077 
    11711078msgid "Download database of current blog" 
     
    11781085msgstr "Veuillez patientez…" 
    11791086 
     1087#, php-format 
     1088msgid "Export functions are in the page %s." 
     1089msgstr "Les fonctions d'export sont dans la page de %s." 
     1090 
    11801091msgid "Maintenance" 
    11811092msgstr "Maintenance" 
     
    11841095msgstr "Entretien" 
    11851096 
     1097msgid "Tools to maintain the performance of your blogs." 
     1098msgstr "Outils pour maintenir les performances de vos blogs." 
     1099 
    11861100msgid "Backup" 
    11871101msgstr "Sauvegarde" 
    11881102 
     1103msgid "Tools to back up your content." 
     1104msgstr "Outils de sauvegarde du contenu" 
     1105 
     1106msgid "Development" 
     1107msgstr "Développement" 
     1108 
     1109msgid "Tools to assist in development of plugins, themes and core." 
     1110msgstr "Outils pour aider au developpement de plugins, thèmes et au core." 
     1111 
    11891112msgid "Optimize" 
    11901113msgstr "Optimiser" 
     
    11991122msgstr "Autre" 
    12001123 
    1201 msgid "Compressed file for current blog" 
    1202 msgstr "Fichiers compressés pour le blog courant (zip)" 
    1203  
    1204 msgid "Compressed file for all blogs" 
    1205 msgstr "Fichier compressé pour tous les blogs (zip)" 
     1124msgid "Current blog" 
     1125msgstr "Blog courant" 
     1126 
     1127msgid "All blogs" 
     1128msgstr "Tous les blogs" 
     1129 
     1130msgid "Maintain translations" 
     1131msgstr "Maintenir les traductions" 
     1132 
     1133msgid "Translations" 
     1134msgstr "Traductions" 
    12061135 
    12071136#, php-format 
     
    12481177msgstr "Impossible de vider le répertoire de cache des « templates »." 
    12491178 
     1179msgid "It may be useful to empty this cache when modifying a theme's .html or .css files (or when updating a theme or plugin). Notice : with some hosters, the templates cache cannot be emptied with this plugin. You may then have to delete the directory <strong>/cbtpl/</strong> directly on the server with your FTP software." 
     1180msgstr "La suppression du répertoire du cache des templates peut se révéler nécessaire lors de modifications dans les fichiers .html ou .css d'un thème (voire lors d'un changement de thème ou de mise à jour de plugin). Attention : chez certains hébergeurs (Free par exemple), le cache du répertoire des templates ne peut pas être vidé grâce à l'extension Maintenance, il faut supprimer le répertoire <strong>cbtpl</strong> situé dans le répertoire cache (dotclear/cache par défaut) avec un logiciel FTP." 
     1181 
    12501182msgid "Count again comments and trackbacks" 
    12511183msgstr "Recompter les commentaires et rétroliens" 
     
    12571189msgstr "Impossible de recompter les commentaires et rétroliens." 
    12581190 
     1191msgid "Count again comments and trackbacks allows to check their exact numbers. This operation can be useful when importing from another blog platform (or when migrating from dotclear 1 to dotclear 2)." 
     1192msgstr "Recompter commentaires et des rétroliens a pour effet de donner le nombre exact de ceux-ci pour chaque billet. Cette opération peut se révéler utile lors de l'import d'un blog d'une autre plateforme (ou d'une migration de Dotclear 1 vers Dotclear 2)." 
     1193 
    12591194msgid "Search engine index" 
    12601195msgstr "Index du moteur de recherche" 
     
    12761211msgstr "Impossible d'indexer les commentaires." 
    12771212 
     1213msgid "Index all comments and trackbacks in search engine index. This operation is necessary, after importing content in your blog, to use internal search engine, on public and private pages." 
     1214msgstr "Indexer tous les commentaires et rétroliens dans le moteur de recherche. Cette opération s'effectue généralement suite à un import afin d'obtenir des résultats lors des recherches, aussi bien depuis l'administration du blog qu'en partie publique." 
     1215 
    12781216msgid "Index all entries for search engine" 
    12791217msgstr "Indexer tous les billets pour le moteur de recherche" 
     
    12891227msgstr "Impossible d'indexer les billets." 
    12901228 
     1229msgid "Index all entries in search engine index. This operation is necessary, after importing content in your blog, to use internal search engine, on public and private pages." 
     1230msgstr "Indexer tous les billets dans le moteur de recherche. Cette opération s'effectue généralement suite à un import afin d'obtenir des résultats lors des recherches, aussi bien depuis l'administration du blog qu'en partie publique." 
     1231 
    12911232msgid "Delete all logs" 
    12921233msgstr "Supprimer tous les journaux (logs)" 
     
    12981239msgstr "Impossible de supprimer les journaux." 
    12991240 
     1241msgid "Logs record all activity and connection to your blog history. Unless you need to keep this history, consider deleting these logs from time to time." 
     1242msgstr "Sauf si vous avez un besoin précis de conservation des activités de connexion sur votre blog, pensez à vider régulièrement la table des journaux : elle contient l'enregistrement de chaque connexion à l'administration et des opérations qui s'y sont déroulées." 
     1243 
     1244msgid "Entries metadata" 
     1245msgstr "Métadonnées des billets" 
     1246 
     1247msgid "Synchronize entries metadata" 
     1248msgstr "Synchroniser les métadonnées des billets" 
     1249 
     1250#, php-format 
     1251msgid "Synchronize entry %d to %d." 
     1252msgstr "Synchronisation des billets %d à %d." 
     1253 
     1254msgid "Entries metadata synchronize done." 
     1255msgstr "La synchronisation des métadonnées des billets a été effectuée." 
     1256 
     1257msgid "Failed to synchronize entries metadata." 
     1258msgstr "Impossible de synchroniser les métadonnées des billets." 
     1259 
     1260msgid "Synchronize all entries metadata could be useful after importing content in your blog or do bad operation on database tables." 
     1261msgstr "La synchronisation des métadonnées des billets peut être utile après l'import de contenu dans votre blog ou après une mauvaise opération sur la base de données." 
     1262 
     1263msgid "Optimise database" 
     1264msgstr "Optimise la base de données" 
     1265 
    13001266msgid "optimize tables" 
    13011267msgstr "Optimiser les tables" 
     
    13071273msgstr "Impossible d'optimiser les tables." 
    13081274 
     1275msgid "After numerous delete or update operations on Dotclear's database, it gets fragmented. Optimizing will allow to defragment it. It has no incidence on your data's integrity. It is recommended to optimize before any blog export." 
     1276msgstr "Au fur at à mesure des suppressions ou modifications dans vos billets, les tables de la base de données se fragmentent. L'opération d'optimisation permet de compacter celles-ci. Cette opération n'a aucun impact sur l'intégrité de vos données. Il est fortement conseillé d'optimiser la base de données avant tout export de blog." 
     1277 
    13091278msgid "Download media folder of current blog" 
    13101279msgstr "Télécharger la médiathèque du blog courant" 
    13111280 
     1281msgid "It may be useful to backup your media folder. This compress all content of media folder into a single zip file. Notice : with some hosters, the media folder cannot be compressed with this plugin if it is too big." 
     1282msgstr "Il peut être utile de sauvegarder votre médiathèque. Ceci comprime tout le contenu du répertoire de média dans un seul fichier Zip. Remarque : chez certains hébergeurs, la médiathèque ne peut pas être compressée avec ce plugin si elle est trop grande." 
     1283 
    13121284msgid "Download active theme of current blog" 
    13131285msgstr "Télécharger le theme actif du blog courant" 
    13141286 
     1287msgid "It may be useful to backup the active theme before any change or update. This compress theme folder into a single zip file." 
     1288msgstr "Il peut être utile de sauvegarder le thème courant avant tout changement ou mise à jour. Ceci comprime tout le contenu du répertoire du thème dans un seul fichier Zip." 
     1289 
     1290msgid "Never" 
     1291msgstr "Jamais" 
     1292 
    13151293msgid "Every week" 
    13161294msgstr "Chaque semaine" 
     
    13251303msgstr "Tous les deux mois" 
    13261304 
    1327 msgid "Use different periods for each task" 
    1328 msgstr "Utiliser une périodicité différente pour chaque tâche" 
    1329  
    1330 msgid "Never" 
    1331 msgstr "Jamais" 
    1332  
    13331305msgid "You have not sufficient permissions to view this page." 
    13341306msgstr "Vous n'avez pas les autorisations suffisantes pour accéder à cette page." 
     
    13491321msgstr "Cela peut prendre un certain temps." 
    13501322 
    1351 msgid "Settings" 
    1352 msgstr "Paramètres" 
     1323msgid "Alert settings" 
     1324msgstr "Réglage des alertes" 
    13531325 
    13541326msgid "Activation" 
     
    13651337msgstr "Périodicité" 
    13661338 
     1339msgid "Use one recall time for all tasks" 
     1340msgstr "Utiliser le même délai de rappel pour toutes les tâches" 
     1341 
    13671342msgid "Recall time for all tasks:" 
    13681343msgstr "Délai de rappel pour toutes les tâches :" 
    13691344 
    1370 msgid "Recall time per task:" 
    1371 msgstr "Délai de rappel par tâche :" 
     1345msgid "Use one recall time per task" 
     1346msgstr "Utiliser un délai de rappel différent pour chaque tâche" 
    13721347 
    13731348msgid "Save this settings" 
     
    14121387msgstr "Date de publication" 
    14131388 
     1389msgid "Pages actions" 
     1390msgstr "Action sur les pages" 
     1391 
     1392msgid "Back to pages list" 
     1393msgstr "Retour à la liste des pages" 
     1394 
    14141395msgid "No page" 
    14151396msgstr "Aucune page" 
     
    14251406 
    14261407msgid "Selected pages have been successfully updated." 
    1427 msgstr "Les pages sélectionnées ont été modifiése avec succès." 
     1408msgstr "Les pages sélectionnées ont été modifiées avec succès." 
    14281409 
    14291410msgid "Selected pages have been successfully deleted." 
     
    14391420msgstr "Action sur les pages sélectionnées :" 
    14401421 
     1422msgid "To rearrange pages order, change number at the begining of the line, then click on “Save pages order” button." 
     1423msgstr "" 
     1424 
     1425msgid "To rearrange pages order, move items by drag and drop, then click on “Save pages order” button." 
     1426msgstr "" 
     1427 
     1428msgid "Save pages order" 
     1429msgstr "Sauvegarder l'ordre des pages" 
     1430 
    14411431msgid "This page does not exist." 
    14421432msgstr "Cette page n'existe pas." 
     
    16281618msgstr "Aucun item de menu pour l'instant." 
    16291619 
     1620msgid "Add tags" 
     1621msgstr "Ajouter des mots-clés" 
     1622 
     1623msgid "Remove tags" 
     1624msgstr "Retirer des mots-clés" 
     1625 
     1626msgid "Add tags to this selection" 
     1627msgstr "Ajouter des mots-clés à cette sélection" 
     1628 
    16301629#, php-format 
    16311630msgid "Are you sure you want to remove this %s?" 
     
    16421641msgstr "tous" 
    16431642 
     1643msgid "Enter tags separated by coma" 
     1644msgstr "Entrez les mots-clés séparés par des virgules" 
     1645 
     1646msgid "used in %e - frequency %p%" 
     1647msgstr "utilisé dans %e - fréquence %p%" 
     1648 
     1649msgid "entry" 
     1650msgstr "billet" 
     1651 
     1652msgid "entries" 
     1653msgstr "billets" 
     1654 
     1655msgid "Tags to add:" 
     1656msgstr "Mots-clés à ajouter :" 
     1657 
     1658msgid "No tags for selected entries" 
     1659msgstr "Aucun mot-clé pour les billets sélectionnés" 
     1660 
     1661msgid "Remove selected tags from this selection" 
     1662msgstr "Retirer les mots-clés de cette sélection" 
     1663 
     1664msgid "Following tags have been found in selected entries:" 
     1665msgstr "Les mots-clés suivants ont été trouvés pour les billets sélectionnés :" 
     1666 
    16441667msgid "Tag" 
    16451668msgstr "Mot-clé" 
    16461669 
    1647 msgid "used in %e - frequency %p%" 
    1648 msgstr "utilisé dans %e - fréquence %p%" 
    1649  
    1650 msgid "entry" 
    1651 msgstr "billet" 
    1652  
    1653 msgid "entries" 
    1654 msgstr "billets" 
    1655  
    1656 msgid "Enter tags separated by coma" 
    1657 msgstr "Entrez les mots-clés séparés par des virgules" 
    1658  
    1659 msgid "Add tags" 
    1660 msgstr "Ajouter des mots-clés" 
    1661  
    1662 msgid "Remove tags" 
    1663 msgstr "Retirer des mots-clés" 
    1664  
    1665 msgid "Add tags to entries" 
    1666 msgstr "Ajouter des mots-clés à des billets" 
    1667  
    1668 msgid "Tags to add:" 
    1669 msgstr "Mots-clés à ajouter :" 
    1670  
    1671 msgid "Remove selected tags from entries" 
    1672 msgstr "Retirer les mots-clés sélectionnés des billets" 
    1673  
    1674 msgid "No tags for selected entries" 
    1675 msgstr "Aucun mot-clé pour les billets sélectionnés" 
    1676  
    1677 msgid "Following tags have been found in selected entries:" 
    1678 msgstr "Les mots-clés suivants ont été trouvés pour les billets sélectionnés :" 
    1679  
    16801670msgid "Short" 
    16811671msgstr "Court" 
     
    19981988msgstr "Glisser les widgets ici pour les retirer du volet." 
    19991989 
     1990#~ msgid "Manage every blog configuration directive" 
     1991#~ msgstr "Gestion des directives de configuration des blogs" 
     1992 
     1993#~ msgid "Akismet interface for Dotclear" 
     1994#~ msgstr "Interface Akismet pour Dotclear" 
     1995 
     1996#~ msgid "Generic antispam plugin for Dotclear" 
     1997#~ msgstr "Antispam générique pour Dotclear" 
     1998 
     1999#~ msgid "Manage post attachments" 
     2000#~ msgstr "Gestion des fichiers attachés" 
     2001 
     2002#~ msgid "Manage your blogroll" 
     2003#~ msgstr "Gestion de votre liste de liens" 
     2004 
     2005#~ msgid "Configure your Blowup Theme" 
     2006#~ msgstr "Configurer votre thème Blowup" 
     2007 
     2008#~ msgid "Trackback validity check" 
     2009#~ msgstr "Contrôle de validité des rétroliens" 
     2010 
     2011#~ msgid "Import and Export your blog" 
     2012#~ msgstr "Importez et exportez votre blog" 
     2013 
     2014#~ msgid "Maintain your installation" 
     2015#~ msgstr "Maintenez votre installation" 
     2016 
     2017#~ msgid "Serve entries as simple web pages" 
     2018#~ msgstr "Publie des billets comme de simples pages web" 
     2019 
     2020#~ msgid "Ping services" 
     2021#~ msgstr "Services de signalement" 
     2022 
     2023#~ msgid "Simple menu for Dotclear" 
     2024#~ msgstr "Menu simple pour Dotclear" 
     2025 
     2026#~ msgid "Tags for posts" 
     2027#~ msgstr "Mots-clés pour les billets" 
     2028 
     2029#~ msgid "Theme Editor" 
     2030#~ msgstr "Éditeur de thème" 
     2031 
     2032#~ msgid "Manage every user preference directive" 
     2033#~ msgstr "Gestion des préférences utilisateur" 
     2034 
     2035#~ msgid "Widgets for your blog sidebars" 
     2036#~ msgstr "Widgets pour les volets de votre blog" 
     2037 
     2038#~ msgid "Search engine form" 
     2039#~ msgstr "Formulaire de recherche" 
     2040 
     2041#~ msgid "List of navigation links" 
     2042#~ msgstr "Liste des liens de navigation" 
     2043 
     2044#~ msgid "List of selected entries" 
     2045#~ msgstr "Liste des billets sélectionnés" 
     2046 
     2047#~ msgid "List of available languages" 
     2048#~ msgstr "Liste des langues disponibles" 
     2049 
     2050#~ msgid "List of categories" 
     2051#~ msgstr "Liste des catégories" 
     2052 
     2053#~ msgid "RSS or Atom feed subscription links" 
     2054#~ msgstr "Liens d'abonnements aux flux RSS ou Atom" 
     2055 
     2056#~ msgid "Last entries from feed" 
     2057#~ msgstr "Derniers billets d'un flux" 
     2058 
     2059#~ msgid "Simple text" 
     2060#~ msgstr "Texte simple" 
     2061 
     2062#~ msgid "List of last entries published" 
     2063#~ msgstr "Derniers billets publiés" 
     2064 
     2065#~ msgid "List of last comments posted" 
     2066#~ msgstr "Liste des derniers commentaires postés" 
     2067 
     2068#~ msgid "Tags cloud" 
     2069#~ msgstr "Nuage de mots-clés" 
     2070 
     2071#~ msgid "List of published pages" 
     2072#~ msgstr "Liste des pages publiées" 
     2073 
     2074#~ msgid "Blogroll list" 
     2075#~ msgstr "Liste de liens" 
     2076 
     2077#~ msgid "List of simple menu items" 
     2078#~ msgstr "Liste des éléments de menu simple" 
     2079 
     2080#~ msgid "Use different periods for each task" 
     2081#~ msgstr "Utiliser une périodicité différente pour chaque tâche" 
     2082 
     2083#~ msgid "Settings" 
     2084#~ msgstr "Paramètres" 
     2085 
     2086#~ msgid "Recall time per task:" 
     2087#~ msgstr "Délai de rappel par tâche :" 
     2088 
     2089#~ msgid "Add tags to entries" 
     2090#~ msgstr "Ajouter des mots-clés à des billets" 
     2091 
    20002092#~ msgid "Help for this page" 
    20012093#~ msgstr "Aide pour cette page" 
     
    20672159#~ msgstr "Cela importera un flux (RSS ou ATOM) comme un nouveau contenu dans le blog courant : %s." 
    20682160 
    2069 #~ msgid "Optimize database room" 
    2070 #~ msgstr "Optimise la place occupée par la base de données" 
    2071  
    20722161#~ msgid "Counters" 
    20732162#~ msgstr "Compteurs" 
    20742163 
    20752164#~ msgid "Vacuum logs" 
    2076 #~ msgstr "Vidages des journaux" 
     2165#~ msgstr "Vidage des journaux" 
    20772166 
    20782167#~ msgid "Empty directory" 
     
    20912180#~ msgstr "page précédente" 
    20922181 
    2093 #~ msgid "Page password" 
    2094 #~ msgstr "Mot de passe de la page" 
    2095  
    20962182#~ msgid "Hide" 
    20972183#~ msgstr "Masquer" 
  • plugins/buildtools/_admin.php

    r1977 r2044  
    1111# -- END LICENSE BLOCK ----------------------------------------- 
    1212if (!defined('DC_CONTEXT_ADMIN')) { return; } 
    13 $core->addBehavior('dcMaintenanceRegister', array('dcBuildTools', 'maintenanceAdmin')); 
     13$core->addBehavior('dcMaintenanceInit', array('dcBuildTools', 'maintenanceAdmin')); 
    1414 
    1515class dcBuildTools 
    1616{ 
    17      public static function maintenanceAdmin($core, $tasks, $groups, $tabs) { 
    18           $tasks[] = 'dcMaintenanceBuildtools'; 
     17     public static function maintenanceAdmin($maintenance) { 
     18          $maintenance->addTask('dcMaintenanceBuildtools'); 
    1919     } 
    2020} 
  • plugins/buildtools/class.dc.maintenance.buildtools.php

    r1978 r2044  
    44class dcMaintenanceBuildtools extends dcMaintenanceTask 
    55{ 
    6      protected $group = 'other'; 
     6     protected $tab = 'dev'; 
     7     protected $group = 'l10n'; 
    78 
    89     protected function init() 
     
    1112          $this->success           = __('fake l10n file generated.'); 
    1213          $this->error        = __('Failed to generate fake l10n file.'); 
     14          $this->description  = __('Generate a php file that contents strings to translate that are not be done with core tools.'); 
    1315     } 
    1416 
  • plugins/dclegacy/_admin.php

    r1905 r2061  
    1313 
    1414$GLOBALS['core']->addBehavior('adminPostsActionsPage',array('dcLegacyPosts','adminPostsActionsPage')); 
     15$GLOBALS['core']->addBehavior('adminPagesActionsPage',array('dcLegacyPages','adminPagesActionsPage')); 
    1516$GLOBALS['core']->addBehavior('adminCommentsActionsPage',array('dcLegacyComments','adminCommentsActionsPage')); 
    1617 
     
    6970     } 
    7071} 
     72/* Handle deprecated behaviors :  
     73    * adminPagesActionsCombo 
     74     * adminPagesActionsHeaders 
     75     * adminPagesActionsContent 
     76*/ 
     77class dcLegacyPages 
     78{ 
     79     public static function adminPagesActionsPage($core, dcPagesActionsPage $as) { 
     80          $stub_actions = new ArrayObject(); 
     81          $core->callBehavior('adminPagesActionsCombo',array($stub_actions)); 
     82          if (!empty($stub_actions)) { 
     83               $as->addAction($stub_actions,array('dcLegacyPages','onActionLegacy')); 
     84          } 
     85     } 
     86      
     87     public static function onActionLegacy($core, dcPagesActionsPage $as, $post) { 
     88          $core->callBehavior('adminPostsActions',$core,$as->getRS(),$as->getAction(),$as->getRedirection()); 
     89          $as->beginPage('', 
     90               dcPage::jsLoad('js/jquery/jquery.autocomplete.js'). 
     91               dcPage::jsMetaEditor(). 
     92               $core->callBehavior('adminPostsActionsHeaders'),''); 
     93          ob_start(); 
     94          $core->callBehavior('adminPostsActionsContent',$core,$as->getAction(),$as->getHiddenFields(true)); 
     95          $res = ob_get_contents(); 
     96          ob_end_clean(); 
     97          $res = str_replace("posts_actions.php","plugin.php",$res); 
     98          echo $res; 
     99          $as->endPage(); 
     100     } 
     101} 
  • plugins/importExport/_admin.php

    r840 r2044  
    3333     )); 
    3434} 
    35 ?> 
     35 
     36$core->addBehavior('dcMaintenanceInit', 'ieMaintenanceInit'); 
     37 
     38function ieMaintenanceInit($maintenance) 
     39{ 
     40     $maintenance 
     41     ->addTask('ieMaintenanceExportblog') 
     42     ->addTask('ieMaintenanceExportfull') 
     43     ; 
     44} 
  • plugins/importExport/_prepend.php

    r1955 r2044  
    4545$__autoload['ieMaintenanceExportblog'] = dirname(__FILE__).'/inc/lib.ie.maintenance.php'; 
    4646$__autoload['ieMaintenanceExportfull'] = dirname(__FILE__).'/inc/lib.ie.maintenance.php'; 
    47  
    48 $this->core->addBehavior('dcMaintenanceRegister', 'ieMaintenanceRegister'); 
    49  
    50 function ieMaintenanceRegister($core, $tasks, $groups, $tabs) 
    51 { 
    52      $tasks[] = 'ieMaintenanceExportblog'; 
    53      $tasks[] = 'ieMaintenanceExportfull'; 
    54 } 
    55 ?> 
  • plugins/importExport/index.php

    r1358 r2045  
    9595          )); 
    9696 
    97      echo 
    98      '<h3>'.__('Import').'</h3>'.listImportExportModules($core,$modules['import']). 
    99      '<h3>'.__('Export').'</h3>'.listImportExportModules($core,$modules['export']); 
     97     echo '<h3>'.__('Import').'</h3>'.listImportExportModules($core,$modules['import']); 
     98     //echo '<h3>'.__('Export').'</h3>'.listImportExportModules($core,$modules['export']); 
    10099} 
     100 
     101echo 
     102'<p class="info">'.sprintf( 
     103     __('Export functions are in the page %s.'), 
     104     '<a href="plugin.php?p=maintenance&tab=backup#backup">'.__('Maintenance').'</a>' 
     105).'</p>'; 
    101106 
    102107echo ' 
  • plugins/maintenance/_admin.php

    r1989 r2047  
    2222 
    2323// Admin behaviors 
    24 $core->addBehavior('dcMaintenanceRegister', array('dcMaintenanceAdmin', 'dcMaintenanceRegister')); 
     24$core->addBehavior('dcMaintenanceInit', array('dcMaintenanceAdmin', 'dcMaintenanceInit')); 
    2525$core->addBehavior('adminDashboardFavs', array('dcMaintenanceAdmin', 'adminDashboardFavs')); 
    2626$core->addBehavior('adminDashboardFavsIcon', array('dcMaintenanceAdmin', 'adminDashboardFavsIcon')); 
     
    2828$core->addBehavior('adminDashboardOptionsForm',   array('dcMaintenanceAdmin',   'adminDashboardOptionsForm')); 
    2929$core->addBehavior('adminAfterDashboardOptionsUpdate', array('dcMaintenanceAdmin',   'adminAfterDashboardOptionsUpdate')); 
     30$core->addBehavior('adminPageHelpBlock',     array('dcMaintenanceAdmin',   'adminPageHelpBlock')); 
    3031 
    3132/** 
     
    4142      * Register default tasks. 
    4243      * 
    43       * @param $core     <b>dcCore</b>  dcCore instance 
    44       * @param $tasks    <b>arrayObject</b>  Array of tasks to register 
    45       * @param $groups   <b>arrayObject</b>  Array of groups to register 
    46       * @param $tabs     <b>arrayObject</b>  Array of tabs to register 
    47       */ 
    48       public static function dcMaintenanceRegister($core, $tasks, $groups, $tabs) 
    49      { 
    50           $tabs['maintenance'] = __('Servicing'); 
    51           $tabs['backup'] = __('Backup'); 
    52  
    53           $groups['optimize'] = __('Optimize'); 
    54           $groups['index'] = __('Count and index'); 
    55           $groups['purge'] = __('Purge'); 
    56           $groups['other'] = __('Other'); 
    57           $groups['zipblog'] = __('Compressed file for current blog'); 
    58           $groups['zipfull'] = __('Compressed file for all blogs'); 
    59  
    60           $tasks[] = 'dcMaintenanceCache'; 
    61           $tasks[] = 'dcMaintenanceIndexposts'; 
    62           $tasks[] = 'dcMaintenanceIndexcomments'; 
    63           $tasks[] = 'dcMaintenanceCountcomments'; 
    64           $tasks[] = 'dcMaintenanceLogs'; 
    65           $tasks[] = 'dcMaintenanceVacuum'; 
    66           $tasks[] = 'dcMaintenanceZipmedia'; 
    67           $tasks[] = 'dcMaintenanceZiptheme'; 
     44      * @param $maintenance   <b>dcMaintenance</b>     dcMaintenance instance 
     45      */ 
     46      public static function dcMaintenanceInit($maintenance) 
     47     { 
     48          $maintenance 
     49          ->addTab('maintenance', __('Servicing'), array('summary' => __('Tools to maintain the performance of your blogs.'))) 
     50          ->addTab('backup', __('Backup'), array('summary' => __('Tools to back up your content.'))) 
     51          ->addTab('dev', __('Development'), array('summary' => __('Tools to assist in development of plugins, themes and core.'))) 
     52 
     53          ->addGroup('optimize', __('Optimize')) 
     54          ->addGroup('index', __('Count and index')) 
     55          ->addGroup('purge', __('Purge')) 
     56          ->addGroup('other', __('Other')) 
     57          ->addGroup('zipblog', __('Current blog')) 
     58          ->addGroup('zipfull', __('All blogs')) 
     59 
     60          ->addGroup('l10n', __('Translations'), array('summary' => __('Maintain translations'))) 
     61 
     62          ->addTask('dcMaintenanceCache') 
     63          ->addTask('dcMaintenanceIndexposts') 
     64          ->addTask('dcMaintenanceIndexcomments') 
     65          ->addTask('dcMaintenanceCountcomments') 
     66          ->addTask('dcMaintenanceSynchpostsmeta') 
     67          ->addTask('dcMaintenanceLogs') 
     68          ->addTask('dcMaintenanceVacuum') 
     69          ->addTask('dcMaintenanceZipmedia') 
     70          ->addTask('dcMaintenanceZiptheme') 
     71          ; 
    6872     } 
    6973 
     
    218222          $core->auth->user_prefs->maintenance->put('dashboard_item', !empty($_POST['maintenance_dashboard_item']), 'boolean'); 
    219223     } 
     224 
     225 
     226     /** 
     227      * Build a well sorted help for tasks. 
     228      * 
     229      * This method is not so good if used with lot of tranlsations  
     230      * as it grows memory usage and translations files size,  
     231      * it is better to use help ressource files  
     232      * but keep it for exemple of how to use behavior adminPageHelpBlock. 
     233      * Cheers, JC 
     234      * 
     235      * @param $block    <b>arrayObject</b>  Called helpblocks 
     236      */ 
     237     public static function adminPageHelpBlock($blocks) 
     238     { 
     239          $found = false; 
     240          foreach($blocks as $block) { 
     241               if ($block == 'maintenancetasks') { 
     242                    $found = true; 
     243                    break; 
     244               } 
     245          } 
     246          if (!$found) { 
     247               return null; 
     248          } 
     249 
     250          $maintenance = new dcMaintenance($GLOBALS['core']); 
     251 
     252          $res_tab = ''; 
     253          foreach($maintenance->getTabs() as $tab_obj) 
     254          { 
     255               $res_group = ''; 
     256               foreach($maintenance->getGroups() as $group_obj) 
     257               { 
     258                    $res_task = ''; 
     259                    foreach($maintenance->getTasks() as $t) 
     260                    { 
     261                         if ($t->group() != $group_obj->id()  
     262                          || $t->tab() != $tab_obj->id()) { 
     263                              continue; 
     264                         } 
     265                         if (($desc = $t->description()) != '') { 
     266                              $res_task .=  
     267                              '<dt>'.$t->task().'</dt>'. 
     268                              '<dd>'.$desc.'</dd>'; 
     269                         } 
     270                    } 
     271                    if (!empty($res_task)) { 
     272                         $desc = $group_obj->description ? $group_obj->description : $group_obj->summary; 
     273 
     274                         $res_group .=  
     275                         '<h5>'.$group_obj->name().'</h5>'. 
     276                         ($desc ? '<p>'.$desc.'</p>' : ''). 
     277                         '<dl>'.$res_task.'</dl>'; 
     278                    } 
     279               } 
     280               if (!empty($res_group)) { 
     281                    $desc = $tab_obj->description ? $tab_obj->description : $tab_obj->summary; 
     282 
     283                    $res_tab .=  
     284                    '<h4>'.$tab_obj->name().'</h4>'. 
     285                    ($desc ? '<p>'.$desc.'</p>' : ''). 
     286                    $res_group; 
     287               } 
     288          } 
     289          if (!empty($res_tab)) { 
     290               $res = new ArrayObject(); 
     291               $res->content = $res_tab; 
     292               $blocks[] = $res; 
     293          } 
     294     } 
    220295} 
  • plugins/maintenance/_prepend.php

    r1955 r2044  
    1515 
    1616$__autoload['dcMaintenance'] = dirname(__FILE__).'/inc/class.dc.maintenance.php'; 
     17$__autoload['dcMaintenanceDescriptor'] = dirname(__FILE__).'/inc/class.dc.maintenance.descriptor.php'; 
    1718$__autoload['dcMaintenanceTask'] = dirname(__FILE__).'/inc/class.dc.maintenance.task.php'; 
    1819$__autoload['dcMaintenanceRest'] = dirname(__FILE__).'/_services.php'; 
     20 
    1921 
    2022$__autoload['dcMaintenanceCache'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.cache.php'; 
     
    2224$__autoload['dcMaintenanceIndexcomments'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.indexcomments.php'; 
    2325$__autoload['dcMaintenanceIndexposts'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.indexposts.php'; 
     26$__autoload['dcMaintenanceSynchpostsmeta'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.synchpostsmeta.php'; 
    2427$__autoload['dcMaintenanceLogs'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.logs.php'; 
    2528$__autoload['dcMaintenanceVacuum'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.vacuum.php'; 
  • plugins/maintenance/inc/class.dc.maintenance.php

    r1989 r2044  
    2626{ 
    2727     public $core; 
     28     public $p_url = 'plugin.php?p=maintenance'; 
     29 
    2830     private $tasks = array(); 
    2931     private $tabs = array(); 
     
    3436      * Constructor. 
    3537      * 
    36       * Here you register tasks and groups for tasks. 
    37       * 
    3838      * @param core <b>dcCore</b>  dcCore instance 
    3939      */ 
     
    4141     { 
    4242          $this->core = $core; 
    43  
    44           $tasks = new ArrayObject(); 
    45           $tabs = new ArrayObject(); 
    46           $groups = new ArrayObject(); 
    4743          $logs = $this->getLogs(); 
    48  
    49           # --BEHAVIOR-- dcMaintenanceRegister 
    50           $core->callBehavior('dcMaintenanceRegister', $core, $tasks, $groups, $tabs); 
    51  
    52           $this->init($tasks, $groups, $tabs); 
    53      } 
    54  
    55      /** 
    56       * Initialize list of groups and tasks. 
    57       * 
    58       * @param tasks     <b>arrayObject</b>  Array of task to register 
    59       * @param groups    <b>arrayObject</b>  Array of groups to add 
    60       * @param tabs <b>arrayObject</b>  Array of tabs to add 
    61       */ 
    62      public function init($tasks, $groups, $tabs) 
    63      { 
    64           $this->tasks = $this->groups = array(); 
    65  
    66           foreach($tasks as $task) 
    67           { 
    68                if (!class_exists($task)) { 
    69                     continue; 
    70                } 
    71  
    72                $r = new ReflectionClass($task); 
    73                $p = $r->getParentClass(); 
    74  
    75                if (!$p || $p->name != 'dcMaintenanceTask') { 
    76                     continue; 
    77                } 
    78  
    79                if (($t = new $task($this, 'plugin.php?p=maintenance')) === null 
    80                || $t->perm() === null && !$this->core->auth->isSuperAdmin() 
    81                || !$this->core->auth->check($t->perm(), $this->core->blog->id)) { 
    82                     continue; 
    83                } 
    84  
    85                $this->tasks[$task] = $t; 
    86           } 
    87  
    88           foreach($groups as $id => $name) 
    89           { 
    90                $this->groups[(string) $id] = (string) $name; 
    91           } 
    92  
    93           foreach($tabs as $id => $name) 
    94           { 
    95                $this->tabs[(string) $id] = (string) $name; 
    96           } 
    97      } 
    98  
    99      /** 
    100       * Get a tab name. 
     44          $this->init(); 
     45     } 
     46 
     47     /** 
     48      * Initialize list of tabs and groups and tasks. 
     49      * 
     50      * To register a tab or group or task,  
     51      * use behavior dcMaintenanceInit then a method of 
     52      * dcMaintenance like addTab('myTab', ...). 
     53      */ 
     54     protected function init() 
     55     { 
     56          # --BEHAVIOR-- dcMaintenanceInit 
     57          $this->core->callBehavior('dcMaintenanceInit', $this); 
     58     } 
     59 
     60     /// @name Tab methods 
     61     //@{ 
     62     /** 
     63      * Add a tab. 
     64      * 
     65      * @param id        <b>string<b> Tab ID 
     66      * @param name <b>string<b> Tab name 
     67      * @param options   <b>string<b> Options 
     68      * @return <b>dcMaintenance</b>    Self 
     69      */ 
     70     public function addTab($id, $name, $options=array()) 
     71     { 
     72          $this->tabs[$id] = new dcMaintenanceDescriptor($id, $name, $options); 
     73 
     74          return $this; 
     75     } 
     76 
     77     /** 
     78      * Get a tab. 
    10179      * 
    10280      * @param id   <b>string</b> Tab ID 
    103       * @return     <b>mixed</b> tab name or null if not exists 
     81      * @return     <b>object</b> dcMaintenanceDescriptor of a tab 
    10482      */ 
    10583     public function getTab($id) 
     
    11795          return $this->tabs; 
    11896     } 
    119  
    120      /** 
    121       * Get a group name. 
     97     //@} 
     98 
     99 
     100     /// @name Group methods 
     101     //@{ 
     102     /** 
     103      * Add a group. 
     104      * 
     105      * @param id        <b>string<b> Group ID 
     106      * @param name <b>string<b> Group name 
     107      * @param options   <b>string<b> Options 
     108      * @return <b>dcMaintenance</b>    Self 
     109      */ 
     110     public function addGroup($id, $name, $options=array()) 
     111     { 
     112          $this->groups[$id] = new dcMaintenanceDescriptor($id, $name, $options); 
     113 
     114          return $this; 
     115     } 
     116 
     117     /** 
     118      * Get a group. 
    122119      * 
    123120      * @param id   <b>string</b> Group ID 
    124       * @return     <b>mixed</b> Group name or null if not exists 
     121      * @return     <b>object</b> dcMaintenanceDescriptor of a group 
    125122      */ 
    126123     public function getGroup($id) 
     
    132129      * Get groups. 
    133130      * 
    134       * @return     <b>array</b> Array of groups ID and name 
     131      * @return     <b>array</b> Array of groups ID and descriptor 
    135132      */ 
    136133     public function getGroups() 
    137134     { 
    138135          return $this->groups; 
     136     } 
     137     //@} 
     138 
     139 
     140     /// @name Task methods 
     141     //@{ 
     142     /** 
     143      * Add a task. 
     144      * 
     145      * @param task <b>mixed<b> Class name or object 
     146      * @return     <b>boolean</b> True if it is added 
     147      * @return <b>dcMaintenance</b>    Self 
     148      */ 
     149     public function addTask($task) 
     150     { 
     151          if (class_exists($task) && is_subclass_of($task, 'dcMaintenanceTask')) { 
     152               $this->tasks[$task] = new $task($this); 
     153          } 
     154 
     155          return $this; 
    139156     } 
    140157 
     
    174191          return $res; 
    175192     } 
    176  
     193     //@} 
     194 
     195 
     196     /// @name Log methods 
     197     //@{ 
    177198     /** 
    178199      * Set log for a task. 
     
    268289          return $this->logs; 
    269290     } 
     291     //@} 
    270292} 
  • plugins/maintenance/inc/class.dc.maintenance.task.php

    r1989 r2044  
    3333     protected $id; 
    3434     protected $name; 
     35     protected $description; 
    3536     protected $tab = 'maintenance'; 
    3637     protected $group = 'other'; 
     
    5051      * @param p_url     <b>string</b>  Maintenance plugin url 
    5152      */ 
    52      public function __construct($maintenance, $p_url) 
     53     public function __construct($maintenance) 
    5354     { 
    5455          $this->maintenance = $maintenance; 
     
    6162          } 
    6263 
    63           $this->p_url = $p_url; 
     64          $this->p_url = $maintenance->p_url; 
    6465          $this->id = get_class($this); 
    6566 
     
    191192 
    192193     /** 
     194      * Get task description. 
     195      * 
     196      * @return     <b>string</b>  Description 
     197      */ 
     198     public function description() 
     199     { 
     200          return $this->description; 
     201     } 
     202 
     203     /** 
    193204      * Get task tab. 
    194205      * 
     
    322333          $this->maintenance->setLog($this->id); 
    323334     } 
     335 
     336     public function help() 
     337     { 
     338          return null; 
     339     } 
    324340} 
  • plugins/maintenance/inc/tasks/class.dc.maintenance.cache.php

    r1925 r2044  
    2121          $this->success           = __('Templates cache directory emptied.'); 
    2222          $this->error        = __('Failed to empty templates cache directory.'); 
     23 
     24          $this->description = __("It may be useful to empty this cache when modifying a theme's .html or .css files (or when updating a theme or plugin). Notice : with some hosters, the templates cache cannot be emptied with this plugin. You may then have to delete the directory <strong>/cbtpl/</strong> directly on the server with your FTP software."); 
    2325     } 
    2426 
  • plugins/maintenance/inc/tasks/class.dc.maintenance.countcomments.php

    r1984 r2044  
    2121          $this->success           = __('Comments and trackback counted.'); 
    2222          $this->error        = __('Failed to count comments and trackbacks.'); 
     23 
     24          $this->description = __('Count again comments and trackbacks allows to check their exact numbers. This operation can be useful when importing from another blog platform (or when migrating from dotclear 1 to dotclear 2).'); 
    2325     } 
    2426 
  • plugins/maintenance/inc/tasks/class.dc.maintenance.indexcomments.php

    r1989 r2044  
    2727          $this->success           = __('Comments index done.'); 
    2828          $this->error        = __('Failed to index comments.'); 
     29 
     30          $this->description = __('Index all comments and trackbacks in search engine index. This operation is necessary, after importing content in your blog, to use internal search engine, on public and private pages.'); 
    2931     } 
    3032 
  • plugins/maintenance/inc/tasks/class.dc.maintenance.indexposts.php

    r1989 r2044  
    2727          $this->success           = __('Entries index done.'); 
    2828          $this->error        = __('Failed to index entries.'); 
     29 
     30          $this->description = __('Index all entries in search engine index. This operation is necessary, after importing content in your blog, to use internal search engine, on public and private pages.'); 
    2931     } 
    3032 
  • plugins/maintenance/inc/tasks/class.dc.maintenance.logs.php

    r1925 r2044  
    2121          $this->success           = __('Logs deleted.'); 
    2222          $this->error        = __('Failed to delete logs.'); 
     23 
     24          $this->description = __('Logs record all activity and connection to your blog history. Unless you need to keep this history, consider deleting these logs from time to time.'); 
    2325     } 
    2426 
  • plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php

    r1984 r2044  
    1818     protected function init() 
    1919     { 
     20          $this->name              = __('Optimise database'); 
    2021          $this->task         = __('optimize tables'); 
    2122          $this->success           = __('Optimization successful.'); 
    2223          $this->error        = __('Failed to optimize tables.'); 
     24 
     25          $this->description = __("After numerous delete or update operations on Dotclear's database, it gets fragmented. Optimizing will allow to defragment it. It has no incidence on your data's integrity. It is recommended to optimize before any blog export."); 
    2326     } 
    2427 
  • plugins/maintenance/inc/tasks/class.dc.maintenance.zipmedia.php

    r1989 r2044  
    2222     { 
    2323          $this->task = __('Download media folder of current blog'); 
     24 
     25          $this->description = __('It may be useful to backup your media folder. This compress all content of media folder into a single zip file. Notice : with some hosters, the media folder cannot be compressed with this plugin if it is too big.'); 
    2426     } 
    2527 
  • plugins/maintenance/inc/tasks/class.dc.maintenance.ziptheme.php

    r1989 r2044  
    2222     { 
    2323          $this->task = __('Download active theme of current blog'); 
     24 
     25          $this->description = __('It may be useful to backup the active theme before any change or update. This compress theme folder into a single zip file.'); 
    2426     } 
    2527 
  • plugins/maintenance/index.php

    r2017 r2051  
    4343 
    4444          foreach($tasks as $t) { 
    45                if (!empty($_POST['settings_recall_time']) && $_POST['settings_recall_time'] == 'seperate') { 
    46                     $ts = empty($_POST['settings_ts_'.$t->id()]) ? 0 : $_POST['settings_ts_'.$t->id()]; 
     45               if (!empty($_POST['settings_recall_type']) && $_POST['settings_recall_type'] == 'all') { 
     46                    $ts = $_POST['settings_recall_time']; 
    4747               } 
    4848               else { 
    49                     $ts = $_POST['settings_recall_time']; 
     49                    $ts = empty($_POST['settings_ts_'.$t->id()]) ? 0 : $_POST['settings_ts_'.$t->id()]; 
    5050               } 
    5151               $core->blog->settings->maintenance->put( 
     
    5959          } 
    6060           
    61           http::redirect($p_url.'&done=1&tab='.$tab); 
     61          http::redirect($p_url.'&done=1&tab='.$tab.'#'.$tab); 
    6262     } 
    6363     catch(Exception $e) { 
     
    8888          if (true === $code) { 
    8989               $maintenance->setLog($task->id()); 
    90                http::redirect($p_url.'&task='.$task->id().'&done=1&tab='.$tab); 
     90               http::redirect($p_url.'&task='.$task->id().'&done=1&tab='.$tab.'#'.$tab); 
    9191          } 
    9292     } 
     
    9999 
    100100$combo_ts = array( 
     101     __('Never')              => 0, 
    101102     __('Every week')         => 604800, 
    102103     __('Every two weeks')    => 1209600, 
     
    105106); 
    106107 
    107 $full_combo_ts = array_merge(array( 
    108      __('Use different periods for each task') => 'seperate'),  
    109      $combo_ts 
    110 ); 
    111  
    112 $task_combo_ts = array_merge(array( 
    113      __('Never') => 0),  
    114      $combo_ts 
    115 ); 
    116  
    117108// Display page 
    118109 
     
    120111<title>'.__('Maintenance').'</title>'. 
    121112dcPage::jsPageTabs($tab). 
    122 dcPage::jsLoad('index.php?pf=maintenance/js/settings.js');; 
     113dcPage::jsLoad('index.php?pf=maintenance/js/settings.js'); 
    123114 
    124115if ($task && $task->ajax()) { 
     
    142133          array( 
    143134               __('Plugins') => '', 
    144                '<a href="'.$p_url.'">'.__('Maintenance').'</a>' => '', 
    145                '<span class="page-title">'.html::escapeHTML($task->name()).'</span>' => '' 
     135               '<span class="page-title">'.__('Maintenance').'</span>' => '' 
    146136          ) 
    147137     ). 
     
    179169     echo  
    180170     '<div class="step-box" id="'.$task->id().'">'. 
     171     '<p class="step-back">'. 
     172          '<a class="back" href="'.$p_url.'&tab='.$task->tab().'#'.$task->tab().'">'.__('Back').'</a>'. 
     173     '</p>'. 
    181174     '<h3>'.html::escapeHTML($task->name()).'</h3>'. 
    182175     '<form action="'.$p_url.'" method="post">'. 
     
    191184     '</p>'. 
    192185     '</form>'. 
    193      '<p class="step-back">'. 
    194           '<a class="back" href="'.$p_url.'&tab='.$task->tab().'">'.__('Back').'</a>'. 
    195      '</p>'. 
    196186     '</div>'; 
    197187} 
     
    211201     // Simple task (with only a button to start it) 
    212202 
    213      foreach($maintenance->getTabs() as $tab_id => $tab_name) 
     203     foreach($maintenance->getTabs() as $tab_obj) 
    214204     { 
    215205          $res_group = ''; 
    216           foreach($maintenance->getGroups() as $group_id => $group_name) 
     206          foreach($maintenance->getGroups() as $group_obj) 
    217207          { 
    218208               $res_task = ''; 
    219209               foreach($tasks as $t) 
    220210               { 
    221                     if ($t->group() != $group_id || $t->tab() != $tab_id) { 
     211                    if ($t->group() != $group_obj->id()  
     212                     || $t->tab() != $tab_obj->id()) { 
    222213                         continue; 
    223214                    } 
    224215 
    225                     $res_task .=   
     216                    $res_task .=  
    226217                    '<p>'.form::radio(array('task', $t->id()), $t->id()).' '. 
    227218                    '<label class="classic" for="'.$t->id().'">'. 
     
    254245                    $res_group .=  
    255246                    '<div class="fieldset">'. 
    256                     '<h4 id="'.$group_id.'">'.$group_name.'</h4>'. 
     247                    '<h4 id="'.$group_obj->id().'">'.$group_obj->name().'</h4>'. 
    257248                    $res_task. 
    258249                    '</div>'; 
     
    262253          if (!empty($res_group)) { 
    263254               echo  
    264                '<div id="'.$tab_id.'" class="multi-part" title="'.$tab_name.'">'. 
    265                '<h3>'.$tab_name.'</h3>'. 
     255               '<div id="'.$tab_obj->id().'" class="multi-part" title="'.$tab_obj->name().'">'. 
     256               '<h3>'.$tab_obj->name().'</h3>'. 
     257               // ($tab_obj->option('summary') ? '<p>'.$tab_obj->option('summary').'</p>' : ''). 
    266258               '<form action="'.$p_url.'" method="post">'. 
    267259               $res_group. 
    268260               '<p><input type="submit" value="'.__('Execute task').'" /> '. 
    269                form::hidden(array('tab'), $tab_id). 
     261               form::hidden(array('tab'), $tab_obj->id()). 
    270262               $core->formNonce().'</p>'. 
    271263               '<p class="form-note info">'.__('This may take a very long time.').'</p>'. 
     
    299291 
    300292     echo  
    301      '<div id="settings" class="multi-part" title="'.__('Settings').'">'. 
    302      '<h3>'.__('Settings').'</h3>'. 
     293     '<div id="settings" class="multi-part" title="'.__('Alert settings').'">'. 
     294     '<h3>'.__('Alert settings').'</h3>'. 
    303295     '<form action="'.$p_url.'" method="post">'. 
    304296 
     
    311303          __('You can place list of late tasks on your %s.'), 
    312304          '<a href="preferences.php#user-favorites">'.__('Dashboard').'</a>' 
    313      ).'</a></p>'. 
    314  
    315      '<h4 class="pretty-title">'.__('Frequency').'</h4>'. 
    316  
    317      '<p><label for="settings_recall_time">'.__('Recall time for all tasks:').'</label>'. 
    318      form::combo('settings_recall_time', $full_combo_ts, 'seperate', 'recall-for-all'). 
     305     ).'</p>'. 
     306 
     307     '<h4 class="pretty-title vertical-separator">'.__('Frequency').'</h4>'. 
     308 
     309     '<p class="vertical-separator">'.form::radio(array('settings_recall_type', 'settings_recall_all'), 'all').' '. 
     310     '<label class="classic" for="settings_recall_all">'. 
     311     '<strong>'.__('Use one recall time for all tasks').'</strong></label>'. 
     312 
     313     '<p class="field wide vertical-separator"><label for="settings_recall_time">'.__('Recall time for all tasks:').'</label>'. 
     314     form::combo('settings_recall_time', $combo_ts, 'seperate', 'recall-for-all'). 
    319315     '</p>'. 
    320316 
    321      '<h5 class="vertical-separator">'.__('Recall time per task:').'</h5>'; 
     317     '<p class="vertical-separator">'.form::radio(array('settings_recall_type', 'settings_recall_separate'), 'separate', 1).' '. 
     318     '<label class="classic" for="settings_recall_separate">'. 
     319     '<strong>'.__('Use one recall time per task').'</strong></label>'; 
    322320 
    323321     foreach($tasks as $t) 
     
    326324          '<div class="two-boxes">'. 
    327325 
    328           '<p><label for="settings_ts_'.$t->id().'">'.$t->task().'</label>'. 
    329           form::combo('settings_ts_'.$t->id(), $task_combo_ts, $t->ts(), 'recall-per-task'). 
     326          '<p class="field wide"><label for="settings_ts_'.$t->id().'">'.$t->task().'</label>'. 
     327          form::combo('settings_ts_'.$t->id(), $combo_ts, $t->ts(), 'recall-per-task'). 
    330328          '</p>'. 
    331329 
     
    334332 
    335333     echo  
    336      '<p><input type="submit" value="'.__('Save this settings').'" /> '. 
     334     '<p class="field wide"><input type="submit" value="'.__('Save this settings').'" /> '. 
    337335     form::hidden(array('tab'), 'settings'). 
    338336     form::hidden(array('settings'), 1). 
     
    342340} 
    343341 
    344 dcPage::helpBlock('maintenance'); 
     342dcPage::helpBlock('maintenance', 'maintenancetasks'); 
    345343 
    346344echo '</body></html>'; 
  • plugins/maintenance/js/settings.js

    r1984 r2044  
    11$(function(){ 
    2  
    3      $('.recall-for-all').change(function(){ 
    4           var v=$(this).val(); 
    5           if(v=='seperate'){ 
     2$('.recall-for-all').attr('disabled','disabled'); 
     3     $('#settings_recall_all').change(function(){ 
     4          if($(this).attr('selected')!='selected'){ 
     5               $('.recall-per-task').attr('disabled','disabled'); 
     6               $('.recall-for-all').removeAttr('disabled'); 
     7          } 
     8     }); 
     9     $('#settings_recall_separate').change(function(){ 
     10          if($(this).attr('selected')!='selected'){ 
    611               $('.recall-per-task').removeAttr('disabled'); 
    7           }else{ 
    8                $('.recall-per-task').attr('disabled','disabled'); 
     12               $('.recall-for-all').attr('disabled','disabled'); 
    913          } 
    1014     }); 
  • plugins/maintenance/locales/en/help/maintenance.html

    r1802 r2044  
    66<body> 
    77 
     8<h4>Settings</h4> 
     9 
    810<dl> 
    9   <dt>Optimize database room</dt> 
    10   <dd>After numerous delete or update operations on Dotclear's database, it gets fragmented. 
    11   Optimizing will allow to defragment it.<br /> 
    12   It has no incidence on your data's integrity.<br /> 
    13   It is recommended to optimize before any blog export.</dd> 
     11  <dt>Activation</dt> 
     12  <dd>If this options is active, on tabs of plugin maintenance,  
     13  when a task has expired or has been nerver executed, a alert message is show below this task.<br /> 
     14  Options to display maintenance related tasks on dashboard are available in user preferences.</dd> 
    1415   
    15   <dt>Counters</dt> 
    16   <dd>Initializing comments and trackbacks counters allows to check their exact numbers.  
    17   This operation can be useful when importing from another blog platform 
    18   (or when migrating from dotclear 1 to dotclear 2).</dd> 
    19    
    20   <dt>Search engine index</dt> 
    21   <dd>These operations are necessary, after importing content in your blog, to use internal search engine, on public and private pages. 
    22     <ul> 
    23       <li><strong>Index all posts:</strong> allows to index all posts</li> 
    24       <li><strong>Index all comments:</strong> allows to index all comments and trackbacks</li> 
    25     </ul> 
    26   </dd> 
    27    
    28   <dt>Vacuum logs</dt> 
    29   <dd>Logs record all activity and connection to your blog history. Unless you need to keep this history,  
    30   consider deleting these logs from time to time.</dd> 
    31    
    32   <dt>Empty templates cache directory</dt> 
    33   <dd>It may be useful to empty this cache when modifying a theme's .html or .css files (or when updating  
    34   a theme or plugin).<br /> 
    35   Notice : with some hosters, the templates cache cannot be emptied with this plugin.  
    36   You may then have to delete the directory <strong>/cbtpl/</strong> directly on the server with your FTP software.</dd> 
     16  <dt>Frequency</dt> 
     17  <dd>It is possible to set same recall time for all tasks at one time. <br/> 
     18  Otherwise this setting can be done per task and so on for exemple deactivate some of them.</dd> 
    3719</dl> 
    3820</body> 
  • plugins/maintenance/locales/fr/help/maintenance.html

    r1956 r2050  
    66<body> 
    77 
    8 <h4>Entretien</h4> 
     8<h4>Réglage des alertes</h4> 
    99 
    1010<dl> 
    11   <dt>Optimiser l'espace de la base de données</dt> 
    12   <dd>Au fur at à mesure des suppressions ou modifications dans vos billets, 
    13   les tables de la base de données se fragmentent. L'opération d'optimisation 
    14   permet de compacter celles-ci.<br /> 
    15   Cette opération n'a aucun impact sur l'intégrité de vos données.<br /> 
    16   Il est fortement conseillé d'optimiser la base de données avant tout export 
    17   de blog.</dd> 
     11  <dt>Activation</dt> 
     12  <dd><p>Cocher cette option pour afficher des messages d'alerte sous chaque tâche  
     13  en retard ou n'ayant jamais été exécutée.</p> 
     14  <p>Note&nbsp;: dans «&nbsp;Mes préférences&nbsp;», des options complémentaires permettent d'afficher également ces messages 
     15  sur le tableau de bord.</p></dd> 
    1816   
    19   <dt>Compteurs</dt> 
    20   <dd>Réinitialiser les compteurs des commentaires et des rétroliens a pour effet 
    21   de donner le nombre exact de ceux-ci pour chaque billet. Cette opération peut se 
    22   révéler utile lors de l'import d'un blog d'une autre plateforme (ou d'une migration 
    23   de Dotclear 1 vers Dotclear 2).</dd> 
    24    
    25   <dt>Index du moteur de recherche</dt> 
    26   <dd>Ces opérations s'effectuent généralement suite à un import afin d'obtenir 
    27   des résultats lors des recherches, aussi bien depuis l'administration du blog 
    28   qu'en partie publique. 
    29     <ul> 
    30       <li><strong>Indexer tous les billets&nbsp;:</strong> permet d'indexer les billets.</li> 
    31       <li><strong>Indexer tous les commentaires&nbsp;:</strong> permet d'indexer les commentaires.</li> 
    32     </ul> 
    33   </dd> 
    34    
    35   <dt>Vider les journaux</dt> 
    36   <dd>Sauf si vous avez un besoin précis de conservation des activités de 
    37   connexion sur votre blog, pensez à vider régulièrement la table des journaux&nbsp;: 
    38   elle contient l'enregistrement de chaque connexion à l'administration et des 
    39   opérations qui s'y sont déroulées.</dd> 
    40    
    41   <dt>Vider le répertoire du cache des templates</dt> 
    42   <dd>La suppression du répertoire du cache des templates peut se révéler 
    43   nécessaire lors de modifications dans les fichiers .html ou .css d'un thème 
    44   (voire lors d'un changement de thème ou de mise à jour de plugin).<br /> 
    45   Attention : chez certains hébergeurs (Free par exemple), le cache du répertoire 
    46   des templates ne peut pas être vidé grâce à l'extension Maintenance, il faut 
    47   supprimer le répertoire <strong>cbtpl</strong> situé dans le répertoire cache 
    48   (dotclear/cache par défaut) avec un logiciel FTP.</dd> 
     17  <dt>Périodicité</dt> 
     18  <dd><p>Permet de choisir le délai de rappel des tâches à exécuter.</p> 
     19  <p>Ce délai peut être commun à toutes les tâches (choisir le bouton radio «&nbsp;Utiliser le même délai pour toutes les tâches&nbsp;» ou différencié pour chacune d'elles.</p></dd> 
    4920</dl> 
    5021</body> 
  • plugins/pages/_admin.php

    r1891 r2060  
    4949 
    5050$_menu['Blog']->addItem(__('Pages'),'plugin.php?p=pages','index.php?pf=pages/icon.png', 
    51           preg_match('/plugin.php\?p=pages(&.*)?$/',$_SERVER['REQUEST_URI']), 
     51          preg_match('/plugin.php(.*)$/',$_SERVER['REQUEST_URI']) && $_REQUEST['p']=='pages', 
    5252          $core->auth->check('contentadmin,pages',$core->blog->id)); 
    5353 
  • plugins/pages/_prepend.php

    r1694 r2055  
    1212if (!defined('DC_RC_PATH')) { return; } 
    1313 
    14 global $core; 
     14global $core, $__autoload; 
     15 
     16$__autoload['dcPagesActionsPage'] = dirname(__FILE__).'/class.actionpage.php'; 
     17$__autoload['adminPageList'] = dirname(__FILE__).'/class.listpage.php'; 
    1518 
    1619$core->url->register('pages','pages','^pages/(.+)$',array('urlPages','pages')); 
  • plugins/pages/list.js

    r1884 r2058  
    158158     $("#pageslist tr td input.position").hide(); 
    159159     $("#pageslist tr td.handle").addClass('handler'); 
     160      
     161     $("form input[type=submit]").click(function() { 
     162          $("input[type=submit]", $(this).parents("form")).removeAttr("clicked"); 
     163          $(this).attr("clicked", "true"); 
     164     }) 
     165      
     166     $('#form-entries').submit(function() { 
     167          var action = $(this).find('select[name="action"]').val(); 
     168          var checked = false; 
     169          if ($("input[name=reorder][clicked=true]").val()) { 
     170               return true; 
     171          } 
     172          $(this).find('input[name="entries[]"]').each(function() { 
     173               if (this.checked) { 
     174                    checked = true; 
     175               } 
     176          }); 
     177 
     178          if (!checked) { return false; } 
     179 
     180          if (action == 'delete') { 
     181               return window.confirm(dotclear.msg.confirm_delete_posts.replace('%s',$('input[name="entries[]"]:checked').size())); 
     182          } 
     183 
     184          return true; 
     185     }); 
    160186}); 
  • plugins/pages/list.php

    r2002 r2056  
    1212if (!defined('DC_CONTEXT_ADMIN')) { return; } 
    1313dcPage::check('pages,contentadmin'); 
    14  
    15 /* Pager class 
    16 -------------------------------------------------------- */ 
    17 class adminPageList extends adminGenericList 
    18 { 
    19      public function display($page,$nb_per_page,$enclose_block='') 
    20      { 
    21           if ($this->rs->isEmpty()) 
    22           { 
    23                echo '<p><strong>'.__('No page').'</strong></p>'; 
    24           } 
    25           else 
    26           { 
    27                $pager = new dcPager($page,$this->rs_count,$nb_per_page,10); 
    28                $entries = array(); 
    29                if (isset($_REQUEST['entries'])) { 
    30                     foreach ($_REQUEST['entries'] as $v) { 
    31                          $entries[(integer)$v]=true; 
    32                     } 
    33                }               
    34                $html_block = 
    35                '<div class="table-outer">'. 
    36                '<table class="maximal dragable"><thead><tr>'. 
    37                '<th colspan="3">'.__('Title').'</th>'. 
    38                '<th>'.__('Date').'</th>'. 
    39                '<th>'.__('Author').'</th>'. 
    40                '<th>'.__('Comments').'</th>'. 
    41                '<th>'.__('Trackbacks').'</th>'. 
    42                '<th>'.__('Status').'</th>'. 
    43                '</tr></thead><tbody id="pageslist">%s</tbody></table></div>'; 
    44                 
    45                if ($enclose_block) { 
    46                     $html_block = sprintf($enclose_block,$html_block); 
    47                } 
    48                 
    49                echo $pager->getLinks(); 
    50                 
    51                $blocks = explode('%s',$html_block); 
    52                 
    53                echo $blocks[0]; 
    54                 
    55                $count = 0; 
    56                while ($this->rs->fetch()) 
    57                { 
    58                     echo $this->postLine($count,isset($entries[$this->rs->post_id])); 
    59                     $count ++; 
    60                } 
    61                 
    62                echo $blocks[1]; 
    63                 
    64                echo $pager->getLinks(); 
    65           } 
    66      } 
    67       
    68      private function postLine($count,$checked) 
    69      { 
    70           $img = '<img alt="%1$s" title="%1$s" src="images/%2$s" />'; 
    71           switch ($this->rs->post_status) { 
    72                case 1: 
    73                     $img_status = sprintf($img,__('Published'),'check-on.png'); 
    74                     break; 
    75                case 0: 
    76                     $img_status = sprintf($img,__('Unpublished'),'check-off.png'); 
    77                     break; 
    78                case -1: 
    79                     $img_status = sprintf($img,__('Scheduled'),'scheduled.png'); 
    80                     break; 
    81                case -2: 
    82                     $img_status = sprintf($img,__('Pending'),'check-wrn.png'); 
    83                     break; 
    84           } 
    85            
    86           $protected = ''; 
    87           if ($this->rs->post_password) { 
    88                $protected = sprintf($img,__('Protected'),'locker.png'); 
    89           } 
    90            
    91           $selected = ''; 
    92           if ($this->rs->post_selected) { 
    93                $selected = sprintf($img,__('Hidden'),'hidden.png'); 
    94           } 
    95            
    96           $attach = ''; 
    97           $nb_media = $this->rs->countMedia(); 
    98           if ($nb_media > 0) { 
    99                $attach_str = $nb_media == 1 ? __('%d attachment') : __('%d attachments'); 
    100                $attach = sprintf($img,sprintf($attach_str,$nb_media),'attach.png'); 
    101           } 
    102            
    103           $res = '<tr class="line'.($this->rs->post_status != 1 ? ' offline' : '').'"'. 
    104           ' id="p'.$this->rs->post_id.'">'; 
    105            
    106           $res .= 
    107           '<td class="nowrap handle minimal">'.form::field(array('order['.$this->rs->post_id.']'),2,3,$count+1,'position','',false,'title="'.sprintf(__('position of %s'),html::escapeHTML($this->rs->post_title)).'"').'</td>'. 
    108           '<td class="nowrap">'. 
    109           form::checkbox(array('entries[]'),$this->rs->post_id,$checked,'','',!$this->rs->isEditable(),'title="'.__('Select this page').'"').'</td>'. 
    110           '<td class="maximal"><a href="'.$this->core->getPostAdminURL($this->rs->post_type,$this->rs->post_id).'">'. 
    111           html::escapeHTML($this->rs->post_title).'</a></td>'. 
    112           '<td class="nowrap">'.dt::dt2str(__('%Y-%m-%d %H:%M'),$this->rs->post_dt).'</td>'. 
    113            
    114           '<td class="nowrap">'.$this->rs->user_id.'</td>'. 
    115           '<td class="nowrap">'.$this->rs->nb_comment.'</td>'. 
    116           '<td class="nowrap">'.$this->rs->nb_trackback.'</td>'. 
    117           '<td class="nowrap status">'.$img_status.' '.$selected.' '.$protected.' '.$attach.'</td>'. 
    118           '</tr>'; 
    119            
    120           return $res; 
    121      } 
    122 } 
    12314 
    12415/* Getting pages 
     
    14738} 
    14839 
    149 class dcPagesActionsPage extends dcPostsActionsPage { 
    150  
    151      public function __construct($core,$uri,$redirect_args=array()) { 
    152           parent::__construct($core,$uri,$redirect_args); 
    153           $this->redirect_fields = array(); 
    154  
    155      } 
    156       
    157      public function beginPage($breadcrumb='',$header='') { 
    158           echo '<html><head><title>'.__('Pages').'</title>'. 
    159                dcPage::jsLoad('index.php?pf=pages/list.js'). 
    160                # --BEHAVIOR-- adminBeforePostDelete 
    161                $core->callBehavior('adminPagesActionsHeaders'). 
    162                '<script type="text/javascript">'. 
    163                '//<![CDATA['. 
    164                dcPage::jsVar('dotclear.msg.confirm_delete_posts',__("Are you sure you want to delete selected pages?")). 
    165                '//]]>'. 
    166                '</script></head><body>'; 
    167      } 
    168       
    169      public function endPage() { 
    170           echo '</body></html>'; 
    171      } 
    172      public function loadDefaults() { 
    173           parent::loadDefaults(); 
    174           unset ($this->combos[__('Mark')]); 
    175           unset ($this->actions['selected']); 
    176           unset ($this->actions['unselected']); 
    177           $this->actions['reorder']=array('dcPagesActionsPage','doReorderPages'); 
    178      } 
    179      public function process() { 
    180           // fake action for pages reordering 
    181           if (!empty($this->from['reorder'])) { 
    182                $this->from['action']='reorder'; 
    183           } 
    184           parent::process(); 
    185      } 
    186       
    187      public static function doReorderPages($core, dcPostsActionsPage $ap, $post) { 
    188           foreach($post['order'] as $post_id => $value) { 
    189                if (!$core->auth->check('publish,contentadmin',$core->blog->id)) 
    190                     throw new Exception(__('You are not allowed to change this entry status')); 
    191                 
    192                $strReq = "WHERE blog_id = '".$core->con->escape($core->blog->id)."' ". 
    193                          "AND post_id ".$core->con->in($post_id); 
    194                 
    195                #If user can only publish, we need to check the post's owner 
    196                if (!$core->auth->check('contentadmin',$core->blog->id)) 
    197                     $strReq .= "AND user_id = '".$core->con->escape($core->auth->userID())."' "; 
    198                 
    199                $cur = $core->con->openCursor($core->prefix.'post'); 
    200                 
    201                $cur->post_position = (integer) $value-1; 
    202                $cur->post_upddt = date('Y-m-d H:i:s'); 
    203                 
    204                $cur->update($strReq); 
    205                $core->blog->triggerBlog(); 
    206                 
    207           } 
    208           $ap->redirect(array('reo'=>1),false); 
    209      }     
    210 } 
    211  
    21240# Actions combo box 
    21341 
    21442$pages_actions_page = new dcPagesActionsPage($core,'plugin.php',array('p'=>'pages')); 
    21543 
    216 $pages_actions_page->process(); 
     44if (!$pages_actions_page->process()) { 
    21745 
    21846 
     
    22856  <?php 
    22957     echo dcPage::jsLoad('js/jquery/jquery-ui.custom.js'). 
    230           dcPage::jsLoad('index.php?pf=pages/list.js'); 
     58          dcPage::jsLoad('index.php?pf=pages/list.js'). 
     59          '<script type="text/javascript">'. 
     60          '//<![CDATA['. 
     61          dcPage::jsVar('dotclear.msg.confirm_delete_posts',__("Are you sure you want to delete selected pages?")). 
     62          '//]]>'; 
     63 
    23164  ?> 
    23265  <script type="text/javascript"> 
     
    271104     form::hidden(array('post_type'),'page'). 
    272105     form::hidden(array('p'),'pages'). 
     106     form::hidden(array('act'),'list'). 
    273107     '</div>'. 
    274108     $core->formNonce(). 
    275      '<br class="clear"/>'. 
    276      '<input type="submit" value="'.__('Save categories order').'" name="reorder" class="clear"/>'. 
     109     '<p class="clear form-note hidden-if-js">'. 
     110     __('To rearrange pages order, change number at the begining of the line, then click on “Save pages order” button.').'</p>'. 
     111     '<p class="clear form-note hidden-if-no-js">'. 
     112     __('To rearrange pages order, move items by drag and drop, then click on “Save pages order” button.').'</p>'. 
     113     '<input type="submit" value="'.__('Save pages order').'" name="reorder" class="clear"/>'. 
    277114     '</form>'); 
    278115} 
     
    281118</body> 
    282119</html> 
     120<?php 
     121} 
     122?> 
  • plugins/tags/_admin.php

    r1874 r2055  
    2424 
    2525$core->addBehavior('adminPostHeaders',array('tagsBehaviors','postHeaders')); 
    26 $core->addBehavior('adminPostsActionsHeaders',array('tagsBehaviors','postsActionsHeaders')); 
    27  
    28 $core->addBehavior('adminPostsActionsCombo',array('tagsBehaviors','adminPostsActionsCombo')); 
    29 $core->addBehavior('adminPostsActions',array('tagsBehaviors','adminPostsActions')); 
    30 $core->addBehavior('adminPostsActionsContent',array('tagsBehaviors','adminPostsActionsContent')); 
     26 
     27$core->addBehavior('adminPostsActionsPage',array('tagsBehaviors','adminPostsActionsPage')); 
    3128 
    3229$core->addBehavior('adminPreferencesForm',array('tagsBehaviors','adminUserForm')); 
     
    9895               } 
    9996          } 
     97     } 
     98      
     99      
     100     public static function adminPostsActionsPage($core,$ap) 
     101     { 
     102          $ap->addAction( 
     103               array(__('Tags') => array(__('Add tags') => 'tags')), 
     104               array('tagsBehaviors','adminAddTags') 
     105          ); 
     106           
     107          if ($core->auth->check('delete,contentadmin',$core->blog->id)) { 
     108               $ap->addAction( 
     109                    array(__('Tags') => array(__('Remove tags') => 'tags_remove')), 
     110                    array('tagsBehaviors','adminRemoveTags') 
     111               ); 
     112          } 
     113     } 
     114      
     115     public static function adminAddTags($core, dcPostsActionsPage $ap, $post) 
     116     { 
     117          if (!empty($post['new_tags'])) 
     118          { 
     119               $meta =& $core->meta; 
     120               $tags = $meta->splitMetaValues($post['new_tags']); 
     121               $posts = $ap->getRS(); 
     122               while ($posts->fetch()) 
     123               { 
     124                    echo "post_id".$posts->post_id; 
     125                    # Get tags for post 
     126                    $post_meta = $meta->getMetadata(array( 
     127                         'meta_type' => 'tag', 
     128                         'post_id' => $posts->post_id)); 
     129                    $pm = array(); 
     130                    while ($post_meta->fetch()) { 
     131                         $pm[] = $post_meta->meta_id; 
     132                    } 
     133                    foreach ($tags as $t) { 
     134                         if (!in_array($t,$pm)) { 
     135                              $meta->setPostMeta($posts->post_id,'tag',$t); 
     136                         } 
     137                    } 
     138               } 
     139               $ap->redirect(array('upd' => 1),true); 
     140          }  
     141          else  
     142          { 
     143               $tag_url = $core->blog->url.$core->url->getURLFor('tag'); 
     144 
     145               $opts = $core->auth->getOptions(); 
     146               $type = isset($opts['tag_list_format']) ? $opts['tag_list_format'] : 'more'; 
     147 
     148                
     149               $ap->beginPage( 
     150                    dcPage::breadcrumb( 
     151                         array( 
     152                              html::escapeHTML($core->blog->name) => '', 
     153                              __('Entries') => $ap->getRedirection(array(),true), 
     154                              '<span class="page-title">'.__('Add tags to this selection').'</span>' => '' 
     155                    )), 
     156                    dcPage::jsLoad('js/jquery/jquery.autocomplete.js'). 
     157                    dcPage::jsMetaEditor(). 
     158                    '<script type="text/javascript" src="index.php?pf=tags/js/jquery.autocomplete.js"></script>'. 
     159                    '<script type="text/javascript" src="index.php?pf=tags/js/posts_actions.js"></script>'. 
     160                    '<script type="text/javascript">'."\n". 
     161                    "//<![CDATA[\n". 
     162                    "metaEditor.prototype.meta_url = 'plugin.php?p=tags&m=tag_posts&amp;tag=';\n". 
     163                    "metaEditor.prototype.meta_type = '".html::escapeJS($type)."';\n". 
     164                    "metaEditor.prototype.text_confirm_remove = '".html::escapeJS(__('Are you sure you want to remove this %s?'))."';\n". 
     165                    "metaEditor.prototype.text_add_meta = '".html::escapeJS(__('Add a %s to this entry'))."';\n". 
     166                    "metaEditor.prototype.text_choose = '".html::escapeJS(__('Choose from list'))."';\n". 
     167                    "metaEditor.prototype.text_all = '".html::escapeJS(__('all'))."';\n". 
     168                    "metaEditor.prototype.text_separation = '".html::escapeJS(__('Enter tags separated by coma'))."';\n". 
     169                    "dotclear.msg.tags_autocomplete = '".html::escapeJS(__('used in %e - frequency %p%'))."';\n". 
     170                    "dotclear.msg.entry = '".html::escapeJS(__('entry'))."';\n". 
     171                    "dotclear.msg.entries = '".html::escapeJS(__('entries'))."';\n". 
     172                    "\n//]]>\n". 
     173                    "</script>\n". 
     174                    '<link rel="stylesheet" type="text/css" href="index.php?pf=tags/style.css" />' 
     175               ); 
     176               echo 
     177                    '<form action="'.$ap->getURI().'" method="post">'. 
     178                    $ap->getCheckboxes(). 
     179                    '<div><label for="new_tags" class="area">'.__('Tags to add:').'</label> '. 
     180                    form::textarea('new_tags',60,3). 
     181                    '</div>'. 
     182                    $core->formNonce().$ap->getHiddenFields(). 
     183                    form::hidden(array('action'),'tags'). 
     184                    '<p><input type="submit" value="'.__('Save').'" '. 
     185                    'name="save_tags" /></p>'. 
     186                    '</form>'; 
     187               $ap->endPage(); 
     188          } 
     189     } 
     190     public static function adminRemoveTags($core, dcPostsActionsPage $ap, $post) 
     191     { 
     192          if (!empty($post['meta_id']) &&  
     193               $core->auth->check('delete,contentadmin',$core->blog->id)) 
     194          { 
     195               $meta =& $core->meta; 
     196               $posts = $ap->getRS(); 
     197               while ($posts->fetch()) 
     198               { 
     199                    foreach ($_POST['meta_id'] as $v) 
     200                    { 
     201                         $meta->delPostMeta($posts->post_id,'tag',$v); 
     202                    } 
     203               } 
     204               $ap->redirect(array('upd' => 1),true); 
     205          } 
     206          else 
     207          { 
     208               $meta =& $core->meta; 
     209               $tags = array(); 
     210                
     211               foreach ($ap->getIDS() as $id) { 
     212                    $post_tags = $meta->getMetadata(array( 
     213                         'meta_type' => 'tag', 
     214                         'post_id' => (integer) $id))->toStatic()->rows(); 
     215                    foreach ($post_tags as $v) { 
     216                         if (isset($tags[$v['meta_id']])) { 
     217                              $tags[$v['meta_id']]++; 
     218                         } else { 
     219                              $tags[$v['meta_id']] = 1; 
     220                         } 
     221                    } 
     222               } 
     223               if (empty($tags)) { 
     224                    throw new Exception(__('No tags for selected entries')); 
     225               }               
     226               $ap->beginPage( 
     227                    dcPage::breadcrumb( 
     228                              array( 
     229                                   html::escapeHTML($core->blog->name) => '', 
     230                                   __('Entries') => 'posts.php', 
     231                                   '<span class="page-title">'.__('Remove selected tags from this selection').'</span>' => '' 
     232               ))); 
     233               $posts_count = count($_POST['entries']); 
     234                
     235               echo 
     236               '<form action="'.$ap->getURI().'" method="post">'. 
     237               $ap->getCheckboxes(). 
     238               '<div><p>'.__('Following tags have been found in selected entries:').'</p>'; 
     239                
     240               foreach ($tags as $k => $n) { 
     241                    $label = '<label class="classic">%s %s</label>'; 
     242                    if ($posts_count == $n) { 
     243                         $label = sprintf($label,'%s','<strong>%s</strong>'); 
     244                    } 
     245                    echo '<p>'.sprintf($label, 
     246                              form::checkbox(array('meta_id[]'),html::escapeHTML($k)), 
     247                              html::escapeHTML($k)). 
     248                         '</p>'; 
     249               } 
     250                
     251               echo 
     252               '<p><input type="submit" value="'.__('ok').'" />'. 
     253                
     254               $core->formNonce().$ap->getHiddenFields(). 
     255               form::hidden(array('action'),'tags_remove'). 
     256               '</p></div></form>'; 
     257               $ap->endPage(); 
     258          } 
     259           
    100260     } 
    101261      
     
    129289     } 
    130290      
    131      public static function postsActionsHeaders() 
    132      { 
    133           if (($_POST['action'] == 'tags') || ($_POST['action'] == 'tags_remove')) { 
    134                $tag_url = $GLOBALS['core']->blog->url.$GLOBALS['core']->url->getURLFor('tag'); 
    135  
    136                $opts = $GLOBALS['core']->auth->getOptions(); 
    137                $type = isset($opts['tag_list_format']) ? $opts['tag_list_format'] : 'more'; 
    138  
    139                return  
    140                '<script type="text/javascript" src="index.php?pf=tags/js/jquery.autocomplete.js"></script>'. 
    141                '<script type="text/javascript" src="index.php?pf=tags/js/posts_actions.js"></script>'. 
    142                '<script type="text/javascript">'."\n". 
    143                "//<![CDATA[\n". 
    144                "metaEditor.prototype.meta_url = 'plugin.php?p=tags&m=tag_posts&amp;tag=';\n". 
    145                "metaEditor.prototype.meta_type = '".html::escapeJS($type)."';\n". 
    146                "metaEditor.prototype.text_confirm_remove = '".html::escapeJS(__('Are you sure you want to remove this %s?'))."';\n". 
    147                "metaEditor.prototype.text_add_meta = '".html::escapeJS(__('Add a %s to this entry'))."';\n". 
    148                "metaEditor.prototype.text_choose = '".html::escapeJS(__('Choose from list'))."';\n". 
    149                "metaEditor.prototype.text_all = '".html::escapeJS(__('all'))."';\n". 
    150                "metaEditor.prototype.text_separation = '".html::escapeJS(__('Enter tags separated by coma'))."';\n". 
    151                "dotclear.msg.tags_autocomplete = '".html::escapeJS(__('used in %e - frequency %p%'))."';\n". 
    152                "dotclear.msg.entry = '".html::escapeJS(__('entry'))."';\n". 
    153                "dotclear.msg.entries = '".html::escapeJS(__('entries'))."';\n". 
    154                "\n//]]>\n". 
    155                "</script>\n". 
    156                '<link rel="stylesheet" type="text/css" href="index.php?pf=tags/style.css" />'; 
    157           } 
    158      } 
    159       
    160      public static function adminPostsActionsCombo($args) 
    161      { 
    162           $args[0][__('Tags')] = array(__('Add tags') => 'tags'); 
    163            
    164           if ($GLOBALS['core']->auth->check('delete,contentadmin',$GLOBALS['core']->blog->id)) { 
    165                $args[0][__('Tags')] = array_merge($args[0][__('Tags')], 
    166                     array(__('Remove tags') => 'tags_remove')); 
    167           } 
    168      } 
    169       
    170      public static function adminPostsActions($core,$posts,$action,$redir) 
    171      { 
    172           if ($action == 'tags' && !empty($_POST['new_tags'])) 
    173           { 
    174                try 
    175                { 
    176  
    177                     $meta =& $GLOBALS['core']->meta; 
    178                     $tags = $meta->splitMetaValues($_POST['new_tags']); 
    179                      
    180                     while ($posts->fetch()) 
    181                     { 
    182                          # Get tags for post 
    183                          $post_meta = $meta->getMetadata(array( 
    184                               'meta_type' => 'tag', 
    185                               'post_id' => $posts->post_id)); 
    186                          $pm = array(); 
    187                          while ($post_meta->fetch()) { 
    188                               $pm[] = $post_meta->meta_id; 
    189                          } 
    190                           
    191                          foreach ($tags as $t) { 
    192                               if (!in_array($t,$pm)) { 
    193                                    $meta->setPostMeta($posts->post_id,'tag',$t); 
    194                               } 
    195                          } 
    196                     } 
    197                      
    198                     http::redirect($redir); 
    199                } 
    200                catch (Exception $e) 
    201                { 
    202                     $core->error->add($e->getMessage()); 
    203                } 
    204           } 
    205           elseif ($action == 'tags_remove' && !empty($_POST['meta_id']) && $core->auth->check('delete,contentadmin',$core->blog->id)) 
    206           { 
    207                try 
    208                { 
    209                     $meta =& $GLOBALS['core']->meta; 
    210                     while ($posts->fetch()) 
    211                     { 
    212                          foreach ($_POST['meta_id'] as $v) 
    213                          { 
    214                               $meta->delPostMeta($posts->post_id,'tag',$v); 
    215                          } 
    216                     } 
    217                      
    218                     http::redirect($redir); 
    219                } 
    220                catch (Exception $e) 
    221                { 
    222                     $core->error->add($e->getMessage()); 
    223                } 
    224           } 
    225      } 
    226       
    227      public static function adminPostsActionsContent($core,$action,$hidden_fields,$form_uri="posts_actions.php") 
    228      { 
    229           if ($action == 'tags') 
    230           { 
    231                echo dcPage::breadcrumb( 
    232                     array( 
    233                          html::escapeHTML($core->blog->name) => '', 
    234                          __('Entries') => 'posts.php', 
    235                          '<span class="page-title">'.__('Add tags to entries').'</span>' => '' 
    236                )). 
    237                '<form action="'.$form_uri.'" method="post">'. 
    238                //$hidden_fields->getEntries(). 
    239                '<div><label for="new_tags" class="area">'.__('Tags to add:').'</label> '. 
    240                form::textarea('new_tags',60,3). 
    241                '</div>'. 
    242                $hidden_fields. 
    243                $core->formNonce(). 
    244                form::hidden(array('action'),'tags'). 
    245                '<p><input type="submit" value="'.__('Save').'" '. 
    246                'name="save_tags" /></p>'. 
    247                '</form>'; 
    248           } 
    249           elseif ($action == 'tags_remove') 
    250           { 
    251                $meta =& $GLOBALS['core']->meta; 
    252                $tags = array(); 
    253                 
    254                foreach ($_POST['entries'] as $id) { 
    255                     $post_tags = $meta->getMetadata(array( 
    256                          'meta_type' => 'tag', 
    257                          'post_id' => (integer) $id))->toStatic()->rows(); 
    258                     foreach ($post_tags as $v) { 
    259                          if (isset($tags[$v['meta_id']])) { 
    260                               $tags[$v['meta_id']]++; 
    261                          } else { 
    262                               $tags[$v['meta_id']] = 1; 
    263                          } 
    264                     } 
    265                } 
    266                echo dcPage::breadcrumb( 
    267                     array( 
    268                          html::escapeHTML($core->blog->name) => '', 
    269                          __('Entries') => 'posts.php', 
    270                          '<span class="page-title">'.__('Remove selected tags from entries').'</span>' => '' 
    271                )); 
    272                 
    273                if (empty($tags)) { 
    274                     echo '<p>'.__('No tags for selected entries').'</p>'; 
    275                     return; 
    276                } 
    277                 
    278                $posts_count = count($_POST['entries']); 
    279                 
    280                echo 
    281                '<form action="'.$form_uri.'" method="post">'. 
    282                '<fieldset><legend>'.__('Following tags have been found in selected entries:').'</legend>'; 
    283                 
    284                foreach ($tags as $k => $n) { 
    285                     $label = '<label class="classic">%s %s</label>'; 
    286                     if ($posts_count == $n) { 
    287                          $label = sprintf($label,'%s','<strong>%s</strong>'); 
    288                     } 
    289                     echo '<p>'.sprintf($label, 
    290                               form::checkbox(array('meta_id[]'),html::escapeHTML($k)), 
    291                               html::escapeHTML($k)). 
    292                          '</p>'; 
    293                } 
    294                 
    295                echo 
    296                '<p><input type="submit" value="'.__('ok').'" /></p>'. 
    297                $hidden_fields. 
    298                $core->formNonce(). 
    299                form::hidden(array('action'),'tags_remove'). 
    300                '</fieldset></form>'; 
    301           } 
    302      } 
    303       
    304291     public static function adminUserForm($args) 
    305292     { 
  • tests/functional/spec/page_tabs.js

    r2010 r2054  
    99          expect($('.part-tabs')).not.toExist(); 
    1010  
    11           $.pageTabs('user-options'); 
    12           expect($('#part-user-options')).toBeVisible(); 
     11          $.pageTabs('user-favorites'); 
     12          expect($('#part-user-options')).not.toBeVisible(); 
    1313          expect($('#part-user-profile')).not.toBeVisible(); 
    14           expect($('#part-user-favorites')).not.toBeVisible(); 
     14          expect($('#part-user-favorites')).toBeVisible(); 
    1515  
    1616          expect($('.part-tabs')).toExist(); 
     
    1818          expect($('.part-tabs ul li#part-tabs-user-profile')).toExist(); 
    1919          expect($('.part-tabs ul li#part-tabs-user-favorites')).toExist(); 
    20           expect($('#part-tabs-user-options')).toHaveClass('part-tabs-active'); 
     20          expect($('#part-tabs-user-favorites')).toHaveClass('part-tabs-active'); 
    2121     }); 
    2222 
Note: See TracChangeset for help on using the changeset viewer.

Sites map