'MULTI','RESTRICTION'=>'SINGLE','ADMIN_BLACKLIST'=>'SINGLE') * SINGLE => You have only one value to read * MULTI => You have few values to read */ function read_configuration($ms_cfg_file,$search,$id_field=''){ $fd = @fopen ($ms_cfg_file, "r"); if (!$fd) return "NO_FILES"; $capture=''; while( !feof($fd) ) { $line = trim( fgets( $fd, 256 ) ); if (substr($line,0,2) == "$option){ // echo $value_2_search."
"; if ($capture == 'OK_'.$value_2_search){ if (strstr($line, ':')){ $tab_lbl=explode(":", $line); $find[$value_2_search][$tab_lbl[0]]=$tab_lbl[1]; }elseif ($option == 'SINGLE'){ $find[$value_2_search]=$line; }elseif ($option == 'MULTI'){ $find[$value_2_search][$line]=$line; }elseif($option == 'MULTI2'){ //Fix your id with a field file (the first field only) if ($id_field != '' and $value_2_search == $id_field) $id=$line; if (isset($id)) $find[$value_2_search][$id]=$line; else $find[$value_2_search][]=$line; } } } } if ($line{0} == "<"){ //Getting tag type for the next launch of the loop $capture = 'OK_'.substr(substr($line,1),0,-1); } } fclose( $fd ); return $find; } function update_config_file($ms_cfg_file,$new_value,$sauv='YES'){ if ($sauv == 'YES') getcopy_config_file($ms_cfg_file); $ms_cfg_file=$_SESSION['OCS']['CONF_PROFILS_DIR'].$ms_cfg_file."_config.txt"; //$file=fopen($file_name,"w+"); $new_ms_cfg_file=''; foreach ($new_value as $name_bal=>$val){ $new_ms_cfg_file.="<".$name_bal.">\n"; //fwrite($file,$key." ".$value."/r/n"); foreach ($val as $name_value=>$value){ if (isset($value) and $value != '') $new_ms_cfg_file.=$name_value.':'.$value."\n"; else $new_ms_cfg_file.=$name_value."\n"; //fwrite($file,$key." ".$value."/r/n"); } $new_ms_cfg_file.="\n\n"; } $file=fopen($ms_cfg_file,"w+"); fwrite($file,$new_ms_cfg_file); fclose( $file ); } function getcopy_config_file($ms_cfg_file,$record='YES',$sauv=FALSE){ if ($record != 'YES') return FALSE; if (!$sauv) $newfile=$_SESSION['OCS']['OLD_CONF_DIR'].$ms_cfg_file.'_config_old_'.time(); else $newfile=$_SESSION['OCS']['CONF_PROFILS_DIR'].$sauv.'_config.txt'; $ms_cfg_file=$_SESSION['OCS']['CONF_PROFILS_DIR'].$ms_cfg_file."_config.txt"; @copy($ms_cfg_file, $newfile); return TRUE; } function delete_config_file($ms_cfg_file){ $array_files=explode(',',$ms_cfg_file); $i=0; while (isset($array_files[$i])){ getcopy_config_file($array_files[$i]); $ms_file=$_SESSION['OCS']['CONF_PROFILS_DIR'].$array_files[$i]."_config.txt"; unlink($ms_file); $i++; } } function create_profil($new_profil,$lbl_profil,$ref_profil){ $new_value=read_profil_file($ref_profil); $new_value['INFO']['NAME']=$lbl_profil; update_config_file($new_profil,$new_value,'NO'); //getcopy_config_file($protectedPost['ref_profil'],'YES',$protectedPost['new_profil']); } function parse_xml_file($file,$tag,$separe){ $tab_data=array(); // open file $fp = @fopen($file, "r"); if (!$fp) return "NO_FILES"; $i=0; // read line while ( $ln = fgets($fp, 1024)) { $ln=preg_replace('(\r\n|\n|\r|\t| )','',$ln); // echo htmlentities ($ln)."=>".strlen($ln); foreach ($tag as $poub=>$key){ // echo htmlentities (substr($ln,0,strlen($key)+2))." //".$key."
"; if (substr($ln,0,strlen($key)+2) == '<'.$key.'>'){ $search=array("<".$key.">",""); $replace=array('',''); $tab_data[$i][$key]=str_replace($search,$replace,$ln); } } //msg_info($key); //echo htmlentities (substr($ln,0,strlen($key)+2))."=>".$separe."
"; if ($ln == ""){ $i++; } } fclose($fp); return ($tab_data); } function post_ocs_file_to_server($datastream, $url, $port) { $url = preg_replace("@^http://@i", "", $url); $host = substr($url, 0, strpos($url, "/")); $uri = strstr($url, "/"); $reqbody = $datastream; if (!$port) $port='80'; $contentlength = strlen($reqbody); $reqheader = "POST $uri HTTP/1.1\r\n". "Host: $host\n". "User-Agent: OCS_local_".GUI_VER."\r\n". "Content-type: application/x-compress\r\n". "Content-Length: $contentlength\r\n\r\n". "$reqbody\r\n"; $socket = @fsockopen($host, $port, $errno, $errstr); if (!$socket) { $result["errno"] = $errno; $result["errstr"] = $errstr; return $result; } fputs($socket, $reqheader); while (!feof($socket)) { $result[] = fgets($socket, 4096); } fclose($socket); return $result; } ?>