Changeset 1529:9f6e5c3c8344
- Timestamp:
- 08/23/13 10:41:38 (11 years ago)
- Branch:
- default
- Children:
- 1530:18df991c4c1a, 1531:18a9e84c04e3, 1641:ae5dc7a055e1, 1885:d4803b6eba12
- Parents:
- 1528:41b40915bb82 (diff), 1515:03b3235091cf (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - Files:
-
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
admin/index.php
r1488 r1529 121 121 $__dashboard_items = new ArrayObject(array(new ArrayObject,new ArrayObject)); 122 122 123 # Documentation links124 123 $dashboardItem = 0; 125 if ($core->auth->user_prefs->dashboard->doclinks) {126 if (!empty($__resources['doc']))127 {128 $doc_links = '<h3>'.__('Documentation and support').'</h3><ul>';129 130 foreach ($__resources['doc'] as $k => $v) {131 $doc_links .= '<li><a href="'.$v.'" title="'.$k.' '.__('(external link)').'">'.$k.'</a></li>';132 }133 134 $doc_links .= '</ul>';135 $__dashboard_items[$dashboardItem][] = $doc_links;136 $dashboardItem++;137 }138 }139 124 140 125 if ($core->auth->user_prefs->dashboard->dcnews) { … … 180 165 } 181 166 167 # Documentation links 168 if ($core->auth->user_prefs->dashboard->doclinks) { 169 if (!empty($__resources['doc'])) 170 { 171 $doc_links = '<h3>'.__('Documentation and support').'</h3><ul>'; 172 173 foreach ($__resources['doc'] as $k => $v) { 174 $doc_links .= '<li><a href="'.$v.'" title="'.$k.' '.__('(external link)').'">'.$k.'</a></li>'; 175 } 176 177 $doc_links .= '</ul>'; 178 $__dashboard_items[$dashboardItem][] = $doc_links; 179 $dashboardItem++; 180 } 181 } 182 182 183 $core->callBehavior('adminDashboardItems', $core, $__dashboard_items); 183 184 … … 193 194 dcPage::jsLoad('js/_index.js'). 194 195 # --BEHAVIOR-- adminDashboardHeaders 195 $core->callBehavior('adminDashboardHeaders') 196 $core->callBehavior('adminDashboardHeaders'), 197 dcPage::breadcrumb( 198 array( 199 '<span class="page-title">'.__('Dashboard').' : '.html::escapeHTML($core->blog->name).'</span>' => '' 200 ), 201 false) 196 202 ); 197 203 198 echo '<h2>'.html::escapeHTML($core->blog->name).' › <span class="page-title">'.__('Dashboard').'</span></h2>'; 204 # Dotclear updates notifications 205 if ($core->auth->isSuperAdmin() && is_readable(DC_DIGESTS)) 206 { 207 $updater = new dcUpdate(DC_UPDATE_URL,'dotclear',DC_UPDATE_VERSION,DC_TPL_CACHE.'/versions'); 208 $new_v = $updater->check(DC_VERSION); 209 $version_info = $new_v ? $updater->getInfoURL() : ''; 210 211 if ($updater->getNotify() && $new_v) { 212 $message = 213 '<div><p>'.sprintf(__('Dotclear %s is available!'),$new_v).'</p> '. 214 '<ul><li><strong><a href="update.php">'.sprintf(__('Upgrade now'),$new_v).'</a></strong>'. 215 '</li><li><a href="update.php?hide_msg=1">'.__('Remind me later').'</a>'. 216 ($version_info ? ' </li><li><a href="'.$version_info.'">'.__('information about this version').'</a>' : ''). 217 '</li></ul></div>'; 218 dcPage::message($message,false,true); 219 } 220 } 199 221 200 222 if ($core->auth->getInfo('user_default_blog') != $core->blog->id && $core->auth->blog_count > 1) { … … 246 268 $dashboardItems = ''; 247 269 248 # Dotclear updates notifications249 if ($core->auth->isSuperAdmin() && is_readable(DC_DIGESTS))250 {251 $updater = new dcUpdate(DC_UPDATE_URL,'dotclear',DC_UPDATE_VERSION,DC_TPL_CACHE.'/versions');252 $new_v = $updater->check(DC_VERSION);253 $version_info = $new_v ? $updater->getInfoURL() : '';254 255 if ($updater->getNotify() && $new_v) {256 $dashboardItems .=257 '<div id="upg-notify" class="static-msg"><p>'.sprintf(__('Dotclear %s is available!'),$new_v).'</p> '.258 '<ul><li><strong><a href="update.php">'.sprintf(__('Upgrade now'),$new_v).'</a></strong>'.259 '</li><li><a href="update.php?hide_msg=1">'.__('Remind me later').'</a>'.260 ($version_info ? ' </li><li><a href="'.$version_info.'">'.__('information about this version').'</a>' : '').261 '</li></ul></div>';262 }263 }264 265 270 # Errors modules notifications 266 271 if ($core->auth->isSuperAdmin()) … … 283 288 if ($i->count() > 0) 284 289 { 285 $dashboardItems .= '<div >';290 $dashboardItems .= '<div class="db-item">'; 286 291 foreach ($i as $v) { 287 292 $dashboardItems .= $v; … … 317 322 } 318 323 } catch (Exception $e) { } 319 324 320 325 echo 321 326 '<div id="quick">'. 322 327 '<h3>'.__('Quick entry').'</h3>'. 323 '<form id="quick-entry" action="post.php" method="post" >'.324 '< fieldset><legend>'.__('New entry').'</legend>'.325 '<p class="col"><label for="post_title" class="required"><abbr title="'.__('Required field').'">*</abbr> '.__('Title:'). 328 '<form id="quick-entry" action="post.php" method="post" class="fieldset">'. 329 '<h4>'.__('New entry').'</h4>'. 330 '<p class="col"><label for="post_title" class="required"><abbr title="'.__('Required field').'">*</abbr> '.__('Title:').'</label>'. 326 331 form::field('post_title',20,255,'','maximal'). 327 '</ label></p>'.332 '</p>'. 328 333 '<p class="area"><label class="required" '. 329 334 'for="post_content"><abbr title="'.__('Required field').'">*</abbr> '.__('Content:').'</label> '. 330 335 form::textarea('post_content',50,7). 331 336 '</p>'. 332 '<p><label for="cat_id" class="classic">'.__('Category:').' '.333 form::combo('cat_id',$categories_combo).'</ label></p>'.337 '<p><label for="cat_id" class="classic">'.__('Category:').'</label> '. 338 form::combo('cat_id',$categories_combo).'</p>'. 334 339 ($core->auth->check('categories', $core->blog->id) 335 340 ? '<div>'. 336 '<p id="new_cat" >'.__('Add a new category').'</p>'.341 '<p id="new_cat" class="q-cat">'.__('Add a new category').'</p>'. 337 342 '<p class="form-note info clear">'.__('This category will be created when you will save your post.').'</p>'. 338 '<p ><label for="new_cat_title">'.__('Title:').''.339 form::field('new_cat_title',30,255,'',' maximal').'</label></p>'.340 '<p ><label for="new_cat_parent">'.__('Parent:').''.341 form::combo('new_cat_parent',$categories_combo,'',' maximal').342 '</ label></p>'.343 '<p class="q-cat"><label for="new_cat_title">'.__('Title:').'</label> '. 344 form::field('new_cat_title',30,255,'','').'</p>'. 345 '<p class="q-cat"><label for="new_cat_parent">'.__('Parent:').'</label> '. 346 form::combo('new_cat_parent',$categories_combo,'',''). 347 '</p>'. 343 348 '</div>' 344 349 : ''). … … 354 359 form::hidden('post_notes',''). 355 360 '</p>'. 356 '</fieldset>'.357 361 '</form>'. 358 362 '</div>'; -
admin/index.php
r1521 r1529 340 340 ? '<div>'. 341 341 '<p id="new_cat" class="q-cat">'.__('Add a new category').'</p>'. 342 '<p class="form-note info clear">'.__('This category will be created when you will save your post.').'</p>'. 342 343 '<p class="q-cat"><label for="new_cat_title">'.__('Title:').'</label> '. 343 344 form::field('new_cat_title',30,255,'','').'</p>'. -
admin/js/_post.js
r1515 r1529 1 1 dotclear.commentExpander = function(line) { 2 2 var td = line.firstChild; 3 3 4 4 var img = document.createElement('img'); 5 5 img.src = dotclear.img_plus_src; … … 9 9 img.line = line; 10 10 img.onclick = function() { dotclear.viewCommentContent(this,this.line); }; 11 11 12 12 td.insertBefore(img,td.firstChild); 13 13 }; … … 15 15 dotclear.viewCommentContent = function(img,line) { 16 16 var commentId = line.id.substr(1); 17 17 18 18 var tr = document.getElementById('ce'+commentId); 19 19 20 20 if (!tr) { 21 21 tr = document.createElement('tr'); … … 25 25 td.className = 'expand'; 26 26 tr.appendChild(td); 27 27 28 28 img.src = dotclear.img_minus_src; 29 29 img.alt = dotclear.img_minus_alt; 30 30 31 31 // Get comment content 32 32 $.get('services.php',{f:'getCommentById',id: commentId},function(data) { 33 33 var rsp = $(data).children('rsp')[0]; 34 34 35 35 if (rsp.attributes[0].value == 'ok') { 36 36 var comment = $(rsp).find('comment_display_content').text(); 37 37 38 38 if (comment) { 39 39 $(td).append(comment); … … 42 42 var comment_ip = $(rsp).find('comment_ip').text(); 43 43 var comment_spam_disp = $(rsp).find('comment_spam_disp').text(); 44 44 45 45 $(td).append('<p><strong>' + dotclear.msg.website + 46 46 '</strong> ' + comment_site + '<br />' + … … 52 52 } 53 53 }); 54 54 55 55 $(line).toggleClass('expand'); 56 56 line.parentNode.insertBefore(tr,line.nextSibling); … … 74 74 $(function() { 75 75 if (!document.getElementById) { return; } 76 76 77 77 if (document.getElementById('edit-entry')) 78 78 { … … 91 91 } 92 92 }); 93 93 94 94 var excerptTb = new jsToolBar(document.getElementById('post_excerpt')); 95 95 var contentTb = new jsToolBar(document.getElementById('post_content')); 96 96 excerptTb.context = contentTb.context = 'post'; 97 97 } 98 98 99 99 if (document.getElementById('comment_content')) { 100 100 var commentTb = new jsToolBar(document.getElementById('comment_content')); 101 101 } 102 102 103 103 // Post preview 104 104 $('#post-preview').modalWeb($(window).width()-40,$(window).height()-40); 105 105 106 106 // Tabs events 107 107 $('#edit-entry').onetabload(function() { 108 108 dotclear.hideLockable(); 109 109 110 110 // Add date picker 111 111 var post_dtPick = new datePicker($('#post_dt').get(0)); 112 112 post_dtPick.img_top = '1.5em'; 113 113 post_dtPick.draw(); 114 114 115 115 // Confirm post deletion 116 116 $('input[name="delete"]').click(function() { 117 118 }); 119 117 return window.confirm(dotclear.msg.confirm_delete_post); 118 }); 119 120 120 // Hide some fields 121 121 $('#notes-area label').toggleWithLegend($('#notes-area').children().not('label'),{ 122 122 cookie: 'dcx_post_notes', 123 hide: $('#post_notes').val() == '' 123 hide: $('#post_notes').val() == '', 124 legend_click: true 124 125 }); 125 126 $('#new_cat').toggleWithLegend( 126 127 $('#new_cat').parent().children().not('#new_cat'), 127 { } // no cookie on new category as we don't use this every day128 {legend_click: true} // no cookie on new category as we don't use this every day 128 129 ); 129 130 $('#post_lang').parent().toggleWithLegend($('#post_lang'),{ 130 cookie: 'dcx_post_lang' 131 cookie: 'dcx_post_lang', 132 legend_click: true 131 133 }); 132 134 $('#post_password').parent().toggleWithLegend($('#post_password'),{ 133 135 cookie: 'dcx_post_password', 134 hide: $('#post_password').val() == '' 135 }); 136 136 hide: $('#post_password').val() == '', 137 legend_click: true 138 }); 139 $('#post_status').parent().toggleWithLegend($('#post_status'),{ 140 cookie: 'dcx_post_status', 141 legend_click: true 142 }); 143 $('#post_dt').parent().toggleWithLegend($('#post_dt').parent().children().not('label'),{ 144 cookie: 'dcx_post_dt', 145 legend_click: true 146 }); 147 $('#post_format').parent().toggleWithLegend($('#post_format').parent().children().not('label').add($('#post_format').parents('p').next()),{ 148 cookie: 'dcx_post_format', 149 legend_click: true 150 }); 151 $('#cat_id').parent().toggleWithLegend($('#cat_id'),{ 152 cookie: 'cat_id', 153 legend_click: true 154 }); 155 $('#post_url').parent().toggleWithLegend($('#post_url').parent().children().not('label'),{ 156 cookie: 'post_url', 157 legend_click: true 158 }); 137 159 // We load toolbar on excerpt only when it's ready 138 160 $('#excerpt-area label').toggleWithLegend($('#excerpt-area').children().not('label'),{ … … 140 162 hide: $('#post_excerpt').val() == '' 141 163 }); 142 164 143 165 // Load toolbars 144 166 contentTb.switchMode(formatField.value); … … 156 178 return false; 157 179 }); 158 180 159 181 // Markup validator 160 182 var h = document.createElement('h4'); 161 183 var a = document.createElement('a'); 162 184 a.href = '#'; 185 a.className = 'button'; 163 186 $(a).click(function() { 164 187 var params = { … … 170 193 lang: $('#post_lang').get(0).value 171 194 }; 172 195 173 196 $.post('services.php',params,function(data) { 174 197 if ($(data).find('rsp').attr('status') != 'ok') { … … 176 199 return false; 177 200 } 178 201 179 202 if ($(data).find('valid').text() == 1) { 180 203 var p = document.createElement('p'); 181 204 p.id = 'markup-validator'; 182 205 183 206 if ($('#markup-validator').length > 0) { 184 207 $('#markup-validator').remove(); 185 208 } 186 209 187 210 $(p).addClass('message'); 188 211 $(p).text(dotclear.msg.xhtml_valid); … … 194 217 var div = document.createElement('div'); 195 218 div.id = 'markup-validator'; 196 219 197 220 if ($('#markup-validator').length > 0) { 198 221 $('#markup-validator').remove(); 199 222 } 200 223 201 224 $(div).addClass('error'); 202 225 $(div).html('<p><strong>' + dotclear.msg.xhtml_not_valid + '</strong></p>' + $(data).find('errors').text()); 203 226 $(div).insertAfter(h); 204 $(div).backgroundFade({sColor:'#ffffff',eColor:'# ff9999',steps:50},function() {205 $(this).backgroundFade({sColor:'#ff 9999',eColor:'#ffffff'});227 $(div).backgroundFade({sColor:'#ffffff',eColor:'#FFBABA',steps:50},function() { 228 $(this).backgroundFade({sColor:'#ffbaba',eColor:'#ffffff'}); 206 229 }); 207 230 } 208 231 209 232 return false; 210 233 }); 211 234 212 235 return false; 213 236 }); 214 237 215 238 a.appendChild(document.createTextNode(dotclear.msg.xhtml_validator)); 216 239 h.appendChild(a); 217 240 $(h).appendTo('#entry-content'); 218 241 219 242 // Check unsaved changes before XHTML conversion 220 243 var excerpt = $('#post_excerpt').val(); … … 223 246 if (excerpt != $('#post_excerpt').val() || content != $('#post_content').val()) { 224 247 return window.confirm(dotclear.msg.confirm_change_post_format); 225 } 248 } 226 249 }); 227 250 }); 228 251 229 252 $('#comments').onetabload(function() { 230 253 $('.comments-list tr.line').each(function() { … … 234 257 dotclear.checkboxesHelpers(this); 235 258 }); 236 259 237 260 dotclear.commentsActionsHelper(); 238 261 }); 239 262 240 263 $('#add-comment').onetabload(function() { 241 264 commentTb.draw('xhtml'); -
admin/js/_post.js
r1525 r1529 79 79 // Get document format and prepare toolbars 80 80 var formatField = $('#post_format').get(0); 81 var last_post_format = $(formatField).val(); 81 82 $(formatField).change(function() { 82 excerptTb.switchMode(this.value); 83 contentTb.switchMode(this.value); 83 // Confirm post format change 84 if(window.confirm(dotclear.msg.confirm_change_post_format_noconvert)){ 85 excerptTb.switchMode(this.value); 86 contentTb.switchMode(this.value); 87 last_post_format = $(this).val(); 88 }else{ 89 // Restore last format if change cancelled 90 $(this).val(last_post_format); 91 } 84 92 }); 85 93 … … 151 159 // We load toolbar on excerpt only when it's ready 152 160 $('#excerpt-area label').toggleWithLegend($('#excerpt-area').children().not('label'),{ 153 fn: function() { excerptTb.switchMode(formatField.value); },154 161 cookie: 'dcx_post_excerpt', 155 162 hide: $('#post_excerpt').val() == '' … … 158 165 // Load toolbars 159 166 contentTb.switchMode(formatField.value); 160 167 excerptTb.switchMode(formatField.value); 168 161 169 // Replace attachment remove links by a POST form submit 162 170 $('a.attachment-remove').click(function() { -
admin/post.php
r1488 r1529 50 50 } 51 51 52 # Getting categories 53 $categories_combo = array(' ' => ''); 54 try { 55 $categories = $core->blog->getCategories(array('post_type'=>'post')); 56 while ($categories->fetch()) { 57 $categories_combo[] = new formSelectOption( 58 str_repeat(' ',$categories->level-1).($categories->level-1 == 0 ? '' : '• ').html::escapeHTML($categories->cat_title), 59 $categories->cat_id 60 ); 61 } 62 } catch (Exception $e) { } 63 52 64 # Status combo 53 65 foreach ($core->blog->getAllPostStatus() as $k => $v) { … … 82 94 if (!empty($_REQUEST['id'])) 83 95 { 96 $page_title = __('Edit entry'); 97 84 98 $params['post_id'] = $_REQUEST['id']; 85 99 … … 111 125 $post_open_tb = (boolean) $post->post_open_tb; 112 126 113 $page_title = __('Edit entry');114 115 127 $can_edit_post = $post->isEditable(); 116 128 $can_delete= $post->isDeletable(); … … 121 133 if ($next_rs !== null) { 122 134 $next_link = sprintf($post_link,$next_rs->post_id, 123 html::escapeHTML($next_rs->post_title),__(' next entry').' »');135 html::escapeHTML($next_rs->post_title),__('Next entry').' »'); 124 136 $next_headlink = sprintf($post_headlink,'next', 125 137 html::escapeHTML($next_rs->post_title),$next_rs->post_id); … … 128 140 if ($prev_rs !== null) { 129 141 $prev_link = sprintf($post_link,$prev_rs->post_id, 130 html::escapeHTML($prev_rs->post_title),'« '.__(' previous entry'));142 html::escapeHTML($prev_rs->post_title),'« '.__('Previous entry')); 131 143 $prev_headlink = sprintf($post_headlink,'previous', 132 144 html::escapeHTML($prev_rs->post_title),$prev_rs->post_id); … … 314 326 } 315 327 328 if ($post_id) { 329 switch ($post_status) { 330 case 1: 331 $img_status = sprintf($img_status_pattern,__('Published'),'check-on.png'); 332 break; 333 case 0: 334 $img_status = sprintf($img_status_pattern,__('Unpublished'),'check-off.png'); 335 break; 336 case -1: 337 $img_status = sprintf($img_status_pattern,__('Scheduled'),'scheduled.png'); 338 break; 339 case -2: 340 $img_status = sprintf($img_status_pattern,__('Pending'),'check-wrn.png'); 341 break; 342 default: 343 $img_status = ''; 344 } 345 $edit_entry_str = __('“%s”'); 346 $page_title_edit = sprintf($edit_entry_str, html::escapeHTML($post_title)).' '.$img_status; 347 } else { 348 $img_status = ''; 349 } 350 351 316 352 dcPage::open($page_title.' - '.__('Entries'), 317 353 dcPage::jsDatePicker(). … … 324 360 $core->callBehavior('adminPostHeaders'). 325 361 dcPage::jsPageTabs($default_tab). 326 $next_headlink."\n".$prev_headlink 362 $next_headlink."\n".$prev_headlink, 363 dcPage::breadcrumb( 364 array( 365 html::escapeHTML($core->blog->name) => '', 366 __('Entries') => 'posts.php', 367 '<span class="page-title">'.($post_id ? $page_title_edit : $page_title).'</span>' => '' 368 )) 327 369 ); 328 370 … … 354 396 } 355 397 356 echo '<h2>'.html::escapeHTML($core->blog->name).' › '.'<a href="posts.php">'.__('Entries').'</a> › <span class="page-title">';357 if ($post_id) {358 switch ($post_status) {359 case 1:360 $img_status = sprintf($img_status_pattern,__('published'),'check-on.png');361 break;362 case 0:363 $img_status = sprintf($img_status_pattern,__('unpublished'),'check-off.png');364 break;365 case -1:366 $img_status = sprintf($img_status_pattern,__('scheduled'),'scheduled.png');367 break;368 case -2:369 $img_status = sprintf($img_status_pattern,__('pending'),'check-wrn.png');370 break;371 default:372 $img_status = '';373 }374 $edit_entry_str = __('Edit entry “%s”');375 echo sprintf($edit_entry_str, html::escapeHTML($post_title)).' '.$img_status;376 } else {377 echo $page_title;378 }379 echo '</span></h2>';380 381 398 if ($post_id && $post->post_status == 1) { 382 echo '<p><a href="'.$post->getURL().'" onclick="window.open(this.href);return false;" title="'.$post_title.' ('.__('new window').')'.'">'.__('Go to this entry on the site').' <img src="images/outgoing-blue.png" alt="" /></a></p>';399 echo '<p><a class="onblog_link" href="'.$post->getURL().'" onclick="window.open(this.href);return false;" title="'.$post_title.' ('.__('new window').')'.'">'.__('Go to this entry on the site').' <img src="images/outgoing-blue.png" alt="" /></a></p>'; 383 400 } 384 401 if ($post_id) 385 402 { 386 echo '<p >';403 echo '<p class="nav_prevnext">'; 387 404 if ($prev_link) { echo $prev_link; } 388 if ($next_link && $prev_link) { echo ' -'; }405 if ($next_link && $prev_link) { echo ' | '; } 389 406 if ($next_link) { echo $next_link; } 390 407 … … 401 418 exit; 402 419 } 403 404 420 /* Post form if we can edit post 405 421 -------------------------------------------------------- */ 406 422 if ($can_edit_post) 407 423 { 408 echo '<div class="multi-part" title="'.__('Edit entry').'" id="edit-entry">'; 424 $sidebar_items = new ArrayObject(array( 425 'status-box' => array( 426 'title' => __('Status'), 427 'items' => array( 428 'post_status' => 429 '<p class="entry-status"><label for="post_status" class="ib">'.__('Entry status').' '.$img_status.'</label>'. 430 form::combo('post_status',$status_combo,$post_status,'maximal','',!$can_publish). 431 '</p>', 432 'post_dt' => 433 '<p><label for="post_dt" class="ib">'.__('Publication date and hour').'</label>'. 434 form::field('post_dt',16,16,$post_dt,($bad_dt ? 'invalid' : '')). 435 '</p>', 436 'post_lang' => 437 '<p><label for="post_lang" class="ib">'.__('Entry lang').'</label>'. 438 form::combo('post_lang',$lang_combo,$post_lang). 439 '</p>', 440 'post_format' => 441 '<p><label for="post_format" class="ib">'.__('Text formating').'</label>'. 442 form::combo('post_format',$formaters_combo,$post_format,'maximal'). 443 '</p>'. 444 '<p>'.($post_id && $post_format != 'xhtml' ? 445 '<a id="convert-xhtml" class="button maximal" href="post.php?id='.$post_id.'&xconv=1">'. 446 __('Convert to XHTML').'</a>' : '').'</p>')), 447 'metas-box' => array( 448 'title' => __('Ordering'), 449 'items' => array( 450 'post_selected' => 451 '<p><label for="post_selected" class="classic">'. 452 form::checkbox('post_selected',1,$post_selected).' '. 453 __('Selected entry').'</label></p>', 454 'cat_id' => 455 '<p><label for="cat_id" class="ib">'.__('Category').'</label>'. 456 form::combo('cat_id',$categories_combo,$cat_id,'maximal'). 457 '</p>'. 458 ($core->auth->check('categories', $core->blog->id) ? 459 '<div>'. 460 '<p id="new_cat">'.__('Add a new category').'</p>'. 461 '<p><label for="new_cat_title">'.__('Title:').' '. 462 form::field('new_cat_title',30,255,'','maximal').'</label></p>'. 463 '<p><label for="new_cat_parent">'.__('Parent:').' '. 464 form::combo('new_cat_parent',$categories_combo,'','maximal'). 465 '</label></p>'. 466 '</div>' 467 : ''))), 468 'options-box' => array( 469 'title' => __('Options'), 470 'items' => array( 471 'post_open_comment' => 472 '<p><label for="post_open_comment" class="classic">'. 473 form::checkbox('post_open_comment',1,$post_open_comment).' '. 474 __('Accept comments').'</label></p>'. 475 ($core->blog->settings->system->allow_comments ? 476 (isContributionAllowed($post_id,strtotime($post_dt),true) ? 477 '' : 478 '<p class="form-note warn">'. 479 __('Warning: Comments are not more accepted for this entry.').'</p>') : 480 '<p class="form-note warn">'. 481 __('Warning: Comments are not accepted on this blog.').'</p>'), 482 'post_open_tb' => 483 '<p><label for="post_open_tb" class="classic">'. 484 form::checkbox('post_open_tb',1,$post_open_tb).' '. 485 __('Accept trackbacks').'</label></p>'. 486 ($core->blog->settings->system->allow_trackbacks ? 487 (isContributionAllowed($post_id,strtotime($post_dt),false) ? 488 '' : 489 '<p class="form-note warn">'. 490 __('Warning: Trackbacks are not more accepted for this entry.').'</p>') : 491 '<p class="form-note warn">'.__('Warning: Trackbacks are not accepted on this blog.').'</p>'), 492 'post_password' => 493 '<p><label for="post_password" class="ib">'.__('Password').'</label>'. 494 form::field('post_password',10,32,html::escapeHTML($post_password),'maximal'). 495 '</p>', 496 'post_url' => 497 '<div class="lockable">'. 498 '<p><label for="post_url" class="ib">'.__('Edit basename').'</label>'. 499 form::field('post_url',10,255,html::escapeHTML($post_url),'maximal'). 500 '</p>'. 501 '<p class="form-note warn">'. 502 __('Warning: If you set the URL manually, it may conflict with another entry.'). 503 '</p></div>' 504 )))); 505 506 $main_items = new ArrayObject(array( 507 "post_title" => 508 '<p class="col">'. 509 '<label class="required no-margin"><abbr title="'.__('Required field').'">*</abbr> '.__('Title:').'</label>'. 510 form::field('post_title',20,255,html::escapeHTML($post_title),'maximal'). 511 '</p>', 512 513 "post_excerpt" => 514 '<p class="area" id="excerpt-area"><label for="post_excerpt">'.__('Excerpt:').'<span class="form-note">'. 515 __('Add an introduction to the post.').'</span></label> '. 516 form::textarea('post_excerpt',50,5,html::escapeHTML($post_excerpt)). 517 '</p>', 518 519 "post_content" => 520 '<p class="area"><label class="required" '. 521 'for="post_content"><abbr title="'.__('Required field').'">*</abbr> '.__('Content:').'</label> '. 522 form::textarea('post_content',50,$core->auth->getOption('edit_size'),html::escapeHTML($post_content)). 523 '</p>', 524 525 "post_notes" => 526 '<p class="area" id="notes-area"><label for="post_notes">'.__('Personal notes:').'<span class="form-note">'. 527 __('Add unpublished notes.').'</span></label>'. 528 form::textarea('post_notes',50,5,html::escapeHTML($post_notes)). 529 '</p>' 530 ) 531 ); 532 533 # --BEHAVIOR-- adminPostFormItems 534 $core->callBehavior('adminPostFormItems',$main_items,$sidebar_items, isset($post) ? $post : null); 535 536 echo '<div class="multi-part" title="'.($post_id ? __('Edit entry') : __('New entry')).'" id="edit-entry">'; 409 537 echo '<form action="post.php" method="post" id="entry-form">'; 410 538 echo '<div id="entry-wrapper">'; 411 539 echo '<div id="entry-content"><div class="constrained">'; 540 541 echo '<h3 class="hidden">'.__('Edit post').'</h3>'; 542 543 foreach ($main_items as $id => $item) { 544 echo $item; 545 } 546 547 # --BEHAVIOR-- adminPostForm (may be deprecated) 548 $core->callBehavior('adminPostForm',isset($post) ? $post : null); 412 549 413 550 echo 414 '<p class="col"><label class="required"><abbr title="'.__('Required field').'">*</abbr> '.__('Title:'). 415 form::field('post_title',20,255,html::escapeHTML($post_title),'maximal'). 416 '</label></p>'. 417 418 '<p class="area" id="excerpt-area"><label for="post_excerpt">'.__('Excerpt:').'</label> '. 419 form::textarea('post_excerpt',50,5,html::escapeHTML($post_excerpt)). 420 '</p>'. 421 422 '<p class="area"><label class="required" '. 423 'for="post_content"><abbr title="'.__('Required field').'">*</abbr> '.__('Content:').'</label> '. 424 form::textarea('post_content',50,$core->auth->getOption('edit_size'),html::escapeHTML($post_content)). 425 '</p>'. 426 427 '<p class="area" id="notes-area"><label for="post_notes">'.__('Notes:').'</label>'. 428 form::textarea('post_notes',50,5,html::escapeHTML($post_notes)). 429 '</p>'; 430 431 # --BEHAVIOR-- adminPostForm 432 $core->callBehavior('adminPostForm',isset($post) ? $post : null); 433 434 echo 435 '<p>'. 551 '<p class="border-top">'. 436 552 ($post_id ? form::hidden('id',$post_id) : ''). 437 553 '<input type="submit" value="'.__('Save').' (s)" '. … … 458 574 echo '<div id="entry-sidebar">'; 459 575 460 echo 461 '<p><label for="cat_id">'.__('Category:'). 462 form::combo('cat_id',$categories_combo,$cat_id,'maximal'). 463 '</label></p>'. 464 465 ($core->auth->check('categories', $core->blog->id) ? 466 '<div>'. 467 '<p id="new_cat">'.__('Add a new category').'</p>'. 468 '<p class="form-note info clear">'.__('This category will be created when you will save your post.').'</p>'. 469 '<p><label for="new_cat_title">'.__('Title:').' '. 470 form::field('new_cat_title',30,255,'','maximal').'</label></p>'. 471 '<p><label for="new_cat_parent">'.__('Parent:').' '. 472 form::combo('new_cat_parent',$categories_combo,'','maximal'). 473 '</label></p>'. 474 '</div>' 475 : ''). 476 477 '<p><label for="post_status">'.__('Entry status:'). 478 form::combo('post_status',$status_combo,$post_status,'','',!$can_publish). 479 '</label></p>'. 480 481 '<p><label for="post_dt">'.__('Published on:'). 482 form::field('post_dt',16,16,$post_dt,($bad_dt ? 'invalid' : '')). 483 '</label></p>'. 484 485 '<p><label for="post_format">'.__('Text formating:'). 486 form::combo('post_format',$formaters_combo,$post_format). 487 '</label>'. 488 '</p>'. 489 '<p>'.($post_id && $post_format != 'xhtml' ? '<a id="convert-xhtml" class="button" href="post.php?id='.$post_id.'&xconv=1">'.__('Convert to XHTML').'</a>' : '').'</p>'. 490 491 '<p><label for="post_open_comment" class="classic">'.form::checkbox('post_open_comment',1,$post_open_comment).' '. 492 __('Accept comments').'</label></p>'. 493 ($core->blog->settings->system->allow_comments ? 494 (isContributionAllowed($post_id,strtotime($post_dt),true) ? 495 '' : 496 '<p class="form-note warn">'.__('Warning: Comments are not more accepted for this entry.').'</p>') : 497 '<p class="form-note warn">'.__('Warning: Comments are not accepted on this blog.').'</p>'). 498 499 '<p><label for="post_open_tb" class="classic">'.form::checkbox('post_open_tb',1,$post_open_tb).' '. 500 __('Accept trackbacks').'</label></p>'. 501 ($core->blog->settings->system->allow_trackbacks ? 502 (isContributionAllowed($post_id,strtotime($post_dt),false) ? 503 '' : 504 '<p class="form-note warn">'.__('Warning: Trackbacks are not more accepted for this entry.').'</p>') : 505 '<p class="form-note warn">'.__('Warning: Trackbacks are not accepted on this blog.').'</p>'). 506 507 '<p><label for="post_selected" class="classic">'.form::checkbox('post_selected',1,$post_selected).' '. 508 __('Selected entry').'</label></p>'. 509 510 '<p><label for="post_lang">'.__('Entry lang:'). 511 form::combo('post_lang',$lang_combo,$post_lang). 512 '</label></p>'. 513 514 '<p><label for="post_password">'.__('Entry password:'). 515 form::field('post_password',10,32,html::escapeHTML($post_password),'maximal'). 516 '</label></p>'. 517 518 '<div class="lockable">'. 519 '<p><label for="post_url">'.__('Basename:'). 520 form::field('post_url',10,255,html::escapeHTML($post_url),'maximal'). 521 '</label></p>'. 522 '<p class="form-note warn">'. 523 __('Warning: If you set the URL manually, it may conflict with another entry.'). 524 '</p>'. 525 '</div>'; 526 527 # --BEHAVIOR-- adminPostFormSidebar 576 foreach ($sidebar_items as $id => $c) { 577 echo '<div id="'.$id.'" class="box">'. 578 '<h4>'.$c['title'].'</h4>'; 579 foreach ($c['items'] as $e_name=>$e_content) { 580 echo $e_content; 581 } 582 echo '</div>'; 583 } 584 585 586 # --BEHAVIOR-- adminPostFormSidebar (may be deprecated) 528 587 $core->callBehavior('adminPostFormSidebar',isset($post) ? $post : null); 529 530 588 echo '</div>'; // End #entry-sidebar 531 589 … … 558 616 if ($can_edit_post && $core->auth->check('publish,contentadmin',$core->blog->id)) 559 617 { 560 $combo_action[__(' publish')] = 'publish';561 $combo_action[__(' unpublish')] = 'unpublish';562 $combo_action[__(' mark as pending')] = 'pending';563 $combo_action[__(' mark as junk')] = 'junk';618 $combo_action[__('Publish')] = 'publish'; 619 $combo_action[__('Unpublish')] = 'unpublish'; 620 $combo_action[__('Mark as pending')] = 'pending'; 621 $combo_action[__('Mark as junk')] = 'junk'; 564 622 } 565 623 … … 623 681 '<form action="comment.php" method="post" id="comment-form">'. 624 682 '<div class="constrained">'. 625 '<p><label for="comment_author" class="required"><abbr title="'.__('Required field').'">*</abbr> '.__('Name:'). 683 '<p><label for="comment_author" class="required"><abbr title="'.__('Required field').'">*</abbr> '.__('Name:').'</label>'. 626 684 form::field('comment_author',30,255,html::escapeHTML($core->auth->getInfo('user_cn'))). 627 '</ label></p>'.628 629 '<p><label for="comment_email">'.__('Email:'). 685 '</p>'. 686 687 '<p><label for="comment_email">'.__('Email:').'</label>'. 630 688 form::field('comment_email',30,255,html::escapeHTML($core->auth->getInfo('user_email'))). 631 '</ label></p>'.632 633 '<p><label for="comment_site">'.__('Web site:'). 689 '</p>'. 690 691 '<p><label for="comment_site">'.__('Web site:').'</label>'. 634 692 form::field('comment_site',30,255,html::escapeHTML($core->auth->getInfo('user_url'))). 635 '</ label></p>'.693 '</p>'. 636 694 637 695 '<p class="area"><label for="comment_content" class="required"><abbr title="'.__('Required field').'">*</abbr> '. … … 675 733 echo 676 734 '<table class="comments-list"><tr>'. 677 '<th colspan="2" >'.__('Author').'</th>'.735 '<th colspan="2" class="first">'.__('Author').'</th>'. 678 736 '<th>'.__('Date').'</th>'. 679 737 '<th class="nowrap">'.__('IP address').'</th>'. 680 738 '<th>'.__('Status').'</th>'. 681 '<th> </th>'.739 '<th>'.__('Edit').'</th>'. 682 740 '</tr>'; 683 741 … … 689 747 switch ($rs->comment_status) { 690 748 case 1: 691 $img_status = sprintf($img,__(' published'),'check-on.png');749 $img_status = sprintf($img,__('Published'),'check-on.png'); 692 750 break; 693 751 case 0: 694 $img_status = sprintf($img,__(' unpublished'),'check-off.png');752 $img_status = sprintf($img,__('Unpublished'),'check-off.png'); 695 753 break; 696 754 case -1: 697 $img_status = sprintf($img,__(' pending'),'check-wrn.png');755 $img_status = sprintf($img,__('Pending'),'check-wrn.png'); 698 756 break; 699 757 case -2: 700 $img_status = sprintf($img,__(' junk'),'junk.png');758 $img_status = sprintf($img,__('Junk'),'junk.png'); 701 759 break; 702 760 } … … 713 771 '<td class="nowrap status">'.$img_status.'</td>'. 714 772 '<td class="nowrap status"><a href="'.$comment_url.'">'. 715 '<img src="images/edit-mini.png" alt="" title="'.__('Edit this comment').'" /> </a></td>'.773 '<img src="images/edit-mini.png" alt="" title="'.__('Edit this comment').'" /> '.__('Edit').'</a></td>'. 716 774 717 775 '</tr>'; … … 721 779 } 722 780 723 dcPage::helpBlock('core_post','core_ wiki');781 dcPage::helpBlock('core_post','core_trackbacks','core_wiki'); 724 782 dcPage::close(); 725 783 ?> -
admin/update.php
r1479 r1529 174 174 dcPage::jsPageTabs($default_tab). 175 175 dcPage::jsLoad('js/_update.js') 176 : '') 176 : ''), 177 dcPage::breadcrumb( 178 array( 179 __('System') => '', 180 '<span class="page-title">'.__('Dotclear update').'</span>' => '' 181 )) 177 182 ); 178 183 179 184 if (!$core->error->flag()) { 180 echo '<h2>'.__('Dotclear update').'</h2>';181 182 185 if (!empty($_GET['nocache'])) { 183 186 dcPage::message(__('Manual checking of update done successfully.')); … … 200 203 echo 201 204 '<p class="static-msg">'.sprintf(__('Dotclear %s is available.'),$new_v). 202 ($version_info ? ' <a href="'.$version_info.'">('.__(' information about this version').')</a>' : '').205 ($version_info ? ' <a href="'.$version_info.'">('.__('Information about this version').')</a>' : ''). 203 206 '</p>'. 204 207 … … 246 249 '<p class="message">'. 247 250 __("Congratulations, you're one click away from the end of the update."). 248 ' <strong><a href="index.php?logout=1">'.__('Finish the update .').'</a></strong>'.251 ' <strong><a href="index.php?logout=1">'.__('Finish the update').'</a>.</strong>'. 249 252 '</p>'; 250 253 } -
admin/update.php
r1474 r1529 106 106 throw new Exception( 107 107 sprintf(__('Downloaded Dotclear archive seems to be corrupted. '. 108 'Try <a %s>download it</a> again.'),'href="'.$p_url.'?step=download"') 108 'Try <a %s>download it</a> again.'),'href="'.$p_url.'?step=download"'). 109 ' '. 110 __('If this problem persists try to '. 111 '<a href="http://dotclear.org/download">update manually</a>.') 109 112 ); 110 113 } -
locales/en/main.po
r1479 r1529 453 453 454 454 #, php-format 455 msgid "You are currently using \"%s\""455 msgid "You are currently using <strong>%s</strong>" 456 456 msgstr "" 457 457 … … 753 753 msgstr "" 754 754 755 msgid "You have one spam comment s."755 msgid "You have one spam comment." 756 756 msgstr "" 757 757 … … 2160 2160 msgstr "" 2161 2161 2162 msgid "Warning: post format change will not convert existing content. You will need to apply new format by yourself. Proceed anyway?"2163 msgstr ""2164 2165 2162 msgid "Loading enhanced uploader, please wait." 2166 2163 msgstr "" -
locales/en/main.po
r1499 r1529 1917 1917 msgstr "" 1918 1918 1919 msgid "If this problem persists try to <a href="http://dotclear.org/download">update manually</a>." 1920 msgstr "" 1921 1919 1922 msgid "The following files of your Dotclear installation have been modified so we won't try to update your installation. Please try to <a href=\"http://dotclear.org/download\">update manually</a>." 1920 1923 msgstr "" -
locales/fr/main.po
r1488 r1529 95 95 96 96 msgid "This mode allows you to login without activating any of your plugins. This may be useful to solve compatibility problems" 97 msgstr " \"Ce mode vous permet de vous connecter sans activer de plugins. Il peut être utile pour résoudre un problème de compatibilité"97 msgstr "Ce mode vous permet de vous connecter sans activer de plugins. Il peut être utile pour résoudre un problème de compatibilité" 98 98 99 99 msgid "Disable or delete any plugin suspected to cause trouble, then log out and log back in normally." … … 481 481 482 482 #, php-format 483 msgid "You are currently using \"%s\""484 msgstr "Vous utilisez actuellement \"%s\""483 msgid "You are currently using <strong>%s</strong>" 484 msgstr "Vous utilisez actuellement <strong>%s</strong>" 485 485 486 486 msgid "Use selected theme" … … 793 793 msgstr "Auteur du commentaire :" 794 794 795 msgid "You have one spam comment s."795 msgid "You have one spam comment." 796 796 msgstr "Vous avez un commentaire indésirable." 797 797 798 798 msgid "Show it." 799 msgstr "L'afficher "799 msgstr "L'afficher." 800 800 801 801 #, php-format … … 1038 1038 #, fuzzy, php-format 1039 1039 msgid "Path <strong>%s</strong> is not writable." 1040 msgstr "Le répertoire <strong>%s</strong> n'est pas accessible en écriture."1040 msgstr "Le répertoire de cache <strong>%s</strong> n'est pas accessible en écriture." 1041 1041 1042 1042 #, fuzzy … … 1123 1123 #, php-format 1124 1124 msgid "You can change your user language in your <a href=\"%1$s\">preferences</a> or change your blog's main language in your <a href=\"%2$s\">blog settings</a>." 1125 msgstr "Vous pouvez changer votre langue d'utilisateur dans vos <a href=\"%1$s\">préférences</a> ou changer la langue principale de votre blog dans vos <a href=\"%2$s\"> paramètres du blog</a>."1125 msgstr "Vous pouvez changer votre langue d'utilisateur dans vos <a href=\"%1$s\">préférences</a> ou changer la langue principale de votre blog dans vos <a href=\"%2$s\">Paramètres du blog</a>." 1126 1126 1127 1127 msgid "Installed languages" … … 1490 1490 1491 1491 msgid "Plugins" 1492 msgstr " Extensions"1492 msgstr "Plugins" 1493 1493 1494 1494 msgid "Activated plugins" … … 1568 1568 1569 1569 msgid "Search" 1570 msgstr "Recherche "1570 msgstr "Rechercher" 1571 1571 1572 1572 msgid "cancel" … … 1628 1628 1629 1629 msgid "Text formating:" 1630 msgstr " Format du texte :"1630 msgstr "Syntaxe de saisie :" 1631 1631 1632 1632 msgid "Convert to XHTML" … … 1790 1790 1791 1791 msgid "If you want to change your email or password you must provide your current password." 1792 msgstr "Si vous voulez changer votre adresse email ou votre mot de passe, vous devez indiquer votre mot de passe ."1792 msgstr "Si vous voulez changer votre adresse email ou votre mot de passe, vous devez indiquer votre mot de passe actuel." 1793 1793 1794 1794 msgid "No favorite selected" … … 1826 1826 1827 1827 msgid "If you have changed this user email or password you must provide your current password to save these modifications." 1828 msgstr "Si vous voulez changer votre adresse email ou votre mot de passe, vous devez indiquer votre mot de passe ."1828 msgstr "Si vous voulez changer votre adresse email ou votre mot de passe, vous devez indiquer votre mot de passe actuel pour enregistrer ces modifications." 1829 1829 1830 1830 msgid "My options" … … 1923 1923 msgstr "Requête :" 1924 1924 1925 msgid "Search entries"1926 msgstr "Rechercher d es billets"1927 1928 msgid "Search comments"1929 msgstr "Rechercher d es commentaires"1925 msgid "Search in entries" 1926 msgstr "Rechercher dans les billets" 1927 1928 msgid "Search in comments" 1929 msgstr "Rechercher dans les commentaires" 1930 1930 1931 1931 msgid "schedule" … … 2067 2067 2068 2068 msgid "Mandatory for password recovering procedure." 2069 msgstr " Obligatoire pour la procédure de récupération de mot de passe."2069 msgstr "Indispensable pour la procédure de récupération de mot de passe." 2070 2070 2071 2071 msgid "Password change required to connect" … … 2177 2177 msgstr "Aide" 2178 2178 2179 msgid "Help about this page" 2180 msgstr "Aide pour cette page" 2181 2179 2182 msgid "uncover" 2180 2183 msgstr "dévoiler" … … 2262 2265 2263 2266 msgid "XHTML markup validator" 2264 msgstr "V alidationXHTML"2267 msgstr "Vérifier la validité XHTML" 2265 2268 2266 2269 msgid "XHTML content is valid." … … 2947 2950 msgstr "Date de publication invalide" 2948 2951 2952 msgid "System settings" 2953 msgstr "Réglages système" 2954 2955 msgid "Additional plugins" 2956 msgstr "Modules complémentaires" 2957 2958 msgid "Personal notes:" 2959 msgstr "Notes personnelles :" 2960 2961 msgid "New user" 2962 msgstr "Nouvel utilisateur" 2963 2964 msgid "Published" 2965 msgstr "Publié" 2966 2967 msgid "Unpublished" 2968 msgstr "Non publié" 2969 2970 msgid "Pending" 2971 msgstr "En attente" 2972 2973 msgid "Junk" 2974 msgstr "Indésirable" 2975 2976 msgid "Scheduled" 2977 msgstr "Programmé" 2978 2979 msgid "Protected" 2980 msgstr "Protégé" 2981 2982 msgid "Publish" 2983 msgstr "Publier" 2984 2985 msgid "Unpublish" 2986 msgstr "Mettre hors ligne" 2987 2988 msgid "Mark as pending" 2989 msgstr "Mettre en attente" 2990 2991 msgid "Mark as junk" 2992 msgstr "Mettre en indésirable" 2993 2994 msgid "Next entry" 2995 msgstr "Billet suivant" 2996 2997 msgid "Previous entry" 2998 msgstr "Billet précédent" 2999 3000 msgid "Add an introduction to the post." 3001 msgstr "Ajoute une introduction au billet." 3002 3003 msgid "Add unpublished notes." 3004 msgstr "Ajoute des notes non publiées." 3005 3006 msgid "Edit basename:" 3007 msgstr "Modifier l'URL spécifique :" 3008 3009 msgid "Protect with password" 3010 msgstr "Protéger par un mot de passe" 3011 3012 msgid "Information collected" 3013 msgstr "Informations recueillies" 3014 3015 msgid "Comment submitted" 3016 msgstr "Commentaire déposé" 3017 3018 msgid "Entry status" 3019 msgstr "État du billet" 3020 3021 msgid "Publication date and hour" 3022 msgstr "Date et heure de publication" 3023 3024 msgid "Text formating" 3025 msgstr "Syntaxe de saisie" 3026 3027 msgid "Entry lang" 3028 msgstr "Langue du billet" 3029 3030 msgid "Password" 3031 msgstr "Mot de passe" 3032 3033 msgid "Edit basename" 3034 msgstr "URL spécifique" 3035 3036 msgid "Ordering" 3037 msgstr "Classement" 3038 3039 msgid "Filter posts list" 3040 msgstr "Filtrer la liste des billets" 3041 3042 msgid "entries per page" 3043 msgstr "billets par page" 3044 3045 msgid "Show" 3046 msgstr "Afficher" 3047 3048 msgid "Filter blogs list" 3049 msgstr "Filtrer la liste des blogs" 3050 3051 msgid "blogs per page" 3052 msgstr "blogs par page" 3053 3054 msgid "Filter comments and trackbacks list" 3055 msgstr "Filtrer la liste des commentaires et rétroliens" 3056 3057 msgid "comments per page" 3058 msgstr "commentaires par page" 3059 3060 msgid "Filter users list" 3061 msgstr "Filtrer la liste des utilisateurs" 3062 3063 msgid "users per page" 3064 msgstr "utilisateurs par page" 3065 3066 msgid "Available themes in your installation" 3067 msgstr "Thèmes disponibles sur votre installation" 3068 3069 msgid "You can also install themes by uploading or downloading zip files." 3070 msgstr "Vous pouvez aussi installer des thèmes en déposant ou en téléchargeant des fichiers zip." 3071 3072 msgid "Add themes to your installation" 3073 msgstr "Ajouter des thèmes sur votre installation" 3074 3075 msgid "Select this comment" 3076 msgstr "Sélectionner ce commentaire" 3077 3078 msgid "Next page" 3079 msgstr "Page suivante" 3080 3081 msgid "Previous page" 3082 msgstr "Page précédente" 3083 3084 msgid "Add an introduction to the page." 3085 msgstr "Ajoute une introduction à la page." 3086 2949 3087 msgid "(No cat)" 2950 3088 msgstr "(aucune)" … … 2968 3106 msgstr "très fort" 2969 3107 3108 msgid "Confirm new password:" 3109 msgstr "Confirmez le nouveau mot de passe :" 3110 3111 msgid "Not selected" 3112 msgstr "Non sélectionné" 3113 3114 msgid "Back to comments list" 3115 msgstr "Retour à la liste des commentaires" 3116 3117 msgid "The current blog cannot be deleted." 3118 msgstr "Le blog courant ne peut être détruit." 3119 3120 msgid "Only superadmin can delete a blog." 3121 msgstr "Seul un superadministrateur peut supprimer un blog." 3122 3123 msgid "Invalid publication date" 3124 msgstr "Date de publication invalide." 3125 3126 msgid "Image alignment:" 3127 msgstr "Alignement de l'image :" 3128 3129 msgid "Finish the update" 3130 msgstr "Finir la mise à jour" 3131 3132 msgid "Information about this version" 3133 msgstr "Informations sur cette version" 3134 3135 msgid "Updates and modifications" 3136 msgstr "Mises à jour et modifications" 3137 3138 msgid "Back to user profile" 3139 msgstr "Retour au profil utilisateur" 3140 3141 msgid "Back to Blog appearance" 3142 msgstr "Retour à Apparence du blog" 3143 3144 msgid "Edit" 3145 msgstr "Modifier" 3146 3147 msgid "Display options" 3148 msgstr "Options d\'affichage" 3149 3150 msgid "Apply filters and display options" 3151 msgstr "Appliquer les filtres et options d\'affichage" 3152 3153 msgid "Back to entries list" 3154 msgstr "Retour à la liste des billets" 3155 3156 msgid "New author (author ID):" 3157 msgstr "Nouvel auteur (identifiant utilisateur) :" 3158 3159 msgid "Hidden" 3160 msgstr "Masqué" 3161 3162 msgid "Create a new category for the post(s)" 3163 msgstr "Créer une nouvelle catégorie pour ce(s) billet(s)" 3164 2970 3165 msgid "This category will be created when you will save your post." 2971 3166 msgstr "Cette catégorie sera créée lorsque vous enregistrerez votre billet." -
locales/fr/main.po
r1526 r1529 1990 1990 msgstr "L'archive de Dotclear téléchargée semble être corrompue. Essayer de la <a %s>télécharger</a> à nouveau." 1991 1991 1992 msgid "If this problem persists try to <a href="http://dotclear.org/download">update manually</a>." 1993 msgstr "Si le problème persiste essayer de <a href="http://dotclear.org/download">mettre à jour manuellement</a>." 1994 1992 1995 msgid "The following files of your Dotclear installation have been modified so we won't try to update your installation. Please try to <a href=\"http://dotclear.org/download\">update manually</a>." 1993 1996 msgstr "Comme les fichiers suivants de votre installation de Dotclear ont été modifiés, votre installation ne peut être mise à jour. Merci de <a href=\"http://fr.dotclear.org/download\">mettre à jour manuellement</a>." … … 3159 3162 msgid "Create a new category for the post(s)" 3160 3163 msgstr "Créer une nouvelle catégorie pour ce(s) billet(s)" 3164 3165 msgid "This category will be created when you will save your post." 3166 msgstr "Cette catégorie sera créée lorsque vous enregistrerez votre billet." -
plugins/blogroll/index.php
r1504 r1529 177 177 178 178 <body> 179 <h2><?php echo html::escapeHTML($core->blog->name); ?> › <span class="page-title"><?php echo __('Blogroll'); ?></span></h2> 179 <?php 180 echo dcPage::breadcrumb( 181 array( 182 html::escapeHTML($core->blog->name) => '', 183 '<span class="page-title">'.__('Blogroll').'</span>' => '' 184 )); 185 ?> 180 186 181 187 <?php … … 277 283 '<div class="multi-part clear" id="add-link" title="'.__('Add a link').'">'. 278 284 '<form action="plugin.php" method="post" id="add-link-form">'. 279 '< fieldset><legend>'.__('Add a new link').'</legend>'.280 '<p class="col"><label for="link_title" class="required"><abbr title="'.__('Required field').'">*</abbr> '.__('Title:').' '.285 '<h3>'.__('Add a new link').'</h3>'. 286 '<p class="col"><label for="link_title" class="required"><abbr title="'.__('Required field').'">*</abbr> '.__('Title:').'</label> '. 281 287 form::field('link_title',30,255,$link_title). 282 '</ label></p>'.283 284 '<p class="col"><label for="link_href" class="required"><abbr title="'.__('Required field').'">*</abbr> '.__('URL:').' '.288 '</p>'. 289 290 '<p class="col"><label for="link_href" class="required"><abbr title="'.__('Required field').'">*</abbr> '.__('URL:').'</label> '. 285 291 form::field('link_href',30,255,$link_href). 286 '</ label></p>'.287 288 '<p class="col"><label for="link_desc">'.__('Description:').' '.292 '</p>'. 293 294 '<p class="col"><label for="link_desc">'.__('Description:').'</label> '. 289 295 form::field('link_desc',30,255,$link_desc). 290 '</ label></p>'.291 292 '<p class="col"><label for="link_lang">'.__('Language:').' '.296 '</p>'. 297 298 '<p class="col"><label for="link_lang">'.__('Language:').'</label> '. 293 299 form::field('link_lang',5,5,$link_lang). 294 '</ label></p>'.300 '</p>'. 295 301 '<p>'.form::hidden(array('p'),'blogroll'). 296 302 $core->formNonce(). 297 303 '<input type="submit" name="add_link" value="'.__('Save').'" /></p>'. 298 '</fieldset>'.299 304 '</form>'. 300 305 '</div>'; … … 303 308 '<div class="multi-part" id="add-cat" title="'.__('Add a category').'">'. 304 309 '<form action="plugin.php" method="post" id="add-category-form">'. 305 '< fieldset><legend>'.__('Add a new category').'</legend>'.306 '<p><label for="cat_title" class=" classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Title:').' '.307 form::field('cat_title',30,255,$cat_title).' </label>'.310 '<h3>'.__('Add a new category').'</h3>'. 311 '<p><label for="cat_title" class=" classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('Title:').'</label> '. 312 form::field('cat_title',30,255,$cat_title).' '. 308 313 form::hidden(array('p'),'blogroll'). 309 314 $core->formNonce(). 310 315 '<input type="submit" name="add_cat" value="'.__('Save').'" /></p>'. 311 '</fieldset>'.312 316 '</form>'. 313 317 '</div>'; … … 318 322 echo 319 323 '<form action="plugin.php" method="post" id="import-links-form" enctype="multipart/form-data">'. 320 '< fieldset><legend>'.__('Import links').'</legend>'.321 '<p><label for="links_file" class=" classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('OPML or XBEL File:').' '.322 '<input type="file" id="links_file" name="links_file" /></ label></p>'.324 '<h3>'.__('Import links').'</h3>'. 325 '<p><label for="links_file" class=" classic required"><abbr title="'.__('Required field').'">*</abbr> '.__('OPML or XBEL File:').'</label> '. 326 '<input type="file" id="links_file" name="links_file" /></p>'. 323 327 '<p>'.form::hidden(array('p'),'blogroll'). 324 328 $core->formNonce(). 325 329 '<input type="submit" name="import_links" value="'.__('Import').'" /></p>'. 326 '</fieldset>'.327 330 '</form>'; 328 331 } … … 330 333 echo 331 334 '<form action="plugin.php" method="post" id="import-links-form">'. 332 '< fieldset><legend>'.__('Import links').'</legend>';335 '<h3>'.__('Import links').'</h3>'; 333 336 if (empty($imported)) { 334 337 echo '<p>'.__('Nothing to import').'</p>'; … … 371 374 } 372 375 echo 373 '</fieldset>'.374 376 '</form>'; 375 377 } -
plugins/blogroll/index.php
r1454 r1529 208 208 209 209 <div class="multi-part" title="<?php echo __('Blogroll'); ?>"> 210 211 <?php if (!$rs->isEmpty()) { ?> 212 210 213 <form action="plugin.php" method="post" id="links-form"> 211 214 <table class="maximal dragable"> … … 251 254 </tbody> 252 255 </table> 253 <?php 254 if (!$rs->isEmpty()) { 255 echo 256 '<div class="two-cols">'. 257 '<p class="col">'.form::hidden('links_order',''). 258 form::hidden(array('p'),'blogroll'). 259 $core->formNonce(). 260 '<input type="submit" name="saveorder" value="'.__('Save order').'" /></p>'. 261 262 '<p class="col right"><input type="submit" class="delete" name="removeaction"'. 263 ' value="'.__('Delete selected links').'" '. 264 'onclick="return window.confirm(\''.html::escapeJS( 265 __('Are you sure you want to delete selected links?')).'\');" /></p>'. 266 '</div>'; 267 } else { 268 echo 269 '<div><p>'.__('The link list is empty.').'</p></div>'; 270 } 271 ?> 256 257 <div class="two-cols"> 258 <p class="col"> 259 <?php 260 echo 261 form::hidden('links_order',''). 262 form::hidden(array('p'),'blogroll'). 263 $core->formNonce(); 264 ?> 265 <input type="submit" name="saveorder" value="<?php echo __('Save order'); ?>" /></p> 266 <p class="col right"><input type="submit" class="delete" name="removeaction" 267 value="<?php echo __('Delete selected links'); ?>" 268 onclick="return window.confirm(' 269 <?php echo html::escapeJS(__('Are you sure you want to delete selected links?')); ?>');" /></p> 270 </div> 272 271 </form> 272 273 <?php 274 } else { 275 echo '<div><p>'.__('The link list is empty.').'</p></div>'; 276 } 277 ?> 278 273 279 </div> 274 280 -
plugins/pages/_install.php
r1505 r1529 20 20 /* Create first page 21 21 -------------------------------------------------------- */ 22 $core->setBlog('default');23 24 22 $core->blog->settings->addNamespace('pages'); 25 23
Note: See TracChangeset
for help on using the changeset viewer.