X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/cc7b1505cd9fafd87c3672f669e13e98b0c544f7..refs/tags/wordpress-2.9:/wp-admin/theme-editor.php diff --git a/wp-admin/theme-editor.php b/wp-admin/theme-editor.php index b2788cf3..c85fa0ab 100644 --- a/wp-admin/theme-editor.php +++ b/wp-admin/theme-editor.php @@ -1,24 +1,23 @@ '.__('You do not have sufficient permissions to edit templates for this blog.').'

'); + $title = __("Edit Themes"); $parent_file = 'themes.php'; -$wpvarstoreset = array('action','redirect','profile','error','warning','a','file', 'theme'); -for ($i=0; $i'.__('You have do not have sufficient permissions to edit templates for this blog.').'

'); - $newcontent = stripslashes($_POST['newcontent']); $theme = urlencode($theme); - if (is_writeable($real_file)) { - $f = fopen($real_file, 'w+'); - fwrite($f, $newcontent); - fclose($f); - wp_redirect("theme-editor.php?file=$file&theme=$theme&a=te"); + if (is_writeable($file)) { + //is_writable() not always reliable, check return value. see comments @ http://uk.php.net/is_writable + $f = fopen($file, 'w+'); + if ($f !== FALSE) { + fwrite($f, $newcontent); + fclose($f); + $location = "theme-editor.php?file=$file&theme=$theme&a=te&scrollto=$scrollto"; + } else { + $location = "theme-editor.php?file=$file&theme=$theme&scrollto=$scrollto"; + } } else { - wp_redirect("theme-editor.php?file=$file&theme=$theme"); + $location = "theme-editor.php?file=$file&theme=$theme&scrollto=$scrollto"; } + $location = wp_kses_no_null($location); + $strip = array('%0d', '%0a', '%0D', '%0A'); + $location = _deep_replace($strip, $location); + header("Location: $location"); exit(); break; default: - + require_once('admin-header.php'); - if ( !current_user_can('edit_themes') ) - die('

'.__('You have do not have sufficient permissions to edit themes for this blog.').'

'); update_recently_edited($file); - - if (!is_file($real_file)) + + if ( !is_file($file) ) $error = 1; - - if (!$error && filesize($real_file) > 0) { - $f = fopen($real_file, 'r'); - $content = fread($f, filesize($real_file)); - $content = htmlspecialchars($content); + + if ( !$error && filesize($file) > 0 ) { + $f = fopen($file, 'r'); + $content = fread($f, filesize($file)); + + if ( '.php' == substr( $file, strrpos( $file, '.' ) ) ) { + $functions = wp_doc_link_parse( $content ); + + $docs_select = ''; + } + + $content = htmlspecialchars( $content ); + $codepress_lang = codepress_get_lang($file); } ?>

- -
-
- +$description (%s)" : "%s"; +?> +
+ +

+ +
+
+ +
+
+ + - - -
- -
- ' . sprintf(__('Editing %s'), $file_show) . ''; - } else { - echo '

' . sprintf(__('Browsing %s'), $file_show) . '

'; - } - ?> + + + +
+
+
+
-

'%s' theme files"), $theme) ?>

+

- +

+
    +($template_show)" : "$description"; + $filedesc = ( $template_file == $file ) ? "$description ($template_show)" : $filedesc; + + // If we have two files of the same name prefer the one in the Template Directory + // This means that we display the correct files for child themes which overload Templates as well as Styles + if( array_key_exists($description, $template_mapping ) ) { + if ( false !== strpos( $template_file, $template_dir ) ) { + $template_mapping[ $description ] = array( _get_template_edit_filename($template_file, $template_dir), $filedesc ); + } + } else { + $template_mapping[ $description ] = array( _get_template_edit_filename($template_file, $template_dir), $filedesc ); + } + } + ksort( $template_mapping ); + while ( list( $template_sorted_key, list( $template_file, $filedesc ) ) = each( $template_mapping ) ) : + ?> +
  • &theme=&dir=theme">
  • + +
+

+
    +($style_show)" : "$description"; + $filedesc = ( $style_file == $file ) ? "$description ($style_show)" : $filedesc; + $template_mapping[ $description ] = array( _get_template_edit_filename($style_file, $stylesheet_dir), $filedesc ); + } + ksort( $template_mapping ); + while ( list( $template_sorted_key, list( $style_file, $filedesc ) ) = each( $template_mapping ) ) : + ?> +
  • &theme=&dir=style">
  • + +
-
- -
- -
- - - +
+ + + +
+ + + +
- -

+ +

+ + + +
+ + +
+ +

"; + echo ""; ?>

-

+

the Codex for more information.'); ?>

- - + +

' . __('Oops, no such file exists! Double check the name and try again, merci.') . '

'; } - ?> -
 
-
+?> +
+
+ +include("admin-footer.php");