$value)$result[$key]=$value; reset($_POST); return $result; } ############################################################################### function show($template){ global $data, $post; if(file_exists($template))include($template); else echo("Template \"{$template}\" not found!"); } function display($path=''){ global $data; if($path)$path="/{$path}"; show("{$data['Templates']}{$path}/template.header.htm"); show("{$data['Templates']}{$path}/template.{$data['PageFile']}.htm"); show("{$data['Templates']}{$path}/template.footer.htm"); } function showmenu($mode, $path=''){ global $data; $data['mode']=$mode; if($path)$path="/{$path}"; show("{$data['Templates']}{$path}/template.menu.htm"); } function showbanner(){ global $data; show("{$data['Templates']}/template.banners.htm"); } ############################################################################### $data['cid']=null; function db_connect(){ global $data; $data['cid']=@mysql_connect( $data['Hostname'], $data['Username'], $data['Password'] ); if(!$data['cid'])echo(''.mysql_error().''); @mysql_select_db($data['Database'], $data['cid']); return (bool)$data['cid']; } function db_disconnect(){ global $data; return (bool)@mysql_close($data['cid']); } function db_query($statement){ global $data; return @mysql_query($statement, $data['cid']); } function newid(){ global $data; return @mysql_insert_id($data['cid']); } function db_count($result){ return (int)@mysql_num_rows($result); } function db_rows($statement){ $result=array(); $query=db_query($statement); $count=db_count($query); for($i=0; $i<$count; $i++)$result[$i]=@mysql_fetch_array($query, MYSQL_ASSOC); return $result; } ############################################################################### function verify_email($email){ return !(bool)ereg("^.+@.+\\..+$", $email); } function verify_username($username){ return !(bool)ereg("^[a-zA-Z0-9]+$", $username); } function gencode(){ global $data; list($usec, $sec)=explode(' ', microtime()); $rand=(float)$sec+((float)$usec*100000); srand($rand); return strtoupper(substr(md5(rand()), rand(1, 26), $data['TuringSize'])); } function around($amount){ return sprintf("%6.2f", $amount); } function encode($number, $size){ $result=''; $length=strlen($number); for($i=0;$i<$length-$size;$i++)$result.='X'; return $result.substr($number, $length-$size, $length); } function is_changed($number){ return (bool)ereg("^[0-9]+$", $number); } function is_number($text){ if(!is_changed($text))return true; return (bool)is_changed($text); } function showselect($values, $current=null){ $result=''; foreach($values as $key=>$value){ $result.= "" ; } return $result; } ############################################################################### function prndate($date){ global $data; if($date=='0000-00-00 00:00:00')return '---'; else return date($data['DateFormat'], strtotime($date)); } function prnintg($number){ return number_format($number, 0, '', ','); } function prnsumm($summ, $size=2){ $summ=str_replace(",", ".", $summ); return number_format(($summ>0?$summ:-$summ), $size, '.', ','); } function prnpays($summ, $splus=true){ global $data; if($summ<0)$color='red';else $color='green'; return "". ($summ>=0?($splus?'+':''):'-').$data['Currency'].prnsumm($summ). '' ; } function prnfees($summ){ return $summ!=0?prnpays($summ):'---'; } function prntext($text){ return stripslashes($text); } function balance($summ){ return prnpays($summ, false); } function prnuser($uid){ if($uid>0)return get_member_username($uid); else return 'system'; } function get_files_list($path){ $result=array(); if(@file_exists($path)){ $handle=@opendir($path); while(($file=@readdir($handle))!==false){ if($file!='.'&&$file!='..'){ $x=strtolower(substr($file, -4)); if($x&&$x=='.jpg'||$x=='.gif'||$x=='.png')$result[]="{$file}"; } } } return $result; } function get_html_templates(){ global $data; $result=array('0'=>'--'); if(@file_exists($data['Templates'])){ $handle=@opendir($data['Templates']); while(($file=@readdir($handle))!==false){ if($file!='.'&&$file!='..'){ $x=strtolower(substr($file, -4)); if($x&&$x=='.htm')$result[$file]="{$file}"; } } } return $result; } ############################################################################### function send_email($key, $post){ global $data; $template=db_rows( "SELECT `name`,`value` FROM `{$data['DbPrefix']}emails`". " WHERE `key`='{$key}'" ); $text=$template[0]['value']; $subject=$template[0]['name']; if($post['username']){ $text=str_replace("[username]", $post['username'], $text); $text=str_replace("[usersite]", "{$data['Host']}/?{$post['username']}", $text); } if($post['password'])$text=str_replace("[password]", $post['password'], $text); if($post['fullname'])$text=str_replace("[fullname]", $post['fullname'], $text); if($post['email'])$text=str_replace("[emailadr]", $post['email'], $text); if($post['buyer'])$text=str_replace("[buyeradr]", $post['buyer'], $text); if($post['product'])$text=str_replace("[product]", $post['product'], $text); if($post['ccode'])$text=str_replace("[confcode]", $post['ccode'], $text); if($post['comments'])$text=str_replace("[comments]", $post['comments'], $text); else $text=str_replace("[comments]", '---', $text); $text=str_replace("[sitename]", $data['SiteName'], $text); $text=str_replace("[hostname]", $data['Host'], $text); $text=str_replace("[singpage]", "{$data['Members']}/signup.htm", $text); $text=str_replace("[confpage]", "{$data['Members']}/confirm.htm", $text); $text=str_replace("[lognpage]", "{$data['Members']}/login.htm", $text); $text=str_replace("[amount]", $data['Currency'].($post['amount']-$post['fees']), $text); $header="From: {$data['AdminEmail']}\nReturn-Path: {$data['AdminEmail']}\n"; return mail($post['email'], stripslashes($subject), stripslashes($text), $header); } function send_mass_email($subject, $message, $active=-1){ global $data; $header="From: {$data['AdminEmail']}\nReturn-Path: {$data['AdminEmail']}\n"; $members=db_rows( "SELECT `username`,`email`,`fname`,`lname`". " FROM `{$data['DbPrefix']}members`". ($active<0?'':" WHERE `active`={$active}") ); foreach($members as $value){ mail($value['email'], $subject, $message, $header); } } ############################################################################### function use_curl($href, $post=null){ $handle=curl_init(); curl_setopt($handle, CURLOPT_URL, $href); if($post){ if($post){ curl_setopt($handle, CURLOPT_POST, 1); curl_setopt($handle, CURLOPT_POSTFIELDS, $post); } curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($handle, CURLOPT_RETURNTRANSFER, 1); curl_setopt($handle, CURLOPT_TIMEOUT, 90); } $result=curl_exec($handle); curl_close($handle); return $result; } function autorize($uid, $post){ global $data; $query=array(); array_push($query, 'x_ADC_Delim_Data=TRUE'); array_push($query, 'x_ADC_URL=FALSE'); array_push($query, 'x_Address='.urlencode($post['address'])); array_push($query, 'x_Amount='.urlencode($post['total'])); array_push($query, 'x_Card_Code='.urlencode($post['ccvv'])); array_push($query, 'x_Card_Num='.urlencode($post['cnumber'])); array_push($query, 'x_City='.urlencode($post['city'])); array_push($query, 'x_Company='.urlencode($post['company'])); array_push($query, 'x_Country='.urlencode($post['country'])); array_push($query, 'x_Cust_ID='.urlencode(get_member_username($uid))); array_push($query, 'x_Customer_IP='.urlencode($_SERVER['REMOTE_ADDR'])); array_push($query, 'x_Customer_Organization_Type='.urlencode((strlen($post['company'])>0)?'B':'I')); array_push($query, 'x_Description='.urlencode('Deposit to my account from Authorize.Net')); array_push($query, 'x_Email='.urlencode($post['email'])); array_push($query, 'x_Exp_Date='.urlencode("{$post['cmonth']}/{$post['cyear']}")); array_push($query, 'x_First_Name='.urlencode($post['fname'])); array_push($query, 'x_Last_Name='.urlencode($post['lname'])); array_push($query, 'x_Method=CC'); array_push($query, "x_Login={$data['DepositMethod']['autorize']['user']}"); array_push($query, "x_Password={$data['DepositMethod']['autorize']['pswd']}"); array_push($query, 'x_Phone='.urlencode($post['phone'])); array_push($query, 'x_Recurring_Billing=FALSE'); array_push($query, 'x_State='.urlencode($post['state'])); array_push($query, 'x_Tax_Exempt=TRUE'); array_push($query, 'x_Trans_ID=1'); array_push($query, 'x_Type=AUTH_CAPTURE'); array_push($query, 'x_Version=3.1'); array_push($query, 'x_Zip='.urlencode($post['zip'])); $query=implode('&', $query); $cid=curl_init('https://secure.authorize.net/gateway/transact.dll'); curl_setopt($cid, CURLOPT_POST, 1); curl_setopt($cid, CURLOPT_POSTFIELDS, $query); curl_setopt($cid, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($cid, CURLOPT_RETURNTRANSFER, 1); curl_setopt($cid, CURLOPT_TIMEOUT, 90); $result=curl_exec($cid); curl_close($cid); $rarray=array(); $rarray=explode(',', $result); $result='Credit card transaction was denied.'; switch($rarray[0]){ case 1: $result='--DONE--'; case 2: $result='Credit card transaction was denied.'; case 3: $result="An error occurred while trying to process your information.

