Dotclear


Ignore:
Timestamp:
10/21/13 09:08:36 (12 years ago)
Author:
Dsls
Branch:
twig
Children:
2593:6741802596a0, 2609:c26642f775e2
Parents:
2321:3ab5e6c3d301 (diff), 2466:e42d3233f080 (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 with 2.6

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • inc/admin/lib.dc.page.php

    r2313 r2468  
    1717{ 
    1818     private static $loaded_js=array(); 
     19     private static $N_TYPES = array( 
     20          "success" => "success",  
     21          "warning" => "warning-msg",  
     22          "error" => "error",  
     23          "message" => "message",  
     24          "static" => "static-msg"); 
    1925 
    2026     # Auth check 
     
    187193          $res = ''; 
    188194          if (isset($_SESSION['notifications'])) { 
    189                $types = array("success" => "success", "warning" => "warning-msg", "error" => "error"); 
    190195               $notifications = $_SESSION['notifications']; 
    191                foreach ($types as $type => $class) { 
    192                     if (isset($notifications[$type])) { 
    193                          foreach ($notifications[$type] as $n) { 
    194                               $res .= self::getNotification($n,$class); 
    195                          } 
    196                     } 
     196               foreach ($_SESSION['notifications'] as $notification) { 
     197                    $res .= self::getNotification($notification); 
    197198               } 
    198199               unset($_SESSION['notifications']); 
     
    201202     } 
    202203 
    203      public static function addNotice($type,$message) 
    204      { 
    205           $notification = isset($_SESSION['notifications']) ? $_SESSION['notifications'] : array(); 
    206           $notification[$type][] = array('ts' => time(), 'text' => $message); 
    207           $_SESSION['notifications'] = $notification; 
    208      } 
    209  
    210      public static function addSuccessNotice($message) 
    211      { 
    212           self::addNotice("success",$message); 
    213      } 
    214  
    215      public static function addWarningNotice($message) 
    216      { 
    217           self::addNotice("warning",$message); 
    218      } 
    219  
    220      public static function addErrorNotice($message) 
    221      { 
    222           self::addNotice("error",$message); 
    223      } 
    224  
    225      protected static function getNotification($msg,$class) 
     204     public static function addNotice($type,$message,$options=array()) 
     205     { 
     206          if (isset(self::$N_TYPES[$type])){ 
     207               $class = self::$N_TYPES[$type]; 
     208          } else { 
     209               $class=$type; 
     210          } 
     211          if (isset($_SESSION['notifications']) && is_array($_SESSION['notifications'])) { 
     212               $notifications = $_SESSION['notifications']; 
     213          } else { 
     214               $notifications = array(); 
     215          } 
     216           
     217          $n = array_merge($options,array('class' => $class,'ts' => time(), 'text' => $message)); 
     218          if ($type != "static") { 
     219               $notifications[] = $n; 
     220          } else { 
     221               array_unshift($notifications, $n); 
     222          } 
     223          $_SESSION['notifications'] = $notifications; 
     224     } 
     225 
     226     public static function addSuccessNotice($message,$options=array()) 
     227     { 
     228          self::addNotice("success",$message,$options); 
     229     } 
     230 
     231     public static function addWarningNotice($message,$options=array()) 
     232     { 
     233          self::addNotice("warning",$message,$options); 
     234     } 
     235 
     236     public static function addErrorNotice($message,$options=array()) 
     237     { 
     238          self::addNotice("error",$message,$options); 
     239     } 
     240 
     241     protected static function getNotification($n) 
    226242     { 
    227243          global $core; 
    228  
    229           $res = '<p class="'.$class.'">'.dt::str(__('[%H:%M:%S]'),$msg['ts'],$core->auth->getInfo('user_tz')).' '.$msg['text'].'</p>'; 
     244          $tag = (isset($n['divtag'])&& $n['divtag'])?'div':'p'; 
     245          $ts = ''; 
     246          if (!isset($n['with_ts']) || ($n['with_ts'] == true)) { 
     247               $ts = dt::str(__('[%H:%M:%S]'),$n['ts'],$core->auth->getInfo('user_tz')).' '; 
     248          } 
     249          $res = '<'.$tag.' class="'.$n['class'].'">'.$ts.$n['text'].'</'.$tag.'>'; 
    230250          return $res; 
    231251     } 
  • inc/admin/lib.dc.page.php

    r2328 r2468  
    105105 
    106106          self::jsLoadIE7(). 
    107           '  <link rel="stylesheet" href="style/default.css" type="text/css" media="screen" />'."\n"; 
     107          '    <link rel="stylesheet" href="style/default.css" type="text/css" media="screen" />'."\n"; 
    108108          if (l10n::getTextDirection($GLOBALS['_lang']) == 'rtl') { 
    109109               echo 
    110                '  <link rel="stylesheet" href="style/default-rtl.css" type="text/css" media="screen" />'."\n"; 
     110               '    <link rel="stylesheet" href="style/default-rtl.css" type="text/css" media="screen" />'."\n"; 
    111111          } 
    112112 
     
    118118               '<link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon" />'; 
    119119          } 
     120 
    120121          echo 
    121122          self::jsCommon(). 
     
    327328 
    328329          self::jsLoadIE7(). 
    329           '    <link rel="stylesheet" href="style/default.css" type="text/css" media="screen" />'."\n"; 
     330          '    <link rel="stylesheet" href="style/default.css" type="text/css" media="screen" />'."\n"; 
    330331          if (l10n::getTextDirection($GLOBALS['_lang']) == 'rtl') { 
    331332               echo 
    332                '    <link rel="stylesheet" href="style/default-rtl.css" type="text/css" media="screen" />'."\n"; 
     333               '    <link rel="stylesheet" href="style/default-rtl.css" type="text/css" media="screen" />'."\n"; 
    333334          } 
    334335 
     
    591592          "//<![CDATA[\n". 
    592593          self::jsVar('dotclear.nonce',$GLOBALS['core']->getNonce()). 
     594 
    593595          self::jsVar('dotclear.img_plus_src','images/expand.png'). 
    594596          self::jsVar('dotclear.img_plus_alt',__('uncover')). 
     
    597599          self::jsVar('dotclear.img_menu_on','images/menu_on.png'). 
    598600          self::jsVar('dotclear.img_menu_off','images/menu_off.png'). 
    599            
     601 
    600602          self::jsVar('dotclear.img_plus_theme_src','images/plus-theme.png'). 
    601603          self::jsVar('dotclear.img_plus_theme_alt',__('uncover')). 
     
    702704          self::jsVar('dotclear.msg.module_tags', 
    703705               __('Tags:')). 
    704                "\n//]]>\n". 
     706          "\n//]]>\n". 
    705707          "</script>\n"; 
    706708     } 
     
    742744               $default = "'".html::escapeJS($default)."'"; 
    743745          } 
    744            
     746 
    745747          return 
    746748          self::jsLoad('js/jquery/jquery.pageTabs.js'). 
     
    764766     public static function jsModal() 
    765767     { 
    766           return 
    767           '<link rel="stylesheet" type="text/css" href="style/modal/modal.css" />'."\n". 
    768           self::jsLoad('js/jquery/jquery.modal.js'). 
    769           '<script type="text/javascript">'."\n". 
    770           "//<![CDATA[\n". 
    771           self::jsVar('$.modal.prototype.params.loader_img','style/modal/loader.gif'). 
    772           self::jsVar('$.modal.prototype.params.close_img','style/modal/close.png'). 
    773           "\n//]]>\n". 
    774           "</script>\n"; 
     768     return 
     769     '<link rel="stylesheet" type="text/css" href="style/modal/modal.css" />'."\n". 
     770     self::jsLoad('js/jquery/jquery.modal.js'). 
     771     '<script type="text/javascript">'."\n". 
     772     "//<![CDATA[\n". 
     773     self::jsVar('$.modal.prototype.params.loader_img','style/modal/loader.gif'). 
     774     self::jsVar('$.modal.prototype.params.close_img','style/modal/close.png'). 
     775     "\n//]]>\n". 
     776     "</script>\n"; 
    775777     } 
    776778 
    777779     public static function jsColorPicker() 
    778780     { 
    779           return 
    780           '<link rel="stylesheet" type="text/css" href="style/farbtastic/farbtastic.css" />'."\n". 
    781           self::jsLoad('js/jquery/jquery.farbtastic.js'). 
    782           self::jsLoad('js/color-picker.js'); 
     781     return 
     782     '<link rel="stylesheet" type="text/css" href="style/farbtastic/farbtastic.css" />'."\n". 
     783     self::jsLoad('js/jquery/jquery.farbtastic.js'). 
     784     self::jsLoad('js/color-picker.js'); 
    783785     } 
    784786 
    785787     public static function jsDatePicker() 
    786788     { 
    787           return 
    788           '<link rel="stylesheet" type="text/css" href="style/date-picker.css" />'."\n". 
    789           self::jsLoad('js/date-picker.js'). 
    790           '<script type="text/javascript">'."\n". 
    791           "//<![CDATA[\n". 
    792  
    793           "datePicker.prototype.months[0] = '".html::escapeJS(__('January'))."'; ". 
    794           "datePicker.prototype.months[1] = '".html::escapeJS(__('February'))."'; ". 
    795           "datePicker.prototype.months[2] = '".html::escapeJS(__('March'))."'; ". 
    796           "datePicker.prototype.months[3] = '".html::escapeJS(__('April'))."'; ". 
    797           "datePicker.prototype.months[4] = '".html::escapeJS(__('May'))."'; ". 
    798           "datePicker.prototype.months[5] = '".html::escapeJS(__('June'))."'; ". 
    799           "datePicker.prototype.months[6] = '".html::escapeJS(__('July'))."'; ". 
    800           "datePicker.prototype.months[7] = '".html::escapeJS(__('August'))."'; ". 
    801           "datePicker.prototype.months[8] = '".html::escapeJS(__('September'))."'; ". 
    802           "datePicker.prototype.months[9] = '".html::escapeJS(__('October'))."'; ". 
    803           "datePicker.prototype.months[10] = '".html::escapeJS(__('November'))."'; ". 
    804           "datePicker.prototype.months[11] = '".html::escapeJS(__('December'))."'; ". 
    805  
    806           "datePicker.prototype.days[0] = '".html::escapeJS(__('Monday'))."'; ". 
    807           "datePicker.prototype.days[1] = '".html::escapeJS(__('Tuesday'))."'; ". 
    808           "datePicker.prototype.days[2] = '".html::escapeJS(__('Wednesday'))."'; ". 
    809           "datePicker.prototype.days[3] = '".html::escapeJS(__('Thursday'))."'; ". 
    810           "datePicker.prototype.days[4] = '".html::escapeJS(__('Friday'))."'; ". 
    811           "datePicker.prototype.days[5] = '".html::escapeJS(__('Saturday'))."'; ". 
    812           "datePicker.prototype.days[6] = '".html::escapeJS(__('Sunday'))."'; ". 
    813  
    814           "datePicker.prototype.img_src = 'images/date-picker.png'; ". 
    815  
    816           "datePicker.prototype.close_msg = '".html::escapeJS(__('close'))."'; ". 
    817           "datePicker.prototype.now_msg = '".html::escapeJS(__('now'))."'; ". 
    818  
    819           "\n//]]>\n". 
    820           "</script>\n"; 
     789     return 
     790     '<link rel="stylesheet" type="text/css" href="style/date-picker.css" />'."\n". 
     791     self::jsLoad('js/date-picker.js'). 
     792     '<script type="text/javascript">'."\n". 
     793     "//<![CDATA[\n". 
     794 
     795     "datePicker.prototype.months[0] = '".html::escapeJS(__('January'))."'; ". 
     796     "datePicker.prototype.months[1] = '".html::escapeJS(__('February'))."'; ". 
     797     "datePicker.prototype.months[2] = '".html::escapeJS(__('March'))."'; ". 
     798     "datePicker.prototype.months[3] = '".html::escapeJS(__('April'))."'; ". 
     799     "datePicker.prototype.months[4] = '".html::escapeJS(__('May'))."'; ". 
     800     "datePicker.prototype.months[5] = '".html::escapeJS(__('June'))."'; ". 
     801     "datePicker.prototype.months[6] = '".html::escapeJS(__('July'))."'; ". 
     802     "datePicker.prototype.months[7] = '".html::escapeJS(__('August'))."'; ". 
     803     "datePicker.prototype.months[8] = '".html::escapeJS(__('September'))."'; ". 
     804     "datePicker.prototype.months[9] = '".html::escapeJS(__('October'))."'; ". 
     805     "datePicker.prototype.months[10] = '".html::escapeJS(__('November'))."'; ". 
     806     "datePicker.prototype.months[11] = '".html::escapeJS(__('December'))."'; ". 
     807 
     808     "datePicker.prototype.days[0] = '".html::escapeJS(__('Monday'))."'; ". 
     809     "datePicker.prototype.days[1] = '".html::escapeJS(__('Tuesday'))."'; ". 
     810     "datePicker.prototype.days[2] = '".html::escapeJS(__('Wednesday'))."'; ". 
     811     "datePicker.prototype.days[3] = '".html::escapeJS(__('Thursday'))."'; ". 
     812     "datePicker.prototype.days[4] = '".html::escapeJS(__('Friday'))."'; ". 
     813     "datePicker.prototype.days[5] = '".html::escapeJS(__('Saturday'))."'; ". 
     814     "datePicker.prototype.days[6] = '".html::escapeJS(__('Sunday'))."'; ". 
     815 
     816     "datePicker.prototype.img_src = 'images/date-picker.png'; ". 
     817 
     818     "datePicker.prototype.close_msg = '".html::escapeJS(__('close'))."'; ". 
     819     "datePicker.prototype.now_msg = '".html::escapeJS(__('now'))."'; ". 
     820 
     821     "\n//]]>\n". 
     822     "</script>\n"; 
    821823     } 
    822824 
    823825     public static function jsToolBar() 
    824826     { 
    825           $res = 
    826           '<link rel="stylesheet" type="text/css" href="style/jsToolBar/jsToolBar.css" />'. 
    827           '<script type="text/javascript" src="js/jsToolBar/jsToolBar.js"></script>'; 
    828  
    829           if (isset($GLOBALS['core']->auth) && $GLOBALS['core']->auth->getOption('enable_wysiwyg')) { 
    830                $res .= '<script type="text/javascript" src="js/jsToolBar/jsToolBar.wysiwyg.js"></script>'; 
    831           } 
    832  
    833           $res .= 
    834           '<script type="text/javascript" src="js/jsToolBar/jsToolBar.dotclear.js"></script>'. 
    835           '<script type="text/javascript">'."\n". 
    836           "//<![CDATA[\n". 
    837           "jsToolBar.prototype.dialog_url = 'popup.php'; ". 
    838           "jsToolBar.prototype.iframe_css = '". 
    839           'body{'. 
    840           'font: 12px "DejaVu Sans","Lucida Grande","Lucida Sans Unicode",Arial,sans-serif;'. 
    841           'color : #000;'. 
    842           'background: #f9f9f9;'. 
    843           'margin: 0;'. 
    844           'padding : 2px;'. 
    845           'border: none;'. 
    846           (l10n::getTextDirection($GLOBALS['_lang']) == 'rtl' ? 'direction:rtl;' : ''). 
    847           '}'. 
    848           'pre, code, kbd, samp {'. 
    849           'font-family:"Courier New",Courier,monospace;'. 
    850           'font-size : 1.1em;'. 
    851           '}'. 
    852           'code {'. 
    853           'color : #666;'. 
    854           'font-weight : bold;'. 
    855           '}'. 
    856           'body > p:first-child {'. 
    857           'margin-top: 0;'. 
    858           '}'. 
    859           "'; ". 
    860           "jsToolBar.prototype.base_url = '".html::escapeJS($GLOBALS['core']->blog->host)."'; ". 
    861           "jsToolBar.prototype.switcher_visual_title = '".html::escapeJS(__('visual'))."'; ". 
    862           "jsToolBar.prototype.switcher_source_title = '".html::escapeJS(__('source'))."'; ". 
    863           "jsToolBar.prototype.legend_msg = '". 
    864           html::escapeJS(__('You can use the following shortcuts to format your text.'))."'; ". 
    865           "jsToolBar.prototype.elements.blocks.options.none = '".html::escapeJS(__('-- none --'))."'; ". 
    866           "jsToolBar.prototype.elements.blocks.options.nonebis = '".html::escapeJS(__('-- block format --'))."'; ". 
    867           "jsToolBar.prototype.elements.blocks.options.p = '".html::escapeJS(__('Paragraph'))."'; ". 
    868           "jsToolBar.prototype.elements.blocks.options.h1 = '".html::escapeJS(__('Level 1 header'))."'; ". 
    869           "jsToolBar.prototype.elements.blocks.options.h2 = '".html::escapeJS(__('Level 2 header'))."'; ". 
    870           "jsToolBar.prototype.elements.blocks.options.h3 = '".html::escapeJS(__('Level 3 header'))."'; ". 
    871           "jsToolBar.prototype.elements.blocks.options.h4 = '".html::escapeJS(__('Level 4 header'))."'; ". 
    872           "jsToolBar.prototype.elements.blocks.options.h5 = '".html::escapeJS(__('Level 5 header'))."'; ". 
    873           "jsToolBar.prototype.elements.blocks.options.h6 = '".html::escapeJS(__('Level 6 header'))."'; ". 
    874           "jsToolBar.prototype.elements.strong.title = '".html::escapeJS(__('Strong emphasis'))."'; ". 
    875           "jsToolBar.prototype.elements.em.title = '".html::escapeJS(__('Emphasis'))."'; ". 
    876           "jsToolBar.prototype.elements.ins.title = '".html::escapeJS(__('Inserted'))."'; ". 
    877           "jsToolBar.prototype.elements.del.title = '".html::escapeJS(__('Deleted'))."'; ". 
    878           "jsToolBar.prototype.elements.quote.title = '".html::escapeJS(__('Inline quote'))."'; ". 
    879           "jsToolBar.prototype.elements.code.title = '".html::escapeJS(__('Code'))."'; ". 
    880           "jsToolBar.prototype.elements.br.title = '".html::escapeJS(__('Line break'))."'; ". 
    881           "jsToolBar.prototype.elements.blockquote.title = '".html::escapeJS(__('Blockquote'))."'; ". 
    882           "jsToolBar.prototype.elements.pre.title = '".html::escapeJS(__('Preformated text'))."'; ". 
    883           "jsToolBar.prototype.elements.ul.title = '".html::escapeJS(__('Unordered list'))."'; ". 
    884           "jsToolBar.prototype.elements.ol.title = '".html::escapeJS(__('Ordered list'))."'; ". 
    885  
    886           "jsToolBar.prototype.elements.link.title = '".html::escapeJS(__('Link'))."'; ". 
    887           "jsToolBar.prototype.elements.link.href_prompt = '".html::escapeJS(__('URL?'))."'; ". 
    888           "jsToolBar.prototype.elements.link.hreflang_prompt = '".html::escapeJS(__('Language?'))."'; ". 
    889  
    890           "jsToolBar.prototype.elements.img.title = '".html::escapeJS(__('External image'))."'; ". 
    891           "jsToolBar.prototype.elements.img.src_prompt = '".html::escapeJS(__('URL?'))."'; ". 
    892  
    893           "jsToolBar.prototype.elements.img_select.title = '".html::escapeJS(__('Media chooser'))."'; ". 
    894           "jsToolBar.prototype.elements.post_link.title = '".html::escapeJS(__('Link to an entry'))."'; "; 
    895  
    896           if (!$GLOBALS['core']->auth->check('media,media_admin',$GLOBALS['core']->blog->id)) { 
    897                $res .= "jsToolBar.prototype.elements.img_select.disabled = true;\n"; 
    898           } 
    899  
    900           $res .= 
    901           "\n//]]>\n". 
    902           "</script>\n"; 
    903  
    904           return $res; 
     827     $res = 
     828     '<link rel="stylesheet" type="text/css" href="style/jsToolBar/jsToolBar.css" />'. 
     829     '<script type="text/javascript" src="js/jsToolBar/jsToolBar.js"></script>'; 
     830 
     831     if (isset($GLOBALS['core']->auth) && $GLOBALS['core']->auth->getOption('enable_wysiwyg')) { 
     832          $res .= '<script type="text/javascript" src="js/jsToolBar/jsToolBar.wysiwyg.js"></script>'; 
     833     } 
     834 
     835     $res .= 
     836     '<script type="text/javascript" src="js/jsToolBar/jsToolBar.dotclear.js"></script>'. 
     837     '<script type="text/javascript">'."\n". 
     838     "//<![CDATA[\n". 
     839     "jsToolBar.prototype.dialog_url = 'popup.php'; ". 
     840     "jsToolBar.prototype.iframe_css = '". 
     841     'body{'. 
     842     'font: 12px "DejaVu Sans","Lucida Grande","Lucida Sans Unicode",Arial,sans-serif;'. 
     843     'color : #000;'. 
     844     'background: #f9f9f9;'. 
     845     'margin: 0;'. 
     846     'padding : 2px;'. 
     847     'border: none;'. 
     848     (l10n::getTextDirection($GLOBALS['_lang']) == 'rtl' ? 'direction:rtl;' : ''). 
     849     '}'. 
     850     'pre, code, kbd, samp {'. 
     851     'font-family:"Courier New",Courier,monospace;'. 
     852     'font-size : 1.1em;'. 
     853     '}'. 
     854     'code {'. 
     855     'color : #666;'. 
     856     'font-weight : bold;'. 
     857     '}'. 
     858     'body > p:first-child {'. 
     859     'margin-top: 0;'. 
     860     '}'. 
     861     "'; ". 
     862     "jsToolBar.prototype.base_url = '".html::escapeJS($GLOBALS['core']->blog->host)."'; ". 
     863     "jsToolBar.prototype.switcher_visual_title = '".html::escapeJS(__('visual'))."'; ". 
     864     "jsToolBar.prototype.switcher_source_title = '".html::escapeJS(__('source'))."'; ". 
     865     "jsToolBar.prototype.legend_msg = '". 
     866     html::escapeJS(__('You can use the following shortcuts to format your text.'))."'; ". 
     867     "jsToolBar.prototype.elements.blocks.options.none = '".html::escapeJS(__('-- none --'))."'; ". 
     868     "jsToolBar.prototype.elements.blocks.options.nonebis = '".html::escapeJS(__('-- block format --'))."'; ". 
     869     "jsToolBar.prototype.elements.blocks.options.p = '".html::escapeJS(__('Paragraph'))."'; ". 
     870     "jsToolBar.prototype.elements.blocks.options.h1 = '".html::escapeJS(__('Level 1 header'))."'; ". 
     871     "jsToolBar.prototype.elements.blocks.options.h2 = '".html::escapeJS(__('Level 2 header'))."'; ". 
     872     "jsToolBar.prototype.elements.blocks.options.h3 = '".html::escapeJS(__('Level 3 header'))."'; ". 
     873     "jsToolBar.prototype.elements.blocks.options.h4 = '".html::escapeJS(__('Level 4 header'))."'; ". 
     874     "jsToolBar.prototype.elements.blocks.options.h5 = '".html::escapeJS(__('Level 5 header'))."'; ". 
     875     "jsToolBar.prototype.elements.blocks.options.h6 = '".html::escapeJS(__('Level 6 header'))."'; ". 
     876     "jsToolBar.prototype.elements.strong.title = '".html::escapeJS(__('Strong emphasis'))."'; ". 
     877     "jsToolBar.prototype.elements.em.title = '".html::escapeJS(__('Emphasis'))."'; ". 
     878     "jsToolBar.prototype.elements.ins.title = '".html::escapeJS(__('Inserted'))."'; ". 
     879     "jsToolBar.prototype.elements.del.title = '".html::escapeJS(__('Deleted'))."'; ". 
     880     "jsToolBar.prototype.elements.quote.title = '".html::escapeJS(__('Inline quote'))."'; ". 
     881     "jsToolBar.prototype.elements.code.title = '".html::escapeJS(__('Code'))."'; ". 
     882     "jsToolBar.prototype.elements.br.title = '".html::escapeJS(__('Line break'))."'; ". 
     883     "jsToolBar.prototype.elements.blockquote.title = '".html::escapeJS(__('Blockquote'))."'; ". 
     884     "jsToolBar.prototype.elements.pre.title = '".html::escapeJS(__('Preformated text'))."'; ". 
     885     "jsToolBar.prototype.elements.ul.title = '".html::escapeJS(__('Unordered list'))."'; ". 
     886     "jsToolBar.prototype.elements.ol.title = '".html::escapeJS(__('Ordered list'))."'; ". 
     887 
     888     "jsToolBar.prototype.elements.link.title = '".html::escapeJS(__('Link'))."'; ". 
     889     "jsToolBar.prototype.elements.link.href_prompt = '".html::escapeJS(__('URL?'))."'; ". 
     890     "jsToolBar.prototype.elements.link.hreflang_prompt = '".html::escapeJS(__('Language?'))."'; ". 
     891 
     892     "jsToolBar.prototype.elements.img.title = '".html::escapeJS(__('External image'))."'; ". 
     893     "jsToolBar.prototype.elements.img.src_prompt = '".html::escapeJS(__('URL?'))."'; ". 
     894 
     895     "jsToolBar.prototype.elements.img_select.title = '".html::escapeJS(__('Media chooser'))."'; ". 
     896     "jsToolBar.prototype.elements.post_link.title = '".html::escapeJS(__('Link to an entry'))."'; "; 
     897 
     898     if (!$GLOBALS['core']->auth->check('media,media_admin',$GLOBALS['core']->blog->id)) { 
     899          $res .= "jsToolBar.prototype.elements.img_select.disabled = true;\n"; 
     900     } 
     901 
     902     $res .= 
     903     "\n//]]>\n". 
     904     "</script>\n"; 
     905 
     906     return $res; 
    905907     } 
    906908 
    907909     public static function jsUpload($params=array(),$base_url=null) 
    908910     { 
    909           if (!$base_url) { 
    910                $base_url = path::clean(dirname(preg_replace('/(\?.*$)?/','',$_SERVER['REQUEST_URI']))).'/'; 
    911           } 
    912  
    913           $params = array_merge($params,array( 
    914                'sess_id='.session_id(), 
    915                'sess_uid='.$_SESSION['sess_browser_uid'], 
    916                'xd_check='.$GLOBALS['core']->getNonce() 
     911     if (!$base_url) { 
     912          $base_url = path::clean(dirname(preg_replace('/(\?.*$)?/','',$_SERVER['REQUEST_URI']))).'/'; 
     913     } 
     914 
     915     $params = array_merge($params,array( 
     916          'sess_id='.session_id(), 
     917          'sess_uid='.$_SESSION['sess_browser_uid'], 
     918          'xd_check='.$GLOBALS['core']->getNonce() 
    917919          )); 
    918920 
    919           return 
    920           '<script type="text/javascript">'."\n". 
    921           "//<![CDATA[\n". 
    922           "dotclear.jsUpload = {};\n". 
    923           "dotclear.jsUpload.msg = {};\n". 
    924           self::jsVar('dotclear.msg.enhanced_uploader_activate',__('Temporarily activate enhanced uploader')). 
    925           self::jsVar('dotclear.msg.enhanced_uploader_disable',__('Temporarily disable enhanced uploader')). 
    926           self::jsVar('dotclear.jsUpload.msg.limit_exceeded',__('Limit exceeded.')). 
    927           self::jsVar('dotclear.jsUpload.msg.size_limit_exceeded',__('File size exceeds allowed limit.')). 
    928           self::jsVar('dotclear.jsUpload.msg.canceled',__('Canceled.')). 
    929           self::jsVar('dotclear.jsUpload.msg.http_error',__('HTTP Error:')). 
    930           self::jsVar('dotclear.jsUpload.msg.error',__('Error:')). 
    931           self::jsVar('dotclear.jsUpload.msg.choose_file',__('Choose file')). 
    932           self::jsVar('dotclear.jsUpload.msg.choose_files',__('Choose files')). 
    933           self::jsVar('dotclear.jsUpload.msg.cancel',__('Cancel')). 
    934           self::jsVar('dotclear.jsUpload.msg.clean',__('Clean')). 
    935           self::jsVar('dotclear.jsUpload.msg.upload',__('Upload')). 
     921     return 
     922     '<script type="text/javascript">'."\n". 
     923     "//<![CDATA[\n". 
     924     "dotclear.jsUpload = {};\n". 
     925     "dotclear.jsUpload.msg = {};\n". 
     926     self::jsVar('dotclear.msg.enhanced_uploader_activate',__('Temporarily activate enhanced uploader')). 
     927     self::jsVar('dotclear.msg.enhanced_uploader_disable',__('Temporarily disable enhanced uploader')). 
     928     self::jsVar('dotclear.jsUpload.msg.limit_exceeded',__('Limit exceeded.')). 
     929     self::jsVar('dotclear.jsUpload.msg.size_limit_exceeded',__('File size exceeds allowed limit.')). 
     930     self::jsVar('dotclear.jsUpload.msg.canceled',__('Canceled.')). 
     931     self::jsVar('dotclear.jsUpload.msg.http_error',__('HTTP Error:')). 
     932     self::jsVar('dotclear.jsUpload.msg.error',__('Error:')). 
     933     self::jsVar('dotclear.jsUpload.msg.choose_file',__('Choose file')). 
     934     self::jsVar('dotclear.jsUpload.msg.choose_files',__('Choose files')). 
     935     self::jsVar('dotclear.jsUpload.msg.cancel',__('Cancel')). 
     936     self::jsVar('dotclear.jsUpload.msg.clean',__('Clean')). 
     937     self::jsVar('dotclear.jsUpload.msg.upload',__('Upload')). 
    936938          self::jsVar('dotclear.jsUpload.msg.send',__('Send')). 
    937939          self::jsVar('dotclear.jsUpload.msg.file_successfully_uploaded',__('File successfully uploaded.')). 
    938           self::jsVar('dotclear.jsUpload.msg.no_file_in_queue',__('No file in queue.')). 
    939           self::jsVar('dotclear.jsUpload.msg.file_in_queue',__('1 file in queue.')). 
    940           self::jsVar('dotclear.jsUpload.msg.files_in_queue',__('%d files in queue.')). 
    941           self::jsVar('dotclear.jsUpload.msg.queue_error',__('Queue error:')). 
    942           self::jsVar('dotclear.jsUpload.base_url',$base_url). 
    943           "\n//]]>\n". 
     940     self::jsVar('dotclear.jsUpload.msg.no_file_in_queue',__('No file in queue.')). 
     941     self::jsVar('dotclear.jsUpload.msg.file_in_queue',__('1 file in queue.')). 
     942     self::jsVar('dotclear.jsUpload.msg.files_in_queue',__('%d files in queue.')). 
     943     self::jsVar('dotclear.jsUpload.msg.queue_error',__('Queue error:')). 
     944     self::jsVar('dotclear.jsUpload.base_url',$base_url). 
     945     "\n//]]>\n". 
    944946          "</script>\n". 
    945947 
     
    958960     public static function jsToolMan() 
    959961     { 
    960           return 
    961           '<script type="text/javascript" src="js/tool-man/core.js"></script>'. 
    962           '<script type="text/javascript" src="js/tool-man/events.js"></script>'. 
    963           '<script type="text/javascript" src="js/tool-man/css.js"></script>'. 
    964           '<script type="text/javascript" src="js/tool-man/coordinates.js"></script>'. 
    965           '<script type="text/javascript" src="js/tool-man/drag.js"></script>'. 
    966           '<script type="text/javascript" src="js/tool-man/dragsort.js"></script>'. 
    967           '<script type="text/javascript" src="js/dragsort-tablerows.js"></script>'; 
     962     return 
     963     '<script type="text/javascript" src="js/tool-man/core.js"></script>'. 
     964     '<script type="text/javascript" src="js/tool-man/events.js"></script>'. 
     965     '<script type="text/javascript" src="js/tool-man/css.js"></script>'. 
     966     '<script type="text/javascript" src="js/tool-man/coordinates.js"></script>'. 
     967     '<script type="text/javascript" src="js/tool-man/drag.js"></script>'. 
     968     '<script type="text/javascript" src="js/tool-man/dragsort.js"></script>'. 
     969     '<script type="text/javascript" src="js/dragsort-tablerows.js"></script>'; 
    968970     } 
    969971 
    970972     public static function jsMetaEditor() 
    971973     { 
    972           return 
    973           '<script type="text/javascript" src="js/meta-editor.js"></script>'; 
     974     return 
     975     '<script type="text/javascript" src="js/meta-editor.js"></script>'; 
    974976     } 
    975977} 
Note: See TracChangeset for help on using the changeset viewer.

Sites map