Changeset 11841


Ignore:
Timestamp:
07/27/11 13:18:21 (8 years ago)
Author:
cljosse
Message:

[extensions] mail_supervisor manage Authentication htaccess with free.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/Mail_supervisor/main.inc.php

    r11835 r11841  
    250250} 
    251251//============================================================ 
    252 global $ms_file_log; 
     252global $ms_file_log,$dir,$clj_pwd; 
     253 
     254 
     255$clj_pwd=$conf['local_data_dir'].'/Pwd'; 
     256  if (!is_dir($clj_pwd)){   
     257    $umask = umask(0); 
     258    $mkd = @mkdir($clj_pwd, 0755, true ); 
     259    umask($umask); 
     260    if ($mkd==false){ 
     261    echo "<pre>PWD:$clj_pwd"; 
     262      fatal_error( "$clj_pwd ".l10n('no write access')); 
     263      return false; 
     264    }   
     265  } 
     266//================================================== 
    253267$dir=$conf['local_data_dir'].'/Mail_supervisor_log'; 
    254268 if (!is_dir($dir)){   
     
    257271    umask($umask); 
    258272    if ($mkd==false){ 
     273      echo "<pre>Dir:$dir"; 
    259274      fatal_error( "$dir ".l10n('no write access')); 
    260275      return false; 
    261276    } 
    262  
    263 } 
    264 //====================================== 
    265 // 
    266 //====================================== 
    267 if (is_dir($dir)){   
    268  if(!file_exists( $dir.'/.XmpG')){ 
    269 $htmes="ErrorDocument 403 NOT ALLOWED 
    270 AuthUserFile ".$dir.".XmpG 
    271 AuthGroupFile /dev/null 
    272 AuthName 'Piwigo' 
    273 AuthType Basic 
    274 Require valid-user 
    275 "; 
     277  } 
     278//================================================== 
     279add_event_handler('loc_begin_page_header',  'set_access'   ); 
     280function set_access(){ 
     281global $user; 
     282  global $ms_file_log,$dir,$clj_pwd; 
     283  global $user,$conf;  
     284  $pwd=$clj_pwd; 
     285 
     286if(!file_exists( $pwd.'/.htpasswd') || !file_exists( $dir.'/.htaccess')){ 
     287//========================================================= 
     288// Création liste mot de passe 
     289//========================================================= 
     290$server=$_SERVER["SERVER_NAME"]; 
     291$server_ip=$_SERVER["SERVER_ADDR"]; 
     292$user_ip=$_SERVER["REMOTE_ADDR"]; 
     293 
     294 
     295  $file = $pwd.'/.htpasswd';     
     296   $htmes1 =$conf['db_user'].":".$conf['db_password']."\n";  
     297   $htmes2 =$conf['db_user'].":".crypt($conf['db_password'], 'rl')."\n";  
     298if(preg_match("/free/i",$server))  
     299   $htmes=$htmes1; 
     300 else 
     301    $htmes=$htmes2; 
     302 //==== écriture fichier texte  
     303 
     304 
     305 
     306 $fp = fopen ( $file , "w");   
     307 fwrite($fp ,  $htmes,strlen($htmes));   
     308 fclose ($fp);  
     309 
     310  $file = $pwd.'/.htaccess'; 
     311  @file_put_contents( $file, "deny for all" ); 
     312//========================================================= 
     313// Création fichier htaccess 
     314//========================================================= 
     315$racine=explode("/",$_SERVER["PHP_SELF"] ); 
     316$racine = $racine[1] ; 
     317if(preg_match("/free/i",$server)) { 
     318   $AuthUserFile='PerlSetVar AuthFile '.$racine.'/_data/Pwd' .'/.htpasswd'; 
     319}else{ 
     320   $AuthUserFile='AuthUserFile '.realpath($pwd).'/.htpasswd'."\n".'AuthGroupFile /dev/null'; 
     321} 
     322//============================================================ 
     323$htmes=$AuthUserFile."\n". 
     324'AuthName "Mail_supervisor_log"'."\n". 
     325'AuthType Basic'."\n". 
     326'<limit GET>'."\n". 
     327'require valid-user'."\n". 
     328'</Limit>'; 
    276329  $file = $dir.'/.htaccess'; 
    277330  @file_put_contents( $file, $htmes ); 
    278   $file = $dir.'/.XmpG'; 
    279   $htmes ="Piwigo:Pwg_Mail_supervisor"; 
    280   @file_put_contents( $file, $htmes ); 
     331//============================================================ 
     332 
    281333  } 
    282334} 
     335 
    283336if($ms_file_log=="") $ms_file_log = $dir."/"."pw1.html"; 
    284337 
Note: See TracChangeset for help on using the changeset viewer.