Changes in [2132:014b3b5a019f:2133:5ba259352620]
- Files:
-
- 5 added
- 45 edited
Legend:
- Unmodified
- Added
- Removed
-
admin/_charte.php
r1840 r2038 66 66 67 67 <body id="dotclear-admin" class="no-js"> 68 <div id="header">69 68 <ul id="prelude"> 70 69 <li><a href="#content">Aller au contenu</a></li> … … 72 71 <li><a href="#qx">Aller à la recherche</a></li> 73 72 </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> 81 79 </div><!-- /header --> 82 80 83 81 <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>'. 84 86 <div id="main"> 85 87 <div id="content" class="clearfix"> -
admin/blog_pref.php
r2019 r2028 493 493 '<div class="two-cols">'. 494 494 '<div class="col">'. 495 '<p><label for="date_format">'.__('Date format:').'</label> '.495 '<p><label for="date_format">'.__('Date format:').'</label> '. 496 496 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>'. 500 500 501 501 '<p><label for="time_format">'.__('Time format:').'</label>'. 502 502 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>'. 506 506 507 507 '<p><label for="use_smilies" class="classic">'. -
admin/js/_blog_theme.js
r3 r2033 65 65 details.removeClass('theme-selected'); 66 66 $(e).addClass('theme-selected'); 67 $('input:radio',e). attr('checked','checked');67 $('input:radio',e).prop('checked',true); 68 68 } 69 69 -
admin/js/jquery/jquery.pageTabs.js
r2018 r2054 18 18 $('ul li a[href$="#'+hash+'"]').parent().trigger('click'); 19 19 active_tab = hash; 20 } else { // open first part20 } else if (active_tab == '') { // open first part 21 21 active_tab = $('.'+options.contentClass+':eq(0)').attr('id'); 22 22 } -
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() { 8 6 $('#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 }); 14 9 } 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 106 106 $posts_actions_page = new dcPostsActionsPage($core,'posts.php'); 107 107 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 { 108 if (!$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'; 190 198 $order='desc'; 191 199 } 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 } 308 309 ?> -
admin/style/default.css
r2132 r2133 25 25 display: table; 26 26 } 27 #wrapper , #wrapper.with-prelude{27 #wrapper { 28 28 position: relative; 29 29 padding-top: 1.5em; … … 490 490 box-shadow: 1px 1px 2px #F1F1F1 inset; 491 491 padding: 3px; 492 vertical-align: top; 492 493 } 493 494 input:focus, textarea:focus, select:focus { … … 517 518 background: transparent url(../images/check-on.png) no-repeat 0 50%; 518 519 } 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 } 519 548 input.invalid, textarea.invalid, select.invalid { 520 549 border: 1px solid red; … … 571 600 display: inline-block; 572 601 width: 14em; 602 } 603 p.field.wide label { 604 width: 21em; 573 605 } 574 606 p.field input, p.field select { … … 605 637 border: 1px solid #ccc; 606 638 font-family: "DejaVu Sans","Lucida Grande","Lucida Sans Unicode",Arial,sans-serif; 607 padding: 4px 10px;639 padding: 3px 10px; 608 640 line-height: normal !important; 609 641 display: inline-block; … … 849 881 background: #A2CBE9; 850 882 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 } 853 895 /* header global h1, form#top-info-blog, ul#top-info-user */ 854 896 #header a { … … 875 917 top: 0; 876 918 left: 0; 877 width: 174px; /* ie < 9 sucks */ 878 width: 17.4rem; 919 width: 15em; 879 920 height: 36px; /* ie < 9 sucks */ 880 921 height: 3.6rem; … … 922 963 border-bottom-color: #fff; 923 964 margin: 0; 924 padding: 1 6px .5em;965 padding: 18px .5em; 925 966 background-color: #fff; 926 967 color: #333; … … 1310 1351 background: transparent url(dc_logos/w-dotclear240.png) no-repeat top left; 1311 1352 height: 66px; 1353 width: 20em; 1312 1354 margin-bottom: .5em; 1313 1355 margin-left: 0; … … 2086 2128 } 2087 2129 /* password indicator */ 2088 .install .pw-table, .install .pw-cell, .install .pwindicator {2089 display: block;2090 }2091 2130 .pw-table { 2092 2131 display: table; … … 2332 2371 /* ------------------------------------------------------------------------------------ 2333 2372 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; 2371 2377 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; 2383 2418 margin: 0; 2384 2419 font-size: 10px; font-size: 1rem; 2385 2420 line-height: 68px; 2386 2421 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 { 2389 2469 width: 100%; 2390 2470 margin-left: 0; … … 2392 2472 } 2393 2473 } 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 162 162 /* --------------------------------------------------------------- password indcator */ 163 163 .pw-table { 164 display: table;165 margin-bottom: 1em;164 display: block; 165 margin-bottom: .25em; 166 166 } 167 167 .pw-cell { 168 display: table-cell;169 margin-bottom: 1em;168 display: block; 169 margin-bottom: .25em; 170 170 } 171 171 #pwindicator { 172 display: table-cell;172 display: block; 173 173 vertical-align: bottom; 174 174 padding-left: 1.5em; 175 height: 3.8em;176 175 } 177 176 #pwindicator .bar { -
inc/admin/actions/class.dcaction.php
r2015 r2055 44 44 protected $cb_title; 45 45 46 /** @var string title for caller page title */ 47 protected $caller_title; 48 46 49 /** 47 50 * Class constructor … … 66 69 $this->from = new ArrayObject($_POST); 67 70 $this->field_entries = 'entries'; 71 $this->caller_title = __('Entries'); 68 72 } 69 73 … … 194 198 } 195 199 200 196 201 /** 197 202 * getRedirection - returns redirection URL … … 213 218 return $this->uri.'?'.http_build_query($redir_args); 214 219 } 215 220 216 221 /** 217 222 * redirect - redirects to redirection page … … 223 228 public function redirect($params=array(),$with_selected_entries=false) { 224 229 http::redirect($this->getRedirection($params,$with_selected_entries)); 230 exit; 225 231 } 226 232 227 233 /** 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 /** 228 256 * getAction - returns current action, if any 229 257 * 230 * @see getRedirection for arguments details231 *232 258 * @access public 233 259 * … … 261 287 } 262 288 if ($performed) { 263 exit;289 return true; 264 290 } 265 291 } catch (Exception $e) { 266 292 $this->error($e); 293 return true; 267 294 } 268 295 } -
inc/admin/actions/class.dcactionposts.php
r2001 r2059 19 19 'selected','month','lang','sortby','order','page','nb'); 20 20 $this->loadDefaults(); 21 $core->callBehavior('adminPostsActionsPage',$core,$this);22 21 } 23 22 … … 26 25 // to be setup first 27 26 dcDefaultPostActions::adminPostsActionsPage($this->core,$this); 27 $this->core->callBehavior('adminPostsActionsPage',$this->core,$this); 28 28 29 } 29 30 … … 48 49 array( 49 50 html::escapeHTML($this->core->blog->name) => '', 50 __('Entries') => 'posts.php',51 $this->getCallerTitle() => $this->getRedirection(array(),true), 51 52 '<span class="page-title">'.__('Entries actions').'</span>' => '' 52 53 )) … … 87 88 class dcDefaultPostActions 88 89 { 89 public static function adminPostsActionsPage($core, dcPostsActionsPage$ap) {90 public static function adminPostsActionsPage($core, $ap) { 90 91 if ($core->auth->check('publish,contentadmin',$core->blog->id)) { 91 92 $ap->addAction( … … 211 212 $ap->redirect(array('upd'=>1),true); 212 213 } else { 214 213 215 $ap->beginPage( 214 216 dcPage::breadcrumb( 215 217 array( 216 218 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>' => '' 219 221 ))); 220 221 222 # categories list 222 223 # Getting categories 223 224 $categories_combo = dcAdminCombos::getCategoriesCombo( 224 $core->blog->getCategories( array('post_type'=>'post'))225 $core->blog->getCategories() 225 226 ); 226 227 echo 227 '<form action=" posts.php" method="post">'.228 '<form action="'.$ap->getRedirection(array(),true).'" method="post">'. 228 229 $ap->getCheckboxes(). 229 230 '<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,''); 231 232 232 233 if ($core->auth->check('categories', $core->blog->id)) { … … 244 245 echo 245 246 $core->formNonce(). 247 $ap->getHiddenFields(). 246 248 form::hidden(array('action'),'category'). 247 249 '<input type="submit" value="'.__('Save').'" /></p>'. … … 285 287 array( 286 288 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>' => '')), 289 291 dcPage::jsLoad('js/jquery/jquery.autocomplete.js'). 290 292 '<script type="text/javascript">'."\n". … … 296 298 297 299 echo 298 '<form action=" posts_actions.php" method="post">'.300 '<form action="'.$ap->getRedirection(array(),true).'" method="post">'. 299 301 $ap->getCheckboxes(). 300 302 '<p><label for="new_auth_id" class="classic">'.__('New author (author ID):').'</label> '. … … 302 304 303 305 echo 304 $core->formNonce(). 306 $core->formNonce().$ap->getHiddenFields(). 305 307 form::hidden(array('action'),'author'). 306 308 '<input type="submit" value="'.__('Save').'" /></p>'. … … 326 328 array( 327 329 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>' => '' 330 332 ))); 331 333 # lang list … … 346 348 347 349 echo 348 '<form action=" posts_actions.php" method="post">'.350 '<form action="'.$ap->getRedirection(array(),true).'" method="post">'. 349 351 $ap->getCheckboxes(). 350 352 … … 353 355 354 356 echo 355 $core->formNonce(). 357 $core->formNonce().$ap->getHiddenFields(). 356 358 form::hidden(array('action'),'lang'). 357 359 '<input type="submit" value="'.__('Save').'" /></p>'. 358 360 '</form>'; 361 $ap->endPage(); 359 362 } 360 363 } -
inc/admin/lib.admincombos.php
r1780 r2049 37 37 while ($categories->fetch()) { 38 38 $categories_combo[] = new formSelectOption ( 39 str_repeat(' ',$categories->level-1).($categories->level-1 == 0 ? '' : '• ').40 39 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) : '') 42 42 ); 43 43 } -
inc/admin/lib.dc.page.php
r2011 r2054 142 142 '<li><a class="smallscreen'.(preg_match('/preferences.php(\?.*)?$/',$_SERVER['REQUEST_URI']) ? ' active' : ''). 143 143 '" 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>'. 146 146 '</ul>'. 147 147 '</div>'; // end header … … 160 160 { 161 161 echo 162 '<div class=" error"><h3>'.__('Safe mode').'</h3>'.162 '<div class="warning"><h3>'.__('Safe mode').'</h3>'. 163 163 '<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>'. 164 164 '</div>'; … … 275 275 '<body id="dotclear-admin" class="popup">'."\n". 276 276 277 '< div id="top hidden"><h1>'.DC_VENDOR_NAME.'</h1></div>'."\n";277 '<h1>'.DC_VENDOR_NAME.'</h1>'."\n"; 278 278 279 279 echo … … 298 298 "</div>\n". // End of #content 299 299 "</div>\n". // End of #main 300 "</div>\n". // End of #wrapper 300 301 '<div id="footer"><p> </p></div>'."\n". 301 "</div>\n". // End of #wrapper302 302 '</body></html>'; 303 303 } … … 650 650 "//<![CDATA[\n". 651 651 '$(function() {'."\n". 652 '$.pageTabs( ".$default.");'."\n".652 '$.pageTabs('.$default.');'."\n". 653 653 '});'."\n". 654 654 "\n//]]>\n". -
locales/_pot/main.pot
r2132 r2133 8 8 "Project-Id-Version: Dotclear 2\n" 9 9 "Report-Msgid-Bugs-To: \n" 10 "POT-Creation-Date: 2013-09-2 2 16:57+0000\n"10 "POT-Creation-Date: 2013-09-24 07:51+0000\n" 11 11 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 12 12 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" … … 18 18 "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" 19 19 20 #: admin/_fake_l10n.php:4 21 msgid "medium" 22 msgstr "" 23 24 #: admin/_fake_l10n.php:5 25 msgid "small" 26 msgstr "" 27 28 #: admin/_fake_l10n.php:6 29 msgid "thumbnail" 30 msgstr "" 31 32 #: admin/_fake_l10n.php:7 33 msgid "square" 34 msgstr "" 35 36 #: admin/_fake_l10n.php:11 37 msgid "Manage every blog configuration directive" 38 msgstr "" 39 40 #: admin/_fake_l10n.php:12 41 msgid "Akismet interface for Dotclear" 42 msgstr "" 43 44 #: admin/_fake_l10n.php:13 45 msgid "Generic antispam plugin for Dotclear" 46 msgstr "" 47 48 #: admin/_fake_l10n.php:14 49 msgid "Manage post attachments" 50 msgstr "" 51 52 #: admin/_fake_l10n.php:15 53 msgid "Manage your blogroll" 54 msgstr "" 55 56 #: admin/_fake_l10n.php:16 57 msgid "Configure your Blowup Theme" 58 msgstr "" 59 60 #: admin/_fake_l10n.php:17 61 msgid "Install and update your plugins live from DotAddict.org" 62 msgstr "" 63 64 #: admin/_fake_l10n.php:18 65 msgid "Trackback validity check" 66 msgstr "" 67 68 #: admin/_fake_l10n.php:19 69 msgid "Import and Export your blog" 70 msgstr "" 71 72 #: admin/_fake_l10n.php:20 73 msgid "Maintain your installation" 74 msgstr "" 75 76 #: admin/_fake_l10n.php:21 77 msgid "Serve entries as simple web pages" 78 msgstr "" 79 80 #: admin/_fake_l10n.php:22 81 msgid "Ping services" 82 msgstr "" 83 84 #: admin/_fake_l10n.php:23 85 msgid "Simple menu for Dotclear" 86 msgstr "" 87 88 #: admin/_fake_l10n.php:24 89 msgid "Tags for posts" 90 msgstr "" 91 92 #: admin/_fake_l10n.php:25 93 msgid "Theme Editor" 94 msgstr "" 95 96 #: admin/_fake_l10n.php:26 97 msgid "Manage every user preference directive" 98 msgstr "" 99 100 #: admin/_fake_l10n.php:27 101 msgid "Widgets for your blog sidebars" 102 msgstr "" 103 104 #: admin/_fake_l10n.php:31 105 msgid "Search engine form" 106 msgstr "" 107 108 #: admin/_fake_l10n.php:32 109 msgid "List of navigation links" 110 msgstr "" 111 112 #: admin/_fake_l10n.php:33 113 msgid "List of selected entries" 114 msgstr "" 115 116 #: admin/_fake_l10n.php:34 117 msgid "List of available languages" 118 msgstr "" 119 120 #: admin/_fake_l10n.php:35 121 msgid "List of categories" 122 msgstr "" 123 124 #: admin/_fake_l10n.php:36 125 msgid "RSS or Atom feed subscription links" 126 msgstr "" 127 128 #: admin/_fake_l10n.php:37 129 msgid "Last entries from feed" 130 msgstr "" 131 132 #: admin/_fake_l10n.php:38 133 msgid "Simple text" 134 msgstr "" 135 136 #: admin/_fake_l10n.php:39 137 msgid "List of last entries published" 138 msgstr "" 139 140 #: admin/_fake_l10n.php:40 141 msgid "List of last comments posted" 142 msgstr "" 143 144 #: admin/_fake_l10n.php:41 145 msgid "Tags cloud" 146 msgstr "" 147 148 #: admin/_fake_l10n.php:42 149 msgid "List of published pages" 150 msgstr "" 151 152 #: admin/_fake_l10n.php:43 153 msgid "Blogroll list" 154 msgstr "" 155 156 #: admin/_fake_l10n.php:44 157 msgid "List of simple menu items" 158 msgstr "" 159 160 #: admin/_fake_l10n.php:52 161 msgid "Posts" 162 msgstr "" 163 164 #: admin/_fake_l10n.php:53 admin/_fake_l10n.php:63 165 msgid "Pages" 166 msgstr "" 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 171 msgid "New entry" 172 msgstr "" 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 178 msgid "Entries" 179 msgstr "" 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 186 msgid "Comments" 187 msgstr "" 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 191 msgid "My preferences" 192 msgstr "" 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 196 msgid "Blog settings" 197 msgstr "" 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 201 msgid "Blog appearance" 202 msgstr "" 203 204 #: admin/_fake_l10n.php:64 205 msgid "Blogroll" 206 msgstr "" 207 20 208 #: admin/auth.php:46 inc/libs/clearbricks/tests/unit/common/lib.l10n.php:49 21 209 #: inc/libs/clearbricks/tests/unit/common/lib.l10n.php:183 … … 58 246 msgstr "" 59 247 60 #: admin/auth.php:166 admin/install/index.php:84 admin/preferences.php:1 09248 #: admin/auth.php:166 admin/install/index.php:84 admin/preferences.php:110 61 249 #: admin/user.php:101 62 250 msgid "Passwords don't match" … … 92 280 93 281 #: 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:42 4282 #: admin/install/index.php:324 admin/post.php:687 admin/preferences.php:426 95 283 #: admin/user.php:262 inc/admin/lib.dc.page.php:539 96 284 msgid "Email:" … … 105 293 msgstr "" 106 294 107 #: admin/auth.php:353 admin/install/index.php:333 admin/preferences.php:44 3295 #: admin/auth.php:353 admin/install/index.php:333 admin/preferences.php:445 108 296 #: admin/user.php:223 109 297 msgid "New password:" … … 304 492 305 493 #: admin/blog_pref.php:112 admin/posts.php:91 306 #: inc/admin/actions/class.dcaction.php:6 4inc/admin/lib.pager.php:171494 #: inc/admin/actions/class.dcaction.php:67 inc/admin/lib.pager.php:171 307 495 #: inc/admin/lib.pager.php:284 308 496 msgid "Title" … … 365 553 msgstr "" 366 554 367 #: admin/blog_pref.php:272 admin/blog_pref.php:279 admin/blog_pref.php:283368 #: inc/admin/prepend.php:309 inc/core/_fake_l10n.php:20369 msgid "Blog settings"370 msgstr ""371 372 555 #: admin/blog_pref.php:287 373 556 msgid "Warning: except for special configurations, it is generally advised to have a trailing \"/\" in your blog URL in PATH_INFO mode." … … 518 701 msgstr "" 519 702 703 #: admin/blog_pref.php:497 704 msgid "Pattern of date" 705 msgstr "" 706 707 #: admin/blog_pref.php:499 admin/blog_pref.php:505 708 msgid "Sample:" 709 msgstr "" 710 520 711 #: admin/blog_pref.php:501 521 712 msgid "Time format:" 713 msgstr "" 714 715 #: admin/blog_pref.php:503 716 msgid "Pattern of time" 522 717 msgstr "" 523 718 … … 597 792 #: admin/index.php:377 admin/install/index.php:345 admin/media_item.php:550 598 793 #: admin/post.php:571 admin/post.php:702 admin/user.php:308 599 #: admin/users_actions.php:292 inc/admin/actions/class.dcactionposts.php:24 7600 #: inc/admin/actions/class.dcactionposts.php:30 6601 #: inc/admin/actions/class.dcactionposts.php:35 7794 #: 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 602 797 msgid "Save" 603 798 msgstr "" … … 613 808 #: admin/blog_pref.php:625 admin/user.php:187 admin/users.php:96 614 809 #: 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 616 813 msgid "Users" 617 814 msgstr "" … … 696 893 #: admin/blog_theme.php:196 697 894 msgid "Configure theme" 698 msgstr ""699 700 #: admin/blog_theme.php:214 admin/blog_theme.php:220 admin/blog_theme.php:225701 #: inc/admin/prepend.php:306 inc/core/_fake_l10n.php:21702 msgid "Blog appearance"703 895 msgstr "" 704 896 … … 886 1078 #: admin/blogs.php:141 admin/comments.php:46 admin/post.php:438 887 1079 #: admin/post.php:852 admin/posts.php:94 admin/users_actions.php:217 888 #: inc/admin/actions/class.dcactionposts.php:9 2inc/admin/lib.pager.php:1771080 #: inc/admin/actions/class.dcactionposts.php:93 inc/admin/lib.pager.php:177 889 1081 #: inc/admin/lib.pager.php:287 inc/admin/lib.pager.php:386 890 1082 msgid "Status" … … 960 1152 msgstr "" 961 1153 962 #: admin/categories.php:163 admin/category.php:204 admin/preferences.php:42 71154 #: admin/categories.php:163 admin/category.php:204 admin/preferences.php:429 963 1155 #: admin/user.php:267 964 1156 msgid "URL:" … … 1003 1195 #: admin/category.php:184 admin/index.php:357 admin/index.php:369 1004 1196 #: admin/media.php:433 admin/post.php:476 admin/post.php:527 1005 #: inc/admin/actions/class.dcactionposts.php:23 61197 #: inc/admin/actions/class.dcactionposts.php:237 1006 1198 msgid "Title:" 1007 1199 msgstr "" 1008 1200 1009 1201 #: admin/category.php:191 admin/category.php:230 admin/index.php:371 1010 #: admin/post.php:478 inc/admin/actions/class.dcactionposts.php:23 81202 #: admin/post.php:478 inc/admin/actions/class.dcactionposts.php:239 1011 1203 msgid "Parent:" 1012 1204 msgstr "" … … 1125 1317 #: admin/search.php:155 admin/users.php:34 1126 1318 #: inc/admin/actions/class.dcactioncomments.php:100 1127 #: inc/admin/actions/class.dcactionposts.php:1301128 1319 #: inc/admin/actions/class.dcactionposts.php:131 1320 #: inc/admin/actions/class.dcactionposts.php:132 1321 #: inc/admin/actions/class.dcactionusers.php:100 1129 1322 msgid "Delete" 1130 1323 msgstr "" … … 1228 1421 msgstr "" 1229 1422 1230 #: admin/index.php:122 admin/index.php:356 admin/post.php:351231 #: admin/post.php:554 admin/posts.php:232 inc/admin/prepend.php:3271232 #: inc/admin/prepend.php:378 inc/core/_fake_l10n.php:161233 msgid "New entry"1234 msgstr ""1235 1236 #: admin/index.php:124 admin/media.php:440 admin/preferences.php:171237 #: inc/admin/lib.dc.page.php:143 inc/core/_fake_l10n.php:191238 msgid "My preferences"1239 msgstr ""1240 1241 1423 #: admin/index.php:146 1242 1424 msgid "Dotclear news" … … 1335 1517 1336 1518 #: admin/index.php:364 admin/post.php:470 admin/posts.php:248 1337 #: inc/admin/actions/class.dcactionposts.php:2 291519 #: inc/admin/actions/class.dcactionposts.php:230 1338 1520 msgid "Category:" 1339 1521 msgstr "" … … 1463 1645 #: admin/install/index.php:273 admin/install/index.php:274 1464 1646 #: admin/install/index.php:275 admin/install/index.php:276 1465 #: admin/install/index.php:277 admin/preferences.php:36 51466 #: admin/preferences.php:36 6 admin/preferences.php:3671467 #: admin/preferences.php:3 68 admin/preferences.php:369admin/user.php:1721647 #: 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 1468 1650 #: admin/user.php:173 admin/user.php:174 admin/user.php:175 admin/user.php:176 1469 1651 #, php-format … … 1471 1653 msgstr "" 1472 1654 1473 #: admin/install/index.php:273 admin/preferences.php:36 5admin/user.php:1721655 #: admin/install/index.php:273 admin/preferences.php:367 admin/user.php:172 1474 1656 msgid "very weak" 1475 1657 msgstr "" 1476 1658 1477 #: admin/install/index.php:274 admin/preferences.php:36 6admin/user.php:1731659 #: admin/install/index.php:274 admin/preferences.php:368 admin/user.php:173 1478 1660 msgid "weak" 1479 1661 msgstr "" 1480 1662 1481 #: admin/install/index.php:275 admin/preferences.php:36 7admin/user.php:1741663 #: admin/install/index.php:275 admin/preferences.php:369 admin/user.php:174 1482 1664 msgid "mediocre" 1483 1665 msgstr "" 1484 1666 1485 #: admin/install/index.php:276 admin/preferences.php:3 68admin/user.php:1751667 #: admin/install/index.php:276 admin/preferences.php:370 admin/user.php:175 1486 1668 msgid "strong" 1487 1669 msgstr "" 1488 1670 1489 #: admin/install/index.php:277 admin/preferences.php:3 69admin/user.php:1761671 #: admin/install/index.php:277 admin/preferences.php:371 admin/user.php:176 1490 1672 msgid "very strong" 1491 1673 msgstr "" … … 1522 1704 msgstr "" 1523 1705 1524 #: admin/install/index.php:320 admin/preferences.php:4 18admin/user.php:2541706 #: admin/install/index.php:320 admin/preferences.php:420 admin/user.php:254 1525 1707 msgid "First Name:" 1526 1708 msgstr "" 1527 1709 1528 #: admin/install/index.php:322 admin/preferences.php:41 5admin/user.php:2501710 #: admin/install/index.php:322 admin/preferences.php:417 admin/user.php:250 1529 1711 msgid "Last Name:" 1530 1712 msgstr "" … … 2379 2561 msgstr "" 2380 2562 2381 #: admin/post.php:361 admin/post.php:375 admin/posts.php:2172382 #: admin/posts.php:221 admin/users_actions.php:2162383 #: inc/admin/actions/class.dcactionposts.php:322384 #: inc/admin/actions/class.dcactionposts.php:502385 #: inc/admin/actions/class.dcactionposts.php:2172386 #: inc/admin/actions/class.dcactionposts.php:2872387 #: inc/admin/actions/class.dcactionposts.php:328 inc/admin/prepend.php:3242388 #: inc/core/_fake_l10n.php:172389 msgid "Entries"2390 msgstr ""2391 2392 2563 #: admin/post.php:381 2393 2564 msgid "Entry has been successfully updated." … … 2517 2688 #: inc/admin/actions/class.dcactioncomments.php:91 2518 2689 #: 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 2520 2693 msgid "Publish" 2521 2694 msgstr "" … … 2523 2696 #: admin/post.php:630 admin/post.php:723 2524 2697 #: 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 2526 2700 msgid "Unpublish" 2527 2701 msgstr "" … … 2529 2703 #: admin/post.php:631 admin/post.php:724 2530 2704 #: 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 2532 2707 msgid "Mark as pending" 2533 2708 msgstr "" … … 2535 2710 #: admin/post.php:632 admin/post.php:725 2536 2711 #: inc/admin/actions/class.dcactioncomments.php:95 2712 #: inc/admin/actions/class.dcactionusers.php:95 2537 2713 msgid "Mark as junk" 2538 msgstr ""2539 2540 #: admin/post.php:641 admin/post.php:6542541 #: inc/admin/actions/class.dcactioncomments.php:212542 #: inc/admin/actions/class.dcactioncomments.php:342543 #: inc/admin/actions/class.dcactioncomments.php:52 inc/admin/lib.pager.php:1752544 #: inc/admin/prepend.php:321 inc/core/_fake_l10n.php:182545 msgid "Comments"2546 2714 msgstr "" 2547 2715 … … 2673 2841 msgstr "" 2674 2842 2675 #: admin/preferences.php:6 42843 #: admin/preferences.php:65 2676 2844 msgid "Default" 2677 2845 msgstr "" 2678 2846 2679 #: admin/preferences.php:8 7 admin/preferences.php:1052847 #: admin/preferences.php:88 admin/preferences.php:106 2680 2848 msgid "If you want to change your email or password you must provide your current password." 2681 2849 msgstr "" 2682 2850 2683 #: admin/preferences.php:21 3 admin/preferences.php:2562851 #: admin/preferences.php:215 admin/preferences.php:258 2684 2852 msgid "No favorite selected" 2685 2853 msgstr "" 2686 2854 2687 #: admin/preferences.php:38 72855 #: admin/preferences.php:389 2688 2856 msgid "Personal information has been successfully updated." 2689 2857 msgstr "" 2690 2858 2691 #: admin/preferences.php:39 02859 #: admin/preferences.php:392 2692 2860 msgid "Personal options has been successfully updated." 2693 2861 msgstr "" 2694 2862 2695 #: admin/preferences.php:39 32863 #: admin/preferences.php:395 2696 2864 msgid "Dashboard options has been successfully updated." 2697 2865 msgstr "" 2698 2866 2699 #: admin/preferences.php:39 62867 #: admin/preferences.php:398 2700 2868 msgid "Favorites have been successfully added." 2701 2869 msgstr "" 2702 2870 2703 #: admin/preferences.php: 3992871 #: admin/preferences.php:401 2704 2872 msgid "Favorites have been successfully updated." 2705 2873 msgstr "" 2706 2874 2707 #: admin/preferences.php:40 22875 #: admin/preferences.php:404 2708 2876 msgid "Favorites have been successfully removed." 2709 2877 msgstr "" 2710 2878 2711 #: admin/preferences.php:40 52879 #: admin/preferences.php:407 2712 2880 msgid "Default favorites have been successfully updated." 2713 2881 msgstr "" 2714 2882 2715 #: admin/preferences.php:4 09 admin/preferences.php:4122883 #: admin/preferences.php:411 admin/preferences.php:414 2716 2884 msgid "My profile" 2717 2885 msgstr "" 2718 2886 2719 #: admin/preferences.php:42 1admin/user.php:2582887 #: admin/preferences.php:423 admin/user.php:258 2720 2888 msgid "Display name:" 2721 2889 msgstr "" 2722 2890 2723 #: admin/preferences.php:43 02891 #: admin/preferences.php:432 2724 2892 msgid "Language for my interface:" 2725 2893 msgstr "" 2726 2894 2727 #: admin/preferences.php:43 32895 #: admin/preferences.php:435 2728 2896 msgid "My timezone:" 2729 2897 msgstr "" 2730 2898 2731 #: admin/preferences.php:44 02899 #: admin/preferences.php:442 2732 2900 msgid "Change my password" 2733 2901 msgstr "" 2734 2902 2735 #: admin/preferences.php:45 12903 #: admin/preferences.php:453 2736 2904 msgid "Confirm new password:" 2737 2905 msgstr "" 2738 2906 2739 #: admin/preferences.php:45 42907 #: admin/preferences.php:456 2740 2908 msgid "Your current password:" 2741 2909 msgstr "" 2742 2910 2743 #: admin/preferences.php:45 72911 #: admin/preferences.php:459 2744 2912 msgid "If you have changed your email or password you must provide your current password to save these modifications." 2745 2913 msgstr "" 2746 2914 2747 #: admin/preferences.php:46 42915 #: admin/preferences.php:466 2748 2916 msgid "Update my profile" 2749 2917 msgstr "" 2750 2918 2751 #: admin/preferences.php:47 0 admin/preferences.php:4742919 #: admin/preferences.php:472 admin/preferences.php:476 2752 2920 msgid "My options" 2753 2921 msgstr "" 2754 2922 2755 #: admin/preferences.php:4 78admin/user.php:2742923 #: admin/preferences.php:480 admin/user.php:274 2756 2924 msgid "Interface" 2757 2925 msgstr "" 2758 2926 2759 #: admin/preferences.php:48 22927 #: admin/preferences.php:484 2760 2928 msgid "Activate enhanced uploader in media manager" 2761 2929 msgstr "" 2762 2930 2763 #: admin/preferences.php:48 62931 #: admin/preferences.php:488 2764 2932 msgid "Disable javascript powered drag and drop for ordering items" 2765 2933 msgstr "" 2766 2934 2767 #: admin/preferences.php:48 72935 #: admin/preferences.php:489 2768 2936 msgid "If checked, numeric fields will allow to type the elements' ordering number." 2769 2937 msgstr "" 2770 2938 2771 #: admin/preferences.php:493 2939 #: admin/preferences.php:492 2940 msgid "Number of media displayed per page:" 2941 msgstr "" 2942 2943 #: admin/preferences.php:499 2772 2944 msgid "Do not use standard favicon" 2773 2945 msgstr "" 2774 2946 2775 #: admin/preferences.php: 4942947 #: admin/preferences.php:500 2776 2948 msgid "This will be applied for all users" 2777 2949 msgstr "" 2778 2950 2779 #: admin/preferences.php:50 3admin/user.php:2832951 #: admin/preferences.php:509 admin/user.php:283 2780 2952 msgid "Edition" 2781 2953 msgstr "" 2782 2954 2783 #: admin/preferences.php:5 05admin/user.php:2842955 #: admin/preferences.php:511 admin/user.php:284 2784 2956 msgid "Preferred format:" 2785 2957 msgstr "" 2786 2958 2787 #: admin/preferences.php:5 08admin/user.php:2882959 #: admin/preferences.php:514 admin/user.php:288 2788 2960 msgid "Default entry status:" 2789 2961 msgstr "" 2790 2962 2791 #: admin/preferences.php:51 1admin/user.php:2922963 #: admin/preferences.php:517 admin/user.php:292 2792 2964 msgid "Entry edit field height:" 2793 2965 msgstr "" 2794 2966 2795 #: admin/preferences.php:5 162967 #: admin/preferences.php:522 2796 2968 msgid "Enable WYSIWYG mode" 2797 2969 msgstr "" 2798 2970 2799 #: admin/preferences.php:52 12971 #: admin/preferences.php:527 2800 2972 msgid "Other options" 2801 2973 msgstr "" 2802 2974 2803 #: admin/preferences.php:5 292975 #: admin/preferences.php:535 2804 2976 msgid "Save my options" 2805 2977 msgstr "" 2806 2978 2807 #: admin/preferences.php:5 35 admin/preferences.php:5372979 #: admin/preferences.php:541 admin/preferences.php:543 2808 2980 #: inc/admin/lib.dc.page.php:141 2809 2981 msgid "My dashboard" 2810 2982 msgstr "" 2811 2983 2812 #: admin/preferences.php:54 1inc/admin/prepend.php:2972984 #: admin/preferences.php:547 inc/admin/prepend.php:297 2813 2985 msgid "My favorites" 2814 2986 msgstr "" 2815 2987 2816 #: admin/preferences.php:5 542988 #: admin/preferences.php:560 2817 2989 #, php-format 2818 2990 msgid "position of %s" 2819 2991 msgstr "" 2820 2992 2821 #: admin/preferences.php:5 682993 #: admin/preferences.php:574 2822 2994 msgid "Save order" 2823 2995 msgstr "" 2824 2996 2825 #: admin/preferences.php:57 12997 #: admin/preferences.php:577 2826 2998 msgid "Delete selected favorites" 2827 2999 msgstr "" 2828 3000 2829 #: admin/preferences.php:57 33001 #: admin/preferences.php:579 2830 3002 msgid "Are you sure you want to remove selected favorites?" 2831 3003 msgstr "" 2832 3004 2833 #: admin/preferences.php:5 773005 #: admin/preferences.php:583 2834 3006 msgid "If you are a super administrator, you may define this set of favorites to be used by default on all blogs of this installation." 2835 3007 msgstr "" 2836 3008 2837 #: admin/preferences.php:5 783009 #: admin/preferences.php:584 2838 3010 msgid "Define as default favorites" 2839 3011 msgstr "" 2840 3012 2841 #: admin/preferences.php:5 863013 #: admin/preferences.php:592 2842 3014 msgid "Currently no personal favorites." 2843 3015 msgstr "" 2844 3016 2845 #: admin/preferences.php:6 043017 #: admin/preferences.php:610 2846 3018 msgid "Other available favorites" 2847 3019 msgstr "" 2848 3020 2849 #: admin/preferences.php:6 253021 #: admin/preferences.php:631 2850 3022 msgid "(default favorite)" 2851 3023 msgstr "" 2852 3024 2853 #: admin/preferences.php:6 343025 #: admin/preferences.php:640 2854 3026 msgid "Add to my favorites" 2855 3027 msgstr "" 2856 3028 2857 #: admin/preferences.php:64 33029 #: admin/preferences.php:649 2858 3030 msgid "Menu" 2859 3031 msgstr "" 2860 3032 2861 #: admin/preferences.php:6 463033 #: admin/preferences.php:652 2862 3034 msgid "Display favorites at the top of the menu" 2863 3035 msgstr "" 2864 3036 2865 #: admin/preferences.php:65 13037 #: admin/preferences.php:657 2866 3038 msgid "Dashboard icons" 2867 3039 msgstr "" 2868 3040 2869 #: admin/preferences.php:65 23041 #: admin/preferences.php:658 2870 3042 msgid "Iconset:" 2871 3043 msgstr "" 2872 3044 2873 #: admin/preferences.php:66 13045 #: admin/preferences.php:667 2874 3046 msgid "Dashboard modules" 2875 3047 msgstr "" 2876 3048 2877 #: admin/preferences.php:6 653049 #: admin/preferences.php:671 2878 3050 msgid "Display documentation links" 2879 3051 msgstr "" 2880 3052 2881 #: admin/preferences.php:6 693053 #: admin/preferences.php:675 2882 3054 msgid "Display Dotclear news" 2883 3055 msgstr "" 2884 3056 2885 #: admin/preferences.php:67 33057 #: admin/preferences.php:679 2886 3058 msgid "Display quick entry form" 2887 3059 msgstr "" 2888 3060 2889 #: admin/preferences.php:6 843061 #: admin/preferences.php:690 2890 3062 msgid "Save my dashboard options" 2891 3063 msgstr "" … … 3194 3366 3195 3367 #: 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 3197 3370 msgid "Back to entries list" 3198 3371 msgstr "" … … 3207 3380 msgstr "" 3208 3381 3209 #: inc/admin/actions/class.dcactionposts.php:5 13382 #: inc/admin/actions/class.dcactionposts.php:52 3210 3383 msgid "Entries actions" 3211 3384 msgstr "" 3212 3385 3213 #: inc/admin/actions/class.dcactionposts.php:9 53386 #: inc/admin/actions/class.dcactionposts.php:96 3214 3387 msgid "Schedule" 3215 3388 msgstr "" 3216 3389 3217 #: inc/admin/actions/class.dcactionposts.php:10 23390 #: inc/admin/actions/class.dcactionposts.php:103 3218 3391 msgid "Mark" 3219 3392 msgstr "" 3220 3393 3221 #: inc/admin/actions/class.dcactionposts.php:10 33394 #: inc/admin/actions/class.dcactionposts.php:104 3222 3395 msgid "Mark as selected" 3223 3396 msgstr "" 3224 3397 3225 #: inc/admin/actions/class.dcactionposts.php:10 43398 #: inc/admin/actions/class.dcactionposts.php:105 3226 3399 msgid "Mark as unselected" 3227 3400 msgstr "" 3228 3401 3229 #: inc/admin/actions/class.dcactionposts.php:1 093230 #: inc/admin/actions/class.dcactionposts.php:11 53231 #: inc/admin/actions/class.dcactionposts.php:12 33402 #: inc/admin/actions/class.dcactionposts.php:110 3403 #: inc/admin/actions/class.dcactionposts.php:116 3404 #: inc/admin/actions/class.dcactionposts.php:124 3232 3405 msgid "Change" 3233 3406 msgstr "" 3234 3407 3235 #: inc/admin/actions/class.dcactionposts.php:11 03408 #: inc/admin/actions/class.dcactionposts.php:111 3236 3409 msgid "Change category" 3237 3410 msgstr "" 3238 3411 3239 #: inc/admin/actions/class.dcactionposts.php:11 63412 #: inc/admin/actions/class.dcactionposts.php:117 3240 3413 msgid "Change language" 3241 3414 msgstr "" 3242 3415 3243 #: inc/admin/actions/class.dcactionposts.php:12 43416 #: inc/admin/actions/class.dcactionposts.php:125 3244 3417 msgid "Change author" 3245 3418 msgstr "" 3246 3419 3247 #: inc/admin/actions/class.dcactionposts.php:14 63248 #: inc/admin/actions/class.dcactionposts.php:15 63249 #: inc/admin/actions/class.dcactionposts.php:16 83250 #: inc/admin/actions/class.dcactionposts.php:1 893251 #: inc/admin/actions/class.dcactionposts.php:2 593252 #: inc/admin/actions/class.dcactionposts.php:31 43420 #: 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 3253 3426 msgid "No entry selected" 3254 3427 msgstr "" 3255 3428 3256 #: inc/admin/actions/class.dcactionposts.php:2 183257 msgid "Change category for entries"3258 msgstr "" 3259 3260 #: inc/admin/actions/class.dcactionposts.php:23 53429 #: inc/admin/actions/class.dcactionposts.php:220 3430 msgid "Change category for this selection" 3431 msgstr "" 3432 3433 #: inc/admin/actions/class.dcactionposts.php:236 3261 3434 msgid "Create a new category for the post(s)" 3262 3435 msgstr "" 3263 3436 3264 #: inc/admin/actions/class.dcactionposts.php:26 23437 #: inc/admin/actions/class.dcactionposts.php:264 3265 3438 msgid "This user does not exist" 3266 3439 msgstr "" 3267 3440 3268 #: inc/admin/actions/class.dcactionposts.php:2 883269 msgid "Change author for entries"3270 msgstr "" 3271 3272 #: inc/admin/actions/class.dcactionposts.php:30 03441 #: inc/admin/actions/class.dcactionposts.php:290 3442 msgid "Change author for this selection" 3443 msgstr "" 3444 3445 #: inc/admin/actions/class.dcactionposts.php:302 3273 3446 msgid "New author (author ID):" 3274 3447 msgstr "" 3275 3448 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 3450 msgid "Change language for this selection" 3451 msgstr "" 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 3282 3456 #: inc/admin/lib.admincombos.php:107 inc/admin/lib.admincombos.php:111 3283 3457 msgid "Available" 3284 3458 msgstr "" 3285 3459 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 3291 3466 msgid "Most used" 3292 3467 msgstr "" 3293 3468 3294 #: inc/admin/actions/class.dcactionposts.php:35 13469 #: inc/admin/actions/class.dcactionposts.php:353 3295 3470 msgid "Entry language:" 3471 msgstr "" 3472 3473 #: inc/admin/actions/class.dcactionusers.php:53 3474 msgid "Users actions" 3475 msgstr "" 3476 3477 #: inc/admin/actions/class.dcactionusers.php:109 3478 #: inc/admin/actions/class.dcactionusers.php:125 3479 msgid "No User selected" 3480 msgstr "" 3481 3482 #: inc/admin/class.admincombos.php:22 3483 msgid "(no cat)" 3296 3484 msgstr "" 3297 3485 … … 3822 4010 #: inc/admin/prepend.php:334 3823 4011 msgid "Languages" 3824 msgstr ""3825 3826 #: inc/core/_fake_l10n.php:43827 msgid "medium"3828 msgstr ""3829 3830 #: inc/core/_fake_l10n.php:53831 msgid "small"3832 msgstr ""3833 3834 #: inc/core/_fake_l10n.php:63835 msgid "thumbnail"3836 msgstr ""3837 3838 #: inc/core/_fake_l10n.php:73839 msgid "square"3840 msgstr ""3841 3842 #: inc/core/_fake_l10n.php:113843 msgid "Posts"3844 msgstr ""3845 3846 #: inc/core/_fake_l10n.php:12 inc/core/_fake_l10n.php:223847 msgid "Pages"3848 msgstr ""3849 3850 #: inc/core/_fake_l10n.php:233851 msgid "Blogroll"3852 4012 msgstr "" 3853 4013 -
locales/_pot/plugins.pot
r2132 r2133 8 8 "Project-Id-Version: Dotclear 2\n" 9 9 "Report-Msgid-Bugs-To: \n" 10 "POT-Creation-Date: 2013-09-2 2 16:57+0000\n"10 "POT-Creation-Date: 2013-09-24 07:51+0000\n" 11 11 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 12 12 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" … … 18 18 "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" 19 19 20 #: plugins/_fake_plugin/_fake_l10n.php:521 msgid "Manage every blog configuration directive"22 msgstr ""23 24 #: plugins/_fake_plugin/_fake_l10n.php:625 msgid "Akismet interface for Dotclear"26 msgstr ""27 28 #: plugins/_fake_plugin/_fake_l10n.php:729 msgid "Generic antispam plugin for Dotclear"30 msgstr ""31 32 #: plugins/_fake_plugin/_fake_l10n.php:833 msgid "Manage post attachments"34 msgstr ""35 36 #: plugins/_fake_plugin/_fake_l10n.php:937 msgid "Manage your blogroll"38 msgstr ""39 40 #: plugins/_fake_plugin/_fake_l10n.php:1041 msgid "Configure your Blowup Theme"42 msgstr ""43 44 #: plugins/_fake_plugin/_fake_l10n.php:11 plugins/daInstaller/index.php:26745 msgid "Install and update your plugins live from DotAddict.org"46 msgstr ""47 48 #: plugins/_fake_plugin/_fake_l10n.php:1249 msgid "Trackback validity check"50 msgstr ""51 52 #: plugins/_fake_plugin/_fake_l10n.php:1353 msgid "Import and Export your blog"54 msgstr ""55 56 #: plugins/_fake_plugin/_fake_l10n.php:1457 msgid "Maintain your installation"58 msgstr ""59 60 #: plugins/_fake_plugin/_fake_l10n.php:1561 msgid "Serve entries as simple web pages"62 msgstr ""63 64 #: plugins/_fake_plugin/_fake_l10n.php:1665 msgid "Ping services"66 msgstr ""67 68 #: plugins/_fake_plugin/_fake_l10n.php:1769 msgid "Simple menu for Dotclear"70 msgstr ""71 72 #: plugins/_fake_plugin/_fake_l10n.php:1873 msgid "Tags for posts"74 msgstr ""75 76 #: plugins/_fake_plugin/_fake_l10n.php:1977 msgid "Theme Editor"78 msgstr ""79 80 #: plugins/_fake_plugin/_fake_l10n.php:2081 msgid "Manage every user preference directive"82 msgstr ""83 84 #: plugins/_fake_plugin/_fake_l10n.php:2185 msgid "Widgets for your blog sidebars"86 msgstr ""87 88 #: plugins/_fake_plugin/_fake_l10n.php:2589 msgid "Search engine form"90 msgstr ""91 92 #: plugins/_fake_plugin/_fake_l10n.php:2693 msgid "List of navigation links"94 msgstr ""95 96 #: plugins/_fake_plugin/_fake_l10n.php:2797 msgid "List of selected entries"98 msgstr ""99 100 #: plugins/_fake_plugin/_fake_l10n.php:28101 msgid "List of available languages"102 msgstr ""103 104 #: plugins/_fake_plugin/_fake_l10n.php:29105 msgid "List of categories"106 msgstr ""107 108 #: plugins/_fake_plugin/_fake_l10n.php:30109 msgid "RSS or Atom feed subscription links"110 msgstr ""111 112 #: plugins/_fake_plugin/_fake_l10n.php:31113 msgid "Last entries from feed"114 msgstr ""115 116 #: plugins/_fake_plugin/_fake_l10n.php:32117 msgid "Simple text"118 msgstr ""119 120 #: plugins/_fake_plugin/_fake_l10n.php:33121 msgid "List of last entries published"122 msgstr ""123 124 #: plugins/_fake_plugin/_fake_l10n.php:34125 msgid "List of last comments posted"126 msgstr ""127 128 #: plugins/_fake_plugin/_fake_l10n.php:35129 msgid "Tags cloud"130 msgstr ""131 132 #: plugins/_fake_plugin/_fake_l10n.php:36133 msgid "List of published pages"134 msgstr ""135 136 #: plugins/_fake_plugin/_fake_l10n.php:37137 msgid "Blogroll list"138 msgstr ""139 140 #: plugins/_fake_plugin/_fake_l10n.php:38141 msgid "List of simple menu items"142 msgstr ""143 144 20 #: plugins/aboutConfig/index.php:78 plugins/userPref/index.php:74 145 21 msgid "no" … … 239 115 240 116 #: plugins/antispam/_admin.php:75 241 msgid "Set spam filters on it's page."117 msgid "Set spam filters." 242 118 msgstr "" 243 119 … … 833 709 #: plugins/importExport/inc/class.dc.import.flat.php:203 834 710 #: plugins/importExport/inc/class.dc.import.flat.php:234 835 #: plugins/importExport/index.php:9 8711 #: plugins/importExport/index.php:97 836 712 msgid "Import" 837 713 msgstr "" … … 1368 1244 #: plugins/importExport/inc/class.dc.export.flat.php:209 1369 1245 #: plugins/importExport/inc/class.dc.export.flat.php:231 1370 #: plugins/importExport/index.php:991371 1246 msgid "Export" 1372 1247 msgstr "" … … 1672 1547 msgstr "" 1673 1548 1674 #: plugins/importExport/index.php:69 plugins/maintenance/index.php:1 281549 #: plugins/importExport/index.php:69 plugins/maintenance/index.php:119 1675 1550 msgid "Please wait..." 1676 1551 msgstr "" 1677 1552 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 1555 msgid "Export functions are in the page %s." 1556 msgstr "" 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 1682 1562 msgid "Maintenance" 1683 1563 msgstr "" 1684 1564 1565 #: plugins/maintenance/_admin.php:49 1566 msgid "Servicing" 1567 msgstr "" 1568 1569 #: plugins/maintenance/_admin.php:49 1570 msgid "Tools to maintain the performance of your blogs." 1571 msgstr "" 1572 1685 1573 #: plugins/maintenance/_admin.php:50 1686 msgid "Servicing" 1574 msgid "Backup" 1575 msgstr "" 1576 1577 #: plugins/maintenance/_admin.php:50 1578 msgid "Tools to back up your content." 1687 1579 msgstr "" 1688 1580 1689 1581 #: plugins/maintenance/_admin.php:51 1690 msgid "Backup" 1582 msgid "Development" 1583 msgstr "" 1584 1585 #: plugins/maintenance/_admin.php:51 1586 msgid "Tools to assist in development of plugins, themes and core." 1691 1587 msgstr "" 1692 1588 … … 1708 1604 1709 1605 #: plugins/maintenance/_admin.php:57 1710 msgid "C ompressed file for current blog"1606 msgid "Current blog" 1711 1607 msgstr "" 1712 1608 1713 1609 #: plugins/maintenance/_admin.php:58 1714 msgid "Compressed file for all blogs" 1715 msgstr "" 1716 1717 #: plugins/maintenance/_admin.php:125 1610 msgid "All blogs" 1611 msgstr "" 1612 1613 #: plugins/maintenance/_admin.php:60 1614 msgid "Maintain translations" 1615 msgstr "" 1616 1617 #: plugins/maintenance/_admin.php:60 1618 msgid "Translations" 1619 msgstr "" 1620 1621 #: plugins/maintenance/_admin.php:129 1718 1622 #, php-format 1719 1623 msgid "One task to execute" … … 1722 1626 msgstr[1] "" 1723 1627 1724 #: plugins/maintenance/_admin.php:15 3 plugins/maintenance/index.php:2361628 #: plugins/maintenance/_admin.php:157 plugins/maintenance/index.php:227 1725 1629 msgid "This task has never been executed." 1726 1630 msgstr "" 1727 1631 1728 #: plugins/maintenance/_admin.php:15 5 plugins/maintenance/index.php:2421632 #: plugins/maintenance/_admin.php:159 plugins/maintenance/index.php:233 1729 1633 #, php-format 1730 1634 msgid "Last execution of this task was on %s." 1731 1635 msgstr "" 1732 1636 1733 #: plugins/maintenance/_admin.php:1 691637 #: plugins/maintenance/_admin.php:173 1734 1638 #, php-format 1735 1639 msgid "There is a task to execute." … … 1738 1642 msgstr[1] "" 1739 1643 1740 #: plugins/maintenance/_admin.php:17 11644 #: plugins/maintenance/_admin.php:175 1741 1645 msgid "Manage tasks" 1742 1646 msgstr "" 1743 1647 1744 #: plugins/maintenance/_admin.php:19 41648 #: plugins/maintenance/_admin.php:198 1745 1649 msgid "Display count of late tasks on maintenance dashboard icon" 1746 1650 msgstr "" 1747 1651 1748 #: plugins/maintenance/_admin.php: 1981652 #: plugins/maintenance/_admin.php:202 1749 1653 msgid "Display list of late tasks on dashboard items" 1750 1654 msgstr "" 1751 1655 1752 #: plugins/maintenance/inc/class.dc.maintenance.task.php:7 01656 #: plugins/maintenance/inc/class.dc.maintenance.task.php:71 1753 1657 msgid "Failed to execute task." 1754 1658 msgstr "" 1755 1659 1756 #: plugins/maintenance/inc/class.dc.maintenance.task.php:7 31660 #: plugins/maintenance/inc/class.dc.maintenance.task.php:74 1757 1661 msgid "Task successfully executed." 1758 1662 msgstr "" … … 1770 1674 msgstr "" 1771 1675 1676 #: plugins/maintenance/inc/tasks/class.dc.maintenance.cache.php:24 1677 msgid "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." 1678 msgstr "" 1679 1772 1680 #: plugins/maintenance/inc/tasks/class.dc.maintenance.countcomments.php:20 1773 1681 msgid "Count again comments and trackbacks" … … 1780 1688 #: plugins/maintenance/inc/tasks/class.dc.maintenance.countcomments.php:22 1781 1689 msgid "Failed to count comments and trackbacks." 1690 msgstr "" 1691 1692 #: plugins/maintenance/inc/tasks/class.dc.maintenance.countcomments.php:24 1693 msgid "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)." 1782 1694 msgstr "" 1783 1695 … … 1793 1705 #: plugins/maintenance/inc/tasks/class.dc.maintenance.indexcomments.php:25 1794 1706 #: plugins/maintenance/inc/tasks/class.dc.maintenance.indexposts.php:25 1707 #: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:25 1795 1708 msgid "Next" 1796 1709 msgstr "" … … 1809 1722 msgstr "" 1810 1723 1724 #: plugins/maintenance/inc/tasks/class.dc.maintenance.indexcomments.php:30 1725 msgid "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." 1726 msgstr "" 1727 1811 1728 #: plugins/maintenance/inc/tasks/class.dc.maintenance.indexposts.php:24 1812 1729 msgid "Index all entries for search engine" … … 1826 1743 msgstr "" 1827 1744 1745 #: plugins/maintenance/inc/tasks/class.dc.maintenance.indexposts.php:30 1746 msgid "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." 1747 msgstr "" 1748 1828 1749 #: plugins/maintenance/inc/tasks/class.dc.maintenance.logs.php:20 1829 1750 msgid "Delete all logs" … … 1838 1759 msgstr "" 1839 1760 1761 #: plugins/maintenance/inc/tasks/class.dc.maintenance.logs.php:24 1762 msgid "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." 1763 msgstr "" 1764 1765 #: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:23 1766 msgid "Entries metadata" 1767 msgstr "" 1768 1769 #: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:24 1770 msgid "Synchronize entries metadata" 1771 msgstr "" 1772 1773 #: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:26 1774 #, php-format 1775 msgid "Synchronize entry %d to %d." 1776 msgstr "" 1777 1778 #: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:27 1779 msgid "Entries metadata synchronize done." 1780 msgstr "" 1781 1782 #: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:28 1783 msgid "Failed to synchronize entries metadata." 1784 msgstr "" 1785 1786 #: plugins/maintenance/inc/tasks/class.dc.maintenance.synchpostsmeta.php:30 1787 msgid "Synchronize all entries metadata could be useful after importing content in your blog or do bad operation on database tables." 1788 msgstr "" 1789 1840 1790 #: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:20 1791 msgid "Optimise database" 1792 msgstr "" 1793 1794 #: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:21 1841 1795 msgid "optimize tables" 1842 1796 msgstr "" 1843 1797 1844 #: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:2 11798 #: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:22 1845 1799 msgid "Optimization successful." 1846 1800 msgstr "" 1847 1801 1848 #: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:2 21802 #: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:23 1849 1803 msgid "Failed to optimize tables." 1804 msgstr "" 1805 1806 #: plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php:25 1807 msgid "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." 1850 1808 msgstr "" 1851 1809 … … 1854 1812 msgstr "" 1855 1813 1814 #: plugins/maintenance/inc/tasks/class.dc.maintenance.zipmedia.php:25 1815 msgid "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." 1816 msgstr "" 1817 1856 1818 #: plugins/maintenance/inc/tasks/class.dc.maintenance.ziptheme.php:23 1857 1819 msgid "Download active theme of current blog" 1858 1820 msgstr "" 1859 1821 1822 #: plugins/maintenance/inc/tasks/class.dc.maintenance.ziptheme.php:25 1823 msgid "It may be useful to backup the active theme before any change or update. This compress theme folder into a single zip file." 1824 msgstr "" 1825 1860 1826 #: plugins/maintenance/index.php:101 1827 msgid "Never" 1828 msgstr "" 1829 1830 #: plugins/maintenance/index.php:102 1861 1831 msgid "Every week" 1862 1832 msgstr "" 1863 1833 1864 #: plugins/maintenance/index.php:10 21834 #: plugins/maintenance/index.php:103 1865 1835 msgid "Every two weeks" 1866 1836 msgstr "" 1867 1837 1868 #: plugins/maintenance/index.php:10 31838 #: plugins/maintenance/index.php:104 1869 1839 msgid "Every month" 1870 1840 msgstr "" 1871 1841 1872 #: plugins/maintenance/index.php:10 41842 #: plugins/maintenance/index.php:105 1873 1843 msgid "Every two months" 1874 1844 msgstr "" 1875 1845 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 1885 1847 msgid "You have not sufficient permissions to view this page." 1886 1848 msgstr "" 1887 1849 1888 #: plugins/maintenance/index.php:1 571850 #: plugins/maintenance/index.php:147 1889 1851 msgid "Settings successfully updated" 1890 1852 msgstr "" 1891 1853 1892 #: plugins/maintenance/index.php:1 941854 #: plugins/maintenance/index.php:172 1893 1855 msgid "Back" 1894 1856 msgstr "" 1895 1857 1896 #: plugins/maintenance/index.php:2 37 plugins/maintenance/index.php:2461858 #: plugins/maintenance/index.php:228 plugins/maintenance/index.php:237 1897 1859 msgid "You should execute it now." 1898 1860 msgstr "" 1899 1861 1900 #: plugins/maintenance/index.php:26 8 plugins/maintenance/index.php:2901862 #: plugins/maintenance/index.php:260 plugins/maintenance/index.php:282 1901 1863 msgid "Execute task" 1902 1864 msgstr "" 1903 1865 1904 #: plugins/maintenance/index.php:2 711866 #: plugins/maintenance/index.php:263 1905 1867 msgid "This may take a very long time." 1906 1868 msgstr "" 1907 1869 1908 #: plugins/maintenance/index.php: 301 plugins/maintenance/index.php:3021909 msgid " Settings"1910 msgstr "" 1911 1912 #: plugins/maintenance/index.php: 3051870 #: plugins/maintenance/index.php:293 plugins/maintenance/index.php:294 1871 msgid "Alert settings" 1872 msgstr "" 1873 1874 #: plugins/maintenance/index.php:297 1913 1875 msgid "Activation" 1914 1876 msgstr "" 1915 1877 1916 #: plugins/maintenance/index.php:30 81878 #: plugins/maintenance/index.php:300 1917 1879 msgid "Display alert messages on late tasks" 1918 1880 msgstr "" 1919 1881 1882 #: plugins/maintenance/index.php:303 1883 #, php-format 1884 msgid "You can place list of late tasks on your %s." 1885 msgstr "" 1886 1887 #: plugins/maintenance/index.php:307 1888 msgid "Frequency" 1889 msgstr "" 1890 1920 1891 #: 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 1892 msgid "Use one recall time for all tasks" 1893 msgstr "" 1894 1895 #: plugins/maintenance/index.php:313 1930 1896 msgid "Recall time for all tasks:" 1931 1897 msgstr "" 1932 1898 1933 #: plugins/maintenance/index.php:3 211934 msgid " Recall time per task:"1935 msgstr "" 1936 1937 #: plugins/maintenance/index.php:33 61899 #: plugins/maintenance/index.php:319 1900 msgid "Use one recall time per task" 1901 msgstr "" 1902 1903 #: plugins/maintenance/index.php:334 1938 1904 msgid "Save this settings" 1939 1905 msgstr "" … … 1989 1955 msgstr "" 1990 1956 1991 #: plugins/pages/list.php:23 1957 #: plugins/pages/class.actionpage.php:28 1958 msgid "Pages actions" 1959 msgstr "" 1960 1961 #: plugins/pages/class.actionpage.php:39 1962 msgid "Back to pages list" 1963 msgstr "" 1964 1965 #: plugins/pages/class.listpage.php:21 1992 1966 msgid "No page" 1993 1967 msgstr "" 1994 1968 1995 #: plugins/pages/ list.php:931969 #: plugins/pages/class.listpage.php:91 1996 1970 msgid "Hidden" 1997 1971 msgstr "" 1998 1972 1999 #: plugins/pages/ list.php:1091973 #: plugins/pages/class.listpage.php:107 2000 1974 msgid "Select this page" 2001 1975 msgstr "" 2002 1976 2003 #: plugins/pages/list.php: 164 plugins/pages/list.php:2341977 #: plugins/pages/list.php:61 plugins/pages/list.php:67 2004 1978 msgid "Are you sure you want to delete selected pages?" 2005 1979 msgstr "" 2006 1980 2007 #: plugins/pages/list.php: 2481981 #: plugins/pages/list.php:81 2008 1982 msgid "Selected pages have been successfully updated." 2009 1983 msgstr "" 2010 1984 2011 #: plugins/pages/list.php: 2501985 #: plugins/pages/list.php:83 2012 1986 msgid "Selected pages have been successfully deleted." 2013 1987 msgstr "" 2014 1988 2015 #: plugins/pages/list.php: 2521989 #: plugins/pages/list.php:85 2016 1990 msgid "Selected pages have been successfully reordered." 2017 1991 msgstr "" 2018 1992 2019 #: plugins/pages/list.php: 255plugins/pages/page.php:371993 #: plugins/pages/list.php:88 plugins/pages/page.php:37 2020 1994 #: plugins/pages/page.php:491 2021 1995 msgid "New page" 2022 1996 msgstr "" 2023 1997 2024 #: plugins/pages/list.php: 2681998 #: plugins/pages/list.php:101 2025 1999 msgid "Selected pages action:" 2000 msgstr "" 2001 2002 #: plugins/pages/list.php:110 2003 msgid "To rearrange pages order, change number at the begining of the line, then click on “Save pages order” button." 2004 msgstr "" 2005 2006 #: plugins/pages/list.php:112 2007 msgid "To rearrange pages order, move items by drag and drop, then click on “Save pages order” button." 2008 msgstr "" 2009 2010 #: plugins/pages/list.php:113 2011 msgid "Save pages order" 2026 2012 msgstr "" 2027 2013 … … 2140 2126 2141 2127 #: plugins/simpleMenu/index.php:92 plugins/tags/_admin.php:14 2142 #: plugins/tags/_admin.php:8 3 plugins/tags/_admin.php:1622143 #: plugins/tags/_admin.php:1 65plugins/tags/_widgets.php:212128 #: plugins/tags/_admin.php:80 plugins/tags/_admin.php:103 2129 #: plugins/tags/_admin.php:109 plugins/tags/_widgets.php:21 2144 2130 #: plugins/tags/_widgets.php:22 plugins/tags/tag_posts.php:95 2145 2131 #: plugins/tags/tag_posts.php:115 plugins/tags/tags.php:17 … … 2287 2273 msgstr "" 2288 2274 2289 #: plugins/tags/_admin.php:116 plugins/tags/_admin.php:146 2275 #: plugins/tags/_admin.php:103 2276 msgid "Add tags" 2277 msgstr "" 2278 2279 #: plugins/tags/_admin.php:109 2280 msgid "Remove tags" 2281 msgstr "" 2282 2283 #: plugins/tags/_admin.php:154 2284 msgid "Add tags to this selection" 2285 msgstr "" 2286 2287 #: plugins/tags/_admin.php:164 plugins/tags/_admin.php:276 2290 2288 #, php-format 2291 2289 msgid "Are you sure you want to remove this %s?" 2292 2290 msgstr "" 2293 2291 2294 #: plugins/tags/_admin.php:1 17 plugins/tags/_admin.php:1472292 #: plugins/tags/_admin.php:165 plugins/tags/_admin.php:277 2295 2293 #, php-format 2296 2294 msgid "Add a %s to this entry" 2297 2295 msgstr "" 2298 2296 2299 #: plugins/tags/_admin.php:1 18 plugins/tags/_admin.php:1482297 #: plugins/tags/_admin.php:166 plugins/tags/_admin.php:278 2300 2298 msgid "Choose from list" 2301 2299 msgstr "" 2302 2300 2303 #: plugins/tags/_admin.php:1 19 plugins/tags/_admin.php:1492301 #: plugins/tags/_admin.php:167 plugins/tags/_admin.php:279 2304 2302 msgid "all" 2305 2303 msgstr "" 2306 2304 2307 #: plugins/tags/_admin.php:121 plugins/tags/_public.php:373 2305 #: plugins/tags/_admin.php:168 2306 msgid "Enter tags separated by coma" 2307 msgstr "" 2308 2309 #: plugins/tags/_admin.php:169 plugins/tags/_admin.php:283 2310 msgid "used in %e - frequency %p%" 2311 msgstr "" 2312 2313 #: plugins/tags/_admin.php:170 plugins/tags/_admin.php:284 2314 #: plugins/tags/tags.php:58 2315 msgid "entry" 2316 msgstr "" 2317 2318 #: plugins/tags/_admin.php:171 plugins/tags/_admin.php:285 2319 #: plugins/tags/tags.php:58 2320 msgid "entries" 2321 msgstr "" 2322 2323 #: plugins/tags/_admin.php:179 2324 msgid "Tags to add:" 2325 msgstr "" 2326 2327 #: plugins/tags/_admin.php:224 2328 msgid "No tags for selected entries" 2329 msgstr "" 2330 2331 #: plugins/tags/_admin.php:231 2332 msgid "Remove selected tags from this selection" 2333 msgstr "" 2334 2335 #: plugins/tags/_admin.php:238 2336 msgid "Following tags have been found in selected entries:" 2337 msgstr "" 2338 2339 #: plugins/tags/_admin.php:281 plugins/tags/_public.php:373 2308 2340 #: plugins/tags/tag_posts.php:116 2309 2341 msgid "Tag" 2310 2342 msgstr "" 2311 2343 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 2359 2345 msgid "Short" 2360 2346 msgstr "" 2361 2347 2362 #: plugins/tags/_admin.php:3 182348 #: plugins/tags/_admin.php:305 2363 2349 msgid "Extended" 2364 2350 msgstr "" 2365 2351 2366 #: plugins/tags/_admin.php:3 232352 #: plugins/tags/_admin.php:310 2367 2353 msgid "Tags list format:" 2368 2354 msgstr "" -
locales/en/plugins.po
r1989 r2047 883 883 msgstr "" 884 884 885 msgid "Export functions are in the page %s." 886 msgstr "" 887 885 888 #, php-format 886 889 msgid "This will import your WordPress content as new content in the current blog: %s." … … 959 962 msgstr "" 960 963 964 msgid "Tools to maintain the performance of your blogs." 965 msgstr "" 966 961 967 msgid "Backup" 962 968 msgstr "" 963 969 970 msgid "Tools to back up your content." 971 msgstr "" 972 973 msgid "Development" 974 msgstr "" 975 976 msgid "Tools to assist in development of plugins, themes and core." 977 msgstr "" 978 964 979 msgid "Optimize" 965 980 msgstr "" … … 974 989 msgstr "" 975 990 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" 991 msgid "Current blog" 992 msgstr "" 993 994 msgid "All blogs" 995 msgstr "" 996 997 msgid "Translations" 998 msgstr "" 999 1000 msgid "Maintain translations" 983 1001 msgstr "" 984 1002 … … 991 1009 992 1010 #, php-format 993 msgid _plural"There are %s tasks to execute."1011 msgid "There are %s tasks to execute." 994 1012 msgstr "" 995 1013 … … 1024 1042 msgstr "" 1025 1043 1044 msgid "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." 1045 msgstr "" 1046 1026 1047 msgid "Count again comments and trackbacks" 1027 1048 msgstr "" … … 1033 1054 msgstr "" 1034 1055 1056 msgid "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)." 1057 msgstr "" 1058 1035 1059 msgid "Search engine index" 1036 1060 msgstr "" … … 1052 1076 msgstr "" 1053 1077 1078 msgid "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." 1079 msgstr "" 1080 1054 1081 msgid "Index all entries for search engine" 1055 1082 msgstr "" … … 1064 1091 msgstr "" 1065 1092 1093 msgid "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." 1094 msgstr "" 1095 1096 msgid "Entries metadata" 1097 msgstr "" 1098 1099 msgid "Synchronize entries metadata" 1100 msgstr "" 1101 1102 msgid "Synchronize entry %d to %d." 1103 msgstr "" 1104 1105 msgid "Entries metadata synchronize done." 1106 msgstr "" 1107 1108 msgid "Failed to synchronize entries metadata." 1109 msgstr "" 1110 1111 msgid "Synchronize all entries metadata could be useful after importing content in your blog or do bad operation on database tables." 1112 msgstr "" 1113 1066 1114 msgid "Delete all logs" 1067 1115 msgstr "" … … 1073 1121 msgstr "" 1074 1122 1123 msgid "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." 1124 msgstr "" 1125 1075 1126 msgid "optimize tables" 1076 1127 msgstr "" … … 1082 1133 msgstr "" 1083 1134 1135 msgid "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." 1136 msgstr "" 1137 1084 1138 msgid "Download media folder of current blog" 1085 1139 msgstr "" 1086 1140 1141 msgid "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." 1142 msgstr "" 1143 1087 1144 msgid "Download active theme of current blog" 1088 1145 msgstr "" 1089 1146 1147 msgid "It may be useful to backup the active theme before any change or update. This compress theme folder into a single zip file." 1148 msgstr "" 1149 1090 1150 msgid "Every week" 1091 1151 msgstr "" … … 1124 1184 msgstr "" 1125 1185 1186 msgid "Activation" 1187 msgstr "" 1188 1126 1189 msgid "Display alert messages on late tasks" 1127 1190 msgstr "" 1128 1191 1192 msgid "You can place list of late tasks on your %s." 1193 msgstr "" 1194 1195 msgid "Frequency" 1196 msgstr "Périodicité" 1197 1198 msgid "Use one recall time for all tasks" 1199 msgstr "" 1200 1129 1201 msgid "Recall time for all tasks:" 1130 1202 msgstr "" 1131 1203 1204 msgid "Use one recall time per task" 1205 msgstr "" 1206 1132 1207 msgid "Recall time per task:" 1133 1208 msgstr "" 1134 1209 1135 msgid " You can place list of late tasks on your %s."1210 msgid "Save this settings" 1136 1211 msgstr "" 1137 1212 -
locales/fr/main.po
r2022 r2057 11 11 "Project-Id-Version: Dotclear\n" 12 12 "Report-Msgid-Bugs-To: \n" 13 "POT-Creation-Date: 2013-09-2 2 16:57+0000\n"13 "POT-Creation-Date: 2013-09-24 07:51+0000\n" 14 14 "PO-Revision-Date: 2012-08-13 07:13+0000\n" 15 15 "Last-Translator: xave <xave@dotclear.net>\n" … … 21 21 "Plural-Forms: nplurals=2; plural=(n > 1)\n" 22 22 23 msgid "medium" 24 msgstr "moyenne" 25 26 msgid "small" 27 msgstr "petite" 28 29 msgid "thumbnail" 30 msgstr "vignettes" 31 32 msgid "square" 33 msgstr "carrée" 34 35 msgid "Manage every blog configuration directive" 36 msgstr "" 37 38 msgid "Akismet interface for Dotclear" 39 msgstr "" 40 41 msgid "Generic antispam plugin for Dotclear" 42 msgstr "" 43 44 msgid "Manage post attachments" 45 msgstr "Gérer les annexes" 46 47 msgid "Manage your blogroll" 48 msgstr "Gérez votre listes de liens" 49 50 msgid "Configure your Blowup Theme" 51 msgstr "Configurer votre thème Blowup" 52 53 msgid "Install and update your plugins live from DotAddict.org" 54 msgstr "" 55 56 msgid "Trackback validity check" 57 msgstr "" 58 59 msgid "Import and Export your blog" 60 msgstr "" 61 62 msgid "Maintain your installation" 63 msgstr "Maintenir votre installation" 64 65 msgid "Serve entries as simple web pages" 66 msgstr "" 67 68 msgid "Ping services" 69 msgstr "" 70 71 msgid "Simple menu for Dotclear" 72 msgstr "Menu simple sur Dotclear" 73 74 msgid "Tags for posts" 75 msgstr "" 76 77 msgid "Theme Editor" 78 msgstr "" 79 80 msgid "Manage every user preference directive" 81 msgstr "" 82 83 msgid "Widgets for your blog sidebars" 84 msgstr "" 85 86 msgid "Search engine form" 87 msgstr "Formulaire du moteur de recherche" 88 89 msgid "List of navigation links" 90 msgstr "Liste des liens de navigation" 91 92 msgid "List of selected entries" 93 msgstr "Entrées sélectionnées" 94 95 msgid "List of available languages" 96 msgstr "Langues disponibles" 97 98 msgid "List of categories" 99 msgstr "Liste des catégories du blog" 100 101 msgid "RSS or Atom feed subscription links" 102 msgstr "" 103 104 msgid "Last entries from feed" 105 msgstr "Derniers billets du flux" 106 107 msgid "Simple text" 108 msgstr "" 109 110 msgid "List of last entries published" 111 msgstr "Derniers billets publiés" 112 113 msgid "List of last comments posted" 114 msgstr "Derniers commentaires postés" 115 116 msgid "Tags cloud" 117 msgstr "" 118 119 msgid "List of published pages" 120 msgstr "Liste des pages publiées" 121 122 msgid "Blogroll list" 123 msgstr "Liste des liens" 124 125 msgid "List of simple menu items" 126 msgstr "" 127 128 msgid "Posts" 129 msgstr "Billets" 130 131 msgid "Pages" 132 msgstr "Pages" 133 134 msgid "New entry" 135 msgstr "Nouveau billet" 136 137 msgid "Entries" 138 msgstr "Billets" 139 140 msgid "Comments" 141 msgstr "Commentaires" 142 143 msgid "My preferences" 144 msgstr "Mes préférences" 145 146 msgid "Blog settings" 147 msgstr "Paramètres du blog" 148 149 msgid "Blog appearance" 150 msgstr "Apparence du blog" 151 152 msgid "Blogroll" 153 msgstr "Liste de liens" 154 23 155 msgid "Dotclear has been upgraded." 24 156 msgstr "Dotclear a été mis à jour." … … 257 389 msgstr "Code langue invalide" 258 390 259 msgid "Blog settings"260 msgstr "Paramètres du blog"261 262 391 msgid "Warning: except for special configurations, it is generally advised to have a trailing \"/\" in your blog URL in PATH_INFO mode." 263 392 msgstr "Attention : sauf cas particulier, il est généralement conseillé de terminer l'URL de votre blog par \"/\" en mode PATH_INFO." … … 348 477 349 478 msgid "No limit: leave blank." 350 msgstr " "479 msgstr "Aucune limite : laisser vide." 351 480 352 481 msgid "Wiki syntax for comments" … … 372 501 msgstr "Format des dates :" 373 502 503 msgid "Pattern of date" 504 msgstr "" 505 506 msgid "Sample:" 507 msgstr "" 508 374 509 msgid "Time format:" 375 510 msgstr "Format des heures :" 376 511 512 msgid "Pattern of time" 513 msgstr "" 514 377 515 msgid "Display smilies on entries and comments" 378 516 msgstr "Afficher des émoticônes dans les billets, pages et commentaires" … … 397 535 398 536 msgid "Please note that if you change current settings bellow, they will now apply to all new images in the media manager." 399 msgstr " "537 msgstr "Veuillez noter que si vous changez ces réglages, ils s'appliqueront désormais à toutes les nouvelles images ajoutées à la médiathèque." 400 538 401 539 msgid "Be carefull if you share it with other blogs in your installation." 402 msgstr " "540 msgstr "Soyez prudent si vous plusieurs blogs de l'installation partagent la même médiathèque." 403 541 404 542 msgid "Generated image sizes (in pixels)" … … 502 640 msgid "Configure theme" 503 641 msgstr "Configurer le thème" 504 505 msgid "Blog appearance"506 msgstr "Apparence du blog"507 642 508 643 msgid "Theme configuration" … … 885 1020 msgstr "%d commentaires" 886 1021 887 msgid "New entry"888 msgstr "Nouveau billet"889 890 msgid "My preferences"891 msgstr "Mes préférences"892 893 1022 msgid "Dotclear news" 894 1023 msgstr "Actualité de Dotclear" … … 1354 1483 #, php-format 1355 1484 msgid "Current settings for medias and images are defined in %s" 1356 msgstr " "1485 msgstr "Les réglages actuels pour les médias et les images sont définis sur le %s" 1357 1486 1358 1487 msgid "Blog parameters" … … 1369 1498 msgstr "Nom du répertoire :" 1370 1499 1371 #php-format 1500 # php-format 1501 #, php-format 1372 1502 msgid "Backup content of %s" 1373 1503 msgstr "Sauvegarder le contenu de %s" … … 1737 1867 msgstr "“%s”" 1738 1868 1739 msgid "Entries"1740 msgstr "Billets"1741 1742 1869 msgid "Entry has been successfully updated." 1743 1870 msgstr "Billet mis à jour avec succès." … … 1780 1907 1781 1908 msgid "Filing" 1782 msgstr " "1909 msgstr "Classement" 1783 1910 1784 1911 msgid "Selected entry" … … 1845 1972 msgstr "Mettre en indésirable" 1846 1973 1847 msgid "Comments"1848 msgstr "Commentaires"1849 1850 1974 msgid "Add a comment" 1851 1975 msgstr "Ajouter un commentaire" … … 2013 2137 msgstr "Si cette option est cochée, des champs numériques permettront d'indiquer la position des éléments." 2014 2138 2139 msgid "Number of media displayed per page:" 2140 msgstr "" 2141 2015 2142 msgid "Do not use standard favicon" 2016 2143 msgstr "Ne pas utiliser le favicon standard de Dotclear" … … 2372 2499 msgstr "Aucune entrée sélectionnée" 2373 2500 2374 msgid "Change category for entries"2375 msgstr "Changer la catégorie des billets"2501 msgid "Change category for this selection" 2502 msgstr "Changer la catégorie pour cette sélection" 2376 2503 2377 2504 msgid "Create a new category for the post(s)" … … 2381 2508 msgstr "Cet utilisateur n'existe pas" 2382 2509 2383 msgid "Change author for entries"2384 msgstr "Changer l'auteur de ces entrées"2510 msgid "Change author for this selection" 2511 msgstr "Changer l'auteur pour cette sélection" 2385 2512 2386 2513 msgid "New author (author ID):" 2387 2514 msgstr "Nouvel auteur (identifiant utilisateur) :" 2388 2515 2389 msgid "Change language for entries"2390 msgstr "Changer la langue de ce s entrées"2516 msgid "Change language for this selection" 2517 msgstr "Changer la langue de cette sélection" 2391 2518 2392 2519 msgid "Available" … … 2399 2526 msgstr "Langue du billet :" 2400 2527 2528 msgid "Users actions" 2529 msgstr "Actions sur les utilisateurs" 2530 2531 msgid "No User selected" 2532 msgstr "Aucun utilisateur sélectionné" 2533 2534 msgid "(no cat)" 2535 msgstr "(aucune)" 2536 2401 2537 msgid "Change blog" 2402 2538 msgstr "Changer de blog" … … 2798 2934 msgid "Languages" 2799 2935 msgstr "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 ""2821 2936 2822 2937 msgid "administrator" … … 3317 3432 #~ msgstr "Classement" 3318 3433 3319 #~ msgid "Users actions"3320 #~ msgstr "Actions sur les utilisateurs"3321 3322 #~ msgid "(no cat)"3323 #~ msgstr "(aucune)"3324 3325 3434 #~ msgid "Category where entries of deleted categories will be moved:" 3326 3435 #~ msgstr "Catégorie où seront déplacés les billets des catégories supprimées :" … … 3368 3477 #~ msgstr "Catégorie créée avec succès." 3369 3478 3370 #~ msgid "List of blog's categories"3371 #~ msgstr "Liste des catégories du blog"3372 3373 3479 #~ msgid "Remove a category" 3374 3480 #~ msgstr "Supprimer une catégorie" … … 3484 3590 #~ msgid "Those favorites are displayed when My Favorites list is empty." 3485 3591 #~ 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é"3489 3592 3490 3593 #~ msgid "Back to \"%s\"" -
locales/fr/plugins.po
r2022 r2057 11 11 "Project-Id-Version: Dotclear\n" 12 12 "Report-Msgid-Bugs-To: \n" 13 "POT-Creation-Date: 2013-09-2 2 16:57+0000\n"13 "POT-Creation-Date: 2013-09-24 07:51+0000\n" 14 14 "PO-Revision-Date: 2012-11-06 10:04+0100\n" 15 15 "Last-Translator: Franck Paul <carnet.franck.paul@gmail.com>\n" … … 22 22 "X-Generator: Poedit 1.5.4\n" 23 23 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 117 24 msgid "no" 118 25 msgstr "non" … … 612 519 613 520 msgid "Customization" 614 msgstr " "521 msgstr "Personnalisation" 615 522 616 523 msgid "General" … … 827 734 828 735 msgid "Updates are available" 829 msgstr " "736 msgstr "Des mises à jour sont disponibles" 830 737 831 738 #, php-format … … 1167 1074 1168 1075 msgid "Database export" 1169 msgstr "Export debase de données"1076 msgstr "Exporter la base de données" 1170 1077 1171 1078 msgid "Download database of current blog" … … 1178 1085 msgstr "Veuillez patientez…" 1179 1086 1087 #, php-format 1088 msgid "Export functions are in the page %s." 1089 msgstr "Les fonctions d'export sont dans la page de %s." 1090 1180 1091 msgid "Maintenance" 1181 1092 msgstr "Maintenance" … … 1184 1095 msgstr "Entretien" 1185 1096 1097 msgid "Tools to maintain the performance of your blogs." 1098 msgstr "Outils pour maintenir les performances de vos blogs." 1099 1186 1100 msgid "Backup" 1187 1101 msgstr "Sauvegarde" 1188 1102 1103 msgid "Tools to back up your content." 1104 msgstr "Outils de sauvegarde du contenu" 1105 1106 msgid "Development" 1107 msgstr "Développement" 1108 1109 msgid "Tools to assist in development of plugins, themes and core." 1110 msgstr "Outils pour aider au developpement de plugins, thèmes et au core." 1111 1189 1112 msgid "Optimize" 1190 1113 msgstr "Optimiser" … … 1199 1122 msgstr "Autre" 1200 1123 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)" 1124 msgid "Current blog" 1125 msgstr "Blog courant" 1126 1127 msgid "All blogs" 1128 msgstr "Tous les blogs" 1129 1130 msgid "Maintain translations" 1131 msgstr "Maintenir les traductions" 1132 1133 msgid "Translations" 1134 msgstr "Traductions" 1206 1135 1207 1136 #, php-format … … 1248 1177 msgstr "Impossible de vider le répertoire de cache des « templates »." 1249 1178 1179 msgid "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." 1180 msgstr "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 1250 1182 msgid "Count again comments and trackbacks" 1251 1183 msgstr "Recompter les commentaires et rétroliens" … … 1257 1189 msgstr "Impossible de recompter les commentaires et rétroliens." 1258 1190 1191 msgid "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)." 1192 msgstr "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 1259 1194 msgid "Search engine index" 1260 1195 msgstr "Index du moteur de recherche" … … 1276 1211 msgstr "Impossible d'indexer les commentaires." 1277 1212 1213 msgid "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." 1214 msgstr "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 1278 1216 msgid "Index all entries for search engine" 1279 1217 msgstr "Indexer tous les billets pour le moteur de recherche" … … 1289 1227 msgstr "Impossible d'indexer les billets." 1290 1228 1229 msgid "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." 1230 msgstr "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 1291 1232 msgid "Delete all logs" 1292 1233 msgstr "Supprimer tous les journaux (logs)" … … 1298 1239 msgstr "Impossible de supprimer les journaux." 1299 1240 1241 msgid "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." 1242 msgstr "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 1244 msgid "Entries metadata" 1245 msgstr "Métadonnées des billets" 1246 1247 msgid "Synchronize entries metadata" 1248 msgstr "Synchroniser les métadonnées des billets" 1249 1250 #, php-format 1251 msgid "Synchronize entry %d to %d." 1252 msgstr "Synchronisation des billets %d à %d." 1253 1254 msgid "Entries metadata synchronize done." 1255 msgstr "La synchronisation des métadonnées des billets a été effectuée." 1256 1257 msgid "Failed to synchronize entries metadata." 1258 msgstr "Impossible de synchroniser les métadonnées des billets." 1259 1260 msgid "Synchronize all entries metadata could be useful after importing content in your blog or do bad operation on database tables." 1261 msgstr "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 1263 msgid "Optimise database" 1264 msgstr "Optimise la base de données" 1265 1300 1266 msgid "optimize tables" 1301 1267 msgstr "Optimiser les tables" … … 1307 1273 msgstr "Impossible d'optimiser les tables." 1308 1274 1275 msgid "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." 1276 msgstr "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 1309 1278 msgid "Download media folder of current blog" 1310 1279 msgstr "Télécharger la médiathèque du blog courant" 1311 1280 1281 msgid "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." 1282 msgstr "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 1312 1284 msgid "Download active theme of current blog" 1313 1285 msgstr "Télécharger le theme actif du blog courant" 1314 1286 1287 msgid "It may be useful to backup the active theme before any change or update. This compress theme folder into a single zip file." 1288 msgstr "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 1290 msgid "Never" 1291 msgstr "Jamais" 1292 1315 1293 msgid "Every week" 1316 1294 msgstr "Chaque semaine" … … 1325 1303 msgstr "Tous les deux mois" 1326 1304 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 1333 1305 msgid "You have not sufficient permissions to view this page." 1334 1306 msgstr "Vous n'avez pas les autorisations suffisantes pour accéder à cette page." … … 1349 1321 msgstr "Cela peut prendre un certain temps." 1350 1322 1351 msgid " Settings"1352 msgstr " Paramètres"1323 msgid "Alert settings" 1324 msgstr "Réglage des alertes" 1353 1325 1354 1326 msgid "Activation" … … 1365 1337 msgstr "Périodicité" 1366 1338 1339 msgid "Use one recall time for all tasks" 1340 msgstr "Utiliser le même délai de rappel pour toutes les tâches" 1341 1367 1342 msgid "Recall time for all tasks:" 1368 1343 msgstr "Délai de rappel pour toutes les tâches :" 1369 1344 1370 msgid " Recall time per task:"1371 msgstr " Délai de rappel par tâche :"1345 msgid "Use one recall time per task" 1346 msgstr "Utiliser un délai de rappel différent pour chaque tâche" 1372 1347 1373 1348 msgid "Save this settings" … … 1412 1387 msgstr "Date de publication" 1413 1388 1389 msgid "Pages actions" 1390 msgstr "Action sur les pages" 1391 1392 msgid "Back to pages list" 1393 msgstr "Retour à la liste des pages" 1394 1414 1395 msgid "No page" 1415 1396 msgstr "Aucune page" … … 1425 1406 1426 1407 msgid "Selected pages have been successfully updated." 1427 msgstr "Les pages sélectionnées ont été modifié seavec succès."1408 msgstr "Les pages sélectionnées ont été modifiées avec succès." 1428 1409 1429 1410 msgid "Selected pages have been successfully deleted." … … 1439 1420 msgstr "Action sur les pages sélectionnées :" 1440 1421 1422 msgid "To rearrange pages order, change number at the begining of the line, then click on “Save pages order” button." 1423 msgstr "" 1424 1425 msgid "To rearrange pages order, move items by drag and drop, then click on “Save pages order” button." 1426 msgstr "" 1427 1428 msgid "Save pages order" 1429 msgstr "Sauvegarder l'ordre des pages" 1430 1441 1431 msgid "This page does not exist." 1442 1432 msgstr "Cette page n'existe pas." … … 1628 1618 msgstr "Aucun item de menu pour l'instant." 1629 1619 1620 msgid "Add tags" 1621 msgstr "Ajouter des mots-clés" 1622 1623 msgid "Remove tags" 1624 msgstr "Retirer des mots-clés" 1625 1626 msgid "Add tags to this selection" 1627 msgstr "Ajouter des mots-clés à cette sélection" 1628 1630 1629 #, php-format 1631 1630 msgid "Are you sure you want to remove this %s?" … … 1642 1641 msgstr "tous" 1643 1642 1643 msgid "Enter tags separated by coma" 1644 msgstr "Entrez les mots-clés séparés par des virgules" 1645 1646 msgid "used in %e - frequency %p%" 1647 msgstr "utilisé dans %e - fréquence %p%" 1648 1649 msgid "entry" 1650 msgstr "billet" 1651 1652 msgid "entries" 1653 msgstr "billets" 1654 1655 msgid "Tags to add:" 1656 msgstr "Mots-clés à ajouter :" 1657 1658 msgid "No tags for selected entries" 1659 msgstr "Aucun mot-clé pour les billets sélectionnés" 1660 1661 msgid "Remove selected tags from this selection" 1662 msgstr "Retirer les mots-clés de cette sélection" 1663 1664 msgid "Following tags have been found in selected entries:" 1665 msgstr "Les mots-clés suivants ont été trouvés pour les billets sélectionnés :" 1666 1644 1667 msgid "Tag" 1645 1668 msgstr "Mot-clé" 1646 1669 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 1680 1670 msgid "Short" 1681 1671 msgstr "Court" … … 1998 1988 msgstr "Glisser les widgets ici pour les retirer du volet." 1999 1989 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 2000 2092 #~ msgid "Help for this page" 2001 2093 #~ msgstr "Aide pour cette page" … … 2067 2159 #~ msgstr "Cela importera un flux (RSS ou ATOM) comme un nouveau contenu dans le blog courant : %s." 2068 2160 2069 #~ msgid "Optimize database room"2070 #~ msgstr "Optimise la place occupée par la base de données"2071 2072 2161 #~ msgid "Counters" 2073 2162 #~ msgstr "Compteurs" 2074 2163 2075 2164 #~ msgid "Vacuum logs" 2076 #~ msgstr "Vidage sdes journaux"2165 #~ msgstr "Vidage des journaux" 2077 2166 2078 2167 #~ msgid "Empty directory" … … 2091 2180 #~ msgstr "page précédente" 2092 2181 2093 #~ msgid "Page password"2094 #~ msgstr "Mot de passe de la page"2095 2096 2182 #~ msgid "Hide" 2097 2183 #~ msgstr "Masquer" -
plugins/buildtools/_admin.php
r1977 r2044 11 11 # -- END LICENSE BLOCK ----------------------------------------- 12 12 if (!defined('DC_CONTEXT_ADMIN')) { return; } 13 $core->addBehavior('dcMaintenance Register', array('dcBuildTools', 'maintenanceAdmin'));13 $core->addBehavior('dcMaintenanceInit', array('dcBuildTools', 'maintenanceAdmin')); 14 14 15 15 class dcBuildTools 16 16 { 17 public static function maintenanceAdmin($ core, $tasks, $groups, $tabs) {18 $ tasks[] = 'dcMaintenanceBuildtools';17 public static function maintenanceAdmin($maintenance) { 18 $maintenance->addTask('dcMaintenanceBuildtools'); 19 19 } 20 20 } -
plugins/buildtools/class.dc.maintenance.buildtools.php
r1978 r2044 4 4 class dcMaintenanceBuildtools extends dcMaintenanceTask 5 5 { 6 protected $group = 'other'; 6 protected $tab = 'dev'; 7 protected $group = 'l10n'; 7 8 8 9 protected function init() … … 11 12 $this->success = __('fake l10n file generated.'); 12 13 $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.'); 13 15 } 14 16 -
plugins/dclegacy/_admin.php
r1905 r2061 13 13 14 14 $GLOBALS['core']->addBehavior('adminPostsActionsPage',array('dcLegacyPosts','adminPostsActionsPage')); 15 $GLOBALS['core']->addBehavior('adminPagesActionsPage',array('dcLegacyPages','adminPagesActionsPage')); 15 16 $GLOBALS['core']->addBehavior('adminCommentsActionsPage',array('dcLegacyComments','adminCommentsActionsPage')); 16 17 … … 69 70 } 70 71 } 72 /* Handle deprecated behaviors : 73 * adminPagesActionsCombo 74 * adminPagesActionsHeaders 75 * adminPagesActionsContent 76 */ 77 class 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 33 33 )); 34 34 } 35 ?> 35 36 $core->addBehavior('dcMaintenanceInit', 'ieMaintenanceInit'); 37 38 function ieMaintenanceInit($maintenance) 39 { 40 $maintenance 41 ->addTask('ieMaintenanceExportblog') 42 ->addTask('ieMaintenanceExportfull') 43 ; 44 } -
plugins/importExport/_prepend.php
r1955 r2044 45 45 $__autoload['ieMaintenanceExportblog'] = dirname(__FILE__).'/inc/lib.ie.maintenance.php'; 46 46 $__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 95 95 )); 96 96 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']); 100 99 } 100 101 echo 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>'; 101 106 102 107 echo ' -
plugins/maintenance/_admin.php
r1989 r2047 22 22 23 23 // Admin behaviors 24 $core->addBehavior('dcMaintenance Register', array('dcMaintenanceAdmin', 'dcMaintenanceRegister'));24 $core->addBehavior('dcMaintenanceInit', array('dcMaintenanceAdmin', 'dcMaintenanceInit')); 25 25 $core->addBehavior('adminDashboardFavs', array('dcMaintenanceAdmin', 'adminDashboardFavs')); 26 26 $core->addBehavior('adminDashboardFavsIcon', array('dcMaintenanceAdmin', 'adminDashboardFavsIcon')); … … 28 28 $core->addBehavior('adminDashboardOptionsForm', array('dcMaintenanceAdmin', 'adminDashboardOptionsForm')); 29 29 $core->addBehavior('adminAfterDashboardOptionsUpdate', array('dcMaintenanceAdmin', 'adminAfterDashboardOptionsUpdate')); 30 $core->addBehavior('adminPageHelpBlock', array('dcMaintenanceAdmin', 'adminPageHelpBlock')); 30 31 31 32 /** … … 41 42 * Register default tasks. 42 43 * 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 ; 68 72 } 69 73 … … 218 222 $core->auth->user_prefs->maintenance->put('dashboard_item', !empty($_POST['maintenance_dashboard_item']), 'boolean'); 219 223 } 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 } 220 295 } -
plugins/maintenance/_prepend.php
r1955 r2044 15 15 16 16 $__autoload['dcMaintenance'] = dirname(__FILE__).'/inc/class.dc.maintenance.php'; 17 $__autoload['dcMaintenanceDescriptor'] = dirname(__FILE__).'/inc/class.dc.maintenance.descriptor.php'; 17 18 $__autoload['dcMaintenanceTask'] = dirname(__FILE__).'/inc/class.dc.maintenance.task.php'; 18 19 $__autoload['dcMaintenanceRest'] = dirname(__FILE__).'/_services.php'; 20 19 21 20 22 $__autoload['dcMaintenanceCache'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.cache.php'; … … 22 24 $__autoload['dcMaintenanceIndexcomments'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.indexcomments.php'; 23 25 $__autoload['dcMaintenanceIndexposts'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.indexposts.php'; 26 $__autoload['dcMaintenanceSynchpostsmeta'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.synchpostsmeta.php'; 24 27 $__autoload['dcMaintenanceLogs'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.logs.php'; 25 28 $__autoload['dcMaintenanceVacuum'] = dirname(__FILE__).'/inc/tasks/class.dc.maintenance.vacuum.php'; -
plugins/maintenance/inc/class.dc.maintenance.php
r1989 r2044 26 26 { 27 27 public $core; 28 public $p_url = 'plugin.php?p=maintenance'; 29 28 30 private $tasks = array(); 29 31 private $tabs = array(); … … 34 36 * Constructor. 35 37 * 36 * Here you register tasks and groups for tasks.37 *38 38 * @param core <b>dcCore</b> dcCore instance 39 39 */ … … 41 41 { 42 42 $this->core = $core; 43 44 $tasks = new ArrayObject();45 $tabs = new ArrayObject();46 $groups = new ArrayObject();47 43 $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. 101 79 * 102 80 * @param id <b>string</b> Tab ID 103 * @return <b> mixed</b> tab name or null if not exists81 * @return <b>object</b> dcMaintenanceDescriptor of a tab 104 82 */ 105 83 public function getTab($id) … … 117 95 return $this->tabs; 118 96 } 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. 122 119 * 123 120 * @param id <b>string</b> Group ID 124 * @return <b> mixed</b> Group name or null if not exists121 * @return <b>object</b> dcMaintenanceDescriptor of a group 125 122 */ 126 123 public function getGroup($id) … … 132 129 * Get groups. 133 130 * 134 * @return <b>array</b> Array of groups ID and name131 * @return <b>array</b> Array of groups ID and descriptor 135 132 */ 136 133 public function getGroups() 137 134 { 138 135 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; 139 156 } 140 157 … … 174 191 return $res; 175 192 } 176 193 //@} 194 195 196 /// @name Log methods 197 //@{ 177 198 /** 178 199 * Set log for a task. … … 268 289 return $this->logs; 269 290 } 291 //@} 270 292 } -
plugins/maintenance/inc/class.dc.maintenance.task.php
r1989 r2044 33 33 protected $id; 34 34 protected $name; 35 protected $description; 35 36 protected $tab = 'maintenance'; 36 37 protected $group = 'other'; … … 50 51 * @param p_url <b>string</b> Maintenance plugin url 51 52 */ 52 public function __construct($maintenance , $p_url)53 public function __construct($maintenance) 53 54 { 54 55 $this->maintenance = $maintenance; … … 61 62 } 62 63 63 $this->p_url = $ p_url;64 $this->p_url = $maintenance->p_url; 64 65 $this->id = get_class($this); 65 66 … … 191 192 192 193 /** 194 * Get task description. 195 * 196 * @return <b>string</b> Description 197 */ 198 public function description() 199 { 200 return $this->description; 201 } 202 203 /** 193 204 * Get task tab. 194 205 * … … 322 333 $this->maintenance->setLog($this->id); 323 334 } 335 336 public function help() 337 { 338 return null; 339 } 324 340 } -
plugins/maintenance/inc/tasks/class.dc.maintenance.cache.php
r1925 r2044 21 21 $this->success = __('Templates cache directory emptied.'); 22 22 $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."); 23 25 } 24 26 -
plugins/maintenance/inc/tasks/class.dc.maintenance.countcomments.php
r1984 r2044 21 21 $this->success = __('Comments and trackback counted.'); 22 22 $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).'); 23 25 } 24 26 -
plugins/maintenance/inc/tasks/class.dc.maintenance.indexcomments.php
r1989 r2044 27 27 $this->success = __('Comments index done.'); 28 28 $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.'); 29 31 } 30 32 -
plugins/maintenance/inc/tasks/class.dc.maintenance.indexposts.php
r1989 r2044 27 27 $this->success = __('Entries index done.'); 28 28 $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.'); 29 31 } 30 32 -
plugins/maintenance/inc/tasks/class.dc.maintenance.logs.php
r1925 r2044 21 21 $this->success = __('Logs deleted.'); 22 22 $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.'); 23 25 } 24 26 -
plugins/maintenance/inc/tasks/class.dc.maintenance.vacuum.php
r1984 r2044 18 18 protected function init() 19 19 { 20 $this->name = __('Optimise database'); 20 21 $this->task = __('optimize tables'); 21 22 $this->success = __('Optimization successful.'); 22 23 $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."); 23 26 } 24 27 -
plugins/maintenance/inc/tasks/class.dc.maintenance.zipmedia.php
r1989 r2044 22 22 { 23 23 $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.'); 24 26 } 25 27 -
plugins/maintenance/inc/tasks/class.dc.maintenance.ziptheme.php
r1989 r2044 22 22 { 23 23 $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.'); 24 26 } 25 27 -
plugins/maintenance/index.php
r2017 r2051 43 43 44 44 foreach($tasks as $t) { 45 if (!empty($_POST['settings_recall_t ime']) && $_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']; 47 47 } 48 48 else { 49 $ts = $_POST['settings_recall_time'];49 $ts = empty($_POST['settings_ts_'.$t->id()]) ? 0 : $_POST['settings_ts_'.$t->id()]; 50 50 } 51 51 $core->blog->settings->maintenance->put( … … 59 59 } 60 60 61 http::redirect($p_url.'&done=1&tab='.$tab );61 http::redirect($p_url.'&done=1&tab='.$tab.'#'.$tab); 62 62 } 63 63 catch(Exception $e) { … … 88 88 if (true === $code) { 89 89 $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); 91 91 } 92 92 } … … 99 99 100 100 $combo_ts = array( 101 __('Never') => 0, 101 102 __('Every week') => 604800, 102 103 __('Every two weeks') => 1209600, … … 105 106 ); 106 107 107 $full_combo_ts = array_merge(array(108 __('Use different periods for each task') => 'seperate'),109 $combo_ts110 );111 112 $task_combo_ts = array_merge(array(113 __('Never') => 0),114 $combo_ts115 );116 117 108 // Display page 118 109 … … 120 111 <title>'.__('Maintenance').'</title>'. 121 112 dcPage::jsPageTabs($tab). 122 dcPage::jsLoad('index.php?pf=maintenance/js/settings.js'); ;113 dcPage::jsLoad('index.php?pf=maintenance/js/settings.js'); 123 114 124 115 if ($task && $task->ajax()) { … … 142 133 array( 143 134 __('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>' => '' 146 136 ) 147 137 ). … … 179 169 echo 180 170 '<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>'. 181 174 '<h3>'.html::escapeHTML($task->name()).'</h3>'. 182 175 '<form action="'.$p_url.'" method="post">'. … … 191 184 '</p>'. 192 185 '</form>'. 193 '<p class="step-back">'.194 '<a class="back" href="'.$p_url.'&tab='.$task->tab().'">'.__('Back').'</a>'.195 '</p>'.196 186 '</div>'; 197 187 } … … 211 201 // Simple task (with only a button to start it) 212 202 213 foreach($maintenance->getTabs() as $tab_ id => $tab_name)203 foreach($maintenance->getTabs() as $tab_obj) 214 204 { 215 205 $res_group = ''; 216 foreach($maintenance->getGroups() as $group_ id => $group_name)206 foreach($maintenance->getGroups() as $group_obj) 217 207 { 218 208 $res_task = ''; 219 209 foreach($tasks as $t) 220 210 { 221 if ($t->group() != $group_id || $t->tab() != $tab_id) { 211 if ($t->group() != $group_obj->id() 212 || $t->tab() != $tab_obj->id()) { 222 213 continue; 223 214 } 224 215 225 $res_task .= 216 $res_task .= 226 217 '<p>'.form::radio(array('task', $t->id()), $t->id()).' '. 227 218 '<label class="classic" for="'.$t->id().'">'. … … 254 245 $res_group .= 255 246 '<div class="fieldset">'. 256 '<h4 id="'.$group_ id.'">'.$group_name.'</h4>'.247 '<h4 id="'.$group_obj->id().'">'.$group_obj->name().'</h4>'. 257 248 $res_task. 258 249 '</div>'; … … 262 253 if (!empty($res_group)) { 263 254 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>' : ''). 266 258 '<form action="'.$p_url.'" method="post">'. 267 259 $res_group. 268 260 '<p><input type="submit" value="'.__('Execute task').'" /> '. 269 form::hidden(array('tab'), $tab_ id).261 form::hidden(array('tab'), $tab_obj->id()). 270 262 $core->formNonce().'</p>'. 271 263 '<p class="form-note info">'.__('This may take a very long time.').'</p>'. … … 299 291 300 292 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>'. 303 295 '<form action="'.$p_url.'" method="post">'. 304 296 … … 311 303 __('You can place list of late tasks on your %s.'), 312 304 '<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'). 319 315 '</p>'. 320 316 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>'; 322 320 323 321 foreach($tasks as $t) … … 326 324 '<div class="two-boxes">'. 327 325 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'). 330 328 '</p>'. 331 329 … … 334 332 335 333 echo 336 '<p ><input type="submit" value="'.__('Save this settings').'" /> '.334 '<p class="field wide"><input type="submit" value="'.__('Save this settings').'" /> '. 337 335 form::hidden(array('tab'), 'settings'). 338 336 form::hidden(array('settings'), 1). … … 342 340 } 343 341 344 dcPage::helpBlock('maintenance' );342 dcPage::helpBlock('maintenance', 'maintenancetasks'); 345 343 346 344 echo '</body></html>'; -
plugins/maintenance/js/settings.js
r1984 r2044 1 1 $(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'){ 6 11 $('.recall-per-task').removeAttr('disabled'); 7 }else{ 8 $('.recall-per-task').attr('disabled','disabled'); 12 $('.recall-for-all').attr('disabled','disabled'); 9 13 } 10 14 }); -
plugins/maintenance/locales/en/help/maintenance.html
r1802 r2044 6 6 <body> 7 7 8 <h4>Settings</h4> 9 8 10 <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> 14 15 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> 37 19 </dl> 38 20 </body> -
plugins/maintenance/locales/fr/help/maintenance.html
r1956 r2050 6 6 <body> 7 7 8 <h4> Entretien</h4>8 <h4>Réglage des alertes</h4> 9 9 10 10 <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 : dans « Mes préférences », des options complémentaires permettent d'afficher également ces messages 15 sur le tableau de bord.</p></dd> 18 16 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 :</strong> permet d'indexer les billets.</li> 31 <li><strong>Indexer tous les commentaires :</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 : 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 « Utiliser le même délai pour toutes les tâches » ou différencié pour chacune d'elles.</p></dd> 49 20 </dl> 50 21 </body> -
plugins/pages/_admin.php
r1891 r2060 49 49 50 50 $_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', 52 52 $core->auth->check('contentadmin,pages',$core->blog->id)); 53 53 -
plugins/pages/_prepend.php
r1694 r2055 12 12 if (!defined('DC_RC_PATH')) { return; } 13 13 14 global $core; 14 global $core, $__autoload; 15 16 $__autoload['dcPagesActionsPage'] = dirname(__FILE__).'/class.actionpage.php'; 17 $__autoload['adminPageList'] = dirname(__FILE__).'/class.listpage.php'; 15 18 16 19 $core->url->register('pages','pages','^pages/(.+)$',array('urlPages','pages')); -
plugins/pages/list.js
r1884 r2058 158 158 $("#pageslist tr td input.position").hide(); 159 159 $("#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 }); 160 186 }); -
plugins/pages/list.php
r2002 r2056 12 12 if (!defined('DC_CONTEXT_ADMIN')) { return; } 13 13 dcPage::check('pages,contentadmin'); 14 15 /* Pager class16 -------------------------------------------------------- */17 class adminPageList extends adminGenericList18 {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 else26 {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 }123 14 124 15 /* Getting pages … … 147 38 } 148 39 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-- adminBeforePostDelete161 $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 reordering181 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 owner196 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 212 40 # Actions combo box 213 41 214 42 $pages_actions_page = new dcPagesActionsPage($core,'plugin.php',array('p'=>'pages')); 215 43 216 $pages_actions_page->process(); 44 if (!$pages_actions_page->process()) { 217 45 218 46 … … 228 56 <?php 229 57 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 231 64 ?> 232 65 <script type="text/javascript"> … … 271 104 form::hidden(array('post_type'),'page'). 272 105 form::hidden(array('p'),'pages'). 106 form::hidden(array('act'),'list'). 273 107 '</div>'. 274 108 $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"/>'. 277 114 '</form>'); 278 115 } … … 281 118 </body> 282 119 </html> 120 <?php 121 } 122 ?> -
plugins/tags/_admin.php
r1874 r2055 24 24 25 25 $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')); 31 28 32 29 $core->addBehavior('adminPreferencesForm',array('tagsBehaviors','adminUserForm')); … … 98 95 } 99 96 } 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&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 100 260 } 101 261 … … 129 289 } 130 290 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 return140 '<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&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 try175 {176 177 $meta =& $GLOBALS['core']->meta;178 $tags = $meta->splitMetaValues($_POST['new_tags']);179 180 while ($posts->fetch())181 {182 # Get tags for post183 $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 try208 {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 echo281 '<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 echo296 '<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 304 291 public static function adminUserForm($args) 305 292 { -
tests/functional/spec/page_tabs.js
r2010 r2054 9 9 expect($('.part-tabs')).not.toExist(); 10 10 11 $.pageTabs('user- options');12 expect($('#part-user-options')). toBeVisible();11 $.pageTabs('user-favorites'); 12 expect($('#part-user-options')).not.toBeVisible(); 13 13 expect($('#part-user-profile')).not.toBeVisible(); 14 expect($('#part-user-favorites')). not.toBeVisible();14 expect($('#part-user-favorites')).toBeVisible(); 15 15 16 16 expect($('.part-tabs')).toExist(); … … 18 18 expect($('.part-tabs ul li#part-tabs-user-profile')).toExist(); 19 19 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'); 21 21 }); 22 22
Note: See TracChangeset
for help on using the changeset viewer.