Dotclear

Changeset 1529:9f6e5c3c8344 for admin


Ignore:
Timestamp:
08/23/13 10:41:38 (11 years ago)
Author:
franck <carnet.franck.paul@…>
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.
Message:

Merge 2.5 commits into default branch

Location:
admin
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • admin/index.php

    r1488 r1529  
    121121$__dashboard_items = new ArrayObject(array(new ArrayObject,new ArrayObject)); 
    122122 
    123 # Documentation links 
    124123$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 } 
    139124 
    140125if ($core->auth->user_prefs->dashboard->dcnews) { 
     
    180165} 
    181166 
     167# Documentation links 
     168if ($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 
    182183$core->callBehavior('adminDashboardItems', $core, $__dashboard_items); 
    183184 
     
    193194     dcPage::jsLoad('js/_index.js'). 
    194195     # --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) 
    196202); 
    197203 
    198 echo '<h2>'.html::escapeHTML($core->blog->name).' &rsaquo; <span class="page-title">'.__('Dashboard').'</span></h2>'; 
     204# Dotclear updates notifications 
     205if ($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} 
    199221 
    200222if ($core->auth->getInfo('user_default_blog') != $core->blog->id && $core->auth->blog_count > 1) { 
     
    246268$dashboardItems = ''; 
    247269 
    248 # Dotclear updates notifications 
    249 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  
    265270# Errors modules notifications 
    266271if ($core->auth->isSuperAdmin()) 
     
    283288     if ($i->count() > 0) 
    284289     { 
    285           $dashboardItems .= '<div>'; 
     290          $dashboardItems .= '<div class="db-item">'; 
    286291          foreach ($i as $v) { 
    287292               $dashboardItems .= $v; 
     
    317322               } 
    318323          } catch (Exception $e) { } 
    319            
     324      
    320325          echo 
    321326          '<div id="quick">'. 
    322327          '<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>'. 
    326331          form::field('post_title',20,255,'','maximal'). 
    327           '</label></p>'. 
     332          '</p>'. 
    328333          '<p class="area"><label class="required" '. 
    329334          'for="post_content"><abbr title="'.__('Required field').'">*</abbr> '.__('Content:').'</label> '. 
    330335          form::textarea('post_content',50,7). 
    331336          '</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>'. 
    334339          ($core->auth->check('categories', $core->blog->id) 
    335340               ? '<div>'. 
    336                '<p id="new_cat">'.__('Add a new category').'</p>'. 
     341               '<p id="new_cat" class="q-cat">'.__('Add a new category').'</p>'. 
    337342               '<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>'. 
    343348               '</div>' 
    344349               : ''). 
     
    354359          form::hidden('post_notes',''). 
    355360          '</p>'. 
    356           '</fieldset>'. 
    357361          '</form>'. 
    358362          '</div>'; 
  • admin/index.php

    r1521 r1529  
    340340               ? '<div>'. 
    341341               '<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>'. 
    342343               '<p class="q-cat"><label for="new_cat_title">'.__('Title:').'</label> '. 
    343344               form::field('new_cat_title',30,255,'','').'</p>'. 
  • admin/js/_post.js

    r1515 r1529  
    11dotclear.commentExpander = function(line) { 
    22     var td = line.firstChild; 
    3       
     3 
    44     var img = document.createElement('img'); 
    55     img.src = dotclear.img_plus_src; 
     
    99     img.line = line; 
    1010     img.onclick = function() { dotclear.viewCommentContent(this,this.line); }; 
    11       
     11 
    1212     td.insertBefore(img,td.firstChild); 
    1313}; 
     
    1515dotclear.viewCommentContent = function(img,line) { 
    1616     var commentId = line.id.substr(1); 
    17       
     17 
    1818     var tr = document.getElementById('ce'+commentId); 
    19       
     19 
    2020     if (!tr) { 
    2121          tr = document.createElement('tr'); 
     
    2525          td.className = 'expand'; 
    2626          tr.appendChild(td); 
    27            
     27 
    2828          img.src = dotclear.img_minus_src; 
    2929          img.alt = dotclear.img_minus_alt; 
    30            
     30 
    3131          // Get comment content 
    3232          $.get('services.php',{f:'getCommentById',id: commentId},function(data) { 
    3333               var rsp = $(data).children('rsp')[0]; 
    34                 
     34 
    3535               if (rsp.attributes[0].value == 'ok') { 
    3636                    var comment = $(rsp).find('comment_display_content').text(); 
    37                      
     37 
    3838                    if (comment) { 
    3939                         $(td).append(comment); 
     
    4242                         var comment_ip = $(rsp).find('comment_ip').text(); 
    4343                         var comment_spam_disp = $(rsp).find('comment_spam_disp').text(); 
    44                           
     44 
    4545                         $(td).append('<p><strong>' + dotclear.msg.website + 
    4646                         '</strong> ' + comment_site + '<br />' + 
     
    5252               } 
    5353          }); 
    54            
     54 
    5555          $(line).toggleClass('expand'); 
    5656          line.parentNode.insertBefore(tr,line.nextSibling); 
     
    7474$(function() { 
    7575     if (!document.getElementById) { return; } 
    76       
     76 
    7777     if (document.getElementById('edit-entry')) 
    7878     { 
     
    9191               } 
    9292          }); 
    93            
     93 
    9494          var excerptTb = new jsToolBar(document.getElementById('post_excerpt')); 
    9595          var contentTb = new jsToolBar(document.getElementById('post_content')); 
    9696          excerptTb.context = contentTb.context = 'post'; 
    9797     } 
    98       
     98 
    9999     if (document.getElementById('comment_content')) { 
    100100          var commentTb = new jsToolBar(document.getElementById('comment_content')); 
    101101     } 
    102       
     102 
    103103     // Post preview 
    104104     $('#post-preview').modalWeb($(window).width()-40,$(window).height()-40); 
    105       
     105 
    106106     // Tabs events 
    107107     $('#edit-entry').onetabload(function() { 
    108108          dotclear.hideLockable(); 
    109            
     109 
    110110          // Add date picker 
    111111          var post_dtPick = new datePicker($('#post_dt').get(0)); 
    112112          post_dtPick.img_top = '1.5em'; 
    113113          post_dtPick.draw(); 
    114            
     114 
    115115          // Confirm post deletion 
    116116          $('input[name="delete"]').click(function() { 
    117                     return window.confirm(dotclear.msg.confirm_delete_post); 
    118           }); 
    119            
     117               return window.confirm(dotclear.msg.confirm_delete_post); 
     118          }); 
     119 
    120120          // Hide some fields 
    121121          $('#notes-area label').toggleWithLegend($('#notes-area').children().not('label'),{ 
    122122               cookie: 'dcx_post_notes', 
    123                hide: $('#post_notes').val() == '' 
     123                  hide: $('#post_notes').val() == '', 
     124                  legend_click: true 
    124125          }); 
    125126          $('#new_cat').toggleWithLegend( 
    126127               $('#new_cat').parent().children().not('#new_cat'), 
    127                {} // no cookie on new category as we don't use this every day 
     128               {legend_click: true} // no cookie on new category as we don't use this every day 
    128129          ); 
    129130          $('#post_lang').parent().toggleWithLegend($('#post_lang'),{ 
    130                cookie: 'dcx_post_lang' 
     131              cookie: 'dcx_post_lang', 
     132              legend_click: true 
    131133          }); 
    132134          $('#post_password').parent().toggleWithLegend($('#post_password'),{ 
    133135               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          }); 
    137159          // We load toolbar on excerpt only when it's ready 
    138160          $('#excerpt-area label').toggleWithLegend($('#excerpt-area').children().not('label'),{ 
     
    140162               hide: $('#post_excerpt').val() == '' 
    141163          }); 
    142            
     164 
    143165          // Load toolbars 
    144166          contentTb.switchMode(formatField.value); 
     
    156178               return false; 
    157179          }); 
    158            
     180 
    159181          // Markup validator 
    160182          var h = document.createElement('h4'); 
    161183          var a = document.createElement('a'); 
    162184          a.href = '#'; 
     185          a.className = 'button'; 
    163186          $(a).click(function() { 
    164187               var params = { 
     
    170193                    lang: $('#post_lang').get(0).value 
    171194               }; 
    172                 
     195 
    173196               $.post('services.php',params,function(data) { 
    174197                    if ($(data).find('rsp').attr('status') != 'ok') { 
     
    176199                         return false; 
    177200                    } 
    178                      
     201 
    179202                    if ($(data).find('valid').text() == 1) { 
    180203                         var p = document.createElement('p'); 
    181204                         p.id = 'markup-validator'; 
    182                           
     205 
    183206                         if ($('#markup-validator').length > 0) { 
    184207                              $('#markup-validator').remove(); 
    185208                         } 
    186                           
     209 
    187210                         $(p).addClass('message'); 
    188211                         $(p).text(dotclear.msg.xhtml_valid); 
     
    194217                         var div = document.createElement('div'); 
    195218                         div.id = 'markup-validator'; 
    196                           
     219 
    197220                         if ($('#markup-validator').length > 0) { 
    198221                              $('#markup-validator').remove(); 
    199222                         } 
    200                           
     223 
    201224                         $(div).addClass('error'); 
    202225                         $(div).html('<p><strong>' + dotclear.msg.xhtml_not_valid + '</strong></p>' + $(data).find('errors').text()); 
    203226                         $(div).insertAfter(h); 
    204                          $(div).backgroundFade({sColor:'#ffffff',eColor:'#ff9999',steps:50},function() { 
    205                                    $(this).backgroundFade({sColor:'#ff9999',eColor:'#ffffff'}); 
     227                         $(div).backgroundFade({sColor:'#ffffff',eColor:'#FFBABA',steps:50},function() { 
     228                                   $(this).backgroundFade({sColor:'#ffbaba',eColor:'#ffffff'}); 
    206229                         }); 
    207230                    } 
    208                      
     231 
    209232                    return false; 
    210233               }); 
    211                 
     234 
    212235               return false; 
    213236          }); 
    214            
     237 
    215238          a.appendChild(document.createTextNode(dotclear.msg.xhtml_validator)); 
    216239          h.appendChild(a); 
    217240          $(h).appendTo('#entry-content'); 
    218            
     241 
    219242          // Check unsaved changes before XHTML conversion 
    220243          var excerpt = $('#post_excerpt').val(); 
     
    223246               if (excerpt != $('#post_excerpt').val() || content != $('#post_content').val()) { 
    224247                    return window.confirm(dotclear.msg.confirm_change_post_format); 
    225                }     
     248               } 
    226249          }); 
    227250     }); 
    228       
     251 
    229252     $('#comments').onetabload(function() { 
    230253          $('.comments-list tr.line').each(function() { 
     
    234257               dotclear.checkboxesHelpers(this); 
    235258          }); 
    236            
     259 
    237260          dotclear.commentsActionsHelper(); 
    238261     }); 
    239       
     262 
    240263     $('#add-comment').onetabload(function() { 
    241264          commentTb.draw('xhtml'); 
  • admin/js/_post.js

    r1525 r1529  
    7979          // Get document format and prepare toolbars 
    8080          var formatField = $('#post_format').get(0); 
     81          var last_post_format = $(formatField).val(); 
    8182          $(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               } 
    8492          }); 
    8593 
     
    151159          // We load toolbar on excerpt only when it's ready 
    152160          $('#excerpt-area label').toggleWithLegend($('#excerpt-area').children().not('label'),{ 
    153                fn: function() { excerptTb.switchMode(formatField.value); }, 
    154161               cookie: 'dcx_post_excerpt', 
    155162               hide: $('#post_excerpt').val() == '' 
     
    158165          // Load toolbars 
    159166          contentTb.switchMode(formatField.value); 
    160  
     167          excerptTb.switchMode(formatField.value); 
     168           
    161169          // Replace attachment remove links by a POST form submit 
    162170          $('a.attachment-remove').click(function() { 
  • admin/post.php

    r1488 r1529  
    5050} 
    5151 
     52# Getting categories 
     53$categories_combo = array('&nbsp;' => ''); 
     54try { 
     55     $categories = $core->blog->getCategories(array('post_type'=>'post')); 
     56     while ($categories->fetch()) { 
     57          $categories_combo[] = new formSelectOption( 
     58               str_repeat('&nbsp;&nbsp;',$categories->level-1).($categories->level-1 == 0 ? '' : '&bull; ').html::escapeHTML($categories->cat_title), 
     59               $categories->cat_id 
     60          ); 
     61     } 
     62} catch (Exception $e) { } 
     63 
    5264# Status combo 
    5365foreach ($core->blog->getAllPostStatus() as $k => $v) { 
     
    8294if (!empty($_REQUEST['id'])) 
    8395{ 
     96     $page_title = __('Edit entry'); 
     97      
    8498     $params['post_id'] = $_REQUEST['id']; 
    8599      
     
    111125          $post_open_tb = (boolean) $post->post_open_tb; 
    112126           
    113           $page_title = __('Edit entry'); 
    114            
    115127          $can_edit_post = $post->isEditable(); 
    116128          $can_delete= $post->isDeletable(); 
     
    121133          if ($next_rs !== null) { 
    122134               $next_link = sprintf($post_link,$next_rs->post_id, 
    123                     html::escapeHTML($next_rs->post_title),__('next entry').'&nbsp;&#187;'); 
     135                    html::escapeHTML($next_rs->post_title),__('Next entry').'&nbsp;&#187;'); 
    124136               $next_headlink = sprintf($post_headlink,'next', 
    125137                    html::escapeHTML($next_rs->post_title),$next_rs->post_id); 
     
    128140          if ($prev_rs !== null) { 
    129141               $prev_link = sprintf($post_link,$prev_rs->post_id, 
    130                     html::escapeHTML($prev_rs->post_title),'&#171;&nbsp;'.__('previous entry')); 
     142                    html::escapeHTML($prev_rs->post_title),'&#171;&nbsp;'.__('Previous entry')); 
    131143               $prev_headlink = sprintf($post_headlink,'previous', 
    132144                    html::escapeHTML($prev_rs->post_title),$prev_rs->post_id); 
     
    314326} 
    315327 
     328if ($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 = __('&ldquo;%s&rdquo;'); 
     346     $page_title_edit = sprintf($edit_entry_str, html::escapeHTML($post_title)).' '.$img_status; 
     347} else { 
     348     $img_status = ''; 
     349} 
     350 
     351 
    316352dcPage::open($page_title.' - '.__('Entries'), 
    317353     dcPage::jsDatePicker(). 
     
    324360     $core->callBehavior('adminPostHeaders'). 
    325361     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          )) 
    327369); 
    328370 
     
    354396} 
    355397 
    356 echo '<h2>'.html::escapeHTML($core->blog->name).' &rsaquo; '.'<a href="posts.php">'.__('Entries').'</a> &rsaquo; <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 &ldquo;%s&rdquo;'); 
    375      echo sprintf($edit_entry_str, html::escapeHTML($post_title)).' '.$img_status; 
    376 } else { 
    377      echo $page_title; 
    378 } 
    379 echo '</span></h2>'; 
    380  
    381398if ($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>'; 
    383400} 
    384401if ($post_id) 
    385402{ 
    386      echo '<p>'; 
     403     echo '<p class="nav_prevnext">'; 
    387404     if ($prev_link) { echo $prev_link; } 
    388      if ($next_link && $prev_link) { echo ' - '; } 
     405     if ($next_link && $prev_link) { echo ' | '; } 
    389406     if ($next_link) { echo $next_link; } 
    390407      
     
    401418     exit; 
    402419} 
    403  
    404420/* Post form if we can edit post 
    405421-------------------------------------------------------- */ 
    406422if ($can_edit_post) 
    407423{ 
    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.'&amp;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">'; 
    409537     echo '<form action="post.php" method="post" id="entry-form">'; 
    410538     echo '<div id="entry-wrapper">'; 
    411539     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); 
    412549      
    413550     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">'. 
    436552     ($post_id ? form::hidden('id',$post_id) : ''). 
    437553     '<input type="submit" value="'.__('Save').' (s)" '. 
     
    458574     echo '<div id="entry-sidebar">'; 
    459575      
    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.'&amp;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) 
    528587     $core->callBehavior('adminPostFormSidebar',isset($post) ? $post : null); 
    529       
    530588     echo '</div>';      // End #entry-sidebar 
    531589 
     
    558616     if ($can_edit_post && $core->auth->check('publish,contentadmin',$core->blog->id)) 
    559617     { 
    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'; 
    564622     } 
    565623      
     
    623681     '<form action="comment.php" method="post" id="comment-form">'. 
    624682     '<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>'. 
    626684     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>'. 
    630688     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>'. 
    634692     form::field('comment_site',30,255,html::escapeHTML($core->auth->getInfo('user_url'))). 
    635      '</label></p>'. 
     693     '</p>'. 
    636694      
    637695     '<p class="area"><label for="comment_content" class="required"><abbr title="'.__('Required field').'">*</abbr> '. 
     
    675733     echo 
    676734     '<table class="comments-list"><tr>'. 
    677      '<th colspan="2">'.__('Author').'</th>'. 
     735     '<th colspan="2" class="first">'.__('Author').'</th>'. 
    678736     '<th>'.__('Date').'</th>'. 
    679737     '<th class="nowrap">'.__('IP address').'</th>'. 
    680738     '<th>'.__('Status').'</th>'. 
    681      '<th>&nbsp;</th>'. 
     739     '<th>'.__('Edit').'</th>'. 
    682740     '</tr>'; 
    683741      
     
    689747          switch ($rs->comment_status) { 
    690748               case 1: 
    691                     $img_status = sprintf($img,__('published'),'check-on.png'); 
     749                    $img_status = sprintf($img,__('Published'),'check-on.png'); 
    692750                    break; 
    693751               case 0: 
    694                     $img_status = sprintf($img,__('unpublished'),'check-off.png'); 
     752                    $img_status = sprintf($img,__('Unpublished'),'check-off.png'); 
    695753                    break; 
    696754               case -1: 
    697                     $img_status = sprintf($img,__('pending'),'check-wrn.png'); 
     755                    $img_status = sprintf($img,__('Pending'),'check-wrn.png'); 
    698756                    break; 
    699757               case -2: 
    700                     $img_status = sprintf($img,__('junk'),'junk.png'); 
     758                    $img_status = sprintf($img,__('Junk'),'junk.png'); 
    701759                    break; 
    702760          } 
     
    713771          '<td class="nowrap status">'.$img_status.'</td>'. 
    714772          '<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>'. 
    716774           
    717775          '</tr>'; 
     
    721779} 
    722780 
    723 dcPage::helpBlock('core_post','core_wiki'); 
     781dcPage::helpBlock('core_post','core_trackbacks','core_wiki'); 
    724782dcPage::close(); 
    725783?> 
  • admin/update.php

    r1479 r1529  
    174174          dcPage::jsPageTabs($default_tab). 
    175175          dcPage::jsLoad('js/_update.js') 
    176      : '') 
     176          : ''), 
     177     dcPage::breadcrumb( 
     178          array( 
     179               __('System') => '', 
     180               '<span class="page-title">'.__('Dotclear update').'</span>' => '' 
     181          )) 
    177182); 
    178183 
    179184if (!$core->error->flag()) { 
    180      echo '<h2>'.__('Dotclear update').'</h2>'; 
    181       
    182185     if (!empty($_GET['nocache'])) { 
    183186          dcPage::message(__('Manual checking of update done successfully.')); 
     
    200203          echo 
    201204               '<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>' : ''). 
    203206                    '</p>'. 
    204207           
     
    246249     '<p class="message">'. 
    247250     __("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>'. 
    249252     '</p>'; 
    250253} 
  • admin/update.php

    r1474 r1529  
    106106                         throw new Exception( 
    107107                              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>.') 
    109112                         ); 
    110113                    } 
Note: See TracChangeset for help on using the changeset viewer.

Sites map