مشکل در فارسی سازی

iranmsb

Member
سلام
من میخوام یه اسکیپتی رو فارسی کنم ولی ارور میده
Parse error: parse error, unexpected T_LNUMBER in ---\doop\index_fa.php on line 107
فایل اصلی:

PHP:
<?php
session_start();
/*
Project:      doop - Open Source Content Management System
Version:      1.3.7
Date:         2007/05/08 (y/m/d)
Author:       Ronald Chua
URL:          http://www.doop.co.nr
License:      Open Source/Free

Copyright (c) 2006 - 2007, Ronald Chua doopcms(at)gmail.com
All rights reserved.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
OF THE POSSIBILITY OF SUCH DAMAGE.
*/

/* SETTINGS */
$homepage="home";
$password="admin";
$theme="doop";
$defaulteditor="default";
$onload="initEditor()";
/* SETTINGS */

//doop messages
$dooperror[0]="";
$dooperror[1]="SITE ERROR: UNAUTHORIZED. HIT REFRESH BUTTON TO CONTINUE.";

global $addonsdir;

$addonsdir="addons/";

//Start Addons Manager
addonsmanager();

$editpage="index.php";
set();

//Admin has change the password, make sure we are still logged in
if (isset($_REQUEST['settings'])=="change" || isset($_SESSION['site_id'])){
	$_SESSION['settings']=$password;
}

//Security Fix
if (isset($_SESSION['settings'])!=$password  && isset($_SESSION['name'])){
		print $dooperror[1]."1";
		session_destroy(); 
		exit;
}
if (isset($_SESSION['site_id'])){
	if ($_SESSION['site_id']!=$password && !isset($_REQUEST['settings'])){ 
		print $dooperror[1]."2";
		session_destroy(); 
		exit;
	}
}
if (!isset($_SESSION['site_id']) && isset($_SESSION['name'])){
	print $dooperror[1]."3";
	session_destroy();
	exit;
}

//Setup
$setup="PGh0bWw+DQo8aGVhZD4NCjxzY3JpcHQgbGFuZ3VhZ2U9ImphdmFzY3JpcHQiPg0KPCEtLQ0KYWRkRXZlbnQod2luZG93LCAibG9hZCIsIGluaXQpOw0KDQpmdW5jdGlvbiBpbml0KCkNCnsNCg0KCWZvcm0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dXAiKTsNCglhZGRFdmVudChmb3JtLCAic3VibWl0IiwgY29ycmVjdFN1Ym1pdEhhbmRsZXIpOw0KfQ0KDQpmdW5jdGlvbiBjb3JyZWN0U3VibWl0SGFuZGxlcihlKQ0Kew0KCWlmICghZG9jdW1lbnQuc2V0dXAucGFzc3dvcmQudmFsdWUgfHwgZG9jdW1lbnQuc2V0dXAucGFzc3dvcmQudmFsdWU9PSJhZG1pbiIpew0KCWFsZXJ0KCJQbGVhc2UgdXNlIG9yIGVudGVyIGFub3RoZXIgcGFzc3dvcmQuIik7DQoJaWYgKGUgJiYgZS5wcmV2ZW50RGVmYXVsdCkNCgkJZS5wcmV2ZW50RGVmYXVsdCgpOw0KCXJldHVybiBmYWxzZTsNCgl9DQoJaWYgKCFkb2N1bWVudC5zZXR1cC5ob21lcGFnZS52YWx1ZSkgew0KCQlhbGVydCgiWW91IGZvcmdvdCB0byBwbGFjZSBhIEhvbWVwYWdlIG5hbWUsIFdlIHdpbGwgYmUgdXNpbmcgJ2hvbWUnLi4iKTsNCgkJZG9jdW1lbnQuc2V0dXAuaG9tZXBhZ2UudmFsdWU9ImhvbWUiOw0KCX0NCn0NCg0KZnVuY3Rpb24gYWRkRXZlbnQob2JqLCBldlR5cGUsIGZuKQ0Kew0KCWlmIChvYmouYWRkRXZlbnRMaXN0ZW5lcikNCgl7DQogICAJCW9iai5hZGRFdmVudExpc3RlbmVyKGV2VHlwZSwgZm4sIGZhbHNlKTsNCiAgIAkJcmV0dXJuIHRydWU7DQoJfQ0KCWVsc2UgaWYgKG9iai5hdHRhY2hFdmVudCkNCgl7DQogICAJCXZhciByID0gb2JqLmF0dGFjaEV2ZW50KCJvbiIrZXZUeXBlLCBmbik7DQogICAJCXJldHVybiByOw0KIAl9DQogCWVsc2UNCiAJew0KICAgCQlyZXR1cm4gZmFsc2U7DQogCX0NCn0NCi0tPg0KPC9zY3JpcHQ+DQo8c2NyaXB0Pg0KZnVuY3Rpb24gc2V0dXAoKXsNCg0Kc3dpdGNoIChkb2N1bWVudC5zZXR1cC5jLnZhbHVlKXsNCmNhc2UgIjEiOg0KYmx1ZXNldD0iMiI7b3Jhbmdlc2V0PSIxIjtyZWRzZXQ9IjEiO2dyZWVuc2V0PSIxIjsNCmRvY3VtZW50LnNldHVwLmMudmFsdWU9IjIiOw0KYnJlYWs7DQoNCmNhc2UgIjIiOg0KYmx1ZXNldD0iMSI7b3Jhbmdlc2V0PSIyIjtyZWRzZXQ9IjEiO2dyZWVuc2V0PSIxIjsNCmRvY3VtZW50LnNldHVwLmMudmFsdWU9IjMiOw0KYnJlYWs7DQoNCmNhc2UgIjMiOg0KYmx1ZXNldD0iMSI7b3Jhbmdlc2V0PSIxIjtyZWRzZXQ9IjIiO2dyZWVuc2V0PSIxIjsNCmRvY3VtZW50LnNldHVwLmMudmFsdWU9IjQiOw0KYnJlYWs7DQoNCmNhc2UgIjQiOg0KYmx1ZXNldD0iMSI7b3Jhbmdlc2V0PSIxIjtyZWRzZXQ9IjEiO2dyZWVuc2V0PSIyIjsNCmRvY3VtZW50LnNldHVwLmMudmFsdWU9IjEiOw0KYnJlYWs7DQoNCn0NCg0KcmVkLmlubmVySFRNTD0nPHRhYmxlIGNsYXNzPSJib3giIGlkPSJyZWRib3gnK3JlZHNldCsnIj48dHI+PHRkPjwvdGQ+PC90cj48L3RhYmxlPic7DQpibHVlLmlubmVySFRNTD0nPHRhYmxlIGNsYXNzPSJib3giIGlkPSJibHVlYm94JytibHVlc2V0KyciPjx0cj48dGQ+PC90ZD48L3RyPjwvdGFibGU+JzsNCm9yYW5nZS5pbm5lckhUTUw9Jzx0YWJsZSBjbGFzcz0iYm94IiBpZD0ib3JhbmdlYm94JytvcmFuZ2VzZXQrJyI+PHRyPjx0ZD48L3RkPjwvdHI+PC90YWJsZT4nOw0KZ3JlZW4uaW5uZXJIVE1MPSc8dGFibGUgY2xhc3M9ImJveCIgaWQ9ImdyZWVuYm94JytncmVlbnNldCsnIj48dHI+PHRkPjwvdGQ+PC90cj48L3RhYmxlPic7DQoNCnQ9c2V0VGltZW91dCgic2V0dXAoKSIsMTAwMCkNCn0NCg0KPC9zY3JpcHQ+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJhbGwiPkBpbXBvcnQgInRoZW1lcy9kb29wLmNzcyI7PC9zdHlsZT4NCjwvaGVhZD4NCjxib2R5IG9ubG9hZD0ic2V0dXAoKSI+DQo8cD4mbmJzcDs8L3A+DQo8cD4mbmJzcDs8L3A+DQo8cCBhbGlnbj0iY2VudGVyIj4NCjxpbWcgc3JjPSJ0aGVtZXMvbG9nby5naWYiIC8+PGJyLz4NCjxhPjxiPlNldHRpbmcgdXAgeW91ciB3ZWJzaXRlLi4uPC9iPjwvYT4NCjwvcD4NCg0KPHAgYWxpZ249ImNlbnRlciI+DQo8dGFibGU+DQo8dHI+DQo8dGQ+DQoJPGRpdiBpZD0iYmx1ZSIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6d2hpdGU7d2lkdGg6MjBweDsiPg0KCTx0YWJsZSBjbGFzcz0iYm94IiBpZD0iYmx1ZWJveCI+DQoJPHRyPjx0ZD48L3RkPjwvdHI+DQoJPC90YWJsZT4NCgk8L2Rpdj4NCjwvdGQ+DQo8dGQ+DQoJPGRpdiBpZD0ib3JhbmdlIiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp3aGl0ZTsiPg0KCTx0YWJsZSBjbGFzcz0iYm94IiBpZD0ib3JhbmdlYm94Ij4NCgk8dHI+PHRkPjwvdGQ+PC90cj4NCgk8L3RhYmxlPg0KCTwvZGl2Pg0KPC90ZD4NCjx0ZD4NCgk8ZGl2IGlkPSJyZWQiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOndoaXRlOyI+DQoJPHRhYmxlIGNsYXNzPSJib3giIGlkPSJyZWRib3giPg0KCTx0cj48dGQ+PC90ZD48L3RyPg0KCTwvdGFibGU+DQoJPC9kaXY+DQo8L3RkPg0KPHRkPg0KCTxkaXYgaWQ9ImdyZWVuIiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp3aGl0ZTsiPg0KCTx0YWJsZSBjbGFzcz0iYm94IiBpZD0iZ3JlZW5ib3giPg0KCTx0cj48dGQ+PC90ZD48L3RyPg0KCTwvdGFibGU+DQoJPC9kaXY+DQo8L3RkPg0KPC90ZD4NCjwvdHI+DQo8L3RhYmxlPg0KPC9wPg0KPGRpdiBhbGlnbj0iY2VudGVyIj4NCjxkaXYgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgYmxhY2s7d2lkdGg6NDAwcHg7aGVpZ2h0OjE1MHB4OyI+DQo8Zm9ybSBhY3Rpb249ImluZGV4LnBocCIgbmFtZT0ic2V0dXAiIGlkPSJzZXR1cCIgbWV0aG9kPSJwb3N0Ij4NCjx0YWJsZT4NCjx0cj4NCjx0ZCBjb2xzcGFuPTI+Jm5ic3A7PC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+V2hhdCB3aWxsIGJlIHlvdXIgcGFzc3dvcmQ/PC90ZD48dGQ+PGlucHV0IHR5cGU9InBhc3N3b3JkIiBuYW1lPSJwYXNzd29yZCIgdmFsdWU9IiIgLz48L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD5Zb3VyIEhvbWVwYWdlIG5hbWU/PC90ZD48dGQ+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImhvbWVwYWdlIiB2YWx1ZT0iaG9tZSIgLz48L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCBjb2xzcGFuPSIyIj4mbmJzcDsNCjwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkIGNvbHNwYW49IjIiIGFsaWduPSJyaWdodCI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzdWJtaXR0ZWQiIHZhbHVlPSJzZXR1cCIgLz4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImMiIHZhbHVlPSIxIiAvPg0KPGlucHV0IHR5cGU9InN1Ym1pdCIgY2xhc3M9InN1Ym1pdCIgdmFsdWU9IkdvISIgLz4NCjwvdGQ+DQo8L3RyPg0KPC90YWJsZT4NCjwvZm9ybT4NCjwvZGl2Pg0KPC9kaXY+DQo8L2JvZHk+";

