sourceforge/nodemin/trunk/lock.php @ 374
4 | batix | <?
|
|
if ($_SESSION['online_user']!="") {
|
|||
$nazvy_v_menu=file("menu.dat");
|
|||
for ($i=0,$a=0,$b=0;$i<sizeof($nazvy_v_menu);$i++) {
|
|||
if (strstr($nazvy_v_menu[$i],"*")) {
|
|||
$menu_system[$a]=str_replace("*","",chop($nazvy_v_menu[$i]));
|
|||
$menu_system_male[$a]=strtolower($menu_system[$a]);
|
|||
$a++;
|
|||
continue;
|
|||
}
|
|||
$nazvy_v_menu[$b]=chop($nazvy_v_menu[$i]);
|
|||
$nazvy_v_menu_male[$b]=strtolower($nazvy_v_menu[$b]);
|
|||
$b++;
|
|||
}
|
|||
//****** kontrola, aby nemohli 2 a vice uzivatelu upravovat stejny modul na stejnem serveru ******
|
|||
for ($i=0;$i<sizeof($nazvy_v_menu_male);$i++) {
|
|||
$soubor_lock="lock/".$nazvy_v_menu_male[$i]."_".$_SESSION['online_user_serverIP'].".loc";
|
|||
8 | batix | if ($_GET['zobraz']=="vyber" && $_GET['id']==$nazvy_v_menu_male[$i] && file_exists($soubor_lock)) {
|
|
$ze_soubor_locku=file($soubor_lock);
|
|||
4 | batix | if (strstr($ze_soubor_locku[0],$_SESSION['online_user']."-") && strstr($ze_soubor_locku[0],session_id())) {
|
|
unlink($soubor_lock);
|
|||
$_GET['id']="";
|
|||
}
|
|||
break;
|
|||
}
|
|||
if ($_GET['odhlaseno']==1 && $_GET['id']==$nazvy_v_menu_male[$i] && file_exists($soubor_lock)) {
|
|||
$ze_soubor_locku=file($soubor_lock);
|
|||
if (strstr($ze_soubor_locku[0],$_SESSION['online_user']."-") && strstr($ze_soubor_locku[0],session_id())) {
|
|||
unlink($soubor_lock);
|
|||
$_GET['id']="";
|
|||
}
|
|||
break;
|
|||
}
|
|||
if (file_exists($soubor_lock)) {
|
|||
if (time()>(filemtime($soubor_lock)+3600)) {
|
|||
unlink($soubor_lock);
|
|||
$i--;
|
|||
continue;
|
|||
}
|
|||
$ze_soubor_locku=file($soubor_lock);
|
|||
$nick_sess_id=explode("-",$ze_soubor_locku[0]);
|
|||
if (session_id()==$nick_sess_id[1]) $sekce[$nazvy_v_menu_male[$i]]="unlock";
|
|||
else $sekce[$nazvy_v_menu_male[$i]]="lock";
|
|||
}
|
|||
else if ($_GET['id']!="") {
|
|||
$fp = fopen ($soubor_lock, "w");
|
|||
fwrite($fp, $_SESSION['online_user']."-".session_id());
|
|||
fclose($fp);
|
|||
}
|
|||
if ($_GET['id']!=$nazvy_v_menu_male[$i]) {
|
|||
if (file_exists($soubor_lock)) {
|
|||
$ze_soubor_locku=file($soubor_lock);
|
|||
$nick_sess_id=explode("-",$ze_soubor_locku[0]);
|
|||
if (session_id()==$nick_sess_id[1]) {
|
|||
unlink($soubor_lock);
|
|||
//$sekce[$nazvy_v_menu_male[$i]]="unlock";
|
|||
}
|
|||
}
|
|||
}
|
|||
}
|
|||
//****** kontrola, jestli uz nektery uzivatel neupravuje administracni modul tohoto systemu (napr. pristup jednotlivych uzivatelu do administrace) ******
|
|||
for ($i=0;$i<sizeof($menu_system_male);$i++) {
|
|||
$soubor_lock="lock/".$menu_system_male[$i].".loc";
|
|||
8 | batix | if ($_GET['zobraz']=="vyber" && $_GET['id']==$menu_system_male[$i] && file_exists($soubor_lock)) {
|
|
4 | batix | $ze_soubor_locku=file($soubor_lock);
|
|
if (strstr($ze_soubor_locku[0],$_SESSION['online_user']."-") && strstr($ze_soubor_locku[0],session_id())) {
|
|||
unlink($soubor_lock);
|
|||
$_GET['id']="";
|
|||
}
|
|||
break;
|
|||
}
|
|||
if ($_GET['odhlaseno']==1 && $_GET['id']==$menu_system_male[$i] && file_exists($soubor_lock)) {
|
|||
$ze_soubor_locku=file($soubor_lock);
|
|||
if (strstr($ze_soubor_locku[0],$_SESSION['online_user']."-") && strstr($ze_soubor_locku[0],session_id())) {
|
|||
unlink($soubor_lock);
|
|||
$_GET['id']="";
|
|||
}
|
|||
break;
|
|||
}
|
|||
if (file_exists($soubor_lock)) {
|
|||
if (time()>(filemtime($soubor_lock)+3600)) {
|
|||
unlink($soubor_lock);
|
|||
$i--;
|
|||
continue;
|
|||
}
|
|||
$ze_soubor_locku=file($soubor_lock);
|
|||
$nick_sess_id=explode("-",$ze_soubor_locku[0]);
|
|||
if (session_id()==$nick_sess_id[1]) $sekce[$menu_system_male[$i]]="unlock";
|
|||
else $sekce[$menu_system_male[$i]]="lock";
|
|||
}
|
|||
else if ($_GET['id']!="") {
|
|||
$fp = fopen ($soubor_lock, "w");
|
|||
fwrite($fp, $_SESSION['online_user']."-".session_id());
|
|||
fclose($fp);
|
|||
}
|
|||
if ($_GET['id']!=$menu_system_male[$i]) {
|
|||
if (file_exists($soubor_lock)) {
|
|||
$ze_soubor_locku=file($soubor_lock);
|
|||
$nick_sess_id=explode("-",$ze_soubor_locku[0]);
|
|||
if (session_id()==$nick_sess_id[1]) {
|
|||
unlink($soubor_lock);
|
|||
//$sekce[$nazvy_v_menu_male[$i]]="unlock";
|
|||
}
|
|||
}
|
|||
}
|
|||
}
|
|||
}
|
|||
?>
|