Script written by Stephen Yabziz | > Date started: 14th February 2004 | +-------------------------------------------------------------------------- */ define("IN_REG",1); include "includes/inc.php"; $ok=0; if(isset($input[reg])) { if($input[username]==''||$input[email]==''||$input[password]=='') { $output=$LANG[RegErr2]; } elseif($input[password]!=$input[password2]) { $input[password2]=''; $output=$LANG[RegErr3]; } elseif(!$user->checkAvailable(mysql_escape_string($input[username]),mysql_escape_string($input[email]))) { $output=str_replace('{username}',$input[username],str_replace('{email}',$input[email],$LANG[RegErr])); } elseif($input[plan_id]=='') { $output=$LANG[NoPlanSelected]; } else { $info=split('-',$input[plan_id]); $group_id=intval($info[0]); $plan_id=intval($info[1]); $db->setQuery("select * from groups where id='$group_id'"); $db->query(); if($db->getNumRows()==0) { die(""); } $row=$db->loadRow(); $periods=split(',',$row[subscr_period]); $fees=split(',',$row[subscr_fee]); $gid=intval($row[id]); /** * free plan */ if(!$periods[$plan_id]||!$fees[$plan_id]) { $is_free=1; $gid=intval($row[id]); $expire_date=time();//time()+12*30*24*60*60; } /** * paid plan * 1:the user is not actvated, * 2.don't need to actvate the account */ else { $is_free=0; /* * assign a free package */ $db->setQuery("select * from groups where subscr_fee=''"); $db->query(); $row=$db->loadRow(); $gid=intval($row[id]); //$user->setting[validate]=0; } $ok=1; $nowtime=time(); if($user->setting[validate]==1) { $template->set_filenames(array( 'email' => 'emails/activate_account.html') ); $db->setQuery("insert into users (user,pass,email,gid,regdate,expire_date,status) values('".mysql_escape_string($input[username])."','".mysql_escape_string($input[password])."','".mysql_escape_string($input[email])."','$gid','$nowtime','$expire_date',0)"); $db->query(); $sess=md5( uniqid(microtime()) ); $uid=$db->insertid(); $db->setQuery("insert into tmpuser (id,sess,type) values('$uid','$sess','0')"); $db->query(); } else { $template->set_filenames(array( 'email' => 'emails/welcome_email.html') ); $db->setQuery("insert into users (user,pass,email,gid,regdate,expire_date,status) values('".mysql_escape_string($input[username])."','".mysql_escape_string($input[password])."','".mysql_escape_string($input[email])."','$gid','$nowtime','$expire_date',1)"); $db->query(); $uid=$db->insertid(); } $status=$user->login($db->getEscaped($input[username]),$db->getEscaped($input[password])); $template->assign_vars(array( 'SITENAME'=>$user->setting[sitename], 'USERNAME'=>$input[username], 'PASSWORD'=>$input[password], 'ACTIVATE_URL'=>"$baseWeb/validate.php?sess=$sess", 'EMAIL_SIG'=>$user->setting[emailsign], )); $template->email_pparse('email',$user->setting[adminemail],$input[email]); //do the payment! if($is_free==0&&$input[gateway]&&$input[plan_id]) { if($input[gateway]=='PP') header('location:IPN/pp_gateway.php?plan_id='.$input[plan_id].'&uid='.$uid); if($input[gateway]=='SP') header('location:IPN/sp_gateway.php?plan_id='.$input[plan_id].'&uid='.$uid); if($input[gateway]=='MB') header('location:IPN/mb_gateway.php?plan_id='.$input[plan_id].'&uid='.$uid); if($input[gateway]=='EG') header('location:IPN/eg_gateway.php?plan_id='.$input[plan_id].'&uid='.$uid); } } } $template->set_filenames(array( 'body' => 'register.html') ); require_once("header.php"); if($ok==0) { $template->assign_block_vars('beforeRegsiter', array()); $units=array('D'=>'Days','M'=>'Months','Y'=>'Years'); $db->setQuery("select * from gateway"); $db->query(); $rows=$db->loadRowList(); foreach($rows as $row) { if($row[Enabled]) $template->assign_block_vars('beforeRegsiter.'.$row[Provider],array()); } $db->setQuery("select * from groups"); $db->query(); $rows=$db->loadRowList(); foreach($rows as $row) { $i++; $row['class']=$i%2==0?'tdrow1':'tdrow2'; if($row[subscr_id]) $row[amount]=''; if($row[subscr_id]) $row[txn_id]=$row[subscr_id]; $template->assign_block_vars('beforeRegsiter.plan',$row); $plans=split(',',$row[subscr_period]); $fees=split(',',$row[subscr_fee]); foreach($plans as $k=>$plan) { $details[value]=$row[id].'-'.$k; if($fees[$k]) $details[descr]='$'.$fees[$k].'/'.$plan.' '.$units[$row[subscr_unit]]; else $details[descr]=$LANG['Free']; $template->assign_block_vars('beforeRegsiter.plan.details',$details); } } } else $template->assign_block_vars('confirmPage', array()); $template->assign_vars(array( 'user'=>$input[username], 'email'=>$input[email], 'password'=>$input[password], 'password2'=>$input[password2], 'L_RegOk'=>str_replace('{email}',$input[email],$LANG[RegOk]), 'site_output'=>$output, )); $template->pparse('body'); include "footer.php"; ?>