if ($password=="admin" && !isset($_REQUEST['password'])){
print base64_decode($setup);
exit;
}

if (isset($_REQUEST['submitted']) && $_REQUEST['submitted']=="setup"){
if ($password=="admin"){
	//SETUP SETTINGS
	$nl="\n";
	$systemtag="/* "."SETTINGS"." */";
	//Base64 encoded settings function
	$setfn="LyogU0VUVElOR1MgKi8NCmZ1bmN0aW9uIHNldCgpew0KZ2xvYmFsICRlZGl0cGFnZSwkcGFnZWNvbnRlbnQ7DQokZmlsZWhhbmRsZSA9IGZvcGVuKCRlZGl0cGFnZSwgInIiKTsNCiRwYWdlY29udGVudCA9IGV4cGxvZGUoIi8qIFNFVFRJTkdTICovIiwgaHRtbGVudGl0aWVzKGZyZWFkKCRmaWxlaGFuZGxlLCBmaWxlc2l6ZSgkZWRpdHBhZ2UpKSkpOw0KZmNsb3NlKCRmaWxlaGFuZGxlKTsNCn0vL0VORCBGVU5DVElPTg0KPz4=";
	$new="$"."homepage=\"".$_REQUEST['homepage']."\";".$nl
	."$"."password=\"".$_REQUEST['password']."\";".$nl
	."$"."theme=\"".$theme."\";".$nl
	."$"."defaulteditor=\"default\";".$nl
	."$"."onload=\"".$onload."\";";
	$ftext=html_entity_decode($pagecontent[0].$systemtag."\n".$new."\n".$systemtag.$pagecontent[2]).base64_decode($setfn);
	$path=$editpage;
	$filehandle=fopen($path, "w+");
	fputs($filehandle,$ftext);
	fclose($filehandle);
	rename ("pages/home.html","pages/".$_REQUEST['homepage'].".html");
	print "
	<html>
	<head><style type=\"text/css\" media=\"all\">@import \"themes/doop.css\";</style></head>
	<body>
	<p>&nbsp;</p>
	<p>&nbsp;</p>
	<p align=\"center\">
	<img src=\"themes/logo.gif\" /><br/>
	<a><b>Your website in now ready!</b></a><br /><br />
	<input type=\"submit\" class=\"submit\" value=\"Home\" onclick=\"javascript:window.location='index.php'\" />
	</p>
	</body>
	</html>";
	exit;
}
}

//Template Switcheroo

if (isset($_SESSION['name'])!='admin'){
	include ("themes/".$theme.".html"); 
}
else include ("themes/doop.html"); 


/* SYSTEM FUNCTIONS */

function stats(){
if (isset($_SESSION['name'])) print $_SESSION['name'];
}//END FUNCTION

function menu($opt){

global $password;

$files=array();
$PATH = getcwd();
$d=$PATH."/pages/"; #define which dir you want to read
$dir = opendir($d); #open directory
while ($f = readdir($dir)) { #read one file name
	if ($f!=='.' && $f!=='..' && $f!='index.php'){
		if ($opt=="filemanager" || substr($f,-1)=='l'){
			array_push($files,"$f");
		}
	}
}

rsort($files);

//Rename Window
$renamewin="
<script>
function renamefile(name){
newname=prompt('Enter new page name',name);
window.location='index.php?page='+name+'&action=rename&newname='+newname;
}	
</script>";

//File Manager header
if (isset($_SESSION['name'])=='admin' && $opt=='filemanager') {
	print $renamewin;
	print "<fieldset>\n<legend>File Manager</legend>\n<table>\n";
	print "<tr>\n";
	print "<form method=\"post\" action=\"index.php?action=admin\">\n";
	print "<td><input type=\"text\" name=\"new\" value=\"Create New Page\" /></td>\n";
	print "<td colspan=\"7\"><input type=\"submit\" class=\"submit\" value=\"Create\" /></td>\n</form>\n";
	print "</tr>\n";
}

if ($opt=='vmenu') print "<table>";

	foreach($files as $value){
		$fullpagename=$value;
		if (substr($value,-1)=="l") $value=substr($value,0,-5); else  $value=substr($value,0,-4);
		//Check whether it is normal or hidden
		if (substr($fullpagename,-1)=="l") $stat="hide"; else $stat="show";
		if (isset($_SESSION['name'])=='admin' && $opt=='filemanager'){
			print  "<tr><td>".ucfirst($value)."</td>"
				."<td><a href=\"?page=".$value."&menu=false&passw=".$password."&status=".$stat."\">Edit</a></td>\n"
				."<td> | </td>"
				."<td><a href=\"#\" onclick=\"renamefile('".$value."')\">Rename</a></td>\n"
				."<td> | </td>"
				."<td><a href=\"?page=".$value."&action=delete\">Delete</a></td>\n"
				."<td> | </td>"
				."<td><a href=\"?page=".$value."&action=".$stat."\">".ucfirst($stat)."</a></td></tr>\n";
		}
		elseif ($opt=='vmenu'){
			print "<tr><td class=\"menu\"><a class=\"menu\" href=\"?page=".$value."\">".ucfirst($value)."</td></tr>"." \n";
		}
		elseif (isset($_SESSION['name'])!='admin'){
			print "<a class=\"menu\" href=\"?page=".$value."\">".ucfirst($value)."</a><a> | </a>"." \n";
		}
	}

if ($opt=='vmenu') print "</table>";

//File Manager footer
if (isset($_SESSION['name'])=='admin' && $opt=='filemanager') {
		print "<tr><td colspan=\"7\">";
		upload("pages");
		print "</td></tr>\n";
		print "</table> \n</fieldset> \n";
}

}//END FUNCTION

function admin(){
if (isset($_SESSION['name']) && $_SESSION['name']=='admin') print "
	<a href=\"?action=admin\">Control Panel</a><a> | </a><a href=\"?action=logout\">Logout</a>";
else print "<a class=\"menu\" href=\"?action=admin\">Admin</a>";
}//END FUNCTION

function loadtimer($opt){

global $time,$start;

if ($opt=='start'){
//Page load start timer
$time = microtime();
$time = explode(" ", $time);
$time = $time[1] + $time[0];
$start = $time;
}
if ($opt=='stop'){
//Stop Timer
$time = microtime();
$time = explode(" ", $time);
$time = $time[1] + $time[0];
$finish = $time;
$totaltime = ($finish - $start);
echo '<p>';
printf ("Page loaded in %f seconds.", $totaltime);
echo '</p>';
}

}//END FUNCTION

