function writeconfigtblsd() { //echo "Возникла проблема при реконфигурации аккаунта<br>"; exit; //надобно как то автоопрос чтоли сделать всех переменных //автоматизировать немного 1- загрузку в html,2- взятие на редактирование 3- сохранение echo "<bb><h2>Данные записаны.</bb><br></h2>"; global $codekey, $LOGINUSER, $PASSWORDUSER, $HASHUSER, $OSTYPE, $go, $gmlimitcfg, $ADMM, $ADM; // echo "ADMM==".$ADMM ;//тест //if ($gmlimitcfg===1){$ADMM=$ADM;}// тк добавили gmlimitcfg поэтому добавим и этот,хотя изначально gmlim вооб.тут не юзался for ($a = 0; $a < 200; $a++) { global ${"pradm" . $a}; } //новое чтение global //кажется сюда цикл влезет @($gmdata = csvopen("_conf/gmdata.cfg", "r", 1)); $data = readfullcsv($gmdata, "new"); $gmheader = $data[0]; $gmplevel = $data[1]; $prauth = $data[2]; $prauthcnt = $data[3]; // тупо счетчик строк - дата 3 if ($go == cmsg("A_CNEW")) { if ($codekey == 7) { demo(); } if ($codekey == 9) { demo(); } // if ($codekey==8) demo (); temp for test enabling create users // ADMM - пользователь, настроки которого редактируют. а пользователь, которые это делает - , if ($codekey == 4) { needupgrade(); } $ADMM = $prauthcnt - 1; echo "Creating new one...<br>"; } // ага нихрена он никого не создает! $edit = 1; echo "DEBUG Состояние gmlimitcfg={$gmlimitcfg}<br> "; if (!$prauth[$ADM][42] and $prauth[$ADMM][59] and $PASSWORDUSER == true) { $PASSWORDUSER = FALSE; LPRINT("DISPASSCH"); } // здесь у нас указывается что пользователь хочет изменить пароль. не даём ему это сделать если стоит запрет на смену пароля. if ($gmlimitcfg == 0) { $prauth[$ADMM][0] = stripslashes($LOGINUSER); } echo "<form action=\"admin.php\" method=\"POST\">"; if ($PASSWORDUSER == true) { $prauth[$ADMM][1] = hashgen($PASSWORDUSER); //здесь у нас надо отправить новый кук чтобы пользователь мог не перезаходить после смены пароля. $dbsa = a(base64_encode($prauth[$ADMM][0] . "¦" . $PASSWORDUSER)); if ($ADM == $ADMM) { hidekey("dbsaa", $dbsa); } if ($ADM !== $ADMM) { echo "...<br>"; } } else { $prauth[$ADMM][1] = stripslashes($HASHUSER); } submitkey("dalee", "CONT"); echo "</form>"; // prevents fake change password // Незагруженные переменные остнутся неизмененными! //..$counterusercolumns=count ($prauth[$ADMM]);// представьте себе так надо! $counterusercolumns = count($gmheader); // а иак лучше создаются новые пользователи в установке по дефолту. а то пишется херь всякая в конец пред юзера. //..if ($counterusercolumns>100) $counterusercolumns=100; // echo "DEBUG Your cnt= $counterusercolumns ADMM=$ADMM ADM=$ADM<br>"; // echo " prauth[adm=$ADM][60]=".$prauth[$ADM][60]." prauth[admm=$ADMM]=".$prauth[$ADMM][60]."<br>"; if (!$prauth[$ADM][42] and $prauth[$ADMM][60]) { LPRINT("DISPROFCH"); exit; } for ($a = 2; $a < $counterusercolumns - 1; $a++) { //попробуем на 1 меньше писать может поможет если там \n \r\n передаются по ум. // счас работает все проверить построе на тесте. if ($gmlimitcfg === 1) { if ($a > 1 and $a < 16 or $a > 32 and $a < 37 or $a == 38 or $a > 41 and $a < 46 or $a > 49 and $a < 55 or $a == 48) { continue; } } // echo "isset pradm$a : ".isset(${"pradm".$a})."<br>"; //if ($gmlimitcfg===1)if (isset(${"pradm".$a})===false) continue; //42(су) 59( пароль) 60(профиль) должны точно пропускаться, если нет сделать это $prauth[$ADMM][$a] = stripslashes(${"pradm" . $a}); //// не вышло просто оставить непоказанное в покое да и нельзя так, вдруг пришлют через GET переменную // дописывать сюда все настройки требующие админа или суперюзверя } //PARTIAL EXCHANGER запись конфигов проверено if ($go == cmsg("A_CNEW")) { if ($OSTYPE == "LINUX") { $prauth[$ADMM][$counterusercolumns] .= "\n"; } } // добавляет забытый в перевод строки только для создания юзера. //print_r($prauth); //..if (($prauth[$ADM][0])==($prauth[$ADMM][0])) { echo "UserName (Login) cannot be identical<br>"; $edit=0;return;}; //это ещё от чего защита? //тоже похож на цикл //..$bugwithemptyfieldsfixlinux=1; @($tempdescr = csvopen("_conf/gmdata.cfg", "w", 1)); //global $testlinuxlinefeed;$testlinuxlinefeed=1; неправильно работает - выполняется и перед и после добавления юзера что недопустимо echo "--------------------------------------------"; writefullcsv($tempdescr, $gmheader, $gmplevel, $prauth); $edit = 0; exit; }
} $bestedit = 1; } //..echo "==================PERED OTPRAWKOJ==============<br>"; //debugcfgprint ($bestheader,$bestplevel,$bestcontent) ; //echo "=================================================<br>"; //..echo "ВЫХОДИМ!";exit; if ($bestedit == 1) { echo "File={$filbas}"; $tempdescr = fopen($filbas, "w"); // echo "===========CHECK:WRItEFULLCFG DATA=-==============<br>"; $code = writefullcsv($tempdescr, $bestheader, $bestplevel, $bestcontent); //echo "writefullcsv return code $code<br>"; $edit = 0; //echo "===============END WRITEFULLCFGDATAOUT=========================<br>"; @($best = csvopen($filbas, "r", 0)); $data = readfullcsv($best, "new"); $bestheader = $data[0]; $bestplevel = $data[1]; $bestcontent = $data[2]; $bestcnt = $data[3]; //echo "<font color=magenta>=============CHECK:best.cfg==============<br></red>Massive have lines (bestcnt)=$bestcnt<br>"; //debugcfgprint ($bestheader,$bestplevel,$bestcontent) ; //echo "=================================================<br>"; @fclose($best); } unset($tempdescr, $bestheader, $bestplevel, $bestcontent); } //endif massooper 4 } //=========================================
print $files[$a] . "<br>"; $pr[34] = 0; echo "creating folder {$fldup}/_conf/<br>"; $err = mkdir($fldup . "/_conf/"); chmod($fldup . "/_conf/", 777); echo $err . "<br>"; echo "move (_conf/" . $files[$a] . " to {$fldup}/_conf/" . $files[$a] . ")<br>"; //$err=csvopen ("_conf/".$files[$a],"move",$fldup."/_conf/".$files[$a]); $err = csvopen("_conf/" . $files[$a], "copy", $fldup . "/_conf/" . $files[$a]); $err = csvopen($fldup . "/_conf/" . $files[$a], "r", 1); //check if ($err == false) { $error = 1; continue; } $err = csvopen("_conf/" . $files[$a], "move", $fldup . "/_conf/" . $files[$a]); } if ($error == 1) { echo "<br>File write access denied {$fldup}/_conf/<br>Interrupted<br>"; } // почему нам не дали прав? echo "<br>" . cmsg("") . "<br>"; submitkey("loginstate", "DALEE"); hidekey("step", 7); } if ($step > 6) { } //============================================// if ($step == 7) { echo "<br>" . cmsg("INST_NOTE_DB") . "<br>"; //echo "<br>".cmsg ("INST_RMV")."<br>";
// права записи $prdbdata[$tbl][14] = $groupplevels; // права чтения if ($pr[38]) { $prdbdata[$tbl][17] = $prdbdata[$tbl][9]; //gruppirowka if ($dbtype == "fdb") { $prdbdata[$tbl][17] = "fdb"; } } if ($OSTYPE == "LINUX") { $countprdbdatanowmax = count($prdbdata[$tbl]); $prdbdata[$tbl][$countprdbdatanowmax] .= "\n"; //working bugfix under linux } $dbedit = 1; if ($views) { $x = implode($separator, $prdbdata[$tbl]); echo $x . "<br>"; } } $lastddbaddr = count($prdbdata); // echo "lastdbabbr $lastddbaddr 0 contains = ".$prdbdata[$lastddbaddr][0]."<br>"; //always empty //unset ($prdbdata[$lastddbaddr]); - это не здесь доб пустая строка а в writefullcsv !!! if ($dbedit == 1) { echo "сохранение"; // передается $dbs $tempdescr = csvopen("_conf/dbdata.cfg", "w", 1); writefullcsv($tempdescr, $dbheader, $dbplevel, $prdbdata); $edit = 0; }
echo $link; echo cmsg("D_LNK") . " <a href='{$scriptpath}?c=" . $fildata[$id][14] . "&d=" . $fildata[$id][12] . "'>remove link</a> " . cmsg("Y_LNK_I") . "<br>"; $link = "<br>http://" . $_SERVER['SERVER_NAME'] . $_SERVER['PHP_SELF'] . "?c=" . $fildata[$id][14] . "&d=" . $fildata[$id][12] . "<br><br>"; echo $link; echo "End {$id} next,,, <br>"; if ($initalizeIDcounter) { $id = $id + 1; } } } // end c cycle echo "Check counter:: c={$c} count={$countfilelist}<br>"; //echo "hash from filesdata-2 massive: ".$table[$count][4]."<br>"; fclose($filescfg); //fclose ($file); $filescfg = csvopen("_conf/files.cfg", "w", 1); //$testlinuxlinefeed=1; надо не этот параметр врубать а вручную .add дописывать все работает, можно копипастить :))) $x = writefullcsv($filescfg, $filheader, $filplevels, $fildata); // надо себе напомнить чтоб не забывал переоткрывать файл в w echo $x; //writing new stroke to _conf\files.cfg logwrite("FMG_SHARE {$share} (usr={$userlist}) (plvl={$groupplevels}) {$pathandfile}"); if ($debugmode) { readfile("_conf/files.cfg"); } //debug// echo "Ending"; exit; } } //moved TO Up -- SHARE APPLYING STEP 2 -- ENDING
submitkey("go", "SENDMSG"); hidekey("goID", "SENDMSG"); hidekey("inet", $inet); hidekey("str", $str . $report . "\n\r"); echo "</form>"; exit; } $go = getvar('go'); if ($goID == "SENDMSG") { @($inet = fopen("http://dj.chg.su/dbscript/update.txt", "r")); echo "getting data {$str}... saving...<br>"; echo "sorry if encoding fail... it will fix later<br>"; $w = csvopen("_logs/reportlog.dat", "a+", 1); if ($w == false) { mkdir("_logs"); $w = csvopen("_logs/reportlog.dat", "a+", 1); } @($a = fwrite($w, $str)); @fclose($w); if ($w == false) { echo "FAILED!!!"; } else { lprint(BUGREPORT_OK); echo "Sending ... OK"; } exit; } if (!$pr[10]) { ?> <img src=_style/<?php echo $sd[0];