99 lines
5.5 KiB
PHP
99 lines
5.5 KiB
PHP
|
<?php
|
|||
|
class main{ // extends MySQL
|
|||
|
var $db;
|
|||
|
var $id;
|
|||
|
var $folder;
|
|||
|
function __construct($smarty, $settings){
|
|||
|
if( $settings['cachePage'] > 0 ){
|
|||
|
$smarty -> caching = false;
|
|||
|
$smarty -> cache_lifetime = $settings['cachePage'];
|
|||
|
}
|
|||
|
}
|
|||
|
/* ------------------------------------------------------------------------------------------------------------------------- */
|
|||
|
function install(){ // Инсталлятор
|
|||
|
@mkdir(MYDIR .'/img/my', 0700);
|
|||
|
$id = $this -> db -> get_user_id();
|
|||
|
@mkdir(MYDIR .'/img/my/' . $id, 0700);
|
|||
|
$this -> folder = MYDIR .'/img/my/' . $id;
|
|||
|
$this -> db -> to_log ( 'Создали пользователю папку - ' . $this -> folder );
|
|||
|
}
|
|||
|
/* ------------------------------------------------------------------------------------------------------------------------- */
|
|||
|
function get_itog($user_id){ // Узнаем сколько денег нам должны
|
|||
|
//Считаем итоговую сумму фоток в корзине
|
|||
|
$a['status']=0;
|
|||
|
$a['user_id']=$user_id;
|
|||
|
$massiv = $this -> db -> get_massiv ('cart', $a);
|
|||
|
$num = count( $massiv );
|
|||
|
$itog = 0;
|
|||
|
for ( $i = 0; $i < $num; $i++ ){
|
|||
|
if ( $massiv[$i]['id'] ) $itog = $itog+$massiv[$i]['cena'];
|
|||
|
}
|
|||
|
//Делаем скидку
|
|||
|
if ( $_SESSION['user_id'] && $itog>=400 ) $itog = $itog - 200;
|
|||
|
return $itog;
|
|||
|
}
|
|||
|
/* ------------------------------------------------------------------------------------------------------------------------- */
|
|||
|
function check_oplata($itog, $inv_id){ // проверяем наличие оплаты
|
|||
|
$itog = $itog . ".000000";
|
|||
|
$result = 0;
|
|||
|
$this -> db -> to_log ( 'Результат проверки ' . $result );
|
|||
|
$b['inv_id']=$inv_id;
|
|||
|
$summa = $this -> db -> get_val ( 'oplata', $b, 'summa' ); //проверяем - есть ли хоть какая-то оплата
|
|||
|
if ( !$summa ) return false; //Нет оплаты
|
|||
|
if ( $summa == $itog ) return true; //оплата совпадает с ожидаемой суммой
|
|||
|
}
|
|||
|
/* ------------------------------------------------------------------------------------------------------------------------- */
|
|||
|
function zip_foto($folder){
|
|||
|
chdir ($folder);
|
|||
|
unlink('foto.zip');
|
|||
|
exec("zip foto.zip * 9");
|
|||
|
chdir ($_SERVER['DOCUMENT_ROOT']);
|
|||
|
}
|
|||
|
/* ------------------------------------------------------------------------------------------------------------------------- */
|
|||
|
function send_to_user( $folder ){//шлем юзеру ссылку на архив
|
|||
|
$link = 'https://h-appycenter.ru/img/my/' . $this -> db -> get_user_id() .'/foto.zip';
|
|||
|
if ( $_SESSION['user_id'] ){
|
|||
|
$a['id'] = $_SESSION['user_id'];
|
|||
|
$email = $this -> db -> get_val( 'users', $a, 'email' );
|
|||
|
}else{
|
|||
|
$a['session_id'] = session_id();
|
|||
|
$email = $this -> db -> get_val( 'tmp_users', $a, 'email' );
|
|||
|
}
|
|||
|
$txt = 'Вы можете скачать архив с фотографиями по этой <a href="' . $link . '">ссылке</a>';
|
|||
|
$this -> db -> send_to_admin( 'Ссылка на скачивание фотографий', $txt, $email );
|
|||
|
}
|
|||
|
/* ------------------------------------------------------------------------------------------------------------------------- */
|
|||
|
function acrh_foto(){ // копируем фотки в папкую покупателя
|
|||
|
$a['user_id'] = $this -> db -> get_user_id();
|
|||
|
$a['status'] = 0;
|
|||
|
$massiv_from_cart = $this -> db -> get_massiv( 'cart', $a );
|
|||
|
$num = count ( $massiv_from_cart );
|
|||
|
for ( $i = 0; $i < $num; $i++ ){
|
|||
|
if ( $massiv_from_cart[$i]['id'] ){
|
|||
|
//узнаем оригинальный путь к файлу
|
|||
|
unset ( $c );
|
|||
|
unset ( $massiv_from_foto );
|
|||
|
$c['id'] = $massiv_from_cart[$i]['foto_id'];
|
|||
|
$massiv_from_foto = $this -> db -> get_massiv( 'foto_img', $c, '', 1 );
|
|||
|
$src = MYDIR . '/img/albums/' . $massiv_from_foto[0]['user_id'] . '/' . $massiv_from_foto[0]['album_id'] . '/original/' . $massiv_from_foto[0]['img'] . '.jpg';
|
|||
|
$this -> db -> to_log( 'Оригинальный файл: ' . $src );
|
|||
|
$folder = $this -> folder;
|
|||
|
$dst = $folder . '/' . $massiv_from_foto[0]['original_name'] . '.jpg';
|
|||
|
$this -> db->to_log('Целевой файл: ' . $dst);
|
|||
|
copy ($src, $dst);
|
|||
|
$list[$i]=$massiv_from_foto[0]['original_name'];
|
|||
|
}
|
|||
|
}
|
|||
|
$this->zip_foto($folder);//Архивируем
|
|||
|
$this -> db->send_to_admin('Список заказанных фото', $this -> db->to_j($list), 'v_batin@mail.ru');
|
|||
|
$this -> db->send_to_admin('Список заказанных фото', $this -> db->to_j($list), '1@yurecnt.ru');
|
|||
|
$this->send_to_user($folder);
|
|||
|
$this -> db->free_sql("UPDATE `cart` SET `status` = '1' WHERE `user_id` = '" . $a['user_id'] . "' AND `status`=0;");
|
|||
|
}
|
|||
|
/* ------------------------------------------------------------------------------------------------------------------------- */
|
|||
|
function my_files(){
|
|||
|
require_once MYDIR . '/api/php/list_file.php';
|
|||
|
return list_file( $this -> folder );
|
|||
|
}
|
|||
|
}
|
|||
|
?>
|