Вход Регистрация
Файл: tools.php
Строк: 172
<?
/***************************************************************************
 * ExBB v.1.1                                                              *
 * Copyright (c) 2002-20хх by Alexander Subhankulov aka Warlock            *
 *                                                                         *
 * http://www.exbb.revansh.com                                             *
 * email: admin@exbb.revansh.com                                           *
 *                                                                         *
 ***************************************************************************/
/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

session_start();
define('ATTACH',true);
include(
'common.php');

$vars parsed_vars();

switch (
$vars['action']) {
   case 
'massmail' massmail(); break;
   case 
'smiles'   showsmiles(); break;
   case 
'attach'   attachment(); break;
   default: 
massmail(); break;
}

function 
massmail() {
global 
$exbb,$vars,$lang;

  include(
'./language/' $exbb['default_lang'] . '/lang_admin.php');
  if (!
$exbb['reged'])  error($lang['Info'],$lang['Guest_mail'],'',0);
  
$filetoopen $exbb['home_path'].'data/users.php';
  if (isset(
$vars['mode'])) {

     
$users get_file($filetoopen);
     if (isset(
$vars['mid'])) {
        if ( 
array_key_exists($vars['mid'],$users) ) {
          if (!
defined('IS_ADMIN') ) {
            
$lastpost $_SESSION['lastposttime'] + $exbb['flood_limit'];
            if ( 
$lastpost time() ) error($lang['Email_error'],$lang['Flood_limit'].$exbb['flood_limit'].$lang['Flood_mail']);
          }
          
$member getmember($vars['mid']);
          
$member = ($member) ? unserialize($member) : '';
          
$message $lang['Hello'].', '.$member['name']."n".$exbb['member'].$lang['Email_from'].$exbb['boardname'].' ('.$exbb['boardurl'].")nn";
          
$message .= stripslashes(trim($_POST['message']));
          
sendmail($exbb['boardname'],$users[$exbb['mem_id']]['m'],$message,$vars['subject'],$users[$vars['mid']]['m']);
        } else {
           
error($lang['Info'],$lang['Email_error'],'',0);
        }
        
$_SESSION['lastposttime'] = time();
        
error($lang['Info'],$lang['Message_sent'],'',0);
     }
     elseif (
is_array($users) && count($users) > 0) {
         if (!
defined('IS_ADMIN')) error($lang['Info'],$lang['Not_admin'],'',0);
         
$message $lang['From_admin'].$exbb['boardname'].' ('.$exbb['boardurl'].")nn~~~~~~~~~~~~~~~~~~~~~~~~~~~~n".stripslashes(trim($_POST['message']));
         
$bcc_list = array();
         foreach(
$users as $id=>$info$bcc_list[$id] = 1;
         
sendmail($exbb['boardname'],$exbb['adminemail'],$message,$vars['subject'],$bcc_list);
         unset(
$users,$id,$bcc_list,$info);
     }
     
error($lang['Info'],$lang['Message_sent'],'',0);

  }
  else {

    
$title_page $exbb['boardname'];
    include(
'./templates/'.$exbb['default_style'].'all_header.tpl');

    if (isset(
$vars['mid'])) {
      
$member getmember($vars['mid']);
      
$member = ($member) ? unserialize($member) : '';
      
$add '<tr class="catname" valign=middle align=center><td colspan="2" class="row1"><b>'.$lang['Email_to'].$member['name'].'</b></td></tr>';
      
$hidden '<input type=hidden name="mid" value="'.$vars['mid'].'">';
      include(
'./templates/'.$exbb['default_style'].'logos.tpl');
    }
    include(
'./templates/'.$exbb['default_style'].'admin/mass_mail.tpl');
    include(
'./templates/'.$exbb['default_style'].'footer.tpl');
    include(
'page_tail.php');
  }
}

function 
showsmiles() {
global 
$exbb,$vars,$lang;
   
$filetoopen $exbb['home_path'].'data/smiles.php';
   if (
file_exists($filetoopen)) {$smiles_list get_file($filetoopen); uasort($smiles_list,'sort_by_id');} else {$smiles_list = array();}
   if (
count($smiles_list)) {
     foreach (
$smiles_list as $code=>$data) include('./templates/'.$exbb['default_style'].'smiles_data.tpl');
   }
   else {
$datashow '<tr><td colspan="3" align="center">No</td></tr>';}

   
$title_page ':-)';
   include(
'./templates/'.$exbb['default_style'].'all_header.tpl');
   include(
'./templates/'.$exbb['default_style'].'smiles_show.tpl');
   include(
'./templates/'.$exbb['default_style'].'footer.tpl');
   include(
'page_tail.php');

return;

}

function 
sort_by_id($a$b) {
    if (
$a['id'] == $b['id']) return 0;
    return (
$a['id'] < $b['id']) ? -1;
}

function 
attachment() {
global 
$exbb,$vars,$lang;

if (
$vars['f'] == '' || $vars['t'] == '' || $vars['id'] == ''error($lang['Main_msg'],$lang['Dont_chg_url'],'',1);

$filetoopen $exbb['home_path'].'forum'.$vars['f'].'/attaches-'.$vars['t'].'.php';
$t_attaches = ( file_exists($filetoopen) ) ? get_file($filetoopen) : array();
$id $vars['id'];
if (
count($t_attaches)) {
     
$filename =  $exbb['home_path'].'uploads/'.$t_attaches[$id]['id'];
     if ( 
file_exists($filename) ) {
       
$t_attaches[$id]['hits']++;
       
save_file($filetoopen,$t_attaches);
       
$extension strtolower(substr(strrchr($t_attaches[$id]['file'],'.'),1));
       switch (
$extension) {
         case 
'gif' $type 'image/gif'; break;
         case 
'jpg' :
         case 
'jpeg' $type 'image/pjpeg'; break;
         case 
'pdf' $type 'application/pdf'; break;
         case 
'zip' $type 'application/zip'; break;
         case 
'pdf' $type 'application/pdf'; break;
         default :  
$type 'unknown/unknown'; break;
       }

       @
header"Content-Type: $type"nContent-Dispositioninlinefilename="".$t_attaches[$id]['file'].""nContent-Length".(string)(filesize( $filename ) ) );

       
$fp = fopen( $filename, 'rb' );
       fpassthru( 
$fp );
       @fclose( 
$fp );
       exit;
     } else {
       error(
$lang['Main_msg'],$lang['attach_nofile'],'',1);
     }
} else { error(
$lang['Main_msg'],$lang['attach_error'],'',1); }

return;

}
?>
Онлайн: 0
Реклама