function editor(){

global $defaulteditor,$editorhead,$editorcode;

if (isset($_SESSION['name'])=='admin'){

print "<script type=\"text/javascript\">
	function setSelectionRange(input, selectionStart, selectionEnd) {
	  if (input.setSelectionRange) {
	    input.focus();
	    input.setSelectionRange(selectionStart, selectionEnd);
	  }
	  else if (input.createTextRange) {
	    var range = input.createTextRange();
	    range.collapse(true);
	    range.moveEnd('character', selectionEnd);
	    range.moveStart('character', selectionStart);
	    range.select();
	  }
	}

	function replaceSelection (input, replaceString) {
		if (input.setSelectionRange) {
			var selectionStart = input.selectionStart;
			var selectionEnd = input.selectionEnd;
			input.value = input.value.substring(0, selectionStart)+ replaceString + input.value.substring(selectionEnd);
    
			if (selectionStart != selectionEnd){ 
				setSelectionRange(input, selectionStart, selectionStart + 	replaceString.length);
			}else{
				setSelectionRange(input, selectionStart + replaceString.length, selectionStart + replaceString.length);
			}

		}else if (document.selection) {
			var range = document.selection.createRange();

			if (range.parentElement() == input) {
				var isCollapsed = range.text == '';
				range.text = replaceString;

				 if (!isCollapsed)  {
					range.moveStart('character', -replaceString.length);
					range.select();
				}
			}
		}
	}


	// catch the TAB key
	function catchTab(item,e){
		if(navigator.userAgent.match(\"Gecko\")){
			c=e.which;
		}else{
			c=e.keyCode;
		}
		if(c==9){
			replaceSelection(item,String.fromCharCode(9));
			setTimeout(\"document.getElementById('\"+item.id+\"').focus();\",0);	
			return false;
		}
		    
	}

</script> \n";

if ($defaulteditor!="default"){
	print $editorhead;
}
else {
	print "<script type=\"text/javascript\">
	var HYPECode = function(){
	window.undefined = window.undefined;
	this.initDone = false;
	}
	HYPECode.prototype.init = function(t){
	if(this.initDone) return false;
	if(t == undefined) return false;
	this._target = t ? document.getElementById(t) : t;
	this.initDone = true;
	return true;
	}
	HYPECode.prototype.noForm = function(){
	return this._target == undefined;
	}
	// insertcode is used for bold, italic, underline and quote and just
	// wraps the tags around a selection or prompts the user for some
	// text to apply the tag to
	HYPECode.prototype.insertCode = function (tag, desc, endtag) {
	if(this.noForm()) return false;
	var isDesc = (desc == undefined || desc == '') ? false : true;
	// our textfield
	var textarea = this._target;
	// our open tag
	var open = '<'+tag+'>';
	var close = '</'+((endtag == undefined) ? tag : endtag)+'>';
	if (!textarea.setSelectionRange) {
	var selected = document.selection.createRange().text;
	if (selected.length<=0) {
	// no text was selected so prompt the user for some text
	textarea.value += open+((isDesc) ? prompt(\"Please enter the text you'd like to \"+desc, \"\")+close : '');
	} else {
	// put the code around the selected text
	document.selection.createRange().text = open+selected+((isDesc) ? close : '');
	}
	} else {
	// the text before the selection
	var pretext = textarea.value.substring(0, textarea.selectionStart);
	// the selected text with tags before and after
	var codetext = open+textarea.value.substring(textarea.selectionStart, textarea.selectionEnd)+((isDesc) ? close : '');
	// the text after the selection
	var posttext = textarea.value.substring(textarea.selectionEnd, textarea.value.length);
	// check if there was a selection
	if (codetext == open+close) {
	//prompt the user
	codetext = open+((isDesc) ? prompt(\"Please enter the text you'd like to \"+desc, \"\")+close : '');
	}
	// update the text field
	textarea.value = pretext+codetext+posttext;
	}
	// set the focus on the text field
	textarea.focus();
	}
	// inserts an image by prompting the user for the url
	HYPECode.prototype.insertImage = function (html) {
	if(this.noForm()) return false;
	var src = prompt('Please enter the url', 'http://');
	this.insertCode('img src=\"'+src+'\" alt=\"'+prompt(\"Please enter the alt tag\", \"alt image name\")+'\" /');
	}

	// inserts a link by prompting the user for a url
	HYPECode.prototype.insertLink = function (html) {
	if(this.noForm()) return false;
	this.insertCode('a href=\"'+prompt(\"Please enter the url\", \"http://\")+'\" title=\"'+prompt(\"Please enter the title\", \"Untitled\")+'\"', 'as text of the link', 'a')
	}
</script>\n";
	$editorcode="<script type=\"text/javascript\">hype.init('content');</script>\n";
}

}

//If not in admin, blank initEditor
if (!isset($_SESSION['name'])){ 
print "<script type=\"text/javascript\">function initEditor(){}</script>\n"; 
}

}//END FUNCTION

function doop(){

global $homepage,$password,$theme,$defaulteditor,$onload,$editpage,$pagecontent,$editorcode;

//doop Main Core

//ADMIN ONLY
if (isset($_SESSION['name']) && $_SESSION['name']=='admin'){

//Settings Message
if (isset($_REQUEST['save'])){
	//Display Refresh link
	print "<p>Your settings has been saved. <a href=\"?action=admin&amp;settings=change\"><b>Refresh</b></a> to display the new settings.</p>";
}

//Show & Hide page
if ((isset($_REQUEST['action']) && $_REQUEST['action']=='hide') || (isset($_REQUEST['action']) && $_REQUEST['action']=='show')) { 
	if ($_REQUEST['action']=='hide'){
		if (rename ("pages/".$_REQUEST['page'].".html", "pages/".$_REQUEST['page'].".htm")) {
			print $_REQUEST['page']." successfully hidden from menu.";
		}
		else { $statmsg=TRUE; }
	}
	else {
		if (rename ("pages/".$_REQUEST['page'].".htm", "pages/".$_REQUEST['page'].".html")) {
			print $_REQUEST['page']." successfully shown in menu.";
		}
		else { $statmsg=TRUE; } 
	}
}
if (!isset($statmsg)) $statmsg=FALSE;
if ($statmsg) print "It seems there is a problem with your Show & Hide command feature..";

//Rename page
if (isset($_REQUEST['action']) && $_REQUEST['action']=='rename') { 
	if (file_exists("pages/".$_REQUEST['page'].".html")){
		if (rename ("pages/".$_REQUEST['page'].".html", "pages/".$_REQUEST['newname'].".html")) 
			print $_REQUEST['page']." successfully renamed to ".$_REQUEST['newname'].". \n";
	}
	elseif (rename ("pages/".$_REQUEST['page'].".htm", "pages/".$_REQUEST['newname'].".htm")) 
		print $_REQUEST['page']." successfully renamed to ".$_REQUEST['newname'].". \n";
	else 
		print "Cannot rename the file for some reason, hmmm?...";
}

//Delete page
if (isset($_REQUEST['action']) && $_REQUEST['action']=='delete') { 
	if (file_exists("pages/".$_REQUEST['page'].".html")){
		if (unlink ("pages/".$_REQUEST['page'].".html")) 
			print $_REQUEST['page']." successfully deleted. \n";
	}
	elseif (unlink ("pages/".$_REQUEST['page'].".htm")) 
		print $_REQUEST['page']." successfully deleted. \n";
	else 
		print "The page cannot be deleted. Please check your file permissions..";
}

//Save page
if (isset($_REQUEST['action']) && $_REQUEST['action']=='save') { 
//	$path="pages/".$_REQUEST['savepage'].".html";
	$path="pages/".$_REQUEST['savepage'].$_REQUEST['extension'];
	$text = $_POST['content'];
	$ftext = stripcslashes($text);
	$filehandle=fopen($path, "w+");
	fputs($filehandle,$ftext);
	fclose($filehandle);
	print "<meta http-equiv=\"refresh\" content=\"0 URL=?action=admin\">";
	exit;
}

if (isset($_REQUEST['action']) && $_REQUEST['action']=='logout') { 
	session_destroy();
	print "Logged out.";
	print "<meta http-equiv=\"refresh\" content=\"1 URL=index.php\">";
	exit; 
}

}
//ADMIN ONLY

if (isset($_SESSION['name']) && $_SESSION['name']=='admin' && isset($_REQUEST['menu'])!='false' && !isset($_REQUEST['preview'])) {
	//Create new page
	if (isset($_REQUEST['new'])){
		if ($_REQUEST['new']=="Create New Page") { print "Please use a different page name."; $newerror=1; }
			else {
				if ($newerror=1){
					$path="pages/".$_REQUEST['new'].".html";
					$text = "<div><h2>".ucfirst($_REQUEST['new'])."</h2>Place your content here..</div>";
					$filehandle=fopen($path, "w");
					fputs($filehandle,$text);
					fclose($filehandle);	
					print $_REQUEST['new']." page successfully created.";
					//exit;
				}
			}
	}

	//Show all installed themes in selection box
	$options='';
	//$files=array();
	$d=getcwd()."/themes/"; #define which dir you want to read
	$dir = opendir($d); #open directory
	while ($f = readdir($dir)) { #read one file name
		if ($f!=='.' && $f!=='..'){
			if (substr($f,-4)=='html'){
				$tf=substr($f,0,-5);
				$options=$options."<option name=\"".$tf."\">".$tf."</option>\n";
				//array_push($files,"$options");
			}
		}
	}

	//Show all available WYSIWYG Editor Addons
	$editoroptions='';
	if (glob("addons/"."*.editor")){
		foreach (glob("addons/"."*.editor") as $filename) {
			$ea=substr(substr($filename,0,-7),7); //extract Editor name from path
			$editoroptions=$editoroptions."<option name=\"".$ea."\">".$ea."</option>\n";
		}
	}
	//include "default" editor in the selection (HYPE)
	$editoroptions="<option name=\"default\">default</option>\n".$editoroptions;

	//Ready select box for Editor
	$editorcurrent="<option selected name=\"".$defaulteditor."\">".$defaulteditor."</option>\n";
	$editorselect="<select name=\"editor\">\n".$editorcurrent.$editoroptions."</select>\n";

	//Ready up select box for Themes
	$current="<option selected name=\"".$theme."\">".$theme."</option>\n";
	$themeselect="<select name=\"theme\">\n".$current.$options."</select>\n";

	$dout = "<h3>Control Panel</h3> \n";
	$dout = $dout . "<fieldset>\n<legend>Settings</legend>\n";
	$dout = $dout . "<form method=\"post\" action=\"index.php\"> \n";

	$dout = $dout . "<table cellpadding=\"1\">\n";
	$dout = $dout . "<tr>\n";
	$dout = $dout . "<td>Homepage</td><td><input type=\"text\" name=\"homepage\" value=\"".$homepage."\" /></td>\n";
	$dout = $dout . "</tr>\n";
	$dout = $dout . "<tr>\n";
	$dout = $dout . "<td>Password</td><td><input type=\"text\" name=\"save\" value=\"New Admin Password\" /></td>\n";
	$dout = $dout . "</tr>\n";
	$dout = $dout . "<tr>\n<td>Theme</td><td>";
	$dout = $dout . $themeselect."</td>\n</tr>\n";
	$dout = $dout . "<tr>\n";
	$dout = $dout . "<td>Editor</td><td>".$editorselect."</td>\n";
	$dout = $dout . "</tr>\n";
	$dout = $dout . "<tr>\n<td colspan=\"2\"><input type=\"submit\" class=\"submit\" value=\"Save Settings\" />\n";
	$dout = $dout . "</td>\n<tr>\n";
	$dout = $dout . "</table>\n</fieldset>\n";

	$dout = $dout . "</form>\n";
	print $dout;
	menu("filemanager");
}

//Page Handler, compatible with script enabled pages
if (!isset($_REQUEST['page'])){
	$_REQUEST['page']=$homepage; 
	$cpage=$_REQUEST['page'];
} else { $cpage=$_REQUEST['page']; }

//Content Editor
if (isset($_REQUEST['passw']) && $_REQUEST['passw']==$password){
	if (!isset($_SESSION['name'])){ 
	$_SESSION['name']='admin';
	$_SESSION['site_id']=$password;
	print "<div><h2>Welcome, Admin!</h2>";
	print "<h3><a href=\"index.php?action=admin\">Control Panel</a></h3></div></body></html>";
	exit;
	}
	//If no page is set, open the default page for editing.
	if (!isset($_REQUEST['page'])) $page="home"; else $page=$_REQUEST['page'];
	if (file_exists("pages/".$_REQUEST['page'].".html")){
		$editpage=getcwd()."/pages/".$page.".html";
	}
	else $editpage=getcwd()."/pages/".$page.".htm";
	$filehandle = fopen($editpage, "r");
	$pagecontent = fread($filehandle, filesize($editpage));
	fclose($filehandle);
	print "<div class=\"content\"> \n"
	    . "<h3>Page Editor</h3> \n";

	//Determine page status for saving 
	$pagestatus="";
	switch($_REQUEST['status']) {
		case "show":
			$pagestatus=".htm";
			break;
		case "hide":
			$pagestatus=".html";
			break;
	}

	//Internal (HYPE) editor buttons 
$hype="
	<script type=\"text/javascript\">
	var hype = new HYPECode();
	</script>
	<input type=\"button\" onclick=\"hype.insertCode('b', 'bold');\" value=\"B\" title=\"Bold text\" />
	<input type=\"button\" onclick=\"hype.insertCode('i', 'make italic');\" value=\"I\" title=\"Italic text\" />
	<input type=\"button\" onclick=\"hype.insertCode('u', 'underline');\" value=\"U\" title=\"Underlined text\" />
	<input type=\"button\" onclick=\"hype.insertCode('p', 'paragraph');\" value=\"<P>\" title=\"Insert a Paragraph\" />
	<input type=\"button\" onclick=\"hype.insertImage();\" value=\"Image\" title=\"Inset an image\" />
	<input type=\"button\" onclick=\"hype.insertLink();\" value=\"Link\" title=\"Insert a link\" />
	<input type=\"button\" onclick=\"javascript:window.open('index.php?page=".$page."&preview=yes','blank','fullscreen=yes, scrollbars=yes')\" value=\"Preview\" title=\"Preview\" /><br />";

	if ($defaulteditor=="default"){ print $hype; }
	
	/* Future code for PHP "Include" type WYSIWYG editors */
	if ($defaulteditor=="spaw2"){
		include("addons/spaw2.editor/spaw.inc.php");
		$spaw1 = new SpawEditor("content", $pagecontent);
		print "<form action=\"?action=save\" method=\"post\"> \n";
		$spaw1->show();
	      print "<input type=\"hidden\" name=\"savepage\" value=\"".$page."\"> \n";
	      print "<input type=\"hidden\" name=\"extension\" value=\"".$pagestatus."\"> \n";
		print "<div>\n";
		print "<input class=\"submit\" type=\"button\" onclick=\"javascript:window.open('index.php?page=".$page."&preview=yes','blank','fullscreen=yes, scrollbars=yes')\" value=\"Preview\" title=\"Preview\" />\n";
		print "<input class=\"submit\" type=\"submit\" value=\"Save\">\n";
		print "</div>\n";
		print "</form></div>\n";
	}
	/* Future code for PHP "Include" type WYSIWYG editors */

	else {
	print "<p></p> \n"
	    . "<form action=\"?action=save\" method=\"post\"> \n"
	    . "<input type=\"hidden\" name=\"savepage\" value=\"".$page."\"> \n"
	    . "<input type=\"hidden\" name=\"extension\" value=\"".$pagestatus."\"> \n"
	    . "<textarea name=\"content\" id=\"content\" cols=\"90%\" rows=\"15\" wrap=\"off\" onkeydown=\"return catchTab(this,event)\">".$pagecontent."</textarea> \n"
	    . $editorcode
	    . "<div>\n"
	    . "<input class=\"submit\" type=\"button\" onclick=\"javascript:window.open('index.php?page=".$page."&preview=yes','blank','fullscreen=yes, scrollbars=yes')\" value=\"Preview\" title=\"Preview\" />\n"
	    . "<input class=\"submit\" type=\"submit\" value=\"Save\">\n"
	    . "</form>\n"
	    . "</div></div>\n";
	}
} 

if (isset($_REQUEST['submit']) == 'submit') {
$justupload=TRUE;
}

if (!isset($justupload) || !isset($_SESSION['name'])){
if (isset($_REQUEST['submit']) == 'Login' && $_REQUEST['passw'] != $password) print "<h3>Incorrect Password!</h3>";
}

if (isset($_REQUEST['action']) && $_REQUEST['action']=='admin' && !isset($_SESSION['name'])){ 
	$admin=TRUE; 
	$dout = "<div><h2>Admin Login</h2>";
	$dout = $dout . "<form action=\"index.php\" method=\"post\"> \n";
	$dout = $dout . "<p>Password: <input name=\"passw\" type=\"password\" /></p>  \n";
	$dout = $dout . "<p><input type=\"submit\" class=\"submit\" name=\"submit\" value=\"Login\" /></p></form> \n</div>";
	$dout = $dout . "<div><p>&nbsp;</p></div>";
	print $dout . isset($_REQUEST['passw']);
	} else $admin=FALSE;

//Display Normal (.HTML) & Hidden (.HTM)pages
if ($admin == FALSE && !isset($_SESSION['name']) || isset($_REQUEST['preview'])){
	if (file_exists("pages/".$cpage.".htm")){
		include("pages/".$cpage.".htm");
	}
	else include("pages/".$cpage.".html");
}

//ADMIN ONLY
if (isset($_SESSION['name']) &&$_SESSION['name']=='admin'){
if (isset($_REQUEST['save'])){
	//Set rewrite file;
	$nl="\n";
	$systemtag="/* "."SETTINGS"." */";
	//Base64 encoded settings function
	$setfn="LyogU0VUVElOR1MgKi8NCmZ1bmN0aW9uIHNldCgpew0KZ2xvYmFsICRlZGl0cGFnZSwkcGFnZWNvbnRlbnQ7DQokZmlsZWhhbmRsZSA9IGZvcGVuKCRlZGl0cGFnZSwgInIiKTsNCiRwYWdlY29udGVudCA9IGV4cGxvZGUoIi8qIFNFVFRJTkdTICovIiwgaHRtbGVudGl0aWVzKGZyZWFkKCRmaWxlaGFuZGxlLCBmaWxlc2l6ZSgkZWRpdHBhZ2UpKSkpOw0KZmNsb3NlKCRmaWxlaGFuZGxlKTsNCn0vL0VORCBGVU5DVElPTg0KPz4=";
	if ($_REQUEST['save']=="New Admin Password" || $_REQUEST['save']=="") {
		$_REQUEST['save']=$password;
	}
	if (!isset($_REQUEST['theme']) || $_REQUEST['theme']=="" || $_REQUEST['theme']=="New Theme") { 
		$newtheme = $theme; 
	}
	else { $newtheme=$_REQUEST['theme']; }
	$new="$"."homepage=\"".$_REQUEST['homepage']."\";".$nl
	."$"."password=\"".$_REQUEST['save']."\";".$nl
	."$"."theme=\"".$newtheme."\";".$nl
	."$"."defaulteditor=\"".$_REQUEST['editor']."\";".$nl
	."$"."onload=\"".$onload."\";";
	$ftext=html_entity_decode($pagecontent[0].$systemtag."\n".$new."\n".$systemtag.$pagecontent[2]).base64_decode($setfn);
	$path=$editpage;
	$filehandle=fopen($path, "w+");
	fputs($filehandle,$ftext);
	fclose($filehandle);
	//print "<p><a>Your settings has been saved.</a></p>";
	//Security update, not yet 100% stable
	$_SESSION['site_id']=$_REQUEST['save'];
}
}//ADMIN ONLY

}//END FUNCTION

//BODY TAG onLoad scripts
function addons(){
global $onload;
print $onload;
}//END FUNCTION

//File Uploader
function upload($folder){

global $a,$i, $password;

	if (isset($_REQUEST['submit'])){
		move_uploaded_file ($_FILES['uploadFile'] ['tmp_name'], "./".$folder."/{$_FILES['uploadFile'] ['name']}");
		//print $_FILES['uploadFile']['type']."<br />";
		$i = $_FILES['uploadFile']['error'];
		$mfs=ceil($_REQUEST['MAX_FILE_SIZE']/1024);
		$info = array(
		'file succesfully uploaded.<br /><a href="?action=admin"><b>Refresh</b></a> to update your File Manager.', 
		'The uploaded file exceeds the server allowed limit filesize',
		'The uploaded file exceeds '.$mfs.' KBytes.',
		'The uploaded file was only partially uploaded.',
		'No file was uploaded.');
		list($a[0], $a[1], $a[2], $a[3], $a[4]) = $info;
	}

	print "
	<br />
	You can also upload your pages here: 
	<form enctype=\"multipart/form-data\" action=\"?action=admin\" method=\"post\"><br />
	<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"640000\">
	<input type=\"file\" name=\"uploadFile\">
	<input type=\"submit\" class=\"submit\" name=\"submit\" value=\"Upload\">
	</form>";

print "<p>".$a[$i]."</p>";

}//END FUNCTION

//ADDONS MANAGER
function addonsmanager(){

global $addonsdir;

$files=array();
$PATH = getcwd();
$d=$PATH."/addons/"; #define which dir you want to read
if (file_exists($d)){ //Check addons folder if present, otherwise dont use addons
	$dir = opendir($d); #open directory
	while ($f = readdir($dir)) { #read one file name
		if ($f!=='.' && $f!=='..' && $f!=='index.php'){
			array_push($files,"$f");
		}
	}
	//Load every addons found in the default directory
	foreach($files as $value){
		include ($addonsdir.$value."/index.php");
	}
}

}//END ADDONS MANAGER

//The settings below is important to rewrite the file itself with the new settings
/* SETTINGS */
function set(){
global $editpage,$pagecontent;
$filehandle = fopen($editpage, "r");
$pagecontent = explode("/* SETTINGS */", htmlentities(fread($filehandle, filesize($editpage))));
fclose($filehandle);
}//END FUNCTION
?>

فایل فارسی شده:
PHP:
<?php
session_start();
/*
Project:      doop - Open Source Content Management System
Version:      1.3.7
Date:         2007/05/08 (y/m/d)
Author:       Ronald Chua
URL:          http://www.doop.co.nr
License:      Open Source/Free

Copyright (c) 2006 - 2007, Ronald Chua doopcms(at)gmail.com
All rights reserved.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
OF THE POSSIBILITY OF SUCH DAMAGE.
*/

/* SETTINGS */
$homepage="home";
$password="admin";
$theme="doop";
$defaulteditor="default";
$onload="initEditor()";
/* SETTINGS */

//doop messages
$dooperror[0]="";
$dooperror[1]="SITE ERROR: UNAUTHORIZED. HIT REFRESH BUTTON TO CONTINUE.";

global $addonsdir;

$addonsdir="addons/";

//Start Addons Manager
addonsmanager();

$editpage="index.php";
set();

//Admin has change the password, make sure we are still logged in
if (isset($_REQUEST['settings'])=="change" || isset($_SESSION['site_id'])){
	$_SESSION['settings']=$password;
}

//Security Fix
if (isset($_SESSION['settings'])!=$password  && isset($_SESSION['name'])){
		print $dooperror[1]."1";
		session_destroy(); 
		exit;
}
if (isset($_SESSION['site_id'])){
	if ($_SESSION['site_id']!=$password && !isset($_REQUEST['settings'])){ 
		print $dooperror[1]."2";
		session_destroy(); 
		exit;
	}
}
if (!isset($_SESSION['site_id']) && isset($_SESSION['name'])){
	print $dooperror[1]."3";
	session_destroy();
	exit;
}

//Setup
$setup="PGh0bWw+DQo8aGVhZD4NCjxzY3JpcHQgbGFuZ3VhZ2U9ImphdmFzY3JpcHQiPg0KPCEtLQ0KYWRkRXZlbnQod2luZG93LCAibG9hZCIsIGluaXQpOw0KDQpmdW5jdGlvbiBpbml0KCkNCnsNCg0KCWZvcm0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dXAiKTsNCglhZGRFdmVudChmb3JtLCAic3VibWl0IiwgY29ycmVjdFN1Ym1pdEhhbmRsZXIpOw0KfQ0KDQpmdW5jdGlvbiBjb3JyZWN0U3VibWl0SGFuZGxlcihlKQ0Kew0KCWlmICghZG9jdW1lbnQuc2V0dXAucGFzc3dvcmQudmFsdWUgfHwgZG9jdW1lbnQuc2V0dXAucGFzc3dvcmQudmFsdWU9PSJhZG1pbiIpew0KCWFsZXJ0KCJQbGVhc2UgdXNlIG9yIGVudGVyIGFub3RoZXIgcGFzc3dvcmQuIik7DQoJaWYgKGUgJiYgZS5wcmV2ZW50RGVmYXVsdCkNCgkJZS5wcmV2ZW50RGVmYXVsdCgpOw0KCXJldHVybiBmYWxzZTsNCgl9DQoJaWYgKCFkb2N1bWVudC5zZXR1cC5ob21lcGFnZS52YWx1ZSkgew0KCQlhbGVydCgiWW91IGZvcmdvdCB0byBwbGFjZSBhIEhvbWVwYWdlIG5hbWUsIFdlIHdpbGwgYmUgdXNpbmcgJ2hvbWUnLi4iKTsNCgkJZG9jdW1lbnQuc2V0dXAuaG9tZXBhZ2UudmFsdWU9ImhvbWUiOw0KCX0NCn0NCg0KZnVuY3Rpb24gYWRkRXZlbnQob2JqLCBldlR5cGUsIGZuKQ0Kew0KCWlmIChvYmouYWRkRXZlbnRMaXN0ZW5lcikNCgl7DQogICAJCW9iai5hZGRFdmVudExpc3RlbmVyKGV2VHlwZSwgZm4sIGZhbHNlKTsNCiAgIAkJcmV0dXJuIHRydWU7DQoJfQ0KCWVsc2UgaWYgKG9iai5hdHRhY2hFdmVudCkNCgl7DQogICAJCXZhciByID0gb2JqLmF0dGFjaEV2ZW50KCJvbiIrZXZUeXBlLCBmbik7DQogICAJCXJldHVybiByOw0KIAl9DQogCWVsc2UNCiAJew0KICAgCQlyZXR1cm4gZmFsc2U7DQogCX0NCn0NCi0tPg0KPC9zY3JpcHQ+DQo8c2NyaXB0Pg0KZnVuY3Rpb24gc2V0dXAoKXsNCg0Kc3dpdGNoIChkb2N1bWVudC5zZXR1cC5jLnZhbHVlKXsNCmNhc2UgIjEiOg0KYmx1ZXNldD0iMiI7b3Jhbmdlc2V0PSIxIjtyZWRzZXQ9IjEiO2dyZWVuc2V0PSIxIjsNCmRvY3VtZW50LnNldHVwLmMudmFsdWU9IjIiOw0KYnJlYWs7DQoNCmNhc2UgIjIiOg0KYmx1ZXNldD0iMSI7b3Jhbmdlc2V0PSIyIjtyZWRzZXQ9IjEiO2dyZWVuc2V0PSIxIjsNCmRvY3VtZW50LnNldHVwLmMudmFsdWU9IjMiOw0KYnJlYWs7DQoNCmNhc2UgIjMiOg0KYmx1ZXNldD0iMSI7b3Jhbmdlc2V0PSIxIjtyZWRzZXQ9IjIiO2dyZWVuc2V0PSIxIjsNCmRvY3VtZW50LnNldHVwLmMudmFsdWU9IjQiOw0KYnJlYWs7DQoNCmNhc2UgIjQiOg0KYmx1ZXNldD0iMSI7b3Jhbmdlc2V0PSIxIjtyZWRzZXQ9IjEiO2dyZWVuc2V0PSIyIjsNCmRvY3VtZW50LnNldHVwLmMudmFsdWU9IjEiOw0KYnJlYWs7DQoNCn0NCg0KcmVkLmlubmVySFRNTD0nPHRhYmxlIGNsYXNzPSJib3giIGlkPSJyZWRib3gnK3JlZHNldCsnIj48dHI+PHRkPjwvdGQ+PC90cj48L3RhYmxlPic7DQpibHVlLmlubmVySFRNTD0nPHRhYmxlIGNsYXNzPSJib3giIGlkPSJibHVlYm94JytibHVlc2V0KyciPjx0cj48dGQ+PC90ZD48L3RyPjwvdGFibGU+JzsNCm9yYW5nZS5pbm5lckhUTUw9Jzx0YWJsZSBjbGFzcz0iYm94IiBpZD0ib3JhbmdlYm94JytvcmFuZ2VzZXQrJyI+PHRyPjx0ZD48L3RkPjwvdHI+PC90YWJsZT4nOw0KZ3JlZW4uaW5uZXJIVE1MPSc8dGFibGUgY2xhc3M9ImJveCIgaWQ9ImdyZWVuYm94JytncmVlbnNldCsnIj48dHI+PHRkPjwvdGQ+PC90cj48L3RhYmxlPic7DQoNCnQ9c2V0VGltZW91dCgic2V0dXAoKSIsMTAwMCkNCn0NCg0KPC9zY3JpcHQ+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJhbGwiPkBpbXBvcnQgInRoZW1lcy9kb29wLmNzcyI7PC9zdHlsZT4NCjwvaGVhZD4NCjxib2R5IG9ubG9hZD0ic2V0dXAoKSI+DQo8cD4mbmJzcDs8L3A+DQo8cD4mbmJzcDs8L3A+DQo8cCBhbGlnbj0iY2VudGVyIj4NCjxpbWcgc3JjPSJ0aGVtZXMvbG9nby5naWYiIC8+PGJyLz4NCjxhPjxiPlNldHRpbmcgdXAgeW91ciB3ZWJzaXRlLi4uPC9iPjwvYT4NCjwvcD4NCg0KPHAgYWxpZ249ImNlbnRlciI+DQo8dGFibGU+DQo8dHI+DQo8dGQ+DQoJPGRpdiBpZD0iYmx1ZSIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6d2hpdGU7d2lkdGg6MjBweDsiPg0KCTx0YWJsZSBjbGFzcz0iYm94IiBpZD0iYmx1ZWJveCI+DQoJPHRyPjx0ZD48L3RkPjwvdHI+DQoJPC90YWJsZT4NCgk8L2Rpdj4NCjwvdGQ+DQo8dGQ+DQoJPGRpdiBpZD0ib3JhbmdlIiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp3aGl0ZTsiPg0KCTx0YWJsZSBjbGFzcz0iYm94IiBpZD0ib3JhbmdlYm94Ij4NCgk8dHI+PHRkPjwvdGQ+PC90cj4NCgk8L3RhYmxlPg0KCTwvZGl2Pg0KPC90ZD4NCjx0ZD4NCgk8ZGl2IGlkPSJyZWQiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOndoaXRlOyI+DQoJPHRhYmxlIGNsYXNzPSJib3giIGlkPSJyZWRib3giPg0KCTx0cj48dGQ+PC90ZD48L3RyPg0KCTwvdGFibGU+DQoJPC9kaXY+DQo8L3RkPg0KPHRkPg0KCTxkaXYgaWQ9ImdyZWVuIiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjp3aGl0ZTsiPg0KCTx0YWJsZSBjbGFzcz0iYm94IiBpZD0iZ3JlZW5ib3giPg0KCTx0cj48dGQ+PC90ZD48L3RyPg0KCTwvdGFibGU+DQoJPC9kaXY+DQo8L3RkPg0KPC90ZD4NCjwvdHI+DQo8L3RhYmxlPg0KPC9wPg0KPGRpdiBhbGlnbj0iY2VudGVyIj4NCjxkaXYgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgYmxhY2s7d2lkdGg6NDAwcHg7aGVpZ2h0OjE1MHB4OyI+DQo8Zm9ybSBhY3Rpb249ImluZGV4LnBocCIgbmFtZT0ic2V0dXAiIGlkPSJzZXR1cCIgbWV0aG9kPSJwb3N0Ij4NCjx0YWJsZT4NCjx0cj4NCjx0ZCBjb2xzcGFuPTI+Jm5ic3A7PC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+V2hhdCB3aWxsIGJlIHlvdXIgcGFzc3dvcmQ/PC90ZD48dGQ+PGlucHV0IHR5cGU9InBhc3N3b3JkIiBuYW1lPSJwYXNzd29yZCIgdmFsdWU9IiIgLz48L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD5Zb3VyIEhvbWVwYWdlIG5hbWU/PC90ZD48dGQ+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImhvbWVwYWdlIiB2YWx1ZT0iaG9tZSIgLz48L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCBjb2xzcGFuPSIyIj4mbmJzcDsNCjwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkIGNvbHNwYW49IjIiIGFsaWduPSJyaWdodCI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzdWJtaXR0ZWQiIHZhbHVlPSJzZXR1cCIgLz4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImMiIHZhbHVlPSIxIiAvPg0KPGlucHV0IHR5cGU9InN1Ym1pdCIgY2xhc3M9InN1Ym1pdCIgdmFsdWU9IkdvISIgLz4NCjwvdGQ+DQo8L3RyPg0KPC90YWJsZT4NCjwvZm9ybT4NCjwvZGl2Pg0KPC9kaXY+DQo8L2JvZHk+";

if ($password=="admin" && !isset($_REQUEST['password'])){
print base64_decode($setup);
exit;
}

if (isset($_REQUEST['submitted']) && $_REQUEST['submitted']=="setup"){
if ($password=="admin"){
	//SETUP SETTINGS
	$nl="\n";
	$systemtag="/* "."SETTINGS"." */";
	//Base64 encoded settings function
	$setfn="LyogU0VUVElOR1MgKi8NCmZ1bmN0aW9uIHNldCgpew0KZ2xvYmFsICRlZGl0cGFnZSwkcGFnZWNvbnRlbnQ7DQokZmlsZWhhbmRsZSA9IGZvcGVuKCRlZGl0cGFnZSwgInIiKTsNCiRwYWdlY29udGVudCA9IGV4cGxvZGUoIi8qIFNFVFRJTkdTICovIiwgaHRtbGVudGl0aWVzKGZyZWFkKCRmaWxlaGFuZGxlLCBmaWxlc2l6ZSgkZWRpdHBhZ2UpKSkpOw0KZmNsb3NlKCRmaWxlaGFuZGxlKTsNCn0vL0VORCBGVU5DVElPTg0KPz4=";
	$new="$"."homepage=\"".$_REQUEST['homepage']."\";".$nl
	."$"."password=\"".$_REQUEST['password']."\";".$nl
	."$"."theme=\"".$theme."\";".$nl
	."$"."defaulteditor=\"default\";".$nl
	."$"."onload=\"".$onload."\";";
	$ftext=html_entity_decode($pagecontent[0].$systemtag."\n".$new."\n".$systemtag.$pagecontent[2]).base64_decode($setfn);
	$path=$editpage;
	$filehandle=fopen($path, "w+");
	fputs($filehandle,$ftext);
	fclose($filehandle);
	rename ("pages/home.html","pages/".$_REQUEST['homepage'].".html");
	print "
	<html>
	<head><style type=\"text/css\" media=\"all\">@import \"themes/doop.css\";</style></head>
	<body>
	<p>&nbsp;</p>
	<p>&nbsp;</p>
	<p align=\"center\">
	<img src=\"themes/logo.gif\" /><br/>
	<a><b>Your website in now ready!</b></a><br /><br />
	<input type=\"submit\" class=\"submit\" value=\"Home\" onclick=\"javascript:window.location='index.php'\" size="20" />
	</p>
	</body>
	</html>";
	exit;
}
}

//Template Switcheroo

if (isset($_SESSION['name'])!='admin'){
	include ("themes/".$theme.".html"); 
}
else include ("themes/doop.html"); 


/* SYSTEM FUNCTIONS */

function stats(){
if (isset($_SESSION['name'])) print $_SESSION['name'];
}//END FUNCTION

function menu($opt){

global $password;

$files=array();
$PATH = getcwd();
$d=$PATH."/pages/"; #define which dir you want to read
$dir = opendir($d); #open directory
while ($f = readdir($dir)) { #read one file name
	if ($f!=='.' && $f!=='..' && $f!='index.php'){
		if ($opt=="filemanager" || substr($f,-1)=='l'){
			array_push($files,"$f");
		}
	}
}

rsort($files);

//Rename Window
$renamewin="
<script>
function renamefile(name){
newname=prompt('Enter new page name',name);
window.location='index.php?page='+name+'&action=rename&newname='+newname;
}	
    </script>";

//File Manager header
if (isset($_SESSION['name'])=='admin' && $opt=='filemanager') {
	print $renamewin;
	print "<fieldset>\n<legend>فایل منیجر</legend>\n<table>\n";
	print "<tr>\n";
	print "<form method=\"post\" action=\"index.php?action=admin\">\n";
	print "<td>
        <input type=\"text\" name=\"new\" value=\"نام صفحه جدید\" size="20" /></td>\n";
	print "<td colspan=\"7\">
        <input type=\"submit\" class=\"submit\" value=\"بساز\" size="20" /></td>\n</form>\n";
	print "</tr>\n";
}

if ($opt=='vmenu') print "<table>";

	foreach($files as $value){
		$fullpagename=$value;
		if (substr($value,-1)=="l") $value=substr($value,0,-5); else  $value=substr($value,0,-4);
		//Check whether it is normal or hidden
		if (substr($fullpagename,-1)=="l") $stat="hide"; else $stat="show";
		if (isset($_SESSION['name'])=='admin' && $opt=='filemanager'){
			print  "<tr><td>".ucfirst($value)."</td>"
				."<td><a href=\"?page=".$value."&menu=false&passw=".$password."&status=".$stat."\">ویرایش</a></td>\n"
				."<td> | </td>"
				."<td><a href="\%22#\&quot;">تغییر نام</a></td>\n"
				."<td> | </td>"
				."<td>
        <a href="\%22?page=&quot;.$value.&quot;&action=delete\&quot;">حذف</a></td>\n"
				."<td> | </td>"
				."<td><a href=\"?page=".$value."&action=".$stat."\">".ucfirst($stat)."</a></td></tr>\n";
		}
		elseif ($opt=='vmenu'){
			print "<tr><td class=\"menu\"><a class=\"menu\" href=\"?page=".$value."\">".ucfirst($value)."</td></tr>"." \n";
		}
		elseif (isset($_SESSION['name'])!='admin'){
			print "<a class=\"menu\" href=\"?page=".$value."\">".ucfirst($value)."</a><a> | </a>"." \n";
		}
	}

if ($opt=='vmenu') print "</table>";

//File Manager footer
if (isset($_SESSION['name'])=='admin' && $opt=='filemanager') {
		print "<tr><td colspan=\"7\">";
		upload("pages");
		print "</td></tr>\n";
		print "</table> \n</fieldset> \n";
}

}//END FUNCTION

function admin(){
if (isset($_SESSION['name']) && $_SESSION['name']=='admin') print " <a>
    <a href="\%22?action=admin\&quot;">کنترل پنل</a> |
    <a href="\%22?action=logout\&quot;">خروج</a></a>";
else print "<a href="\%22?action=admin\&quot;">مدیریت</a>";
}//END FUNCTION

function loadtimer($opt){

global $time,$start;

if ($opt=='start'){
//Page load start timer
$time = microtime();
$time = explode(" ", $time);
$time = $time[1] + $time[0];
$start = $time;
}
if ($opt=='stop'){
//Stop Timer
$time = microtime();
$time = explode(" ", $time);
$time = $time[1] + $time[0];
$finish = $time;
$totaltime = ($finish - $start);
echo '<p>';
printf ("Page loaded in %f seconds.", $totaltime);
echo '</p>';
}

}//END FUNCTION

function editor(){

global $defaulteditor,$editorhead,$editorcode;

if (isset($_SESSION['name'])=='admin'){

print "<script type=\"text/javascript\">
	function setSelectionRange(input, selectionStart, selectionEnd) {
	  if (input.setSelectionRange) {
	    input.focus();
	    input.setSelectionRange(selectionStart, selectionEnd);
	  }
	  else if (input.createTextRange) {
	    var range = input.createTextRange();
	    range.collapse(true);
	    range.moveEnd('character', selectionEnd);
	    range.moveStart('character', selectionStart);
	    range.select();
	  }
	}

	function replaceSelection (input, replaceString) {
		if (input.setSelectionRange) {
			var selectionStart = input.selectionStart;
			var selectionEnd = input.selectionEnd;
			input.value = input.value.substring(0, selectionStart)+ replaceString + input.value.substring(selectionEnd);
    
			if (selectionStart != selectionEnd){ 
				setSelectionRange(input, selectionStart, selectionStart + 	replaceString.length);
			}else{
				setSelectionRange(input, selectionStart + replaceString.length, selectionStart + replaceString.length);
			}

		}else if (document.selection) {
			var range = document.selection.createRange();

			if (range.parentElement() == input) {
				var isCollapsed = range.text == '';
				range.text = replaceString;

				 if (!isCollapsed)  {
					range.moveStart('character', -replaceString.length);
					range.select();
				}
			}
		}
	}


	// catch the TAB key
	function catchTab(item,e){
		if(navigator.userAgent.match(\"Gecko\")){
			c=e.which;
		}else{
			c=e.keyCode;
		}
		if(c==9){
			replaceSelection(item,String.fromCharCode(9));
			setTimeout(\"document.getElementById('\"+item.id+\"').focus();\",0);	
			return false;
		}
		    
	}

    </script> \n";

if ($defaulteditor!="default"){
	print $editorhead;
}
else {
	print "<script type=\"text/javascript\">
	var HYPECode = function(){
	window.undefined = window.undefined;
	this.initDone = false;
	}
	HYPECode.prototype.init = function(t){
	if(this.initDone) return false;
	if(t == undefined) return false;
	this._target = t ? document.getElementById(t) : t;
	this.initDone = true;
	return true;
	}
	HYPECode.prototype.noForm = function(){
	return this._target == undefined;
	}
	// insertcode is used for bold, italic, underline and quote and just
	// wraps the tags around a selection or prompts the user for some
	// text to apply the tag to
	HYPECode.prototype.insertCode = function (tag, desc, endtag) {
	if(this.noForm()) return false;
	var isDesc = (desc == undefined || desc == '') ? false : true;
	// our textfield
	var textarea = this._target;
	// our open tag
	var open = '<'+tag+'>';
	var close = '</'+((endtag == undefined) ? tag : endtag)+'>';
	if (!textarea.setSelectionRange) {
	var selected = document.selection.createRange().text;
	if (selected.length<=0) {
	// no text was selected so prompt the user for some text
	textarea.value += open+((isDesc) ? prompt(\"Please enter the text you'd like to \"+desc, \"\")+close : '');
	} else {
	// put the code around the selected text
	document.selection.createRange().text = open+selected+((isDesc) ? close : '');
	}
	} else {
	// the text before the selection
	var pretext = textarea.value.substring(0, textarea.selectionStart);
	// the selected text with tags before and after
	var codetext = open+textarea.value.substring(textarea.selectionStart, textarea.selectionEnd)+((isDesc) ? close : '');
	// the text after the selection
	var posttext = textarea.value.substring(textarea.selectionEnd, textarea.value.length);
	// check if there was a selection
	if (codetext == open+close) {
	//prompt the user
	codetext = open+((isDesc) ? prompt(\"Please enter the text you'd like to \"+desc, \"\")+close : '');
	}
	// update the text field
	textarea.value = pretext+codetext+posttext;
	}
	// set the focus on the text field
	textarea.focus();
	}
	// inserts an image by prompting the user for the url
	HYPECode.prototype.insertImage = function (html) {
	if(this.noForm()) return false;
	var src = prompt('Please enter the url', 'http://');
	this.insertCode('img src=\"'+src+'\" alt=\"'+prompt(\"Please enter the alt tag\", \"alt image name\")+'\" /');
	}

	// inserts a link by prompting the user for a url
	HYPECode.prototype.insertLink = function (html) {
	if(this.noForm()) return false;
	this.insertCode('a href=\"'+prompt(\"Please enter the url\", \"http://\")+'\" title=\"'+prompt(\"Please enter the title\", \"Untitled\")+'\"', 'as text of the link', 'a')
	}
    </script>\n";
	$editorcode="<script type=\"text/javascript\">hype.init('content');</script>\n";
}

}

//If not in admin, blank initEditor
if (!isset($_SESSION['name'])){ 
print "<script type=\"text/javascript\">function initEditor(){}</script>\n"; 
}

}//END FUNCTION

function doop(){

global $homepage,$password,$theme,$defaulteditor,$onload,$editpage,$pagecontent,$editorcode;

//doop Main Core

//ADMIN ONLY
if (isset($_SESSION['name']) && $_SESSION['name']=='admin'){

//Settings Message
if (isset($_REQUEST['save'])){
	//Display Refresh link
	print "<p>تنظیمات ذخیره شد. برای مشاهده تنظیمات&nbsp;
    <a href="\%22?action=admin&settings=change\&quot;"><b>کلیک کنید</b></a> </p>";
}

//Show & Hide page
if ((isset($_REQUEST['action']) && $_REQUEST['action']=='hide') || (isset($_REQUEST['action']) && $_REQUEST['action']=='show')) { 
	if ($_REQUEST['action']=='hide'){
		if (rename ("pages/".$_REQUEST['page'].".html", "pages/".$_REQUEST['page'].".htm")) {
			print $_REQUEST['page']." successfully hidden from menu.";
		}
		else { $statmsg=TRUE; }
	}
	else {
		if (rename ("pages/".$_REQUEST['page'].".htm", "pages/".$_REQUEST['page'].".html")) {
			print $_REQUEST['page']." successfully shown in menu.";
		}
		else { $statmsg=TRUE; } 
	}
}
if (!isset($statmsg)) $statmsg=FALSE;
if ($statmsg) print "It seems there is a problem with your Show & Hide command feature..";

//Rename page
if (isset($_REQUEST['action']) && $_REQUEST['action']=='rename') { 
	if (file_exists("pages/".$_REQUEST['page'].".html")){
		if (rename ("pages/".$_REQUEST['page'].".html", "pages/".$_REQUEST['newname'].".html")) 
			print $_REQUEST['page']." successfully renamed to ".$_REQUEST['newname'].". \n";
	}
	elseif (rename ("pages/".$_REQUEST['page'].".htm", "pages/".$_REQUEST['newname'].".htm")) 
		print $_REQUEST['page']." successfully renamed to ".$_REQUEST['newname'].". \n";
	else 
		print "Cannot rename the file for some reason, hmmm?...";
}

//Delete page
if (isset($_REQUEST['action']) && $_REQUEST['action']=='delete') { 
	if (file_exists("pages/".$_REQUEST['page'].".html")){
		if (unlink ("pages/".$_REQUEST['page'].".html")) 
			print $_REQUEST['page']." successfully deleted. \n";
	}
	elseif (unlink ("pages/".$_REQUEST['page'].".htm")) 
		print $_REQUEST['page']." successfully deleted. \n";
	else 
		print "The page cannot be deleted. Please check your file permissions..";
}

//Save page
if (isset($_REQUEST['action']) && $_REQUEST['action']=='save') { 
//	$path="pages/".$_REQUEST['savepage'].".html";
	$path="pages/".$_REQUEST['savepage'].$_REQUEST['extension'];
	$text = $_POST['content'];
	$ftext = stripcslashes($text);
	$filehandle=fopen($path, "w+");
	fputs($filehandle,$ftext);
	fclose($filehandle);
	print "<meta http-equiv=\"refresh\" content=\"0 URL=?action=admin\">";
	exit;
}

if (isset($_REQUEST['action']) && $_REQUEST['action']=='logout') { 
	session_destroy();
	print "Logged out.";
	print "<meta http-equiv=\"refresh\" content=\"1 URL=index.php\">";
	exit; 
}

}
//ADMIN ONLY

if (isset($_SESSION['name']) && $_SESSION['name']=='admin' && isset($_REQUEST['menu'])!='false' && !isset($_REQUEST['preview'])) {
	//Create new page
	if (isset($_REQUEST['new'])){
		if ($_REQUEST['new']=="Create New Page") { print "Please use a different page name."; $newerror=1; }
			else {
				if ($newerror=1){
					$path="pages/".$_REQUEST['new'].".html";
					$text = "<div><h2>".ucfirst($_REQUEST['new'])."</h2>Place your content here..</div>";
					$filehandle=fopen($path, "w");
					fputs($filehandle,$text);
					fclose($filehandle);	
					print $_REQUEST['new']." page successfully created.";
					//exit;
				}
			}
	}

	//Show all installed themes in selection box
	$options='';
	//$files=array();
	$d=getcwd()."/themes/"; #define which dir you want to read
	$dir = opendir($d); #open directory
	while ($f = readdir($dir)) { #read one file name
		if ($f!=='.' && $f!=='..'){
			if (substr($f,-4)=='html'){
				$tf=substr($f,0,-5);
				$options=$options."<option name=\"".$tf."\">".$tf."</option>\n";
				//array_push($files,"$options");
			}
		}
	}

	//Show all available WYSIWYG Editor Addons
	$editoroptions='';
	if (glob("addons/"."*.editor")){
		foreach (glob("addons/"."*.editor") as $filename) {
			$ea=substr(substr($filename,0,-7),7); //extract Editor name from path
			$editoroptions=$editoroptions."<option name=\"".$ea."\">".$ea."</option>\n";
		}
	}
	//include "default" editor in the selection (HYPE)
	$editoroptions="<option name=\"default\">default</option>\n".$editoroptions;

	//Ready select box for Editor
	$editorcurrent="<option selected name=\"".$defaulteditor."\">".$defaulteditor."</option>\n";
	$editorselect="<select name=\"editor\">\n".$editorcurrent.$editoroptions."</select>\n";

	//Ready up select box for Themes
	$current="<option selected name=\"".$theme."\">".$theme."</option>\n";
	$themeselect="<select name=\"theme\">\n".$current.$options."</select>\n";

	$dout = "<h3>Control Panel</h3> \n";
	$dout = $dout . "<fieldset>\n<legend>تنضیمات</legend>\n";
	$dout = $dout . "<form method=\"post\" action=\"index.php\"> \n";

	$dout = $dout . "<table cellpadding=\"1\">\n";
	$dout = $dout . "<tr>\n";
	$dout = $dout . "<td>صفحه اول</td><td>
          <input type=\"text\" name=\"homepage\" value=\"".$homepage."\" size="20" /></td>\n";
	$dout = $dout . "</tr>\n";
	$dout = $dout . "<tr>\n";
	$dout = $dout . "<td>کلمه عبور</td><td>
          <input type=\"text\" name=\"save\" value=\"کلمه عبور جدید\" size="20" /></td>\n";
	$dout = $dout . "</tr>\n";
	$dout = $dout . "<tr>\n<td>قالب</td><td>";
	$dout = $dout . $themeselect."</td>\n</tr>\n";
	$dout = $dout . "<tr>\n";
	$dout = $dout . "<td>ویرایشگر</td><td>".$editorselect."</td>\n";
	$dout = $dout . "</tr>\n";
	$dout = $dout . "<tr>\n<td colspan=\"2\">
          <input type=\"submit\" class=\"submit\" value=\"ذخیره\" size="20" />\n";
	$dout = $dout . "</td>\n<tr>\n";
	$dout = $dout . "</table>\n</fieldset>\n";

	$dout = $dout . "</form>\n";
	print $dout;
	menu("filemanager");
}

//Page Handler, compatible with script enabled pages
if (!isset($_REQUEST['page'])){
	$_REQUEST['page']=$homepage; 
	$cpage=$_REQUEST['page'];
} else { $cpage=$_REQUEST['page']; }

//Content Editor
if (isset($_REQUEST['passw']) && $_REQUEST['passw']==$password){
	if (!isset($_SESSION['name'])){ 
	$_SESSION['name']='admin';
	$_SESSION['site_id']=$password;
	print "<div><h2>به پنل مدیریت خوش امدید.</h2>";
	print "<h3><a href="\%22index.php?action=admin\&quot;">پنل مدیریت</a></h3></div></body></html>";
	exit;
	}
	//If no page is set, open the default page for editing.
	if (!isset($_REQUEST['page'])) $page="home"; else $page=$_REQUEST['page'];
	if (file_exists("pages/".$_REQUEST['page'].".html")){
		$editpage=getcwd()."/pages/".$page.".html";
	}
	else $editpage=getcwd()."/pages/".$page.".htm";
	$filehandle = fopen($editpage, "r");
	$pagecontent = fread($filehandle, filesize($editpage));
	fclose($filehandle);
	print "<div class=\"content\"> \n"
	    . "<h3>ویرایش صفحه</h3> \n";

	//Determine page status for saving 
	$pagestatus="";
	switch($_REQUEST['status']) {
		case "show":
			$pagestatus=".htm";
			break;
		case "hide":
			$pagestatus=".html";
			break;
	}

	//Internal (HYPE) editor buttons 
$hype="
	<script type=\"text/javascript\">
	var hype = new HYPECode();
	  </script>
	<input type=\"button\" onclick=\"hype.insertCode('b', 'bold');\" value=\"B\" title=\"Bold text\" size="20" />
	<input type=\"button\" onclick=\"hype.insertCode('i', 'make italic');\" value=\"I\" title=\"Italic text\" size="20" />
	<input type=\"button\" onclick=\"hype.insertCode('u', 'underline');\" value=\"U\" title=\"Underlined text\" size="20" />
	<input type=\"button\" onclick=\"hype.insertCode('p', 'paragraph');\" value=\"<P size="20">\" title=\"Insert a Paragraph\" />
	<input type=\"button\" onclick=\"hype.insertImage();\" value=\"Image\" title=\"Inset an image\" size="20" />
	<input type=\"button\" onclick=\"hype.insertLink();\" value=\"Link\" title=\"Insert a link\" size="20" />
	<input type=\"button\" onclick=\"javascript:window.open('index.php?page=".$page."&preview=yes','blank','fullscreen=yes, scrollbars=yes')\" value=\"Preview\" title=\"Preview\" size="20" /><br />";

	if ($defaulteditor=="default"){ print $hype; }
	
	/* Future code for PHP "Include" type WYSIWYG editors */
	if ($defaulteditor=="spaw2"){
		include("addons/spaw2.editor/spaw.inc.php");
		$spaw1 = new SpawEditor("content", $pagecontent);
		print "<form action=\"?action=save\" method=\"post\"> \n";
		$spaw1->show();
	      print "<input type=\"hidden\" name=\"savepage\" value=\"".$page."\" size="20"> \n";
	      print "<input type=\"hidden\" name=\"extension\" value=\"".$pagestatus."\" size="20"> \n";
		print "<div>\n";
		print "<input class=\"submit\" type=\"button\" onclick=\"javascript:window.open('index.php?page=".$page."&preview=yes','blank','fullscreen=yes, scrollbars=yes')\" value=\"Preview\" title=\"Preview\" size="20" />\n";
		print "<input class=\"submit\" type=\"submit\" value=\"Save\" size="20">\n";
		print "</div>\n";
		print "</form></div>\n";
	}
	/* Future code for PHP "Include" type WYSIWYG editors */

	else {
	print "<p></p> \n"
	    . "<form action=\"?action=save\" method=\"post\"> 
      </form>
      \n"
	    . "<input type=\"hidden\" name=\"savepage\" value=\"".$page."\" size="20"> \n"
	    . "<input type=\"hidden\" name=\"extension\" value=\"".$pagestatus."\" size="20"> \n"
	    . "<textarea name=\"content\" id=\"content\" cols=\"90%\" rows=\"15\" wrap=\"off\" onkeydown=\"return catchTab(this,event)\">".$pagecontent."</textarea> \n"
	    . $editorcode
	    . "<div>\n"
	    . "<input class=\"submit\" type=\"button\" onclick=\"javascript:window.open('index.php?page=".$page."&preview=yes','blank','fullscreen=yes, scrollbars=yes')\" value=\"Preview\" title=\"Preview\" size="20" />\n"
	    . "<input class=\"submit\" type=\"submit\" value=\"Save\" size="20">\n"
	    . "</form>\n"
	    . "</div></div>\n";
	}
} 

if (isset($_REQUEST['submit']) == 'submit') {
$justupload=TRUE;
}

if (!isset($justupload) || !isset($_SESSION['name'])){
if (isset($_REQUEST['submit']) == 'Login' && $_REQUEST['passw'] != $password) print "<h3>
      کلمه عبور اشتباه است!</h3>";
}

if (isset($_REQUEST['action']) && $_REQUEST['action']=='admin' && !isset($_SESSION['name'])){ 
	$admin=TRUE; 
	$dout = "<div><h2>ورود به پنل مدیریت</h2>";
	$dout = $dout . "<form action=\"index.php\" method=\"post\"> \n";
	$dout = $dout . "<p>کلمه عبور: 
          <input name=\"passw\" type=\"password\" size="20" /></p>  \n";
	$dout = $dout . "<p>
          <input type=\"submit\" class=\"submit\" name=\"submit\" value=\"ورود\" size="20" /></p></form> \n</div>";
	$dout = $dout . "<div><p>&nbsp;</p></div>";
	print $dout . isset($_REQUEST['passw']);
	} else $admin=FALSE;

//Display Normal (.HTML) & Hidden (.HTM)pages
if ($admin == FALSE && !isset($_SESSION['name']) || isset($_REQUEST['preview'])){
	if (file_exists("pages/".$cpage.".htm")){
		include("pages/".$cpage.".htm");
	}
	else include("pages/".$cpage.".html");
}

//ADMIN ONLY
if (isset($_SESSION['name']) &&$_SESSION['name']=='admin'){
if (isset($_REQUEST['save'])){
	//Set rewrite file;
	$nl="\n";
	$systemtag="/* "."SETTINGS"." */";
	//Base64 encoded settings function
	$setfn="LyogU0VUVElOR1MgKi8NCmZ1bmN0aW9uIHNldCgpew0KZ2xvYmFsICRlZGl0cGFnZSwkcGFnZWNvbnRlbnQ7DQokZmlsZWhhbmRsZSA9IGZvcGVuKCRlZGl0cGFnZSwgInIiKTsNCiRwYWdlY29udGVudCA9IGV4cGxvZGUoIi8qIFNFVFRJTkdTICovIiwgaHRtbGVudGl0aWVzKGZyZWFkKCRmaWxlaGFuZGxlLCBmaWxlc2l6ZSgkZWRpdHBhZ2UpKSkpOw0KZmNsb3NlKCRmaWxlaGFuZGxlKTsNCn0vL0VORCBGVU5DVElPTg0KPz4=";
	if ($_REQUEST['save']=="New Admin Password" || $_REQUEST['save']=="") {
		$_REQUEST['save']=$password;
	}
	if (!isset($_REQUEST['theme']) || $_REQUEST['theme']=="" || $_REQUEST['theme']=="New Theme") { 
		$newtheme = $theme; 
	}
	else { $newtheme=$_REQUEST['theme']; }
	$new="$"."homepage=\"".$_REQUEST['homepage']."\";".$nl
	."$"."password=\"".$_REQUEST['save']."\";".$nl
	."$"."theme=\"".$newtheme."\";".$nl
	."$"."defaulteditor=\"".$_REQUEST['editor']."\";".$nl
	."$"."onload=\"".$onload."\";";
	$ftext=html_entity_decode($pagecontent[0].$systemtag."\n".$new."\n".$systemtag.$pagecontent[2]).base64_decode($setfn);
	$path=$editpage;
	$filehandle=fopen($path, "w+");
	fputs($filehandle,$ftext);
	fclose($filehandle);
	//print "<p><a>Your settings has been saved.</a></p>";
	//Security update, not yet 100% stable
	$_SESSION['site_id']=$_REQUEST['save'];
}
}//ADMIN ONLY

}//END FUNCTION

//BODY TAG onLoad scripts
function addons(){
global $onload;
print $onload;
}//END FUNCTION

//File Uploader
function upload($folder){

global $a,$i, $password;

	if (isset($_REQUEST['submit'])){
		move_uploaded_file ($_FILES['uploadFile'] ['tmp_name'], "./".$folder."/{$_FILES['uploadFile'] ['name']}");
		//print $_FILES['uploadFile']['type']."<br />";
		$i = $_FILES['uploadFile']['error'];
		$mfs=ceil($_REQUEST['MAX_FILE_SIZE']/1024);
		$info = array(
		'فایل آپلود شد.<br />
      <a href="?action=admin"><b>اینجا کلیک کنید</b></a> تا تغییرات را ببینید.', 
		'The uploaded file exceeds the server allowed limit filesize',
		'The uploaded file exceeds '.$mfs.' KBytes.',
		'The uploaded file was only partially uploaded.',
		'فایل آپلود نشد.');
		list($a[0], $a[1], $a[2], $a[3], $a[4]) = $info;
	}

	print "
	<br />
	You can also upload your pages here: 
	<form enctype=\"multipart/form-data\" action=\"?action=admin\" method=\"post\"><br />
	<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"640000\" size="20">
	<input type=\"file\" name=\"uploadFile\" size="20">
	<input type=\"submit\" class=\"submit\" name=\"submit\" value=\"Upload\" size="20">
	</form>";

print "<p>".$a[$i]."</p>";

}//END FUNCTION

//ADDONS MANAGER
function addonsmanager(){

global $addonsdir;

$files=array();
$PATH = getcwd();
$d=$PATH."/addons/"; #define which dir you want to read
if (file_exists($d)){ //Check addons folder if present, otherwise dont use addons
	$dir = opendir($d); #open directory
	while ($f = readdir($dir)) { #read one file name
		if ($f!=='.' && $f!=='..' && $f!=='index.php'){
			array_push($files,"$f");
		}
	}
	//Load every addons found in the default directory
	foreach($files as $value){
		include ($addonsdir.$value."/index.php");
	}
}

}//END ADDONS MANAGER

//The settings below is important to rewrite the file itself with the new settings
/* SETTINGS */
function set(){
global $editpage,$pagecontent;
$filehandle = fopen($editpage, "r");
$pagecontent = explode("/* SETTINGS */", htmlentities(fread($filehandle, filesize($editpage))));
fclose($filehandle);
}//END FUNCTION
?>
ممنون از کمکی که میکنید.:)
 

jhoseini

Member
منظور ایشون encoding : unicode utf8
اما فکر نمیکنم مشکل از encoding باشه
 

جدیدترین ارسال ها

بالا