{$rarray[3]}"; } return $result; } ############################################################################### function is_user_available($username){ global $data; $confirms=db_rows( "SELECT `id` FROM `{$data['DbPrefix']}confirms`". " WHERE(`newuser`='{$username}') LIMIT 1" ); $members=db_rows( "SELECT `id` FROM `{$data['DbPrefix']}members`". " WHERE(`username`='{$username}') LIMIT 1" ); return (bool)(!$confirms&&!$members); } function is_mail_available($email){ global $data; $confirms=db_rows( "SELECT `id` FROM `{$data['DbPrefix']}confirms`". " WHERE(`newmail`='{$email}') LIMIT 1" ); $members=db_rows( "SELECT `id` FROM `{$data['DbPrefix']}members`". " WHERE(`email`='{$email}') LIMIT 1" ); return (bool)(!$confirms&&!$members); } function create_confirmation( $newuser, $newpass, $newques, $newansw, $newmail, $newfname, $newlname, $newcompany, $newregnum, $newdrvnum, $newaddress, $newcity, $newcountry, $newstate, $newzip, $newphone, $newfax, $sponsor=0 ){ global $data; $result=gencode(); $sponsor=($sponsor?$sponsor:0); db_query( "INSERT INTO `{$data['DbPrefix']}confirms`(". "`newuser`,`newpass`,`newquestion`,`newanswer`,`newmail`,". ($data['UseExtRegForm']? "`newfname`,`newlname`,`newcompany`,`newregnum`,`newdrvnum`,`newaddress`,". "`newcity`,`newcountry`,`newstate`,`newzip`,`newphone`,`newfax`,":'' ). "`sponsor`,`confirm`". ")VALUES(". "'{$newuser}','{$newpass}','{$newques}','{$newansw}','{$newmail}',". ($data['UseExtRegForm']? "'{$newfname}','{$newlname}','{$newcompany}','{$newregnum}','{$newdrvnum}',". "'{$newaddress}','{$newcity}','{$newcountry}','{$newstate}','{$newzip}',". "'{$newphone}','{$newfax}',":'' ). "{$sponsor},'{$result}'". ")" ); $post['ccode']=$result; $post['email']=$newmail; send_email('CONFIRM-TO-MEMBER', $post); } function select_confirmation($ccode){ global $data; $confirm=db_rows( "SELECT `id` FROM `{$data['DbPrefix']}confirms`". " WHERE(`confirm`='{$ccode}')" ); return $confirm[0]['id']; } function update_confirmation($cid){ global $data; db_query( "DELETE FROM `{$data['DbPrefix']}confirms`". " WHERE(TO_DAYS(NOW())-TO_DAYS(`cdate`)>=2)" ); $confirm=db_rows( "SELECT". "`id`,`newuser`,`newpass`,`newquestion`,`newanswer`,`newmail`,". ($data['UseExtRegForm']? "`newfname`,`newlname`,`newcompany`,`newregnum`,`newdrvnum`,`newaddress`,". "`newcity`,`newcountry`,`newstate`,`newzip`,`newphone`,`newfax`,":"" ). "`sponsor`". " FROM `{$data['DbPrefix']}confirms` WHERE(`id`='{$cid}')" ); $confirm=$confirm[0]; db_query( "INSERT INTO `{$data['DbPrefix']}members`(". "`sponsor`,`username`,`password`,`question`,`answer`,`email`,". ($data['UseExtRegForm']? "`fname`,`lname`,`company`,`regnum`,`drvnum`,`address`,". "`city`,`country`,`state`,`zip`,`phone`,`fax`,":'' ). "`active`,`empty`,`cdate`". ")VALUES(". "{$confirm['sponsor']},'{$confirm['newuser']}','{$confirm['newpass']}',". "'{$confirm['newquestion']}','{$confirm['newanswer']}','{$confirm['newmail']}',". ($data['UseExtRegForm']? "'{$confirm['newfname']}','{$confirm['newlname']}','{$confirm['newcompany']}',". "'{$confirm['newregnum']}','{$confirm['newdrvnum']}','{$confirm['newaddress']}',". "'{$confirm['newcity']}','{$confirm['newcountry']}','{$confirm['newstate']}',". "'{$confirm['newzip']}','{$confirm['newphone']}','{$confirm['newfax']}',":'' ). "1,".($data['UseExtRegForm']?'0':'1').",'".date('Y-m-d H:i:s')."')" ); $receiver=newid(); db_query( "DELETE FROM `{$data['DbPrefix']}confirms`". " WHERE(`id`={$confirm['id']})" ); if($data['SignupBonus']){ transaction( -1, $receiver, $data['SignupBonus'], 0, 4, 1, 'Signup Bonus' ); } $post['username']=$confirm['newuser']; $post['password']=$confirm['newpass']; $post['email']=$confirm['newmail']; send_email('SIGNUP-TO-MEMBER', $post); if($data['ReferralPays']){ $post['email']=get_member_email($confirm['sponsor']); send_email('DOWNLINE-CHANGE', $post); } } function get_members_count($active=true){ global $data; $result=db_rows( "SELECT COUNT(`id`) AS `count`". " FROM `{$data['DbPrefix']}members`". " WHERE `active`=".(int)($active). " LIMIT 1" ); return $result[0]['count']; } function get_members_list($active=true, $start=0, $count=0, $online=false){ global $data; $limit=($start?($count?" LIMIT {$start},{$count}":" LIMIT {$start}"): ($count?" LIMIT {$count}":'')); $members=db_rows( "SELECT * FROM `{$data['DbPrefix']}members`". " WHERE `active`=".(int)($active).($online?' AND (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(`adate`)<1800)':''). " ORDER BY `username` ASC{$limit}" ); $result=array(); foreach($members as $key=>$value){ $result[$key]=$value; $trans=db_rows( "SELECT COUNT(`id`) AS `count`". " FROM `{$data['DbPrefix']}transactions`". " WHERE `sender`={$result[$key]['id']}". " OR `receiver`={$result[$key]['id']} LIMIT 1" ); $result[$key]['transactions']=$trans[0]['count']; $result[$key]['candelete']=$trans[0]['count']<2; if($result[$key]['sponsor']){ $result[$key]['sname']= get_member_username($result[$key]['sponsor']).'
('. get_member_email($result[$key]['sponsor']).')' ; }else $result[$key]['sname']='N/A'; } return $result; } function get_members_count_where_pred($where_pred){ global $data; $result=db_rows( "SELECT COUNT(`id`) AS `count`". " FROM `{$data['DbPrefix']}members`". " WHERE $where_pred ". " LIMIT 1" ); return $result[0]['count']; } function get_members_list_where_pred($start=0, $count=0, $where_pred){ global $data; $limit=($start?($count?" LIMIT {$start},{$count}":" LIMIT {$start}"): ($count?" LIMIT {$count}":'')); $members=db_rows( "SELECT * FROM `{$data['DbPrefix']}members`". " WHERE $where_pred ". " ORDER BY `username` ASC{$limit}" ); $result=array(); foreach($members as $key=>$value){ $result[$key]=$value; $trans=db_rows( "SELECT COUNT(`id`) AS `count`". " FROM `{$data['DbPrefix']}transactions` ". " WHERE `sender`={$result[$key]['id']}". " OR `receiver`={$result[$key]['id']} LIMIT 1" ); $result[$key]['transactions']=$trans[0]['count']; $result[$key]['candelete']=$trans[0]['count']==0; if($result[$key]['sponsor']){ $result[$key]['sname']= get_member_username($result[$key]['sponsor']).'
('. get_member_email($result[$key]['sponsor']).')' ; }else $result[$key]['sname']='N/A'; } return $result; } function get_member_id($username, $password='', $where=''){ global $data; $result=db_rows( "SELECT `id` FROM `{$data['DbPrefix']}members`". " WHERE (`username`='{$username}' OR `email`='{$username}')". ($password?" AND `password`='{$password}'":''). ($where?" AND $where":'')." LIMIT 1" ); return $result[0]['id']; } function get_member_email($uid){ global $data; $result=db_rows( "SELECT `email` FROM `{$data['DbPrefix']}members`". " WHERE `id`={$uid} LIMIT 1" ); return $result[0]['email']; } function get_sponsor_id($uid){ global $data; $result=db_rows( "SELECT `sponsor` FROM `{$data['DbPrefix']}members`". " WHERE `id`={$uid} LIMIT 1" ); return $result[0]['sponsor']; } function get_sponsors($uid){ global $data; $members=db_rows( "SELECT `id`,`username`,`email`". " FROM `{$data['DbPrefix']}members`". ($uid?" WHERE `id`<>{$uid} AND `sponsor`<>{$uid}":'') ); $result=array('--'); foreach($members as $value)$result[$value['id']]="{$value['username']} ({$value['email']})"; return $result; } function get_member_username($uid){ global $data; if($uid<0)return 'system'; $result=db_rows( "SELECT `username` FROM `{$data['DbPrefix']}members`". " WHERE `id`={$uid} LIMIT 1"); return $result[0]['username']; } function get_member_name($uid){ global $data; if($uid<0)return 'system'; $result=db_rows( "SELECT `fname`,`lname` FROM `{$data['DbPrefix']}members`". " WHERE `id`={$uid} LIMIT 1"); return $result[0]['fname']." ".$result[0]['lname']; } function get_member_info($uid){ global $data; $result=db_rows( "SELECT * FROM `{$data['DbPrefix']}members`". " WHERE `id`={$uid} LIMIT 1"); return $result[0]; } function is_member_found($username, $password){ return (bool)get_member_id($username, $password); } function is_member_active($username){ return (bool)get_member_id($username, '', '`active`=1'); } function set_member_status($uid, $active){ global $data; db_query( "UPDATE `{$data['DbPrefix']}members`". " SET `active`=".(int)$active. " WHERE `id`={$uid}" ); } function set_member_inactive($username){ global $data; set_member_status(get_member_id($username), false); } function delete_member($uid){ global $data; db_query( "DELETE FROM `{$data['DbPrefix']}members` WHERE `id`={$uid}" ); } function select_balance($uid){ global $data; if($uid<0){ $isql= "SELECT SUM(`fees`) AS `summ`". " FROM `{$data['DbPrefix']}transactions`". " WHERE (`status`=1 OR `status`=6) LIMIT 1" ; }else{ $isql= "SELECT SUM(`amount`-`fees`) AS `summ`". " FROM `{$data['DbPrefix']}transactions`". " WHERE `receiver`={$uid} AND (`status`=1 OR `status`=6) LIMIT 1" ; } $outgoing=db_rows( "SELECT SUM(`amount`) AS `summ`". " FROM `{$data['DbPrefix']}transactions`". " WHERE `sender`={$uid} AND (`status`=1 OR `status`=6) LIMIT 1" ); $incoming=db_rows($isql); $outgoing=(double)$outgoing[0]['summ']; $incoming=(double)$incoming[0]['summ']; return $incoming-$outgoing; } function set_last_access($username){ global $data; db_query( "UPDATE `{$data['DbPrefix']}members`". " SET `ldate`='".date("Y-m-d H:i:s")."',". "`last_ip`='{$_SERVER['REMOTE_ADDR']}'". " WHERE `id`=".get_member_id($username) ); } function set_last_access_date($uid, $reset=false){ global $data; if(!$reset)$curr=date("Y-m-d H:i:s");else $curr=0; db_query( "UPDATE `{$data['DbPrefix']}members`". " SET `adate`='{$curr}'". " WHERE `id`={$uid}" ); } function is_valid_mail($email){ global $data; $result=db_rows( "SELECT `id` FROM `{$data['DbPrefix']}members`". " WHERE `email`='{$email}'" ); return (bool)$result[0]['id']; } function get_member_by_email($email){ global $data; $result=db_rows( "SELECT `password`,`question`,`answer` FROM `{$data['DbPrefix']}members`". " WHERE `email`='{$email}'" ); return $result[0]; } function is_info_empty($uid){ global $data; $result=db_rows( "SELECT `empty`". " FROM `{$data['DbPrefix']}members`". " WHERE `id`={$uid} LIMIT 1" ); return (bool)$result[0]['empty']; } function select_info($uid, $post){ $result=$post; $member=get_member_info($uid); foreach($member as $key=>$value)if(!isset($post[$key]))$result[$key]=$value; return $result; } function insert_profile_info($post){ global $data; if(!$post['sponsor'])$post['sponsor']=0; db_query( "INSERT INTO `{$data['DbPrefix']}members`(". "`sponsor`,`username`,`password`,`email`,`active`,`empty`,". "`fname`,`lname`,`company`,`regnum`,`drvnum`,". "`address`,`city`,`country`,`state`,`zip`,`phone`,`fax`". ")VALUES(". "{$post['sponsor']},'{$post['username']}','{$post['password']}',". "'{$post['email']}',0,0,'{$post['fname']}','{$post['lname']}',". "'{$post['company']}','{$post['regnum']}','{$post['drvnum']}',". "'{$post['address']}','{$post['city']}','{$post['country']}',". "'{$post['state']}','{$post['zip']}','{$post['phone']}',". "'{$post['fax']}'". ")" ); return newid(); } function update_profile_info($post, $uid, $notify=true){ global $data; if(!$post['sponsor'])$post['sponsor']=0; db_query( "UPDATE `{$data['DbPrefix']}members` SET ". "`sponsor`={$post['sponsor']},". "`empty`=0,`fname`='{$post['fname']}',`lname`='{$post['lname']}',". "`company`='{$post['company']}',`regnum`='{$post['regnum']}',". "`drvnum`='{$post['drvnum']}',`address`='{$post['address']}',". "`city`='{$post['city']}',`country`='{$post['country']}',". "`state`='{$post['state']}',`zip`='{$post['zip']}',". "`phone`='{$post['phone']}',`fax`='{$post['fax']}',". "`description`='{$post['description']}'". " WHERE `id`={$uid}" ); if($notify){ $post['email']=get_member_email($uid); send_email('UPDATE-MEMBER-PROFILE', $post); } } function update_member_password($uid, $password, $notify=true){ global $data; db_query( "UPDATE `{$data['DbPrefix']}members` SET ". "`password`='{$password}'". " WHERE `id`={$uid}" ); if($notify){ $post['email']=get_member_email($uid); send_email('UPDATE-MEMBER-PROFILE', $post); } } function update_member_question($uid, $question, $answer, $notify=true){ global $data; db_query( "UPDATE `{$data['DbPrefix']}members` SET ". "`question`='{$question}',`answer`='{$answer}'". " WHERE `id`={$uid}" ); if($notify){ $post['email']=get_member_email($uid); send_email('UPDATE-MEMBER-PROFILE', $post); } } function update_card_info($post, $uid, $notify=true){ global $data; $cnumber=(is_changed($post['cnumber']))?"`cnumber`='{$post['cnumber']}',":''; $ccvv=(is_changed($post['ccvv']))?"`ccvv`='{$post['ccvv']}',":''; db_query( "UPDATE `{$data['DbPrefix']}members` SET ". "`ctype`='{$post['ctype']}',`cname`='{$post['cname']}',". "{$cnumber}{$ccvv}". "`cmonth`={$post['cmonth']},`cyear`={$post['cyear']}". " WHERE `id`={$uid}" ); if($notify){ $post['email']=get_member_email($uid); send_email('UPDATE-CARD-INFORMATION', $post); } } function update_bank_info($post, $uid, $notify=true){ global $data; db_query( "UPDATE `{$data['DbPrefix']}members` SET ". "`bname`='{$post['bname']}',`baddress`='{$post['baddress']}',". "`bcity`='{$post['bcity']}',`bzip`='{$post['bzip']}',". "`bcountry`='{$post['bcountry']}',`bstate`='{$post['bstate']}',". "`bphone`='{$post['bphone']}',`bnameacc`='{$post['bnameacc']}',". "`baccount`='{$post['baccount']}',`btype`='{$post['btype']}',". "`brtgnum`='{$post['brtgnum']}',`bswift`='{$post['bswift']}'". " WHERE `id`={$uid}" ); if($notify){ $post['email']=get_member_email($uid); send_email('UPDATE-BANK-INFORMATION', $post); } } function set_trtype($uid, $dir){ switch($dir){ case 'both': return "(`sender`={$uid} OR `receiver`={$uid})"; case 'incoming': return "`receiver`={$uid}"; case 'outgoing': return "`sender`={$uid}"; } return ''; } function get_trans_count($where=''){ global $data; $result=db_rows( "SELECT COUNT(`id`) AS `count`". " FROM `{$data['DbPrefix']}transactions`{$where} LIMIT 1" ); return $result[0]['count']; } function get_transactions_count($uid, $dir='both', $extra='1'){ $result=get_trans_count( ' WHERE '.($uid>0?set_trtype($uid, $dir). ($extra?" AND {$extra}":''):($extra?" {$extra}":'')) ); return $result; } function get_transactions_summ($where){ global $data; $rows=db_rows( 'SELECT SUM(`amount`) AS `summ`, SUM(`fees`) AS `fees`'. " FROM `{$data['DbPrefix']}transactions`". ($where?" WHERE {$where}":'').' ORDER BY `tdate` LIMIT 1' ); $result['summ']=$rows[0]['summ']; $result['fees']=$rows[0]['fees']; return $result; } function get_transactions_summary($dateA, $dateB){ global $data; foreach($data['TransactionType'] as $key=>$value){ $rows=get_transactions_summ( "`type`={$key} AND". " UNIX_TIMESTAMP(`tdate`)>={$dateA} AND". " UNIX_TIMESTAMP(`tdate`)<{$dateB}" ); $result[$value]['Summ']=prnpays($rows['summ']?$rows['summ']:0, false); $result[$value]['Fees']=prnpays($rows['fees']?$rows['fees']:0, false); } return $result; } function get_transactions_year(){ global $data; $years=db_rows( "SELECT MIN(YEAR(`tdate`)) AS `min`, MAX(YEAR(`tdate`)) AS `max`". " FROM `{$data['DbPrefix']}transactions` LIMIT 1" ); $result['min']=$years[0]['min']; $result['max']=$years[0]['max']; return $result; } function can_refund($id, $uid){ global $data; $balance=select_balance($uid); $result=db_rows( "SELECT `id` FROM `{$data['DbPrefix']}transactions`". " WHERE `id`={$id} AND `receiver`={$uid}". " AND `type`=0 AND (`status`=0 OR `status`=1)". " AND `amount`<{$balance}". " AND TO_DAYS(NOW())-TO_DAYS(`tdate`)<{$data['RefundPeriod']}" ); return $result[0]; } function get_status_color($status){ $result='000000'; switch($status){ case 0: $result='blue'; break; case 1: $result='green'; break; case 2: $result='red'; break; case 3: $result='maroon'; } return $result; } function get_transactions( $uid, $dir='both', $type=-1, $status=-1, $start=0, $count=0, $order='', $suser='', $sdate='' ){ global $data; if($suser||$sdata){ $start=0; $count=0; } $order=($order?$order:'ORDER BY `tdate` DESC'); $limit=($start?($count?" LIMIT {$start},{$count}":" LIMIT {$start}"): ($count?" LIMIT {$count}":'')); $trans=db_rows( "SELECT * FROM `{$data['DbPrefix']}transactions`". ($uid?" WHERE ".set_trtype($uid, $dir):''). ($type<0?'':($uid?' AND ':' WHERE ')."`type`={$type}"). ($status<0?'':($uid||$type>=0?' AND ':' WHERE ')."`status`={$status}"). " {$order}{$limit}" ); $result=array(); foreach($trans as $key=>$value){ if($suser){ if( strpos(get_member_username($value['sender']), $suser)===false && strpos(get_member_username($value['receiver']), $suser)===false )continue; }elseif($sdate){ if(strpos($value['tdate'], $sdate)===false)continue; } $dir=(bool)($value['sender']!=$uid); $result[$key]['id']=$value['id']; $result[$key]['direction']=$dir?'FROM':'TO'; $result[$key]['sender']=$value['sender']; $result[$key]['senduser']=prnuser($value['sender']); $result[$key]['receiver']=$value['receiver']; $result[$key]['recvuser']=prnuser($value['receiver']); $result[$key]['userid']=$dir?$value['sender']:$value['receiver']; $result[$key]['username']=prnuser($result[$key]['userid']); $result[$key]['oamount']=$dir?$value['amount']:-$value['amount']; $result[$key]['amount']=prnpays($result[$key]['oamount']); $result[$key]['tdate']=prndate($value['tdate']); $result[$key]['ostatus']=$value['status']; $result[$key]['type']=$data['TransactionType'][$value['type']]; $result[$key]['status']= "". $data['TransactionStatus'][$value['status']]. '' ; if($value['fees']>0&&($value['type']==1||$value['type']==2||($dir&&($value['type']==0||$value['type']==3)))){ $result[$key]['ofees']=-$value['fees']; }else{ $result[$key]['ofees']=0; } $result[$key]['fees']=prnfees($result[$key]['ofees']); $result[$key]['onets']=$value['sender']>0&&$value['sender']==$uid&&$value['receiver']>0?$value['amount']:$value['amount']-$value['fees']; $result[$key]['nets']=prnpays($result[$key]['onets'], false); $result[$key]['comments']=prntext($value['comments']); $result[$key]['ecomments']=prntext($value['ecomments']); $result[$key]['canview']=($value['type']>=0&&$value['type']<=3); $result[$key]['canrefund']=can_refund($value['id'], $uid); } return $result; } function get_transaction_detail($id, $uid){ global $data; $trans=db_rows( "SELECT * FROM `{$data['DbPrefix']}transactions` WHERE `id`={$id} LIMIT 1" ); $trans=$trans[0]; if($trans){ $dir=(bool)($trans['sender']!=$uid); $result['id']=$trans['id']; $result['direction']=$dir?'FROM':'TO'; $result['sender']=$trans['sender']; $result['receiver']=$trans['receiver']; $result['userid']=$dir?$trans['sender']:$trans['receiver']; $result['username']=prnuser($result['userid']); $result['oamount']=$dir?$trans['amount']:-$trans['amount']; $result['amount']=prnpays($dir?$trans['amount']:-$trans['amount']); $result['tdate']=prndate($trans['tdate']); $result['otype']=$trans['type']; $result['type']=ucfirst($data['TransactionType'][$trans['type']]); $result['ostatus']=$trans['status']; $result['status']= "". ucfirst($data['TransactionStatus'][$trans['status']]). '' ; if($trans['fees']>0&&($trans['type']==1||$trans['type']==2||($dir&&($trans['type']==0||$trans['type']==3)))){ $result['fees']=-$trans['fees']; }else{ $result['fees']=0; } $result['nets']=$trans['sender']>0&&$trans['sender']==$uid&&$trans['receiver']>0?prnpays($trans['amount'], false):prnpays($trans['amount']-$trans['fees'], false); $result['comments']=prntext($trans['comments']); $result['ecomments']=prntext($trans['ecomments']); $result['canrefund']=can_refund($trans['id'], $uid); } return $result; } function get_receiver($id){ global $data; $result=db_rows( "SELECT `receiver`,`fees` FROM `{$data['DbPrefix']}transactions` WHERE `id`={$id} LIMIT 1" ); return $result[0]; } function insert_transaction($sender, $receiver, $related, $amount, $fees, $type, $status, $comments='', $ecomments=''){ global $data; db_query( "INSERT INTO `{$data['DbPrefix']}transactions`". "(`tdate`,`sender`,`receiver`,`related`,`amount`,`fees`,`type`,`status`,". "`comments`,`ecomments`)VALUES". "(NOW(),{$sender},{$receiver},{$related},{$amount},{$fees},{$type},{$status},". "'".addslashes($comments)."','".addslashes($ecomments)."')" ); } function insert_commissions($uid, $amount){ global $data; $i=0; $fees=($amount*$data['ReferralPercent']/100); $sponsor=get_sponsor_id($uid); $recvname=get_member_username($uid); while($sponsor&&$i<$data['ReferralLevels']-1){ insert_transaction( -1, $sponsor, $uid, $fees, 0, 5, 1, "Commission from member {$recvname}" ); $sponsor=get_sponsor_id($sponsor); $i++; } } function transaction($sender, $receiver, $amount, $fees, $type, $status, $comments='', $ecomments=''){ global $data; insert_transaction($sender, $receiver, 0, $amount, $fees, $type, $status, $comments, $ecomments); if($sender>0&&$type==0){ if($data['ReferralPays'])insert_commissions($receiver, $fees); } } function update_transaction_status($uid, $id, $status){ global $data; if($uid>0){ $user=get_member_info($uid); $name="{$user['fname']} {$user['lname']} ({$user['username']})"; }else{ $name='System Administrator (system)'; } $tran=get_transaction_detail($id, $uid); $post['email']=get_member_email($tran['receiver']); $where=''; $comments=''; switch($status){ case 1: if($uid>0)$where=" AND `sender`={$uid}"; $comments="Transaction was confirmed by {$name}"; if($tran['otype']==1||$tran['otype']==3){ if($data['ReferralPays'])insert_commissions($tran['receiver'], $tran['oamount']); } if($tran['otype']==3)send_email('CONFIRM-ESCROW', $post); break; case 2: if(($uid>0)&&($uid==$tran['sender'])){ unset($status); break; } $comments="Transaction was cancelled by {$name}"; if($tran['otype']==3)send_email('CANCEL-ESCROW', $post); break; case 3: $comments="Transaction was refunded by {$name}"; if($tran['otype']==3)send_email('REFUND-ESCROW', $post); break; } db_query( "UPDATE `{$data['DbPrefix']}transactions`". " SET `tdate`=NOW(),`status`={$status},`comments`='{$comments}'". " WHERE `id`={$id}{$where}" ); } ############################################################################### function insert_product($uid, $type, $post){ global $data; db_query( "INSERT INTO `{$data['DbPrefix']}products`(". "`type`,`owner`,`price`,`period`,`setup`,`trial`,`tax`,`shipping`,". "`button`,`name`,`ureturn`,`unotify`,`ucancel`,`comments`". ")VALUES(". "{$type},{$uid},{$post['price']},". ($post['period']?"{$post['period']},":'0,'). ($post['setup']?"{$post['setup']},":'0.00,'). ($post['trial']?"{$post['trial']},":'0.00,'). "{$post['tax']},{$post['shipping']},". "'{$post['button']}','{$post['name']}','{$post['ureturn']}',". "'{$post['unotify']}','{$post['ucancel']}','". addslashes($post['comments'])."')" ); } function update_product($id, $post){ global $data; db_query( "UPDATE `{$data['DbPrefix']}products` SET ". "`price`={$post['price']},". "`period`=".($post['period']?"{$post['period']},":'0,'). "`setup`=".($post['setup']?"{$post['setup']},":'0.00,'). "`trial`=".($post['trial']?"{$post['trial']},":'0.00,'). "`tax`={$post['tax']},`shipping`={$post['shipping']},". "`button`='{$post['button']}',`name`='{$post['name']}',". "`ureturn`='{$post['ureturn']}',`unotify`='{$post['unotify']}',". "`ucancel`='{$post['ucancel']}',`comments`='".addslashes($post['comments'])."'". " WHERE `id`={$id}" ); } function update_sold($id, $quantity){ global $data; db_query( "UPDATE `{$data['DbPrefix']}products` SET `sold`={$quantity}". " WHERE `id`={$id}" ); } function delete_product($id){ global $data; $rows=db_rows( "SELECT `member`". " FROM `{$data['DbPrefix']}subscriptions`". " WHERE `product`={$id}" ); $members=array(); foreach($rows as $key=>$value){ $row=get_member_info($value['member']); $members[$key]['username']=$row['username']; $members[$key]['fullname']="{$row['fname']} {$row['lname']}"; } db_query( "DELETE FROM `{$data['DbPrefix']}subscriptions`". " WHERE `product`={$id}" ); $rows=db_rows( "SELECT `name` FROM `{$data['DbPrefix']}products`". " WHERE `id`={$id}" ); $product=$rows[0]['name']; db_query( "DELETE FROM `{$data['DbPrefix']}products` WHERE `id`={$id}" ); foreach($members as $key=>$value){ $post['username']=$value['username']; $post['fullname']=$value['fullname']; $post['product']=$product; send_email('OWNER-CANCELLED-SUBSCRIPTION', $post); } } function select_products($uid, $type=0, $id=0, $single=false){ global $data; $products=db_rows( "SELECT * FROM `{$data['DbPrefix']}products`". " WHERE `owner`={$uid} AND `type`={$type}". ($id?" AND `id`={$id}":'').($single?" LIMIT 1":'') ); $result=array(); foreach($products as $key=>$value){ foreach($value as $name=>$v)$result[$key][$name]=$v; } return $result; } function select_product_details($id, $uid){ global $data; $result=db_rows( "SELECT * FROM `{$data['DbPrefix']}products`". " WHERE `id`={$id} AND `owner`={$uid} LIMIT 1" ); return $result[0]; } ############################################################################### function select_button($id){ global $data; $result=db_rows( "SELECT `button` FROM `{$data['DbPrefix']}products` WHERE `id`={$id} LIMIT 1" ); return $result[0]['button']; } function select_type($id){ global $data; $result=db_rows( "SELECT `type` FROM `{$data['DbPrefix']}products` WHERE `id`={$id} LIMIT 1" ); return $result[0]['type']; } function insert_subscription($owner, $member, $product){ global $data; db_query( "INSERT INTO `{$data['DbPrefix']}subscriptions`(". "`owner`,`member`,`product`,`sdate`,`pdate`". ")VALUES(". "{$owner},{$member},{$product},NOW(),NOW()". ")" ); db_query( "UPDATE `{$data['DbPrefix']}products` SET". " `sold`=`sold`+1". " WHERE `id`={$product}" ); } function select_subscriptions($uid){ global $data; $subscr=db_rows( "SELECT s.id,s.owner,s.pdate,p.name,p.price,p.period". " FROM `{$data['DbPrefix']}subscriptions` AS s,`{$data['DbPrefix']}products` AS p". " WHERE s.member={$uid} AND p.id=s.product" ); $result=array(); foreach($subscr as $key=>$value){ $result[$key]['id']=$value['id']; $result[$key]['owner']=get_member_username($value['owner']); $result[$key]['price']=$value['price']; $result[$key]['period']=$value['period']; $result[$key]['name']=$value['name']; $result[$key]['pdate']=$value['pdate']; } return $result; } function cancel_subscription($id){ global $data; $rows=db_rows( "SELECT `owner`,`member`,`product`". " FROM `{$data['DbPrefix']}subscriptions`". " WHERE `id`={$id}" ); $owner=$rows[0]['owner']; $member=$rows[0]['member']; $product=$rows[0]['product']; $rows=db_rows( "SELECT `name` FROM `{$data['DbPrefix']}products`". " WHERE `id`={$product}" ); $product=$rows[0]['name']; db_query( "UPDATE `{$data['DbPrefix']}products` SET". " `sold`=`sold`-1". " WHERE `id`={$product}" ); db_query( "DELETE FROM `{$data['DbPrefix']}subscriptions` WHERE `id`={$id}" ); $owner=get_member_info($owner); $post['product']=$product; $post['username']=$owner['username']; $post['fullname']="{$owner['fname']} {$owner['lname']}"; $post['email']=$owner['email']; $member=get_member_info($member); $post['comments']= "Member username: {$member['username']}\n". "Member e-mail address: {$member['email']}\n" ; send_email('MEMBER-CANCELLED-SUBSCRIPTION', $post); } function get_referrals_count($uid){ global $data; $result=db_rows( "SELECT COUNT(`id`) as total FROM `{$data['DbPrefix']}members`". " WHERE `sponsor`={$uid}" ); return $result[0]['total']; } function optimize($uid){ global $data; $fp=@fopen("{$data['Path']}/{$uid}.htm", 'w+'); @fwrite($fp, ''); @fclose($fp); } function calculate_downline($uid, $clevel, $result=null){ global $data; $members=mysql_query("SELECT * FROM `{$data['DbPrefix']}members` WHERE `sponsor`={$uid}"); if($members){ while($row=mysql_fetch_array($members, MYSQL_ASSOC)){ $nlevel=$clevel+1; if($nlevel>$data['ReferralLevels'])return $result; $query=mysql_query( "SELECT SUM(`amount`) AS `earned`". " FROM `{$data['DbPrefix']}transactions`". " WHERE `receiver`={$uid} AND `sender`=-1 AND `related`={$row['id']}" ); if($query){ $arow=mysql_fetch_array($query, MYSQL_ASSOC); $result+=$arow['earned']; } $result=calculate_downline($row['id'], $nlevel, $result); } } return $result; } function get_referrals($uid, $start=0, $count=0){ global $data; $limit=($start?($count?" LIMIT {$start},{$count}":" LIMIT {$start}"): ($count?" LIMIT {$count}":'')); $members=db_rows( "SELECT * FROM `{$data['DbPrefix']}members`". " WHERE `sponsor`={$uid} ORDER BY `cdate` DESC{$limit}" ); $result=array(); foreach($members as $key=>$value){ $result[$key]['id']=$value['id']; $result[$key]['cdate']=prndate($value['cdate']); $result[$key]['username']=prnuser($value['id']); $result[$key]['fullname']="{$value['fname']} {$value['lname']}"; $result[$key]['email']=prntext($value['email']); $result[$key]['fname']=prntext($value['fname']); $result[$key]['lname']=prntext($value['lname']); $result[$key]['referrals']=get_referrals_count($value['id']); $result[$key]['payments']=get_transactions_count( $value['id'], 'both', '`type`=0 AND `status`=1' ); $result[$key]['earned']=prnpays(calculate_downline($value['id'], 1)); } return $result; } ############################################################################### function get_mail_templates(){ global $data; return db_rows("SELECT * FROM `{$data['DbPrefix']}emails`"); } function select_mail_template($key){ global $data; $result=db_rows( "SELECT * FROM `{$data['DbPrefix']}emails`". " WHERE `key`='{$key}' LIMIT 1" ); return $result[0]; } function update_mail_template($key, $name, $value){ global $data; db_query( "UPDATE `{$data['DbPrefix']}emails`". " SET `name`='".addslashes($name)."',`value`='".addslashes($value)."'". " WHERE `key`='{$key}'" ); } ############################################################################### function get_categories_tree($categoryid) { global $data; if ($categoryid == 0) return "TOP CATEGORIES"; $parent = db_rows( "SELECT `id`, `parentid`, `name` FROM `{$data['DbPrefix']}shop_categories` ". "WHERE id={$categoryid}" ); $result = "{$parent[0]['name']}"; while ($parent[0]['parentid'] != 0 && $parent) { $parent = db_rows( "SELECT `id`, `parentid`, `name` FROM `{$data['DbPrefix']}shop_categories` ". "WHERE `id`={$parent[0]['parentid']}" ); $result = "{$parent[0]['name']}  >> " . $result; } return "TOP CATEGORIES  >> $result"; } function get_first_root_category_id() { global $data; $categories=db_rows( "SELECT id FROM `{$data['DbPrefix']}shop_categories` ". "WHERE parentid=0 ". "ORDER BY `id` ASC ". "LIMIT 1" ); return $categories[0]['id']; } function get_category_parent($categoryid) { global $data; $categories=db_rows( "SELECT parentid FROM `{$data['DbPrefix']}shop_categories` ". "WHERE `id`={$categoryid}" ); return $categories[0]['parentid']; } function get_shop_categories_count($categoryid) { global $data; $result=db_rows( "SELECT COUNT(`id`) AS `count` ". " FROM `{$data['DbPrefix']}shop_categories`". " WHERE `parentid`='{$categoryid}' ". " LIMIT 1" ); return $result[0]['count']; } function get_shop_categories_list($categoryid, $start=0, $count=0) { global $data; $limit=($start?($count?" LIMIT {$start},{$count}":" LIMIT {$start}"): ($count?" LIMIT {$count}":'')); $categories=db_rows( "SELECT * FROM `{$data['DbPrefix']}shop_categories`". " WHERE `parentid`='{$categoryid}' ". " ORDER BY `id` ASC{$limit}" ); $result=array(); foreach($categories as $key=>$value){ $result[$key]=$value; $subcat=db_rows( "SELECT COUNT(`id`) AS `count`". " FROM `{$data['DbPrefix']}shop_categories`". " WHERE `parentid`={$result[$key]['id']}". " LIMIT 1" ); $result[$key]['subcategories']=$subcat[0]['count']; $items=db_rows( "SELECT COUNT(`id`) AS `count`". " FROM `{$data['DbPrefix']}shop_items`". " WHERE `categoryid`={$result[$key]['id']}". " LIMIT 1" ); $result[$key]['items']=$items[0]['count']; $result[$key]['candelete']=($items[0]['count']==0 && $subcat[0]['count']==0); } return $result; } function get_shop_categories_count_where_pred($where_pred) { global $data; $result=db_rows( "SELECT COUNT(`id`) AS `count` ". " FROM `{$data['DbPrefix']}shop_categories`". " WHERE {$where_pred} ". " LIMIT 1" ); return $result[0]['count']; } function get_shop_categories_list_where_pred($where_pred) { global $data; $limit=($start?($count?" LIMIT {$start},{$count}":" LIMIT {$start}"): ($count?" LIMIT {$count}":'')); $categories=db_rows( "SELECT * FROM `{$data['DbPrefix']}shop_categories`". " WHERE {$where_pred} ". " ORDER BY `id` ASC{$limit}" ); $result=array(); foreach($categories as $key=>$value){ $result[$key]=$value; $subcat=db_rows( "SELECT COUNT(`id`) AS `count`". " FROM `{$data['DbPrefix']}shop_categories`". " WHERE `parentid`={$result[$key]['id']}". " LIMIT 1" ); $result[$key]['subcategories']=$subcat[0]['count']; $items=db_rows( "SELECT COUNT(`id`) AS `count`". " FROM `{$data['DbPrefix']}shop_items`". " WHERE `categoryid`={$result[$key]['id']}". " LIMIT 1" ); $result[$key]['items']=$items[0]['count']; $result[$key]['candelete']=($items[0]['count']==0 && $subcat[0]['count']==0); } return $result; } function insert_category($parentid, $post){ global $data; $description = $post['categorydescription']; if (empty($description)) $description = "Top ".addslashes($post['categoryname']); db_query( "INSERT INTO `{$data['DbPrefix']}shop_categories`(". "`parentid`,`name`,`description`". ")VALUES(". "{$parentid},". "'".addslashes($post['categoryname'])."','".addslashes($description)."')" ); } function update_category($categoryid, $parentid, $post){ global $data; db_query( "UPDATE `{$data['DbPrefix']}shop_categories` ". "SET `parentid` = {$parentid}, ". "`name`='".addslashes($post['categoryname'])."', ". "`description`='".addslashes($post['categorydescription'])."' ". "WHERE `id`={$categoryid}" ); } function delete_category($categoryid){ global $data; db_query( "DELETE FROM `{$data['DbPrefix']}shop_categories` ". "WHERE `id`={$categoryid}" ); } function get_category($categoryid) { global $data; $categories=db_rows( "SELECT * FROM `{$data['DbPrefix']}shop_categories` ". "WHERE `id`={$categoryid}". " LIMIT 1" ); return $categories[0]; } ############################################################################### function get_shop_items_count($categoryid) { global $data; $result=db_rows( "SELECT COUNT(`id`) AS `count` ". " FROM `{$data['DbPrefix']}shop_items`". " WHERE `categoryid`='{$categoryid}' ". " LIMIT 1" ); return $result[0]['count']; } function get_shop_items_list($categoryid, $start=0, $count=0) { global $data; $limit=($start?($count?" LIMIT {$start},{$count}":" LIMIT {$start}"): ($count?" LIMIT {$count}":'')); $categories=db_rows( "SELECT * FROM `{$data['DbPrefix']}shop_items`". " WHERE `categoryid`='{$categoryid}' ". " ORDER BY `id` ASC{$limit}" ); $result=array(); foreach($categories as $key=>$value){ $result[$key]=$value; $result[$key]['candelete']=true; } return $result; } function get_shop_items_count_where_pred($where_pred) { global $data; $result=db_rows( "SELECT COUNT(`id`) AS `count` ". " FROM `{$data['DbPrefix']}shop_items`". " WHERE {$where_pred} ". " LIMIT 1" ); return $result[0]['count']; } function get_shop_items_list_where_pred($where_pred) { global $data; $limit=($start?($count?" LIMIT {$start},{$count}":" LIMIT {$start}"): ($count?" LIMIT {$count}":'')); $categories=db_rows( "SELECT * FROM `{$data['DbPrefix']}shop_items`". " WHERE {$where_pred} ". " ORDER BY `id` ASC{$limit}" ); $result=array(); foreach($categories as $key=>$value){ $result[$key]=$value; $result[$key]['candelete']=true; } return $result; } function get_shop_item($itemid) { global $data; $items=db_rows( "SELECT * FROM `{$data['DbPrefix']}shop_items` ". "WHERE `id`={$itemid}". " LIMIT 1" ); return $items[0]; } function insert_shop_item($categoryid, $name, $url, $description) { global $data; if (empty($description)) $description = "Top ".addslashes($name); db_query( "INSERT INTO `{$data['DbPrefix']}shop_items`(". "`categoryid`,`name`, `url`, `description`". ")VALUES(". "{$categoryid},". "'".addslashes($name)."','".addslashes($url)."','".addslashes($description)."')" ); } function update_shop_item($itemid, $name, $url, $description) { global $data; db_query( "UPDATE `{$data['DbPrefix']}shop_items` ". "SET `name`='{$name}', ". "`url`='{$url}', ". "`description`='{$description}' ". "WHERE `id`={$itemid}" ); } function delete_shop_item($itemid){ global $data; db_query( "DELETE FROM `{$data['DbPrefix']}shop_items` ". "WHERE `id`={$itemid}" ); } ############################################################################### function insert_shopcart_item($productid, $quantity){ if ($quantity <= 0) return false; $newid = count($_SESSION['ptobuy']); $_SESSION['ptobuy'][$newid] = array(); $_SESSION['ptobuy'][$newid]['product'] = $productid; $_SESSION['ptobuy'][$newid]['quantity'] = $quantity; } function get_shopcart_items_list($id=-1) { global $data; $result = array(); for ($i = 0; $i$value) $price += $value['quantity'] * ($value['price'] + $value['tax']) + $value['shipping']; return $price; } function get_one_item_price($id){ $r = get_shopcart_items_list($id); $price = $value['quantity'] * ($value['price'] + $value['tax']) + $value['shipping']; return $price; } function update_shopcart_item_quantity($id, $quantity){ if ($quantity <= 0) return; $_SESSION['ptobuy'][$id]['quantity'] = ceil($quantity); } function set_shopitems_paid(){ $_SESSION['ptobuy'] = array(); } ############################################################################### function encrypt($data, $domain=''){ $st=strtolower(trim($domain)); $sc=str_replace('.', '', $st); $id=substr_count($st, '.'); if(strlen($sc)>0){ $id++; $ac=array(); for($i=0; $i>4)&15; $ac[]=ord(substr($sc, $i, 1))&15; } } else $ac=array(0); $si=''; $sa=explode("\n", $data); foreach($sa as $val){ $st=trim($val); if($st<>'')$si.=(($si<>'')?"\r":'').$st; } $so=''; $tc=0; $j=0; for($i=0; $i=0; $l--){ $n=(($it>>($l*4))&15)^$ac[$j]; if($n==0){ $j++; if($j>=count($ac))$j=0; } $so.=strtoupper(dechex($n)); } } $so=strtoupper(dechex($id).str_pad(dechex($tc), 8, '0', STR_PAD_LEFT)).$so; return ""; } ############################################################################### if(isset($_GET['sid']))$post['sid']=$_GET['sid']; if(isset($_GET['bid']))$post['bid']=$_GET['bid']; if(isset($_GET['id']))$post['gid']=$_GET['id']; if(isset($_GET['bp']))$post['bp']=$_GET['bp']; if(isset($_GET['cid']))$post['cid']=$_GET['cid']; if(isset($_GET['updateid']))$post['updateid']=$_GET['updateid']; if(isset($_GET['itemid']))$post['itemid']=$_GET['itemid']; if(isset($_GET['type']))$post['type']=$_GET['type']; if(isset($_GET['status']))$post['status']=$_GET['status']; if(isset($_GET['page']))$post['StartPage']=$_GET['page']; if(isset($_GET['action']))$post['action']=$_GET['action']; if(isset($_GET['member']))$post['member']=$_GET['member']; if(isset($_GET['product']))$post['product']=$_GET['product']; if(isset($_GET['keyword']))$post['keyword']=$_GET['keyword']; ############################################################################### if(isset($_GET['rid']))$post['sponsor']=$_GET['rid']; elseif(isset($_COOKIE['rid']))$post['sponsor']=$_COOKIE['rid']; reset($_GET); ############################################################################### if(!session_id())session_start(); $data['sid']=session_id(); ############################################################################### if($_POST)$post=get_post(); if(!$post['StartPage'])$post['StartPage']=0; ############################################################################### db_connect(); ############################################################################### if(!$uid)$uid=$_SESSION['uid']; if($uid){ $balance=select_balance($uid); $post['Balance']=$balance; $post['Address']=$data['Addr']; $post['MailAddr']=get_member_email($uid); $post['Username']=get_member_username($uid); set_last_access_date($uid); } ############################################################################### if($data['ReferralPays']){ if(get_member_id($post['sponsor'], '', "`active`=1")){ $_SESSION['sponsor']=$post['sponsor']; setcookie('rid', $post['sponsor']); }elseif(!$_POST['sponsor'])unset($post['sponsor']); }unset($_POST['sponsor']); ############################################################################### ?>