Dotclear


Ignore:
Timestamp:
02/18/18 18:16:29 (8 years ago)
Author:
franck <carnet.franck.paul@…>
Branch:
default
Message:

use strict and no more linter warnings/errors as far as possible, switch from inline js to separate loaded file

File:
1 edited

Legend:

Unmodified
Added
Removed
  • plugins/themeEditor/index.php

    r3421 r3709  
    1010# 
    1111# -- END LICENSE BLOCK ----------------------------------------- 
    12 if (!defined('DC_CONTEXT_ADMIN')) { return; } 
     12if (!defined('DC_CONTEXT_ADMIN')) {return;} 
    1313 
    14 require dirname(__FILE__).'/class.themeEditor.php'; 
     14require dirname(__FILE__) . '/class.themeEditor.php'; 
    1515 
    16 $file_default = $file = array('c'=>null, 'w'=>false, 'type'=>null, 'f'=>null, 'default_file'=>false); 
     16$file_default = $file = array('c' => null, 'w' => false, 'type' => null, 'f' => null, 'default_file' => false); 
    1717 
    1818# Get interface setting 
    1919$core->auth->user_prefs->addWorkspace('interface'); 
    20 $user_ui_colorsyntax = $core->auth->user_prefs->interface->colorsyntax; 
     20$user_ui_colorsyntax       = $core->auth->user_prefs->interface->colorsyntax; 
    2121$user_ui_colorsyntax_theme = $core->auth->user_prefs->interface->colorsyntax_theme; 
    2222 
    2323# Loading themes 
    2424$core->themes = new dcThemes($core); 
    25 $core->themes->loadModules($core->blog->themes_path,null); 
     25$core->themes->loadModules($core->blog->themes_path, null); 
    2626$T = $core->themes->getModules($core->blog->settings->system->theme); 
    2727$o = new dcThemeEditor($core); 
     
    2929try 
    3030{ 
    31      try 
    32      { 
    33           if (!empty($_REQUEST['tpl'])) { 
    34                $file = $o->getFileContent('tpl',$_REQUEST['tpl']); 
    35           } elseif (!empty($_REQUEST['css'])) { 
    36                $file = $o->getFileContent('css',$_REQUEST['css']); 
    37           } elseif (!empty($_REQUEST['js'])) { 
    38                $file = $o->getFileContent('js',$_REQUEST['js']); 
    39           } elseif (!empty($_REQUEST['po'])) { 
    40                $file = $o->getFileContent('po',$_REQUEST['po']); 
    41           } 
    42      } 
    43      catch (Exception $e) 
    44      { 
    45           $file = $file_default; 
    46           throw $e; 
    47      } 
     31    try 
     32    { 
     33        if (!empty($_REQUEST['tpl'])) { 
     34            $file = $o->getFileContent('tpl', $_REQUEST['tpl']); 
     35        } elseif (!empty($_REQUEST['css'])) { 
     36            $file = $o->getFileContent('css', $_REQUEST['css']); 
     37        } elseif (!empty($_REQUEST['js'])) { 
     38            $file = $o->getFileContent('js', $_REQUEST['js']); 
     39        } elseif (!empty($_REQUEST['po'])) { 
     40            $file = $o->getFileContent('po', $_REQUEST['po']); 
     41        } 
     42    } catch (Exception $e) { 
     43        $file = $file_default; 
     44        throw $e; 
     45    } 
    4846 
    49      # Write file 
    50      if (!empty($_POST['write'])) 
    51      { 
    52           $file['c'] = $_POST['file_content']; 
    53           $o->writeFile($file['type'],$file['f'],$file['c']); 
    54      } 
     47    # Write file 
     48    if (!empty($_POST['write'])) { 
     49        $file['c'] = $_POST['file_content']; 
     50        $o->writeFile($file['type'], $file['f'], $file['c']); 
     51    } 
    5552 
    56      # Delete file 
    57      if (!empty($_POST['delete'])) 
    58      { 
    59           $o->deleteFile($file['type'],$file['f']); 
    60           dcPage::addSuccessNotice(__('The file has been reset.')); 
    61           http::redirect($p_url.'&'.$file['type'].'='.$file['f']); 
    62      } 
    63 } 
    64 catch (Exception $e) 
    65 { 
    66      $core->error->add($e->getMessage()); 
     53    # Delete file 
     54    if (!empty($_POST['delete'])) { 
     55        $o->deleteFile($file['type'], $file['f']); 
     56        dcPage::addSuccessNotice(__('The file has been reset.')); 
     57        http::redirect($p_url . '&' . $file['type'] . '=' . $file['f']); 
     58    } 
     59} catch (Exception $e) { 
     60    $core->error->add($e->getMessage()); 
    6761} 
    6862?> 
     
    7064<html> 
    7165<head> 
    72      <title><?php echo __('Edit theme files'); ?></title> 
    73      <script type="text/javascript"> 
    74           <?php echo dcPage::jsVar('dotclear.msg.saving_document',__("Saving document...")); ?> 
    75           <?php echo dcPage::jsVar('dotclear.msg.document_saved',__("Document saved")); ?> 
    76           <?php echo dcPage::jsVar('dotclear.msg.error_occurred',__("An error occurred:")); ?> 
    77           <?php echo dcPage::jsVar('dotclear.msg.confirm_reset_file',__("Are you sure you want to reset this file?")); ?> 
    78           <?php echo dcPage::jsVar('dotclear.colorsyntax',$user_ui_colorsyntax); ?> 
    79      </script> 
    80      <?php echo dcPage::jsConfirmClose('file-form'); ?> 
    81      <script type="text/javascript" src="<?php echo dcPage::getPF('themeEditor/script.js'); ?>"></script> 
    82      <?php if ($user_ui_colorsyntax) { ?> 
    83      <?php echo dcPage::jsLoadCodeMirror($user_ui_colorsyntax_theme); ?> 
    84      <?php } ?> 
    85      <?php echo dcPage::cssLoad(dcPage::getPF('themeEditor/style.css'));?> 
     66    <title><?php echo __('Edit theme files'); ?></title> 
     67    <?php 
     68echo dcPage::jsVars(array( 
     69    'dotclear.msg.saving_document'    => __("Saving document..."), 
     70    'dotclear.msg.document_saved'     => __("Document saved"), 
     71    'dotclear.msg.error_occurred'     => __("An error occurred:"), 
     72    'dotclear.msg.confirm_reset_file' => __("Are you sure you want to reset this file?"), 
     73    'dotclear.colorsyntax'            => $user_ui_colorsyntax 
     74)) . 
     75dcPage::jsConfirmClose('file-form') . 
     76dcPage::jsLoad(dcPage::getPF('themeEditor/js/script.js')); 
     77if ($user_ui_colorsyntax) { 
     78    echo dcPage::jsLoadCodeMirror($user_ui_colorsyntax_theme); 
     79} 
     80echo dcPage::cssLoad(dcPage::getPF('themeEditor/style.css')); 
     81?> 
    8682</head> 
    8783 
     
    8985<?php 
    9086echo dcPage::breadcrumb( 
    91      array( 
    92           html::escapeHTML($core->blog->name) => '', 
    93           __('Blog appearance') => $core->adminurl->get('admin.blog.theme'), 
    94           __('Edit theme files') => '' 
    95      )). 
    96      dcPage::notices(); 
     87    array( 
     88        html::escapeHTML($core->blog->name) => '', 
     89        __('Blog appearance')              => $core->adminurl->get('admin.blog.theme'), 
     90        __('Edit theme files')              => '' 
     91    )) . 
     92dcPage::notices(); 
    9793?> 
    9894 
    99 <p><strong><?php echo sprintf(__('Your current theme on this blog is "%s".'),html::escapeHTML($T['name'])); ?></strong></p> 
     95<p><strong><?php echo sprintf(__('Your current theme on this blog is "%s".'), html::escapeHTML($T['name'])); ?></strong></p> 
    10096 
    101 <?php if ($core->blog->settings->system->theme == 'default') { ?> 
    102      <div class="error"><p><?php echo __("You can't edit default theme."); ?></p></div> 
    103      </body></html> 
    104 <?php } ?> 
     97<?php if ($core->blog->settings->system->theme == 'default') {?> 
     98    <div class="error"><p><?php echo __("You can't edit default theme."); ?></p></div> 
     99    </body></html> 
     100<?php }?> 
    105101 
    106102<div id="file-box"> 
    107103<div id="file-editor"> 
    108104<?php 
    109 if ($file['c'] === null) 
    110 { 
    111      echo '<p>'.__('Please select a file to edit.').'</p>'; 
    112 } 
    113 else 
    114 { 
    115      echo 
    116      '<form id="file-form" action="'.$p_url.'" method="post">'. 
    117      '<div class="fieldset"><h3>'.__('File editor').'</h3>'. 
    118      '<p><label for="file_content">'.sprintf(__('Editing file %s'),'<strong>'.$file['f']).'</strong></label></p>'. 
    119      '<p>'.form::textarea('file_content',72,25,html::escapeHTML($file['c']),'maximal','',!$file['w']).'</p>'; 
     105if ($file['c'] === null) { 
     106    echo '<p>' . __('Please select a file to edit.') . '</p>'; 
     107} else { 
     108    echo 
     109    '<form id="file-form" action="' . $p_url . '" method="post">' . 
     110    '<div class="fieldset"><h3>' . __('File editor') . '</h3>' . 
     111    '<p><label for="file_content">' . sprintf(__('Editing file %s'), '<strong>' . $file['f']) . '</strong></label></p>' . 
     112    '<p>' . form::textarea('file_content', 72, 25, html::escapeHTML($file['c']), 'maximal', '', !$file['w']) . '</p>'; 
    120113 
    121      if ($file['w']) 
    122      { 
    123           echo 
    124           '<p><input type="submit" name="write" value="'.__('Save').' (s)" accesskey="s" /> '. 
    125           ($o->deletableFile($file['type'],$file['f']) ? '<input type="submit" name="delete" class="delete" value="'.__('Reset').'" />' : ''). 
    126           $core->formNonce(). 
    127           ($file['type'] ? form::hidden(array($file['type']),$file['f']) : ''). 
    128           '</p>'; 
    129      } 
    130      else 
    131      { 
    132           echo '<p>'.__('This file is not writable. Please check your theme files permissions.').'</p>'; 
    133      } 
     114    if ($file['w']) { 
     115        echo 
     116        '<p><input type="submit" name="write" value="' . __('Save') . ' (s)" accesskey="s" /> ' . 
     117        ($o->deletableFile($file['type'], $file['f']) ? '<input type="submit" name="delete" class="delete" value="' . __('Reset') . '" />' : '') . 
     118        $core->formNonce() . 
     119            ($file['type'] ? form::hidden(array($file['type']), $file['f']) : '') . 
     120            '</p>'; 
     121    } else { 
     122        echo '<p>' . __('This file is not writable. Please check your theme files permissions.') . '</p>'; 
     123    } 
    134124 
    135      echo 
    136      '</div></form>'; 
     125    echo 
     126        '</div></form>'; 
    137127 
    138      if ($user_ui_colorsyntax) { 
    139           $editorMode = 
    140                (!empty($_REQUEST['css']) ? "css" : 
    141                (!empty($_REQUEST['js']) ? "javascript" : 
    142                (!empty($_REQUEST['po']) ? "text/plain" : "text/html"))); 
    143           echo 
    144           '<script type="text/javascript"> 
    145                window.CodeMirror.defineMode("dotclear", function(config) { 
    146                     return CodeMirror.multiplexingMode( 
    147                          CodeMirror.getMode(config, "'.$editorMode.'"), 
    148                          {open: "{{tpl:", close: "}}", 
    149                           mode: CodeMirror.getMode(config, "text/plain"), 
    150                           delimStyle: "delimit"}, 
    151                          {open: "<tpl:", close: ">", 
    152                           mode: CodeMirror.getMode(config, "text/plain"), 
    153                           delimStyle: "delimit"}, 
    154                          {open: "</tpl:", close: ">", 
    155                           mode: CodeMirror.getMode(config, "text/plain"), 
    156                           delimStyle: "delimit"} 
    157                          ); 
    158                }); 
    159          </script>'; 
    160          echo dcPage::jsRunCodeMirror('editor','file_content','dotclear',$user_ui_colorsyntax_theme); 
    161      } 
     128    if ($user_ui_colorsyntax) { 
     129        $editorMode = 
     130            (!empty($_REQUEST['css']) ? "css" : 
     131            (!empty($_REQUEST['js']) ? "javascript" : 
     132                (!empty($_REQUEST['po']) ? "text/plain" : "text/html"))); 
     133        echo 
     134            '<script type="text/javascript"> 
     135            window.CodeMirror.defineMode("dotclear", function(config) { 
     136                return CodeMirror.multiplexingMode( 
     137                    CodeMirror.getMode(config, "' . $editorMode . '"), 
     138                    {open: "{{tpl:", close: "}}", 
     139                    mode: CodeMirror.getMode(config, "text/plain"), 
     140                    delimStyle: "delimit"}, 
     141                    {open: "<tpl:", close: ">", 
     142                    mode: CodeMirror.getMode(config, "text/plain"), 
     143                    delimStyle: "delimit"}, 
     144                    {open: "</tpl:", close: ">", 
     145                    mode: CodeMirror.getMode(config, "text/plain"), 
     146                    delimStyle: "delimit"} 
     147                    ); 
     148            }); 
     149        </script>'; 
     150        echo dcPage::jsRunCodeMirror('editor', 'file_content', 'dotclear', $user_ui_colorsyntax_theme); 
     151    } 
    162152} 
    163153?> 
     
    167157<div id="file-chooser"> 
    168158<h3><?php echo __('Templates files'); ?></h3> 
    169 <?php echo $o->filesList('tpl','<a href="'.$p_url.'&amp;tpl=%2$s" class="tpl-link">%1$s</a>'); ?> 
     159<?php echo $o->filesList('tpl', '<a href="' . $p_url . '&amp;tpl=%2$s" class="tpl-link">%1$s</a>'); ?> 
    170160 
    171161<h3><?php echo __('CSS files'); ?></h3> 
    172 <?php echo $o->filesList('css','<a href="'.$p_url.'&amp;css=%2$s" class="css-link">%1$s</a>'); ?> 
     162<?php echo $o->filesList('css', '<a href="' . $p_url . '&amp;css=%2$s" class="css-link">%1$s</a>'); ?> 
    173163 
    174164<h3><?php echo __('JavaScript files'); ?></h3> 
    175 <?php echo $o->filesList('js','<a href="'.$p_url.'&amp;js=%2$s" class="js-link">%1$s</a>'); ?> 
     165<?php echo $o->filesList('js', '<a href="' . $p_url . '&amp;js=%2$s" class="js-link">%1$s</a>'); ?> 
    176166 
    177167<h3><?php echo __('Locales files'); ?></h3> 
    178 <?php echo $o->filesList('po','<a href="'.$p_url.'&amp;po=%2$s" class="po-link">%1$s</a>'); ?> 
     168<?php echo $o->filesList('po', '<a href="' . $p_url . '&amp;po=%2$s" class="po-link">%1$s</a>'); ?> 
    179169</div> 
    180170 
    181 <?php dcPage::helpBlock('themeEditor'); ?> 
     171<?php dcPage::helpBlock('themeEditor');?> 
    182172</body> 
    183173</html> 
Note: See TracChangeset for help on using the changeset viewer.

Sites map