<?php
/*
Инсталяция проекта "Народный магазин"
Автор: Denvas
*/
$datavar=array(
array("1","Админский доступ"),
array("admin_login","string","admin","Логин админа"),
array("admin_password","string","password","Пароль"),
array("2","основные настройки"),
array("wapver","int","0","версия вапа. 0-автоопределение,1-wap 1.1, 2-wap 2.0, 3-web"),
array("nrowpage","int","5","количество записей (абзацев) на странице"),
array("title","string","Заголовок","Заголовок по-умолчанию"),
array("code","string","","начало страницы"),
array("keyword","string","","3-5 ключевых слов"),
array("codecounter","string","","код счетчика (будет показыватся только на первой странице)"),
array("endcode","string","<a href='index.php'>(c) Код снизу</a><br/>","низ страницы"),
array("down_maxsize","int","1000000","максимальный размер загружаемого файла (в байтах)"),
array("design_name","string","standart","название дизайна. не меняйте, если не уверены"),
array("banner_num","int","0","сколько баннерной рекламы показывать на странице"),
array("stat_from","string","from","параметр подсчета входов"),
array("antifraud_key","string",mt_rand(100000,999999),"случайная строка для защита от спама"),
array("compressdata","int","0","Сжатие данных (0 или 1)"),
array("3","почта"),
array("admin_email","string","","мыло админа сайта"),
array("smtp_serv","string","","сервер smtp (если пустой, значит sendmail). пример smtp.mail.ru"),
array("smtp_user","string","","пользователь"),
array("smtp_pass","string","","пароль"),
array("mail_text","string","С уважением, администрация народного магазина","подпись в каждом письме"),
array("4","Авт. обработка картинок"),
array("resize_type","string","","тип картинки к товару. доступны png, gif, jpeg. если не хотите, чтоб тумбинашки создавались, то просто оставьте поле пустым"),
array("resize_width","int","42","ширина после преобразования"),
array("resize_height","int","42","высота после преобразования"),
array("10","пути. не меняйте, если не понимаете"),
array("path_download","string","download","папка с файлами"),
array("path_session","string","session","папка с сессиями зарегеных пользователей"),
array("path_log","string","logs","логи работы скриптов. иногда нужно будет заходить в эту папку и удалять файлы :-)"),
array("path_text","string","text","в этой папке тексты лежат"),
array("11","остальные параметры"),
array("chartoutf","int","1","1-конвертация данных в utf-8 в реальном режиме, 0-все уже проконверчено"),
array("demo","int","0","деморежим админки. можно всем показывать, но ни чего они изменить не смогут (и вы тоже)"),
array("banner_name","string","banner","название файла с баннерами"),
array("12"),
array("shopsite","def",'"http://".@$_SERVER["HTTP_HOST"].rtrim(dirname(@$_SERVER["PHP_SELF"]),"/")',""),
array("wappc_result_url","def",'$shopsite."/reg_wappc.php"',""),
array("webmoney_result_url","def",'$shopsite."/reg_webmoney.php"',""),
array("codereplace","def",'array("<p></p>"=>"")',""),
array("queryneed","def",'array("tr","ses","wv")',""),
array("download_type","def",'array("jpeg"=>"image/jpeg","jpg"=>"image/jpeg","gif"=>"image/gif","png"=>"image/png","zip"=>"application/zip","rar"=>"application/octet-stream","exe"=>"application/octet-stream","wmls"=>"text/vnd.wap.wmlscript","wml"=>"text/vnd.wap.wml","mmf"=>"application/x-smaf","mid"=>"audio/midi","midi"=>"audio/midi","bmp"=>"image/bmp","jad"=>"text/vnd.sun.j2me.app-descriptor","jar"=>"application/java-archive","3gp"=>"video/3gpp","mp3"=>"audio/mpeg",)',""),
);
if(file_exists("config.php")){
include_once("config.php");
}
else{
$config=CreateConfig();
SaveConfig($config);
include_once("config.php");
};
if(isset($wapver))$wapver_orig=$wapver;
if(isset($code))$code_orig=$code;
if(isset($title))$title_orig=$title;
$design_name="standart";
$code="";$title="";$chartoutf=1;
include_once("function.php");
include_once("session.php");
include_once("shop.php");
include_once("design.php");
InitDesign($design_name,$wapver);
$step=isset($_GET["step"])?(int)$_GET["step"]:0;
//вывод шагов настройки
if($step==0){
$config=CreateConfig();
SaveConfig($config);
$code.=design("Настройка проекта","header");
for($i=0;$i<count($datavar);$i++){
if(count($datavar[$i])==1)break;
if(count($datavar[$i])==2){
$row=$datavar[$i];
$code.="<a href='".QueryParam(array("step"))."step=".$row[0]."'>".$row[1]."</a><br/>";
};
};
$code.=design("Не забудьте удалить файл install.php после настройки проекта","warning");
if(isset($admin_login))$code.="<a href='admin.php?login=".$admin_login."&pwd=".$admin_password."'>Админка</a><br/>";
$code.="<a href='index.php'>Сайт</a><br/>";
}//if
//вывод одного шага
else{
$flag=0;
for($i=0;$i<count($datavar);$i++)
if((count($datavar[$i])==2)&&($datavar[$i][0]==$step)){$flag=$i+1;break;};
$dataform=array();
for($i=$flag;$i<count($datavar);$i++){
if(count($datavar[$i])<3)break;
$row=$datavar[$i];
$val=isset($GLOBALS[$row[0]])?(isset($GLOBALS[$row[0]."_orig"])?$GLOBALS[$row[0]."_orig"]:$GLOBALS[$row[0]]):$row[2];
if(is_array($val))$val=join(";",$val);
$val=htmlspecialchars($val,true);
$dataform[]=array($row[3],$row[0],$val,"text");
};
if(!empty($_POST["send"])){
$config=CreateConfig();
SaveConfig($config);
Relocation(QueryParam(array("step")),"Настройки изменены",20);
};
$code.=ShowForm($dataform,"Сохранить","","post");
$code.="<a href='".QueryParam(array("step"))."'>выбор конфигурации</a><br/>";
};
$code=strtr($template["mainadmin"],array("\$code\$"=>$code,"\$title\$"=>$title));
ShowXML($code);
//==================================================//
function CreateConfig(){
global $datavar;
//конфигурация по-умолчанию
$config="";
for($i=0;$i<count($datavar);$i++){
if(count($datavar[$i])<4)continue;
$row=$datavar[$i];
$config.="\$".$row[0]."=";
if((!isset($GLOBALS[$row[0]]))||(isset($_POST[$row[0]]))){
if(isset($_POST[$row[0]]))$val=strtr($_POST[$row[0]],array("&"=>"&","""=>"\"","'"=>"'","<"=>"<",">"=>">")); else $val=$row[2];
if(strcmp($row[1],"string")==0){
$config.="\"".strtr($val,array("\""=>"\\\""))."\"";
}
elseif(strcmp($row[1],"array")==0){
$str="'".join("','",explode(";",$val))."'";
$config.="array(".$str.")";
}
elseif(strcmp($row[1],"int")==0){
$config.=(int)$val;
}
elseif(strcmp($row[1],"float")==0){
$config.=(float)$val;
}
else
$config.=$val;
}//if
else{
if(isset($GLOBALS[$row[0]."_orig"]))
$config.=var_export($GLOBALS[$row[0]."_orig"],true);
else
$config.=var_export($GLOBALS[$row[0]],true);
};
$config.=";\n";
};//for
return $config;
};
function SaveConfig($config){
global $code;
$fd=fopen("config.php","wb");
if(!$fd){
$code.=design("Ошибка записи конфигурационного файла","error");
return false;
};
fwrite($fd,"<?php\n/*автоконфигурация*/\n");
fwrite($fd,$config);
fwrite($fd,"?>");
fclose($fd);
};
?>