/** * Lists all models. */ public function actionIndex($tempEmail='',$tempPass='') { $tab=''; $model=new StudentReg('reguser'); if(isset($_POST['StudentReg'])) { if(is_null($_POST['StudentReg']['firstName'])) $this->redirect('courses'); if(isset($_POST['educformOff']) && $_POST['educformOff'] == '1') $_POST['StudentReg']['educform']='Онлайн/Офлайн'; else $_POST['StudentReg']['educform']='Онлайн'; $model->attributes=$_POST['StudentReg']; $getToken=rand(0, 99999); $getTime=date("Y-m-d H:i:s"); $model->token=sha1($getToken.$getTime); if($model->validate()) { if(!empty($_POST['StudentReg']['facebook'])) { $fURL='https://www.facebook.com/'.$_POST['StudentReg']['facebook']; if(StudentReg::getCorrectURl($fURL)) $model->facebook = $fURL; else { $model->addError('facebook','Ви ввели не коректну сторінку'); $tab='checked'; } } if(!empty($_POST['StudentReg']['googleplus'])) { $gURL='https://plus.google.com/'.$_POST['StudentReg']['googleplus']; if(StudentReg::getCorrectURl($gURL)) $model->googleplus = $gURL; else { $model->addError('googleplus','Ви ввели не коректну сторінку'); $tab='checked'; } } if(!empty($_POST['StudentReg']['linkedin'])) { $lURL='https://www.linkedin.com/'.$_POST['StudentReg']['linkedin']; if(StudentReg::getCorrectURl($lURL)) $model->linkedin = $lURL; else { $model->addError('linkedin','Ви ввели не коректну сторінку'); $tab='checked'; } } if(!empty($_POST['StudentReg']['vkontakte'])) { $vURL='http://vk.com/'.$_POST['StudentReg']['vkontakte']; if(StudentReg::getCorrectURl($vURL)) $model->vkontakte = $vURL; else { $model->addError('vkontakte','Ви ввели не коректну сторінку'); $tab='checked'; } } if(!empty($_POST['StudentReg']['twitter'])) { $tURL='https://twitter.com/'.$_POST['StudentReg']['twitter']; if(StudentReg::getCorrectURl($tURL)) $model->twitter = $tURL; else { $model->addError('twitter','Ви ввели не коректну сторінку'); $tab='checked'; } } if($_FILES["upload"]["size"] > 1024*1024*5) { Yii::app()->user->setFlash('avatarmessage',Yii::t('error','0302')); }elseif (is_uploaded_file($_FILES["upload"]["tmp_name"])) { $ext = substr(strrchr( $_FILES["upload"]["name"],'.'), 1); $_FILES["upload"]["name"]=uniqid().'.'.$ext; copy($_FILES['upload']['tmp_name'], Yii::getpathOfAlias('webroot')."/images/avatars/".$_FILES['upload']['name']); $model->avatar=$_FILES["upload"]["name"]; } if ($model->hasErrors()) { $this->render("studentreg", array('model'=>$model,'tab'=>$tab)); } else{ $model->save(); $subject=Yii::t('activeemail','0298'); $headers="Content-type: text/plain; charset=utf-8 \r\n" . "From: IntITA"; $text=Yii::t('activeemail','0299'). " http://intita.itatests.com/index.php?r=site/AccActivation/view&token=".$model->token."&email=".$model->email; mail($model->email,$subject,$text,$headers); $this->render('/site/activationinfo',array( 'model'=>$model, )); } } else { $this->render("studentreg", array('model'=>$model)); } }else { $model->addError('empty', 'Дані не введені'); $this->render("studentreg", array('model'=>$model, 'tempEmail'=>$tempEmail, 'tempPass'=>$tempPass)); } }
public function actionSocialLogin() { $model = new StudentReg(); $s = file_get_contents('http://ulogin.ru/token.php?token=' .$_POST['token'] . '&host=' . $_SERVER['HTTP_HOST']); $user = json_decode($s, true); $model->email=$user['email']; if($model->socialLogin()) $this->redirect(Yii::app()->request->baseUrl.'/site'); else { if(isset($user['first_name'])) $model->firstName=$user['first_name']; if(isset($user['last_name'])) $model->secondName=$user['last_name']; if(isset($user['nickname'])) $model->nickname=$user['nickname']; if(isset($user['bdate'])) $model->birthday=$user['bdate']; if(isset($user['phone'])) $model->phone=$user['phone']; if(isset($user['photo_big'])) { $arrContextOptions=array( "ssl"=>array( "verify_peer"=>false, "verify_peer_name"=>false, ), ); $filesName=uniqid().'.jpg'; file_put_contents(Yii::getpathOfAlias('webroot')."/avatars/".$filesName, file_get_contents($user['photo_big'], false, stream_context_create($arrContextOptions))); $model->avatar="/avatars/".$filesName; } if(isset($user['city'])) $model->address=$user['city']; if(isset($user['network'])){ switch ($user['network']){ case 'facebook': $model->facebook=$user['profile']; break; case 'googleplus': $model->googleplus=$user['profile']; break; case 'linkedin': $model->linkedin=$user['profile']; break; case 'vkontakte': $model->vkontakte=$user['profile']; break; case 'twitter': $model->twitter=$user['profile']; break; default: break; } } $model->status = 1; if($model->validate()) { $model->save(); $model = new StudentReg(); $model->email=$user['email']; if($model->socialLogin()) $this->redirect(Yii::app()->request->baseUrl.'/site'); } } }