I'm getting an error (as follows) in define_pages_editor when trying to save.
Warning: Cannot modify header information - headers already sent by (output started at /home/content/f/r/a/frankandmonkey/html/admin/define_pages_editor.php:121) in /home/content/f/r/a/frankandmonkey/html/admin/includes/functions/general.php on line 67
There aren't any spaces at the bottom of the file (and it's erroring out before it ever gets there anyhow.) PHP file is as follows, please help!
<?php
/**
* @package admin
* @copyright Copyright 2003-2006 Zen Cart Development Team
* @copyright Portions Copyright 2003 osCommerce
* @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0
* @version $Id: define_pages_editor.php 4279 2006-08-26 03:31:29Z drbyte $
*/
require('includes/application_top.php');
function zen_display_files() {
global $check_directory, $found, $configuration_key_lookup;
for ($i = 0, $n = sizeof($check_directory); $i < $n; $i++) {
//echo 'I SEE ' . $check_directory[$i] . '<br>';
$dir_check = $check_directory[$i];
$file_extension = '.php';
if ($dir = @dir($dir_check)) {
while ($file = $dir->read()) {
if (!is_dir($dir_check . $file)) {
if (substr($file, strrpos($file, '.')) == $file_extension) {
$directory_array[] = $file;
}
}
}
if (sizeof($directory_array)) {
sort($directory_array);
}
$dir->close();
}
}
return $directory_array;
}
$action = (isset($_GET['action']) ? $_GET['action'] : '');
$za_who = $_GET['za_lookup'];
if ($action == 'new_page') {
$page = $_GET['define_it'];
$check_directory = array();
$check_directory[] = DIR_FS_CATALOG . DIR_WS_LANGUAGES . $_SESSION['language'] . '/html_includes/';
$directory_files = zen_display_files();
$za_lookup = array();
for ($i = 0, $n = sizeof($directory_files); $i < $n; $i++) {
$za_lookup[] = array('id' => $i, 'text' => $directory_files[$i]);
}
// This will cause it to look for 'define_conditions.php'
$_GET['filename'] = $za_lookup[$page]['text'];
$_GET['box_name'] = BOX_TOOLS_DEFINE_CONDITIONS;
}
// define template specific file name defines
$file = zen_get_file_directory(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/html_includes/', $_GET['filename'], 'false');
?>
<?php
switch ($_GET['action']) {
case 'set_editor':
// Reset will be done by init_html_editor.php. Now we simply redirect to refresh page properly.
$action='';
zen_redirect(zen_href_link(FILENAME_DEFINE_PAGES_EDITOR));
break;
case 'save':
if ( ($_GET['lngdir']) && ($_GET['filename']) ) {
if (file_exists($file)) {
if (file_exists('bak' . $file)) {
@unlink('bak' . $file);
}
@rename($file, 'bak' . $file);
$new_file = fopen($file, 'w');
$file_contents = stripslashes($_POST['file_contents']);
fwrite($new_file, $file_contents, strlen($file_contents));
fclose($new_file);
}
zen_redirect(zen_href_link(FILENAME_DEFINE_PAGES_EDITOR));
}
break;
}
if (!$_SESSION['language']) $_SESSION['language'] = $language;
$languages_array = array();
$languages = zen_get_languages();
$lng_exists = false;
for ($i=0; $i<sizeof($languages); $i++) {
if ($languages[$i]['directory'] == $_SESSION['language']) $lng_exists = true;
$languages_array[] = array('id' => $languages[$i]['directory'],
'text' => $languages[$i]['name']);
}
if (!$lng_exists) $_SESSION['language'] = $language;
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
<link rel="stylesheet" type="text/css" href="includes/stylesheet.css">
<link rel="stylesheet" type="text/css" href="includes/cssjsmenuhover.css" media="all" id="hoverJS">
<script language="javascript" src="includes/menu.js"></script>
<script language="javascript" src="includes/general.js"></script>
<script type="text/javascript">
<!--
function init()
{
cssjsmenu('navbar');
if (document.getElementById)
{
var kill = document.getElementById('hoverJS');
kill.disabled = true;
}
if (typeof _editor_url == "string") HTMLArea.replaceAll();
}
// -->
</script>
<?php if ($editor_handler != '') include ($editor_handler); ?>
</head>
<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF" onLoad="init()">
<div id="spiffycalendar" class="text"></div>
<!-- header //-->
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->
<!-- body //-->
<table border="0" width="100%" cellspacing="2" cellpadding="2">
<tr>
<!-- body_text //-->
<td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr>
<td class="pageHeading"><?php echo HEADING_TITLE . ' ' . $_SESSION['language']; ?>
<?php
$check_directory = array();
$check_directory[] = DIR_FS_CATALOG . DIR_WS_LANGUAGES . $_SESSION['language'] . '/html_includes/';
$directory_files = zen_display_files();
$za_lookup = array();
$za_lookup[] = array('id' => -1, 'text' => TEXT_INFO_SELECT_FILE);
for ($i = 0, $n = sizeof($directory_files); $i < $n; $i++) {
$za_lookup[] = array('id' => $i, 'text' => $directory_files[$i]);
}
echo zen_draw_form('new_page', FILENAME_DEFINE_PAGES_EDITOR, '', 'get') . ' ' . zen_draw_pull_down_menu('define_it', $za_lookup, '-1', 'onChange="this.form.submit();"') .
zen_hide_session_id() .
zen_draw_hidden_field('action', 'new_page') . ' </form>';
?>
<?php
// toggle switch for editor
echo TEXT_EDITOR_INFO . zen_draw_form('set_editor_form', FILENAME_DEFINE_PAGES_EDITOR, '', 'get') . ' ' . zen_draw_pull_down_menu('reset_editor', $editors_pulldown, $current_editor_key, 'onChange="this.form.submit();"') .
zen_draw_hidden_field('action', 'set_editor') .
zen_hide_session_id() .
'</form>';
?>
</td>
</tr>
<?php
// show editor
if (isset($_GET['filename'])) {
?>
<tr>
<td><table border="0" width="100%" cellspacing="0" cellpadding="2">
<?php
if ( ($_SESSION['language']) && ($_GET['filename']) ) {
if (file_exists($file)) {
$file_array = @file($file);
$file_contents = @implode('', $file_array);
$file_writeable = true;
if (!is_writeable($file)) {
$file_writeable = false;
$messageStack->reset();
$messageStack->add(sprintf(ERROR_FILE_NOT_WRITEABLE, $file), 'error');
echo $messageStack->output();
}
?>
<tr>
<td class="main"><b><?php echo TEXT_INFO_CAUTION . '<br /><br />' . TEXT_INFO_EDITING . '<br />' . $file . '<br />'; ?></b></td>
</tr>
<tr><?php echo zen_draw_form('language', FILENAME_DEFINE_PAGES_EDITOR, 'lngdir=' . $_SESSION['language'] . '&filename=' . $_GET['filename'] . '&action=save'); ?>
<td><table border="0" cellspacing="0" cellpadding="2">
<tr>
<td class="main">
<?php if ($_SESSION['html_editor_preference_status']=="FCKEDITOR") {
$oFCKeditor = new FCKeditor('file_contents') ;
$oFCKeditor->Value = $file_contents ;
$oFCKeditor->Width = '700' ;
$oFCKeditor->Height = '450' ;
// $oFCKeditor->Create() ;
$output = $oFCKeditor->CreateHtml() ; echo $output;
} else { // using HTMLAREA or just raw "source"
echo zen_draw_textarea_field('file_contents', 'soft', '100%', '30', $file_contents, (($file_writeable) ? '' : 'readonly') . ' id="file_contents"');
} ?>
</td>
</tr>
<tr>
<td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
</tr>
<tr>
<td align="right"><?php if ($file_writeable) { echo zen_image_submit('button_save.gif', IMAGE_SAVE) . ' <a href="' . zen_href_link(FILENAME_DEFINE_PAGES_EDITOR, 'define_it=' .$_GET['define_it'] . '&action=new_page') . '">' . zen_image_button('button_reset.gif', IMAGE_RESET) . '</a>' . ' ' . '<a href="' . zen_href_link(FILENAME_DEFINE_PAGES_EDITOR . '.php') . '">' . zen_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>'; } else { echo '<a href="' . zen_href_link(FILENAME_DEFINE_PAGES_EDITOR, 'lngdir=' . $_SESSION['language']) . '">' . zen_image_button('button_back.gif', IMAGE_BACK) . '</a>'; } ?></td>
</tr>
</table></td>
</form></tr>
<?php
} else {
?>
<tr>
<td class="main"><b><?php echo sprintf(TEXT_FILE_DOES_NOT_EXIST, $file); ?></b></td>
</tr>
<tr>
<td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
</tr>
<tr>
<td><?php echo '<a href="' . zen_href_link($_GET['filename'], 'lngdir=' . $_SESSION['language']) . '">' . zen_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td>
</tr>
<?php
}
} else {
$filename = $_SESSION['language'] . '.php';
?>
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="smallText"><a href="<?php echo zen_href_link($_GET['filename'], 'lngdir=' . $_SESSION['language'] . '&filename=' . $filename); ?>"><b><?php echo $filename; ?></b></a></td>
<?php
$dir = dir(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language']);
$left = false;
if ($dir) {
$file_extension = substr($PHP_SELF, strrpos($PHP_SELF, '.'));
while ($file = $dir->read()) {
if (substr($file, strrpos($file, '.')) == $file_extension) {
echo ' <td class="smallText"><a href="' . zen_href_link($_GET['filename'], 'lngdir=' . $_SESSION['language'] . '&filename=' . $file) . '">' . $file . '</a></td>' . "\n";
if (!$left) {
echo ' </tr>' . "\n" .
' <tr>' . "\n";
}
$left = !$left;
}
}
$dir->close();
}
?>
</tr>
</table></td>
</tr>
<?php
}
?>
</table></td>
<?php } // filename ?>
</tr>
</table></td>
<!-- body_text_eof //-->
</tr>
</table>
<!-- body_eof //-->
<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
<br />
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>



