Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class SiteController extends Controller {
- /**
- * Declares class-based actions.
- */
- public function actions() {
- return array(
- // captcha action renders the CAPTCHA image displayed on the contact page
- 'captcha' => array('class' => 'CCaptchaAction', 'backColor' => 0xFFFFFF ),
- // page action renders "static" pages stored under 'protected/views/site/pages'
- // They can be accessed via: index.php?r=site/page&view=FileName
- 'page' => array('class' => 'CViewAction' ) );
- }
- public function filters() {
- return array('accessControl', // perform access control for CRUD operations
- 'ajaxOnly + RegisterAjax + ajaxnews + OrderDo + faktura+EditFaktura+MyCommitmentAjax', );
- }
- public function accessRules()
- {
- return array(
- array(
- 'allow',
- 'actions' => array('auth','exchange','testlayout','forgetpassword','resetpassword','login','registerajax','mycommitmentajax','activate','smscheck','thanks', 'ordersum'),
- 'users' => array('?'),
- ),
- array('allow',
- 'actions'=>array('OrderDo','Settings','order','kupon','kuponal','bundle','test', 'messages', 'messagedetail', 'tasks', 'task', 'endTask', 'addTask', 'logout',
- 'Balance','Profile','succesorder','myorder','faktura','newInvoice','addBeyenname','errorPayment','pay','pymnt','successPayment','ulinks','complate','EditFaktura',
- 'Orderdetails', 'Orderedit','Orderdelete','Deleteorder','checkBalance','payShipping','paymentproduct','callbackpayment','callbackpaymentmore','basketaccept',
- 'paymentproductpaytr','callbackpaymentpaytrsuccess','callbackpaymentpaytrfailure','CancelCourierOrder','EmailConfirm','EmailActivate','TestMandril',
- 'Basketdetails','Basketedit','BasketDelete','AddBasket',
- 'MultiPayShipping','ShippingWithCard','MultiPayShipping1',
- 'MyCommitment','AddCommitment','DeleteCommitment','EditCommitment'
- ),
- 'users'=>array('@'),
- ),
- array('allow',
- 'actions' => array('post', 'orderTracking','fromUsa','mailgun','login','auth','d','dd','index','sms','CalcPrice','size','recomended','sites','news','contact','ordernow','addLink','addLinks','addBasketLink','deleteNotPaidOrders',
- 'error','error2','ajaxnews','captcha','faq','GetParentCategories','GetChildCategories','GetLinks','Getshopsite',
- 'gettourslider','orderfromapp','Ajaxlogin','RegisterAjaxApp','Getlinkfromuser','Smsactive','getmenu','getprofile',
- 'Apptoken','Notificationlist','Howitworks','register','mailgrabber','agreement','ordersum','paytrinfo','getpostivr',
- 'postturkey','getturkeyorders','updateturkeyorder','updateorderturkey','userslocation','etgb','etgb2','getorderswithoutinvoice','orderfrommarkam','monthlyinvoices'/*'multiplesms'*/),
- 'users' => array('*')
- ),
- array('deny',
- 'users' => array('*'),
- ),
- );
- }
- public function actionFromUsa(){
- /*error_reporting(E_ALL);
- ini_set('display_errors', 1);*/
- $sql = "SELECT * FROM cms_brcd_orders WHERE stat = '0' GROUP BY users_id ";
- $orders = Yii::app()->db->createCommand($sql)->queryAll();
- //var_dump($orders); die;
- foreach($orders as $item){
- $u_id = $item['users_id'] + 100000;
- $message_text = "Hormetli ".ucfirst($item['name'])." ".ucfirst($item['surname']).", Sifarish etdiyiniz mehsul Bakida ofisimize chatmishdir. Kuryer sifarishi uchun: mover.az/d?u=".$u_id;
- Sms::Send($item['mobile'],$message_text);
- $order = Orders::model()->findByPk($item['order_id']);
- $message = Yii::app()->mailgun->newMessage();
- $message->setFrom('info@mover.az', 'Mover MMC');
- $message->addTo($item['email'], ucfirst($item['name'])." ".ucfirst($item['surname']));
- $message->setSubject('BAĞLAMANIZ GƏLDİ');
- $message->renderHtml($item['country_id'].'_5', array('order' => $order));
- $message->send();
- $sql = "UPDATE cms_brcd_orders SET stat = '1' WHERE id = '".$item['id']."' ";
- $orders = Yii::app()->db->createCommand($sql)->queryAll();
- }
- }
- public function actionMailgun(){
- $message = Yii::app()->mailgun->newMessage();
- $message->setFrom('info@mover.az', 'Mover MMC');
- $message->addTo('sahib777.5@mail.ru', 'Sahib Huseynov');
- $message->setSubject('Mailgun API library test');
- //$message->renderText('myView', array('myParam' => 'Awesome!'));
- $message->setText('salam');
- if($message->send()) echo 1;
- echo $message->send();
- }
- public function actionDd(){
- $this->pageTitle = 'Mover.az - Kuryer sifarişi';
- if(isset($_GET['u'])){
- if(intval($_GET["u"])){
- $user_id = (int) $_GET['u'] - 100000;
- }else{
- $user_ids = $_GET["u"];
- $sql="SELECT * FROM `cms_users` WHERE email ='$user_ids'";
- $cc = Yii::app()->db->createCommand($sql)->queryAll();
- $user_id = $cc[0]["id"];
- }
- $User = Users::model()->findByPk($user_id);
- $model = new DeliveryAddress;
- $this->render('delivery_address', ['user' => $User, 'model' => $model]);
- }
- if(isset($_POST['DeliveryAddress'])){
- $address = $_POST['DeliveryAddress']['address'];
- $region = $_POST['DeliveryAddress']['region'];
- $urgent = $_POST['DeliveryAddress']['urgent'];
- $naddress = $region.": ".$address;
- $users_id = $_POST['DeliveryAddress']['users_id'];
- $DeliveryAddress = new DeliveryAddress();
- $DeliveryAddress->address = $naddress;
- $DeliveryAddress->urgent = $urgent;
- $DeliveryAddress->users_id = $users_id;
- $DeliveryAddress->date = date('Y-m-d H:i:s');
- $DeliveryAddress->date = date('Y-m-d H:i:s');
- $DeliveryAddress->save(false);
- echo CJSON::encode(['success' => true]);
- Yii::app()->end();
- }
- }
- public function actionulinks(){
- if(empty(Yii::app()->user->id)){
- $this->redirect(Yii::app()->homeUrl);
- }else{
- $this->render('ulinksforupdate', ['userid' => Yii::app()->user->id]);
- }
- }
- public function actionD(){
- $this->pageTitle = 'Mover.az - Kuryer sifarişi';
- if(isset($_GET['u'])){
- if(intval($_GET["u"])){
- $user_id = (int) $_GET['u'] - 100000;
- }else{
- $user_ids = $_GET["u"];
- $sql="SELECT * FROM `cms_users` WHERE email ='$user_ids'";
- $cc = Yii::app()->db->createCommand($sql)->queryAll();
- $user_id = $cc[0]["id"];
- }
- $User = Users::model()->findByPk($user_id);
- $model = new DeliveryAddress;
- $this->render('delivery_address2', ['user' => $User, 'model' => $model]);
- }
- if(isset($_POST['DeliveryAddress']))
- {
- $address = $_POST['DeliveryAddress']['address'];
- $region = intval($_POST['DeliveryAddress']['region']);
- $orders = $_POST['DeliveryAddress']['orders'];
- $urgent = $_POST['DeliveryAddress']['urgent'];
- $courier_amount;
- if($urgent == 1)
- {
- $courier_amount = 3;
- }
- $sql="SELECT * FROM cms_districts WHERE id='$region'";
- $district_price = Yii::app()->db->createCommand($sql)->queryRow();
- $regionPrice = $district_price["price"];
- if(!$district_price){
- return $this->redirect('/');
- }
- $tot = 0;
- $sum = 0;
- $order_all= explode(',',$_POST['DeliveryAddress']['orders']);
- array_pop($order_all);
- $criteria = new CDbCriteria();
- $criteria ->condition = 'users_id=:id';
- $criteria -> params = array(":id" => Yii::app()->user->id);
- $criteria->addInCondition('id', $order_all);
- $result = Orders::model()->findAll($criteria);
- if($result)
- {
- foreach( $result as $order)
- {
- $MehsulCodes = MehsulCodes::model()->findByPk((int) $order->type);
- $tarif = ($order->date1 >= '2018-02-15' || $order->date1 == '0000-00-00' ||$order->date1 < '2013-01-01');
- if($order->paid == 0)
- {
- $tot += Orders::calculateShipping($MehsulCodes->type, $order->width, $order->height, $order->length,$order->weight, $tarif, $order->country_id);
- }
- }
- $tot =$tot*1.7;
- $user_info = Users::model()->findByPk(Yii::app()->user->id);
- if($user_info->balance<0)
- {
- $sum = $courier_amount+$tot-$user_info->balance+$regionPrice;
- }
- else
- {
- $sum = $courier_amount+$tot+$regionPrice;
- }
- $totalprice = $_POST['DeliveryAddress']['totalprice'];
- $naddress = $address;
- $users_id = $_POST['DeliveryAddress']['users_id'];
- $DeliveryAddress = new DeliveryAddressNew();
- $DeliveryAddress->address = $naddress;
- $DeliveryAddress->urgent = $urgent;
- $DeliveryAddress->totalprice = number_format($sum,2);
- $DeliveryAddress->district_id = $region;
- $DeliveryAddress->users_id = $users_id;
- $DeliveryAddress->date = date('Y-m-d H:i:s');
- $DeliveryAddress->date = date('Y-m-d H:i:s');
- $DeliveryAddress->save(false);
- $lastid = $DeliveryAddress->id;
- $command = Yii::app()->db->createCommand();
- foreach ($order_all as $key => $value) {
- $command->insert('cms_delivery_order', array(
- 'order_id'=>$value,
- 'delivery_id'=>$lastid,
- ));
- }
- echo CJSON::encode(['success' => true]);
- Yii::app()->end();
- }
- }
- }
- public function actionExchange(){
- $url = "https://www.yapikredi.com.az/az/mezenne";
- $file = file_get_contents($url);
- preg_match_all('#<table[^>]+>(.+?)</table>#ims', $file, $table);
- preg_match_all('#<td>(.+?)</td>#ims', $table[1][0], $td);
- $data = [];
- $data['usd_buy'] = $td[1][2];
- $data['usd_sell'] = $td[1][3];
- $data['eur_buy'] = $td[1][8];
- $data['eur_sell'] = $td[1][9];
- $data['rub_buy'] = $td[1][14];
- $data['rub_sell'] = $td[1][15];
- $this->otherBanks($data);
- }
- public function otherBanks($data){
- if(isset($data['usd_buy'])){
- $Data = new BankExchange();
- $Data->organization = 'yapikredi';
- $Data->date = date('Y-m-d');
- $Data->currency_code = 'USD';
- $Data->buy = ($data['usd_buy'] == '---')? 0 : $data['usd_buy'];
- $Data->sell = ($data['usd_sell'] == '---')? 0 : $data['usd_sell'];
- $Data->save();
- }
- if(isset($data['eur_buy'])){
- $Data = new BankExchange();
- $Data->organization = 'yapikredi';
- $Data->date = date('Y-m-d');
- $Data->currency_code = 'EUR';
- $Data->buy = ($data['eur_buy'] == '---')? 0 : $data['eur_buy'];
- $Data->sell = ($data['eur_sell'] == '---')? 0 : $data['eur_sell'];
- $Data->save();
- }
- if(isset($data['rub_buy'])){
- $Data = new BankExchange();
- $Data->organization = 'yapikredi';
- $Data->date = date('Y-m-d');
- $Data->currency_code = 'RUB';
- $Data->buy = ($data['rub_buy'] == '---')? 0 : $data['rub_buy'];
- $Data->sell = ($data['rub_sell'] == '---')? 0 : $data['rub_sell'];
- $Data->save();
- }
- if(isset($data['try_buy'])){
- $Data = new BankExchange();
- $Data->organization = 'yapikredi';
- $Data->date = date('Y-m-d');
- $Data->currency_code = 'TRY';
- $Data->buy = ($data['try_buy'] == '---')? 0 : $data['try_buy'];
- $Data->sell = ($data['try_sell'] == '---')? 0 : $data['try_sell'];
- $Data->save();
- }
- }
- public function actionFaq()
- {
- if(Yii::app()->language=="az")
- {
- $this->pageTitle = 'Ən çox verilən suallar | Mover.az';
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, türkiyə alış-veriş saytları, türkiyədən çatdırılma, paltar sifarişi, türk geyimləri'), 'keywords');
- }
- elseif(Yii::app()->language=="en")
- {
- $this->pageTitle = 'F.A.Q | Mover.az';
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, online shopping sites turkey, delivery from turkey, dress order, turkish dress'), 'keywords');
- }
- $this->render("fag");
- }
- public function actionPay()
- {
- //$mebleg = floatval($_POST["mebleg"]);
- if (isset($_POST["mebleg"]) && !empty($_POST["mebleg"]) ){
- // && is_numeric($_POST["mebleg"])
- $mebleg = $_POST["mebleg"];
- if($mebleg<=50)
- {
- $mebleg = str_replace(",",".",$mebleg);
- $desc = CHtml::encode($_POST["desc"]);
- $desc = str_replace(' ','_',$desc);
- $desc = MyClass::slugify($desc);
- $reference=rand(000000, 999999);
- $payment = new Millikart($mebleg,$reference,$desc);
- $response = $payment->getURL();
- header("Location: ".$response);
- }
- else
- $this->redirect(CHtml::normalizeUrl(array("site/balance")));
- }else{
- $this->redirect(Yii::app()->homeUrl);
- }
- }
- public function actionPymnt(){
- if (isset($_POST["mebleg"]) && !empty($_POST["mebleg"]) ){
- $amount = abs($_POST["mebleg"]);
- if( is_numeric($amount) && $amount <= 50 ){
- $desc = CHtml::encode($_POST["desc"]);
- $desc = str_replace(' ','_',$desc);
- $desc = MyClass::slugify($desc);
- $payment = new PashaBank($amount,$desc);
- $t_id = $payment->setTid();
- $topupBalnce = new TopupBalanceWpc();
- $topupBalnce->user_id = Yii::app()->user->id;
- $topupBalnce->transaction_id = $t_id;
- $topupBalnce->balance = $amount;
- $topupBalnce->status_id = 0;
- $topup_save = $topupBalnce->save();
- if($topup_save)
- {
- $payment->runPayment($t_id);
- }
- else
- {
- $this->render('paymentsuccess',array("res"=>"Ödənişdə xəta baş verdi","mebleg"=>$amount));
- }
- //$this->render('paymentsuccess',array("mebleg"=>$amount));
- }else{
- $this->redirect(CHtml::normalizeUrl(array("site/balance")));
- }
- }else{
- echo $amount = $_POST["mebleg"];
- }
- }
- public function actionPaymentproduct($id=0)
- {
- include "/home/mover.az/protected/components/iyzipay/samples/config.php";
- $id = intval($id);
- $getLoginUser = Users::model()->with('city')->findByPk(Yii::app()->user->id);
- if(isset($_GET['id']) && !empty($_GET['id']))
- {
- $getProduct = Myorder::model()->findByAttributes(array("id"=>$id,"users_id"=>Yii::app()->user->id,"basket"=>'0'));
- if($getProduct && $getLoginUser)
- {
- if($getProduct->count==0)
- $count = 1;
- else
- $count = $getProduct->count;
- $conversation_id = $getLoginUser->user_key;
- if($getProduct->order_type==1)
- $price = $getProduct->price;
- else
- $price = $getProduct->price+$getProduct->price*0.05;
- $request = new \Iyzipay\Request\CreateCheckoutFormInitializeRequest();
- $request->setLocale(\Iyzipay\Model\Locale::TR);
- $request->setConversationId($conversation_id);
- $request->setPrice($price*$count);
- $request->setPaidPrice($price*$count);
- $request->setCurrency(\Iyzipay\Model\Currency::TL);
- $request->setBasketId($getProduct->id);
- $request->setPaymentGroup(\Iyzipay\Model\PaymentGroup::PRODUCT);
- $request->setCallbackUrl("https://mover.az/callbackpayment");
- $request->setEnabledInstallments(array(2, 3, 6, 9));
- $buyer = new \Iyzipay\Model\Buyer();
- $buyer->setId(Yii::app()->user->id);
- $buyer->setName($getLoginUser->name);
- $buyer->setSurname($getLoginUser->surname);
- $buyer->setGsmNumber($getLoginUser->mobile);
- $buyer->setEmail($getLoginUser->email);
- $buyer->setIdentityNumber($getLoginUser->user_key);
- //$buyer->setLastLoginDate("2015-10-05 12:43:35");
- //$buyer->setRegistrationDate("2013-04-21 15:12:09");
- $buyer->setRegistrationAddress($getLoginUser->address);
- $buyer->setIp($_SERVER['REMOTE_ADDR']);
- $buyer->setCity("Istanbul");
- $buyer->setCountry("Turkey");
- //$buyer->setZipCode("34732");
- $request->setBuyer($buyer);
- $shippingAddress = new \Iyzipay\Model\Address();
- $shippingAddress->setContactName($getLoginUser->name." ".$getLoginUser->surname);
- $shippingAddress->setCity("Istanbul");
- $shippingAddress->setCountry("Turkey");
- $shippingAddress->setAddress($getLoginUser->address);
- //$shippingAddress->setZipCode("34742");
- $request->setShippingAddress($shippingAddress);
- $billingAddress = new \Iyzipay\Model\Address();
- $billingAddress->setContactName($getLoginUser->name." ".$getLoginUser->surname);
- $billingAddress->setCity("Istanbul");
- $billingAddress->setCountry("Turkey");
- $billingAddress->setAddress($getLoginUser->address);
- //$billingAddress->setZipCode("34742");
- $request->setBillingAddress($billingAddress);
- $basketItems = array();
- $firstBasketItem = new \Iyzipay\Model\BasketItem();
- $firstBasketItem->setId($getProduct->id);
- $firstBasketItem->setName($getProduct->comment);
- $firstBasketItem->setCategory1("product");
- $firstBasketItem->setCategory2("product");
- $firstBasketItem->setItemType(\Iyzipay\Model\BasketItemType::PHYSICAL);
- $firstBasketItem->setPrice($price*$count);
- $basketItems[0] = $firstBasketItem;
- $request->setBasketItems($basketItems);
- }
- else
- $request = '';
- $datatype = "get";
- }
- elseif(isset($_POST['pay_submit']) and isset($_POST['pay']))
- {
- $pay = implode(",",$_POST['pay']);
- $sql="
- SELECT * FROM `cms_myorder` WHERE id IN (".$pay.")
- ";
- $myorders = Yii::app()->db->createCommand($sql)->queryAll();
- // var_dump($myorders);
- if($myorders)
- {
- $a = 0;
- $i = 1;
- $ids = '';
- foreach ($myorders as $myorder)
- {
- if($i==count($myorders))
- $delimeter = '';
- else
- $delimeter = '-';
- if($myorder['count']==0)
- $count_myorder = 1;
- else
- $count_myorder = $myorder['count'];
- if($myorder['order_type']==1)
- $price_end = $myorder['price'];
- else
- $price_end = $myorder['price']+$myorder['price']*0.05;
- $ids .= $myorder['id'].$delimeter;
- $a += $price_end*$count_myorder;
- $i++;
- }
- $conversation_id = $getLoginUser->user_key;
- // $rand_basket = rand(000000,999999);
- $request = new \Iyzipay\Request\CreateCheckoutFormInitializeRequest();
- $request->setLocale(\Iyzipay\Model\Locale::TR);
- $request->setConversationId($conversation_id);
- $request->setPrice($a);
- $request->setPaidPrice($a);
- $request->setCurrency(\Iyzipay\Model\Currency::TL);
- $request->setBasketId($ids);
- $request->setPaymentGroup(\Iyzipay\Model\PaymentGroup::PRODUCT);
- $request->setCallbackUrl("https://mover.az/callbackpaymentmore");
- $request->setEnabledInstallments(array(2, 3, 6, 9));
- $buyer = new \Iyzipay\Model\Buyer();
- $buyer->setId(Yii::app()->user->id);
- $buyer->setName($getLoginUser->name);
- $buyer->setSurname($getLoginUser->surname);
- $buyer->setGsmNumber($getLoginUser->mobile);
- $buyer->setEmail($getLoginUser->email);
- $buyer->setIdentityNumber($getLoginUser->user_key);
- //$buyer->setLastLoginDate("2015-10-05 12:43:35");
- //$buyer->setRegistrationDate("2013-04-21 15:12:09");
- $buyer->setRegistrationAddress($getLoginUser->address);
- $buyer->setIp($_SERVER['REMOTE_ADDR']);
- $buyer->setCity("Istanbul");
- $buyer->setCountry("Turkey");
- //$buyer->setZipCode("34732");
- $request->setBuyer($buyer);
- $shippingAddress = new \Iyzipay\Model\Address();
- $shippingAddress->setContactName($getLoginUser->name." ".$getLoginUser->surname);
- $shippingAddress->setCity("Istanbul");
- $shippingAddress->setCountry("Turkey");
- $shippingAddress->setAddress($getLoginUser->address);
- //$shippingAddress->setZipCode("34742");
- $request->setShippingAddress($shippingAddress);
- $billingAddress = new \Iyzipay\Model\Address();
- $billingAddress->setContactName($getLoginUser->name." ".$getLoginUser->surname);
- $billingAddress->setCity("Istanbul");
- $billingAddress->setCountry("Turkey");
- $billingAddress->setAddress($getLoginUser->address);
- //$billingAddress->setZipCode("34742");
- $request->setBillingAddress($billingAddress);
- $basketItems = array();
- $sql="
- SELECT * FROM `cms_myorder` WHERE id IN (".$pay.")
- ";
- $myorders2 = Yii::app()->db->createCommand($sql)->queryAll();
- $i=0;
- foreach ($myorders2 as $myorder)
- {
- if($myorder['count']==0)
- $count = 1;
- else
- $count = $myorder['count'];
- if($myorder['order_type']==1)
- $price_end = $myorder['price'];
- else
- $price_end = $myorder['price']+$myorder['price']*0.05;
- $firstBasketItem = new \Iyzipay\Model\BasketItem();
- $firstBasketItem->setId($myorder['id']);
- $firstBasketItem->setName($myorder['comment']);
- $firstBasketItem->setCategory1("product");
- $firstBasketItem->setCategory2("product");
- $firstBasketItem->setItemType(\Iyzipay\Model\BasketItemType::PHYSICAL);
- $firstBasketItem->setPrice($price_end*$count);
- $basketItems[$i] = $firstBasketItem;
- $i++;
- }
- $request->setBasketItems($basketItems);
- $datatype = "post";
- $getProduct = $myorders;
- }
- else
- $this->redirect(Yii::app()->homeUrl);
- }
- else $this->redirect(CHtml::normalizeUrl(array("site/order")));
- $this->render('paymentproduct',array("getProduct"=>$getProduct,"request"=>$request,"datatype"=>$datatype));
- }
- public function actionMessages(){
- $this->pageTitle = Yii::t('text','Amerikadan və Türkiyədən çatdırılma xidməti | Mover.az');
- $criteria = new CDbCriteria;
- $criteria->condition = "user_id= :user_id";
- $criteria->order = 'id desc';
- $criteria->params = array(':user_id' => (int)Yii::app()->user->id);
- $messages = Messages::model()->findAll($criteria);
- $cr = new CDbCriteria;
- $cr->condition = "user_id= :user_id and readen = 0";
- $cr->params = array(':user_id' => (int)Yii::app()->user->id);
- $msg = Messages::model()->findAll($cr);
- foreach($msg as $item){
- $item->readen = 1;
- $item->save(false);
- }
- $this->render('messages', array('messages' => $messages));
- }
- public function actionTasks(){
- $this->pageTitle = Yii::t('text','Amerikadan və Türkiyədən çatdırılma xidməti | Mover.az');
- $criteria = new CDbCriteria;
- $criteria->with = 'taskComments';
- $criteria->condition = "t.creator= :user_id";
- $criteria->order = 't.id desc';
- $criteria->params = array(':user_id' => (int)Yii::app()->user-> id);
- $tasks = Tasks::model()->findAll($criteria);
- $model = new Tasks();
- $this->render('tasks', array('tasks' => $tasks, 'model' => $model));
- }
- public function actionTask($id){
- if(isset($_POST['comment'])){
- $comment = strip_tags($_POST['comment']);
- $model = new TaskComments;
- $model->task_id = (int) $id;
- $model->author_id = (int)Yii::app()->user->id;
- $model->comment = $comment;
- $model->created_at = date('Y-m-d H:I:S');
- $model->save(false);
- $Task = Tasks::model()->findByPk($model->task_id);
- $Task->answered = 0;
- $Task->total_unread_messages = 0;
- $Task->save(false);
- $this->redirect(CHtml::normalizeUrl(array("site/task/".(int) $id)));
- }else{
- $this->pageTitle = Yii::t('text','Amerikadan və Türkiyədən çatdırılma xidməti | Mover.az');
- $criteria = new CDbCriteria;
- $criteria->with = 'taskComments';
- $criteria->condition = "t.creator= :user_id and t.id = :id";
- $criteria->order = 't.id asc';
- $criteria->params = array(':user_id' => (int)Yii::app()->user->id, ':id' => (int) $id);
- $tasks = Tasks::model()->find($criteria);
- $Task = Tasks::model()->findByPk((int) $id);
- $Task->total_unread_messages = 0;
- $Task->save(false);
- $this->render('task_details', array('tasks' => $tasks));
- }
- }
- public function actionAddTask(){
- $model = new Tasks;
- if (isset($_POST['Tasks'])) {
- $newPhoto = CUploadedFile::getInstance($model, 'file');
- $model->kime = $_POST['Tasks']['kime'];
- $model->creator = Yii::app()->user->id;
- $model->status = 1;
- $model->baslama_tarixi = date('Y-m-d H:i:s');
- $model->prioritet = $_POST['Tasks']['prioritet'];
- $this -> performAjaxValidation($model);
- $model->ad = strip_tags($_POST['Tasks']['ad']);
- $model->melumat = strip_tags($_POST['Tasks']['melumat']);
- $model->link = strip_tags($_POST['Tasks']['link']);
- $model->mail = Yii::app()->user->getEmail();
- $model->fullname = Yii::app()->user->getFirstName()." ".Yii::app()->user->getSurname();
- if ($model->validate()) {
- $model->file = empty($newPhoto) ? $model->file : $newPhoto;
- if(!empty($newPhoto)) {
- $a = pathinfo($name);
- if($a["extension"]!="jpg" OR $a["extension"]!="png" OR $a["extension"]!="pdf" ){
- die( "olmaz");
- }
- $photoPath = Yii::app()->params['tasks_path'];
- if (!file_exists($photoPath)) {
- mkdir($photoPath, 0777, true);
- }
- $name = time() . $newPhoto->getName();
- $a = pathinfo($name);
- $name = md5($a['filename']) . "." . $a['extension'];
- $model->file->saveAs($photoPath . $name);
- $model->file = $name;
- }
- if (!$model->save(false)) {
- echo CJSON::encode($model->getErrors());
- Yii::app()->end();
- }
- echo CJSON::encode(array('status' => 'success', 'alert' => Yii::t('text', 'Sorğunuz qəbul edildi qısam müddət ərzində sizə cavab veriləcək')));
- Yii::app()->end();
- }else{
- $error = CActiveForm::validate($model);
- echo $error;
- Yii::app() -> end();
- }
- }
- }
- public function actionAddTaskVoice(){
- }
- public function actionEndTask($id){
- $model = Tasks::model()->findByPk((int) $id);
- $model->status = 0;
- $model->bitme_tarixi = date('Y-m-d H:i:s');
- $model->save(false);
- echo CJSON::encode(array('status' => 'success'));
- Yii::app()->end();
- }
- public function actionPaymentproductpaytr($id=0)
- {
- $id = intval($id);
- $getLoginUser = Users::model()->with('city')->findByPk(Yii::app()->user->id);
- if(isset($_GET['id']) && !empty($_GET['id']))
- {
- $getProduct = Myorder::model()->findByAttributes(array("id"=>$id,"users_id"=>Yii::app()->user->id,"basket"=>'0'));
- if($getProduct && $getLoginUser)
- {
- if($getProduct->count==0)
- $count = 1;
- else
- $count = $getProduct->count;
- if($getProduct->order_type==1)
- $price = $getProduct->price;
- else
- $price = $getProduct->price+$getProduct->price*0.05;
- ## 1. ADIM için örnek kodlar ##
- ####################### DÜZENLEMESİ ZORUNLU ALANLAR #######################
- #
- ## API Entegrasyon Bilgileri - Mağaza paneline giriş yaparak BİLGİ sayfasından alabilirsiniz.
- $merchant_id = '109349';
- $merchant_key = 'khPZ6dN4gC8aZ4e9';
- $merchant_salt = 'BLeRAbrwku83Mrk8';
- #
- ## Müşterinizin sitenizde kayıtlı veya form vasıtasıyla aldığınız eposta adresi
- $email = $getLoginUser->email;
- #
- ## Tahsil edilecek tutar.
- $payment_amount = round($price*100); //9.99 için 9.99 * 100 = 999 gönderilmelidir.
- #
- ## Sipariş numarası: Her işlemde benzersiz olmalıdır!! Bu bilgi bildirim sayfanıza yapılacak bildirimde geri gönderilir.
- $merchant_oid = $getLoginUser->id.rand(0,9999);
- #
- ## Müşterinizin sitenizde kayıtlı veya form aracılığıyla aldığınız ad ve soyad bilgisi
- $user_name = $getLoginUser->name." ".$getLoginUser->surname;
- #
- ## Müşterinizin sitenizde kayıtlı veya form aracılığıyla aldığınız adres bilgisi
- $user_address = $getLoginUser->address;
- #
- ## Müşterinizin sitenizde kayıtlı veya form aracılığıyla aldığınız telefon bilgisi
- $user_phone = $getLoginUser->mobile;
- #
- ## Başarılı ödeme sonrası müşterinizin yönlendirileceği sayfa
- ## !!! Bu sayfa siparişi onaylayacağınız sayfa değildir! Yalnızca müşterinizi bilgilendireceğiniz sayfadır!
- ## !!! Siparişi onaylayacağız sayfa "Bildirim URL" sayfasıdır (Bakınız: 2.ADIM Klasörü).
- $merchant_ok_url = "https://www.mover.az/callbackpaymentpaytrsuccess";
- #
- ## Ödeme sürecinde beklenmedik bir hata oluşması durumunda müşterinizin yönlendirileceği sayfa
- ## !!! Bu sayfa siparişi iptal edeceğiniz sayfa değildir! Yalnızca müşterinizi bilgilendireceğiniz sayfadır!
- ## !!! Siparişi iptal edeceğiniz sayfa "Bildirim URL" sayfasıdır (Bakınız: 2.ADIM Klasörü).
- $merchant_fail_url = "https://www.mover.az/callbackpaymentpaytrfailure";
- #
- ## Müşterinin sepet/sipariş içeriği
- $user_basket = base64_encode(json_encode(array(
- array($getProduct->comment, $price, $count) // 1. ürün (Ürün Ad - Birim Fiyat - Adet )
- )));
- #
- /* ÖRNEK $user_basket oluşturma - Ürün adedine göre array'leri çoğaltabilirsiniz
- $user_basket = base64_encode(json_encode(array(
- array("Örnek ürün 1", "18.00", 1), // 1. ürün (Ürün Ad - Birim Fiyat - Adet )
- array("Örnek ürün 2", "33.25", 2), // 2. ürün (Ürün Ad - Birim Fiyat - Adet )
- array("Örnek ürün 3", "45.42", 1) // 3. ürün (Ürün Ad - Birim Fiyat - Adet )
- )));
- */
- ############################################################################################
- ## Kullanıcının IP adresi
- if( isset( $_SERVER["HTTP_CLIENT_IP"] ) ) {
- $ip = $_SERVER["HTTP_CLIENT_IP"];
- } elseif( isset( $_SERVER["HTTP_X_FORWARDED_FOR"] ) ) {
- $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
- } else {
- $ip = $_SERVER["REMOTE_ADDR"];
- }
- ## !!! Eğer bu örnek kodu sunucuda değil local makinanızda çalıştırıyorsanız
- ## buraya dış ip adresinizi (https://www.whatismyip.com/) yazmalısınız. Aksi halde geçersiz paytr_token hatası alırsınız.
- $user_ip=$ip;
- ##
- ## İşlem zaman aşımı süresi - dakika cinsinden
- $timeout_limit = "30";
- ## Hata mesajlarının ekrana basılması için entegrasyon ve test sürecinde 1 olarak bırakın. Daha sonra 0 yapabilirsiniz.
- $debug_on = 1;
- ## Mağaza canlı modda iken test işlem yapmak için 1 olarak gönderilebilir.
- if(Yii::app()->user->id==4198)
- $test_mode = 1;
- else
- $test_mode = 0;
- $no_installment = 0; // Taksit yapılmasını istemiyorsanız, sadece tek çekim sunacaksanız 1 yapın
- ## Sayfada görüntülenecek taksit adedini sınırlamak istiyorsanız uygun şekilde değiştirin.
- ## Sıfır (0) gönderilmesi durumunda yürürlükteki en fazla izin verilen taksit geçerli olur.
- $max_installment = 0;
- $currency = "TL";
- ####### Bu kısımda herhangi bir değişiklik yapmanıza gerek yoktur. #######
- $hash_str = $merchant_id .$user_ip .$merchant_oid .$email .$payment_amount .$user_basket.$no_installment.$max_installment.$currency.$test_mode;
- $paytr_token=base64_encode(hash_hmac('sha256',$hash_str.$merchant_salt,$merchant_key,true));
- $post_vals=array(
- 'merchant_id'=>$merchant_id,
- 'user_ip'=>$user_ip,
- 'merchant_oid'=>$merchant_oid,
- 'email'=>$email,
- 'payment_amount'=>$payment_amount,
- 'paytr_token'=>$paytr_token,
- 'user_basket'=>$user_basket,
- 'debug_on'=>$debug_on,
- 'no_installment'=>$no_installment,
- 'max_installment'=>$max_installment,
- 'user_name'=>$user_name,
- 'user_address'=>$user_address,
- 'user_phone'=>$user_phone,
- 'merchant_ok_url'=>$merchant_ok_url,
- 'merchant_fail_url'=>$merchant_fail_url,
- 'timeout_limit'=>$timeout_limit,
- 'currency'=>$currency,
- 'test_mode'=>$test_mode
- );
- $ch=curl_init();
- curl_setopt($ch, CURLOPT_URL, "https://www.paytr.com/odeme/api/get-token");
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- curl_setopt($ch, CURLOPT_POST, 1) ;
- curl_setopt($ch, CURLOPT_POSTFIELDS, $post_vals);
- curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
- curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
- curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
- curl_setopt($ch, CURLOPT_TIMEOUT, 20);
- $result = @curl_exec($ch);
- if(curl_errno($ch))
- die("PAYTR IFRAME connection error. err:".curl_error($ch));
- curl_close($ch);
- $result=json_decode($result,1);
- if($result['status']=='success')
- $token=$result['token'];
- else
- die("PAYTR IFRAME failed. reason:".$result['reason']);
- #########################################################################
- // $paymentproduct = new PaymentProducts();
- // $paymentproduct->users_id = Yii::app()->user->id;
- // $paymentproduct->created = time();
- // $paymentproduct->currency = $currency;
- // $paymentproduct->price = $payment_amount;
- // $paymentproduct->myorder_id = intval($_GET['id']);
- // $paymentproduct->merchant_oid = $merchant_oid;
- // $paymentproduct->status = "loading";
- // $paymentproduct->save();
- $payment_amount2 = $payment_amount/100;
- Yii::app() -> db -> createCommand("INSERT INTO
- `cms_payment_products` (`users_id`, `created`,`currency`, `price`,`myorder_id`,`merchant_oid`,`status`)
- VALUES (:users_id,".time().",:currency,:price,:myorder_id,:merchant_oid,'loading')")
- -> bindParam(':users_id', Yii::app()->user->id, PDO::PARAM_INT)
- -> bindParam(':currency', $currency, PDO::PARAM_STR)
- -> bindParam(':price', $payment_amount2, PDO::PARAM_STR)
- -> bindParam(':myorder_id', intval($_GET['id']), PDO::PARAM_INT)
- -> bindParam(':merchant_oid', $merchant_oid, PDO::PARAM_INT)
- -> execute();
- $hesab = Hesablar::model()->findByPk(4);
- $hesab->hesab_mebleg = (float) $hesab->hesab_mebleg + (float) $payment_amount2;
- $hesab->save(false);
- }
- else
- $token = '';
- $datatype = "get";
- }
- elseif(isset($_POST['pay_submit']) and isset($_POST['pay']))
- {
- $pay = implode(",",$_POST['pay']);
- $sql="
- SELECT * FROM `cms_myorder` WHERE id IN (".$pay.")
- ";
- $myorders = Yii::app()->db->createCommand($sql)->queryAll();
- if($myorders)
- {
- $sql="
- SELECT * FROM `cms_myorder` WHERE id IN (".$pay.")
- ";
- $myorders = Yii::app()->db->createCommand($sql)->queryAll();
- ## 1. ADIM için örnek kodlar ##
- ####################### DÜZENLEMESİ ZORUNLU ALANLAR #######################
- #
- ## API Entegrasyon Bilgileri - Mağaza paneline giriş yaparak BİLGİ sayfasından alabilirsiniz.
- $merchant_id = '109349';
- $merchant_key = 'khPZ6dN4gC8aZ4e9';
- $merchant_salt = 'BLeRAbrwku83Mrk8';
- #
- ## Müşterinizin sitenizde kayıtlı veya form vasıtasıyla aldığınız eposta adresi
- $email = $getLoginUser->email;
- #
- #
- ## Sipariş numarası: Her işlemde benzersiz olmalıdır!! Bu bilgi bildirim sayfanıza yapılacak bildirimde geri gönderilir.
- $merchant_oid = $getLoginUser->id.rand(0,9999);
- #
- ## Müşterinizin sitenizde kayıtlı veya form aracılığıyla aldığınız ad ve soyad bilgisi
- $user_name = $getLoginUser->name." ".$getLoginUser->surname;
- #
- ## Müşterinizin sitenizde kayıtlı veya form aracılığıyla aldığınız adres bilgisi
- $user_address = $getLoginUser->address;
- #
- ## Müşterinizin sitenizde kayıtlı veya form aracılığıyla aldığınız telefon bilgisi
- $user_phone = $getLoginUser->mobile;
- #
- ## Başarılı ödeme sonrası müşterinizin yönlendirileceği sayfa
- ## !!! Bu sayfa siparişi onaylayacağınız sayfa değildir! Yalnızca müşterinizi bilgilendireceğiniz sayfadır!
- ## !!! Siparişi onaylayacağız sayfa "Bildirim URL" sayfasıdır (Bakınız: 2.ADIM Klasörü).
- $merchant_ok_url = "https://www.mover.az/callbackpaymentpaytrsuccess";
- #
- ## Ödeme sürecinde beklenmedik bir hata oluşması durumunda müşterinizin yönlendirileceği sayfa
- ## !!! Bu sayfa siparişi iptal edeceğiniz sayfa değildir! Yalnızca müşterinizi bilgilendireceğiniz sayfadır!
- ## !!! Siparişi iptal edeceğiniz sayfa "Bildirim URL" sayfasıdır (Bakınız: 2.ADIM Klasörü).
- $merchant_fail_url = "https://www.mover.az/callbackpaymentpaytrfailure";
- $currency = "TL";
- $i=$a=0;
- $user_basket_arr = array();
- foreach ($myorders as $myorder)
- {
- if($myorder['count']==0)
- $count = 1;
- else
- $count = $myorder['count'];
- if($myorder['order_type']==1)
- $price_end = $myorder['price'];
- else
- $price_end = $myorder['price']+$myorder['price']*0.05;
- if($myorder['count']==0)
- $count_myorder = 1;
- else
- $count_myorder = $myorder['count'];
- $a += $price_end*$count_myorder;
- ## Müşterinin sepet/sipariş içeriği
- //$user_basket_arr[] = array($myorder['comment'], $price_end, $count);
- array_push($user_basket_arr,array($myorder['comment'], $price_end, $count));
- #
- /* ÖRNEK $user_basket oluşturma - Ürün adedine göre array'leri çoğaltabilirsiniz
- $user_basket = base64_encode(json_encode(array(
- array("Örnek ürün 1", "18.00", 1), // 1. ürün (Ürün Ad - Birim Fiyat - Adet )
- array("Örnek ürün 2", "33.25", 2), // 2. ürün (Ürün Ad - Birim Fiyat - Adet )
- array("Örnek ürün 3", "45.42", 1) // 3. ürün (Ürün Ad - Birim Fiyat - Adet )
- )));
- */
- ############################################################################################
- Yii::app() -> db -> createCommand("INSERT INTO
- `cms_payment_products` (`users_id`, `created`,`currency`, `price`,`myorder_id`,`merchant_oid`,`status`)
- VALUES (:users_id,".time().",:currency,:price,:myorder_id,:merchant_oid,'loading')")
- -> bindParam(':users_id', Yii::app()->user->id, PDO::PARAM_INT)
- -> bindParam(':currency', $currency, PDO::PARAM_STR)
- -> bindParam(':price', $price_end, PDO::PARAM_STR)
- -> bindParam(':myorder_id', $myorder['id'], PDO::PARAM_INT)
- -> bindParam(':merchant_oid', $merchant_oid, PDO::PARAM_INT)
- -> execute();
- $i++;
- }
- // if(Yii::app()->user->id==4198)
- // print_r($user_basket_arr);
- // $user_basket = base64_encode(json_encode($user_basket_arr));
- /*$masspay = array(
- array("Örnek ürün 1", "18.00", 1), // 1. ürün (Ürün Ad - Birim Fiyat - Adet )
- array("Örnek ürün 2", "33.25", 2), // 2. ürün (Ürün Ad - Birim Fiyat - Adet )
- array("Örnek ürün 3", "45.42", 1) // 3. ürün (Ürün Ad - Birim Fiyat - Adet )
- );*/
- $user_basket = base64_encode(json_encode($user_basket_arr));
- ## Tahsil edilecek tutar.
- $payment_amount = intval($a*100); //9.99 için 9.99 * 100 = 999 gönderilmelidir.
- ## Kullanıcının IP adresi
- if( isset( $_SERVER["HTTP_CLIENT_IP"] ) ) {
- $ip = $_SERVER["HTTP_CLIENT_IP"];
- } elseif( isset( $_SERVER["HTTP_X_FORWARDED_FOR"] ) ) {
- $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
- } else {
- $ip = $_SERVER["REMOTE_ADDR"];
- }
- ## !!! Eğer bu örnek kodu sunucuda değil local makinanızda çalıştırıyorsanız
- ## buraya dış ip adresinizi (https://www.whatismyip.com/) yazmalısınız. Aksi halde geçersiz paytr_token hatası alırsınız.
- $user_ip=$ip;
- ##
- ## İşlem zaman aşımı süresi - dakika cinsinden
- $timeout_limit = "30";
- ## Hata mesajlarının ekrana basılması için entegrasyon ve test sürecinde 1 olarak bırakın. Daha sonra 0 yapabilirsiniz.
- $debug_on = 1;
- ## Mağaza canlı modda iken test işlem yapmak için 1 olarak gönderilebilir.
- if(Yii::app()->user->id==4198)
- $test_mode = 1;
- else
- $test_mode = 0;
- $no_installment = 0; // Taksit yapılmasını istemiyorsanız, sadece tek çekim sunacaksanız 1 yapın
- ## Sayfada görüntülenecek taksit adedini sınırlamak istiyorsanız uygun şekilde değiştirin.
- ## Sıfır (0) gönderilmesi durumunda yürürlükteki en fazla izin verilen taksit geçerli olur.
- $max_installment = 0;
- ####### Bu kısımda herhangi bir değişiklik yapmanıza gerek yoktur. #######
- $hash_str = $merchant_id .$user_ip .$merchant_oid .$email .$payment_amount .$user_basket.$no_installment.$max_installment.$currency.$test_mode;
- $paytr_token=base64_encode(hash_hmac('sha256',$hash_str.$merchant_salt,$merchant_key,true));
- $post_vals=array(
- 'merchant_id'=>$merchant_id,
- 'user_ip'=>$user_ip,
- 'merchant_oid'=>$merchant_oid,
- 'email'=>$email,
- 'payment_amount'=>$payment_amount,
- 'paytr_token'=>$paytr_token,
- 'user_basket'=>$user_basket,
- 'debug_on'=>$debug_on,
- 'no_installment'=>$no_installment,
- 'max_installment'=>$max_installment,
- 'user_name'=>$user_name,
- 'user_address'=>$user_address,
- 'user_phone'=>$user_phone,
- 'merchant_ok_url'=>$merchant_ok_url,
- 'merchant_fail_url'=>$merchant_fail_url,
- 'timeout_limit'=>$timeout_limit,
- 'currency'=>$currency,
- 'test_mode'=>$test_mode
- );
- $ch=curl_init();
- curl_setopt($ch, CURLOPT_URL, "https://www.paytr.com/odeme/api/get-token");
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- curl_setopt($ch, CURLOPT_POST, 1) ;
- curl_setopt($ch, CURLOPT_POSTFIELDS, $post_vals);
- curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
- curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
- curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
- curl_setopt($ch, CURLOPT_TIMEOUT, 20);
- $result = @curl_exec($ch);
- if(curl_errno($ch))
- die("PAYTR IFRAME connection error. err:".curl_error($ch));
- curl_close($ch);
- $result=json_decode($result,1);
- if($result['status']=='success')
- $token=$result['token'];
- else
- die("PAYTR IFRAME failed. reason:".$result['reason']);
- #########################################################################
- $datatype = "post";
- $getProduct = $myorders;
- }
- else
- $this->redirect(Yii::app()->homeUrl);
- }
- else $this->redirect(CHtml::normalizeUrl(array("site/order")));
- $this->render('paymentproductpaytr',array("getProduct"=>$getProduct,"datatype"=>$datatype,"token"=>$token));
- }
- public function actionCallbackpaymentpaytrsuccess()
- {
- $this->render('callbackpaymentpaytrsuccess');
- }
- public function actionCallbackpaymentpaytrfailure()
- {
- $this->render('callbackpaymentpaytrfailure');
- }
- public function actionPaytrinfo()
- {
- $post = $_POST;
- $merchant_key = 'khPZ6dN4gC8aZ4e9';
- $merchant_salt = 'BLeRAbrwku83Mrk8';
- $hash = base64_encode( hash_hmac('sha256', $post['merchant_oid'].$merchant_salt.$post['status'].$post['total_amount'], $merchant_key, true) );
- if( $hash != $post['hash'] )
- die('PAYTR notification failed: bad hash');
- $getProduct = PaymentProducts::model()->findByAttributes(array("merchant_oid"=>$post['merchant_oid'],"status"=>"loading"));
- if($getProduct->status == "onay" || $getProduct->status == "iptal"){
- echo "OK";
- exit;
- }
- if( $post['status'] == 'success' ) { ## Ödeme Onaylandı
- $user_basket_explode = explode("-",$post['user_basket']);
- $merchant_oid = $post['merchant_oid'];
- $match = 'coupon';
- if(strpos($merchant_oid, $match) !== false)
- {
- $criteria = new CDbCriteria;
- $criteria->addCondition("merchant_oid='$post[merchant_oid]' and paymentstatus='loading'");
- CouponAction::model() -> updateAll(array('token'=>$post['hash'],'paymentstatus'=>"SUCCESS",'created'=>time(),"cardtype"=>$post['payment_type']), $criteria);
- $coupon_action = CouponAction::model() -> find('merchant_oid=:tr_id', array(':tr_id' => $post['merchant_oid']));
- $coupon_balance = $coupon_action->price/1.05;
- $coupon_balance = round($coupon_balance, 2);
- $getUserInfo = Users::model()->findByPk($coupon_action->user_id);
- $newBalance = $coupon_balance+$getUserInfo->coupon_balance;
- Users::model() -> updateByPk($coupon_action->user_id, array('coupon_balance' => $newBalance));
- $coupon_log = New CouponHistory();
- $coupon_log->user_id = $getUserInfo->id;
- $coupon_log->date = date('Y-m-d H:i:s');
- $coupon_log->log = '+'.$coupon_balance.' TL kupon alışı. Hal hazırki balans '.$newBalance.') TL | Onlayn kupon balans artımı. Coupone transaction_id | '.$post[merchant_oid].'';
- $coupon_log->type = 'add';
- $coupon_log->save();
- }
- else
- {
- $criteria = new CDbCriteria;
- $criteria->addCondition("merchant_oid='$post[merchant_oid]' and status='loading'");
- PaymentProducts::model()->updateAll(array('token'=>$post['hash'],'paymentstatus'=>"SUCCESS",'created'=>time(),"cardtype"=>$post['payment_type'],"status"=>'onay'), $criteria);
- foreach($getProduct as $product){
- Myorder::model()->updateByPk((int)$product->myorder_id, array('paid' => '1'));
- }
- }
- } else {
- $merchant_oid = $post['merchant_oid'];
- $match = 'coupon';
- if(strpos($merchant_oid, $match) !== false)
- {
- $criteria = new CDbCriteria;
- $criteria->addCondition("merchant_oid='$post[merchant_oid]' and paymentstatus='loading'");
- CouponAction::model()->updateAll(array('token'=>$post['hash'],'paymentstatus'=>"FAILED",'created'=>time(),"cardtype"=>$post['payment_type'],"failed_reason_code"=>$post['failed_reason_code'],"failed_reason_msg"=>$post['failed_reason_msg']), $criteria);
- }
- else
- {
- $criteria = new CDbCriteria;
- $criteria->addCondition("merchant_oid='$post[merchant_oid]' and status='loading'");
- PaymentProducts::model()->updateAll(array('token'=>$post['hash'],'paymentstatus'=>"FAILED",'created'=>time(),"cardtype"=>$post['payment_type'],"status"=>'iptal',"failed_reason_code"=>$post['failed_reason_code'],"failed_reason_msg"=>$post['failed_reason_msg']), $criteria);
- }
- }
- echo "OK";
- exit;
- }
- protected function get_domain($url)
- {
- $pieces = parse_url($url);
- $domain = isset($pieces['host']) ? $pieces['host'] : '';
- if (preg_match('/(?P<domain>[a-z0-9][a-z0-9\-]{1,63}\.[a-z\.]{2,6})$/i', $domain, $regs)) {
- return $regs['domain'];
- }
- return false;
- }
- public function actionCallbackPayment()
- {
- $getLoginUser = Users::model()->findByPk(Yii::app()->user->id);
- include "./protected/components/iyzipay/samples/config.php";
- //var_dump($_POST);
- $token = $_POST['token'];
- # create request class
- $request = new \Iyzipay\Request\RetrieveCheckoutFormRequest();
- $request->setLocale(\Iyzipay\Model\Locale::TR);
- $request->setConversationId($getLoginUser->user_key);
- $request->setToken($token);
- $order_id = 0;
- # make request
- $checkoutForm = \Iyzipay\Model\CheckoutForm::retrieve($request, Config::options());
- // var_dump(json_decode($checkoutForm->getRawResult()));
- // var_dump($checkoutForm->getPaymentItems());
- // echo "<pre>";
- // $dcount = (array)$checkoutForm->getPaymentItems()[0];
- // foreach ($dcount as $k=>$x){
- // echo str_replace("Iyzipay\Model\PaymentItem","",$k)." ---- ".$x."<br>";
- // }
- // foreach ($checkoutForm->getPaymentItems() as $key=>$item)
- // echo $item[$key]
- $sql="
- SELECT * FROM `cms_payment_products` WHERE `token`='$token'
- ";
- $checktoken = Yii::app()->db->createCommand($sql)->bindParam(":token",$token,PDO::PARAM_STR)->queryAll();
- if($checkoutForm->getStatus()=="success" && $token==$checkoutForm->getToken() && !$checktoken)
- {
- if($checkoutForm->getPaymentStatus()=="SUCCESS")
- {
- $message = "paymentSuccess";
- $myoders = Myorder::model()->findByPk($checkoutForm->getBasketId());
- Myorder::model()->updateByPk((int)$checkoutForm->getBasketId(), array('status' => '1'));
- Myorder::model()->updateByPk((int)$checkoutForm->getBasketId(), array('paid' => '1'));
- $explode = explode(".",$this->get_domain($myoders->link));
- $model = new Orders();
- $model->link = $myoders->link;
- $model->users_id = Yii::app()->user->id;
- $model->comments = $myoders->comment;
- $model->order_key = $myoders->order_key;
- $model->order_type = $myoders->order_type;
- $model->price = $myoders->price;
- $model->image = $myoders->image;
- $model->country_id = 1;
- $model->valute_id = 3;
- $model->count = $myoders->count;
- $model->status = '3';
- // $model->delivery = '1';
- // $model->date1 = date("Y-m-d");
- $model->paid = '1';
- $model->shop = ucfirst($explode[0]);
- $model->save(false);
- $order_id = $model->id;
- }
- else
- $message = "paymentFailure";
- }
- else
- $message = "tokenFailure";
- if($token)
- Yii::app() -> db -> createCommand("INSERT INTO
- `cms_payment_products` (`users_id`, `created`,`order_id`,`token`,`paymentstatus`,`currency`, `price`, `paymentid`, `cardtype`, `cardassociation`,`myorder_id`)
- VALUES (:users_id,".time().",:order_id,:token,:paymentstatus,:currency,:price,:paymentid,:cardtype,:cardassociation,:myorder_id)")
- -> bindParam(':users_id', Yii::app()->user->id, PDO::PARAM_INT)
- -> bindParam(':order_id', $order_id, PDO::PARAM_INT)
- -> bindParam(':token', $checkoutForm->getToken(), PDO::PARAM_STR)
- -> bindParam(':paymentstatus', $checkoutForm->getPaymentStatus() , PDO::PARAM_INT)
- -> bindParam(':currency', $checkoutForm->getCurrency(), PDO::PARAM_STR)
- -> bindParam(':price', $checkoutForm->getPrice(), PDO::PARAM_STR)
- -> bindParam(':paymentid', $checkoutForm->getPaymentId(), PDO::PARAM_STR)
- -> bindParam(':cardtype', $checkoutForm->getCardType(), PDO::PARAM_STR)
- -> bindParam(':cardassociation', $checkoutForm->getCardAssociation(), PDO::PARAM_STR)
- -> bindParam(':myorder_id', $checkoutForm->getBasketId(), PDO::PARAM_INT)
- -> execute();
- // $payment = new PaymentProducts();
- // $payment->users_id = Yii::app()->user->id;
- // $payment->date = time();
- // $payment->order_id = $checkoutForm->getBasketId();
- // $payment->token = $checkoutForm->getToken();
- // $payment->paymentstatus = $checkoutForm->getPaymentStatus();
- // $payment->currency = $checkoutForm->getCurrency();
- // $payment->price = $checkoutForm->getPrice();
- // $payment->paymentid = $checkoutForm->getPaymentId();
- // $payment->cardtype = $checkoutForm->getCardType();
- // $payment->cardassociation = $checkoutForm->getCardAssociation();
- // $payment->save();
- $this->render('callbackpayment', array("message"=>$message));
- }
- public function actionCallbackPaymentMore()
- {
- $getLoginUser = Users::model()->findByPk(Yii::app()->user->id);
- include "./protected/components/iyzipay/samples/config.php";
- //var_dump($_POST);
- $token = $_POST['token'];
- # create request class
- $request = new \Iyzipay\Request\RetrieveCheckoutFormRequest();
- $request->setLocale(\Iyzipay\Model\Locale::TR);
- $request->setConversationId($getLoginUser->user_key);
- $request->setToken($token);
- $order_id = 0;
- # make request
- $checkoutForm = \Iyzipay\Model\CheckoutForm::retrieve($request, Config::options());
- // var_dump($checkoutForm);
- if(strpos($checkoutForm->getBasketId(),"-")>0)
- $explode_id = explode("-",$checkoutForm->getBasketId());
- else
- $explode_id = $checkoutForm->getBasketId();
- $sql="
- SELECT * FROM `cms_payment_products` WHERE `token`='$token'
- ";
- $checktoken = Yii::app()->db->createCommand($sql)->bindParam(":token",$token,PDO::PARAM_STR)->queryAll();
- $order_id = array();
- if($checkoutForm->getStatus()=="success" && $token==$checkoutForm->getToken() && !$checktoken)
- {
- if($checkoutForm->getPaymentStatus()=="SUCCESS")
- {
- $message = "paymentSuccess";
- if(is_array($explode_id))
- {
- foreach ($explode_id as $id)
- {
- $myoders = Myorder::model()->findByPk($id);
- Myorder::model()->updateByPk((int)$id, array('status' => '1'));
- Myorder::model()->updateByPk((int)$id, array('paid' => '1'));
- $explode = explode(".",$this->get_domain($myoders->link));
- $model = new Orders();
- $model->link = $myoders->link;
- $model->users_id = Yii::app()->user->id;
- $model->comments = $myoders->comment;
- $model->order_key = $myoders->order_key;
- $model->order_type = $myoders->order_type;
- $model->price = $myoders->price;
- $model->image = $myoders->image;
- $model->country_id = 1;
- $model->valute_id = 3;
- $model->count = $myoders->count;
- $model->status = '3';
- // $model->delivery = '1';
- // $model->date1 = date("Y-m-d");
- $model->paid = '1';
- $model->shop = ucfirst($explode[0]);
- $model->save(false);
- $order_id[] = $model->id;
- }
- }
- else
- {
- $myoders = Myorder::model()->findByPk($explode_id);
- Myorder::model()->updateByPk((int)$explode_id, array('status' => '1'));
- Myorder::model()->updateByPk((int)$explode_id, array('paid' => '1'));
- $explode = explode(".",$this->get_domain($myoders->link));
- $model = new Orders();
- $model->link = $myoders->link;
- $model->users_id = Yii::app()->user->id;
- $model->comments = $myoders->comment;
- $model->order_key = $myoders->order_key;
- $model->order_type = $myoders->order_type;
- $model->price = $myoders->price;
- $model->image = $myoders->image;
- $model->country_id = 1;
- $model->valute_id = 3;
- $model->count = $myoders->count;
- $model->status = '3';
- // $model->delivery = '1';
- // $model->date1 = date("Y-m-d");
- $model->paid = '1';
- $model->shop = ucfirst($explode[0]);
- $model->save(false);
- $order_id = $model->id;
- }
- }
- else
- $message = "paymentFailure";
- }
- else
- $message = "tokenFailure";
- if(is_array($order_id))
- {
- $i=0;
- foreach ($order_id as $id)
- {
- $orders = Orders::model()->findByPk($id);
- if($orders->order_type==1)
- $price = $orders->price;
- else
- $price = $orders->price+$orders->price*0.05;
- Yii::app() -> db -> createCommand("INSERT INTO
- `cms_payment_products` (`users_id`, `created`,`order_id`,`token`,`paymentstatus`,`currency`, `price`, `paymentid`, `cardtype`, `cardassociation`,`myorder_id`)
- VALUES (:users_id,".time().",:order_id,:token,:paymentstatus,:currency,:price,:paymentid,:cardtype,:cardassociation,:myorder_id)")
- -> bindParam(':users_id', Yii::app()->user->id, PDO::PARAM_INT)
- -> bindParam(':order_id', $id, PDO::PARAM_INT)
- -> bindParam(':token', $checkoutForm->getToken(), PDO::PARAM_STR)
- -> bindParam(':paymentstatus', $checkoutForm->getPaymentStatus() , PDO::PARAM_INT)
- -> bindParam(':currency', $checkoutForm->getCurrency(), PDO::PARAM_STR)
- -> bindParam(':price', $price, PDO::PARAM_STR)
- -> bindParam(':paymentid', $checkoutForm->getPaymentId(), PDO::PARAM_STR)
- -> bindParam(':cardtype', $checkoutForm->getCardType(), PDO::PARAM_STR)
- -> bindParam(':cardassociation', $checkoutForm->getCardAssociation(), PDO::PARAM_STR)
- -> bindParam(':myorder_id', $explode_id[$i], PDO::PARAM_INT)
- -> execute();
- $i++;
- }
- }
- else
- {
- Yii::app() -> db -> createCommand("INSERT INTO
- `cms_payment_products` (`users_id`, `created`,`order_id`,`token`,`paymentstatus`,`currency`, `price`, `paymentid`, `cardtype`, `cardassociation`,`myorder_id`)
- VALUES (:users_id,".time().",:order_id,:token,:paymentstatus,:currency,:price,:paymentid,:cardtype,:cardassociation,:myorder_id)")
- -> bindParam(':users_id', Yii::app()->user->id, PDO::PARAM_INT)
- -> bindParam(':order_id', $order_id, PDO::PARAM_INT)
- -> bindParam(':token', $checkoutForm->getToken(), PDO::PARAM_STR)
- -> bindParam(':paymentstatus', $checkoutForm->getPaymentStatus() , PDO::PARAM_INT)
- -> bindParam(':currency', $checkoutForm->getCurrency(), PDO::PARAM_STR)
- -> bindParam(':price', $checkoutForm->getPrice(), PDO::PARAM_STR)
- -> bindParam(':paymentid', $checkoutForm->getPaymentId(), PDO::PARAM_STR)
- -> bindParam(':cardtype', $checkoutForm->getCardType(), PDO::PARAM_STR)
- -> bindParam(':cardassociation', $checkoutForm->getCardAssociation(), PDO::PARAM_STR)
- -> bindParam(':myorder_id', $checkoutForm->getBasketId(), PDO::PARAM_INT)
- -> execute();
- }
- // $payment = new PaymentProducts();
- // $payment->users_id = Yii::app()->user->id;
- // $payment->date = time();
- // $payment->order_id = $checkoutForm->getBasketId();
- // $payment->token = $checkoutForm->getToken();
- // $payment->paymentstatus = $checkoutForm->getPaymentStatus();
- // $payment->currency = $checkoutForm->getCurrency();
- // $payment->price = $checkoutForm->getPrice();
- // $payment->paymentid = $checkoutForm->getPaymentId();
- // $payment->cardtype = $checkoutForm->getCardType();
- // $payment->cardassociation = $checkoutForm->getCardAssociation();
- // $payment->save();
- $this->render('callbackpaymentmore', array("message"=>$message));
- }
- public function actionComplate()
- {
- if (!isset($_GET['reference']) || empty($_GET['reference'])){
- $this->redirect(Yii::app()->homeUrl);
- exit;
- }
- $mid = "mover";
- $reference = $_GET['reference'];
- $reference = (string)$reference;
- $reference = strip_tags($reference);
- //$production_url = "https://test.millikart.az:7444";
- $production_url = "https://pay.millikart.az";
- $data_url = "/gateway/payment/status?mid=".$mid."&reference=".$reference;
- //$data_url = "/gateway/payment/status?mid=".$mid."&reference=".$reference;
- $full_url = $production_url.$data_url;
- $xml = file_get_contents($full_url);
- $xml = simplexml_load_string($xml);
- $ref = htmlspecialchars($reference);
- $pay = PayReference::model()->findByAttributes(array('reference'=>$ref));
- if($xml->RC == "000" && $xml->description == "OK" && $xml->code == "0" && $pay == NULL)
- {
- // Reference id bazaya yazilir
- $p = new PayReference();
- $p ->users_id = Yii::app()->user->id;
- $p ->reference = $ref;
- $p->save();
- $user = Users::model()->findByPk(Yii::app()->user->id);
- if(strpos($ref, 'shipping')!== false)
- {
- $exist_reference = PayShippingWithCard::model()->find('reference=:reference', array(':reference'=>$ref));
- $order_ids = explode(',', $exist_reference->order_ids);
- $criteria = new CDbCriteria();
- $criteria->addInCondition("id", $order_ids);
- $criteria->addInCondition("users_id",array(Yii::app()->user->id));
- $orders = Orders::model()->findAll($criteria);
- if($exist_reference)
- {
- if($user->balance <= 0)
- {
- $new_balance = $xml->amount/100 + $user->balance;
- Users::model() -> updateByPk(Yii::app()->user->id, array('balance' => $new_balance));
- $ph = new PaymentHistory();
- $ph ->users_id = Yii::app()->user->id;
- $ph ->date = time();
- $ph ->log = '+ '.($xml->amount/100).'AZN ( Hazırkı balans : '.$new_balance.') AZN | Onlayn balans artımı';
- $ph->save();
- $ph = new PaymentHistory();
- $ph ->users_id = Yii::app()->user->id;
- $ph ->date = time();
- $ph ->log = '- '.($new_balance).'AZN catdirilma haqqi ucun balansdan cixildi.( Hazırkı balans : 0)';
- $ph->save();
- $command = Yii::app()->db->createCommand();
- $gen_code = $command
- ->select('secret_code')
- ->from('wh_door_lock')
- ->where('customer_code=:customer_code AND status=:status', array(':customer_code'=>Yii::app()->user->id+100000,'status'=>'0'))
- ->queryRow();
- $secret_code= rand(1000,9999);
- if(empty($gen_code))
- {
- $command->insert('wh_door_lock', array(
- 'customer_code' => Yii::app()->user->id+100000,
- 'secret_code' => $secret_code,
- 'createdDate' => date('Y-m-d H:i:s'),
- 'status' => '0'
- ));
- }
- else
- {
- $secret_code = $gen_code['secret_code'];
- }
- Sms::Send(Users::model()->findByPk(Yii::app()->user->id) -> mobile, '- '.($new_balance).'AZN catdirilma haqqi ucun balansdan cixildi.( Hazırkı balans :0). Giris kodu:'.$secret_code);
- Users::model() -> updateByPk(Yii::app()->user->id, array('balance' => 0));
- Orders::model()->updateAll(array( 'paid' => 1),$criteria);
- }
- else
- {
- $new_balance = $xml->amount/100 + $user->balance;
- Users::model() -> updateByPk(Yii::app()->user->id, array('balance' => $new_balance));
- $ph = new PaymentHistory();
- $ph ->users_id = Yii::app()->user->id;
- $ph ->date = time();
- $ph ->log = '+ '.($xml->amount/100).'AZN ( Hazırkı balans : '.$new_balance.') AZN | Onlayn balans artımı';
- $ph->save();
- $ph = new PaymentHistory();
- $ph ->users_id = Yii::app()->user->id;
- $ph ->date = time();
- $ph ->log = '- '.($new_balance).'AZN catdirilma haqqi ucun balansdan cixildi.( Hazırkı balans : 0)';
- $ph->save();
- $command = Yii::app()->db->createCommand();
- $gen_code = $command
- ->select('secret_code')
- ->from('wh_door_lock')
- ->where('customer_code=:customer_code AND status=:status', array(':customer_code'=>Yii::app()->user->id+100000,'status'=>'0'))
- ->queryRow();
- $secret_code= rand(1000,9999);
- if(empty($gen_code))
- {
- $command->insert('wh_door_lock', array(
- 'customer_code' => Yii::app()->user->id+100000,
- 'secret_code' => $secret_code,
- 'createdDate' => date('Y-m-d H:i:s'),
- 'status' => '0'
- ));
- }
- else
- {
- $secret_code = $gen_code['secret_code'];
- }
- Sms::Send(Users::model()->findByPk(Yii::app()->user->id) -> mobile, '- '.($new_balance).'AZN catdirilma haqqi ucun balansdan cixildi.( Hazırkı balans :0). Giris kodu:'.$secret_code);
- Users::model() -> updateByPk(Yii::app()->user->id, array('balance' => 0));
- Orders::model()->updateAll(array( 'paid' => 1),$criteria);
- }
- $resp = true;
- }
- }
- else
- {
- if ($user)
- {
- $new_balance = $user->balance + ($xml->amount/100);
- Users::model() -> updateByPk(Yii::app()->user->id, array('balance' => $new_balance));
- // balans loqlari
- $ph = new PaymentHistory();
- $ph ->users_id = Yii::app()->user->id;
- $ph ->date = time();
- $ph ->log = '+ '.($xml->amount/100).'AZN ( Hazırkı balans : '.$new_balance.') AZN | Onlayn balans artımı';
- $ph->save();
- // balans loq END
- $hesab = Hesablar::model()->findByPk(1);
- $hesab->hesab_mebleg = (float) $hesab->hesab_mebleg + (float) $xml->amount/100;
- $hesab->save(false);
- $resp = true;
- }
- }
- }
- else
- $resp = false;
- $this->render('paymentcomplate',array('xml'=>$xml,'resp'=>$resp));
- }
- public function actionsuccessPayment(){
- if (!isset($_POST['trans_id']) || empty($_POST['trans_id'])){
- $this->redirect(Yii::app()->homeUrl);
- }
- $ca = "/home/mover.az/protected/components/pasha/PSroot.pem";
- $key = "/home/mover.az/protected/components/pasha/private.0010045.pem";
- $cert = "/home/mover.az/protected/components/pasha/imakstore.0010045.pem";
- $password = "P@ssword";
- $merchant_handler = "https://ecomm.pashabank.az:18443/ecomm2/MerchantHandler";
- $client_handler = "https://ecomm.pashabank.az:8463/ecomm2/ClientHandler";
- $success_page = "success.html";
- $card_expired_page = "card_expired.html";
- $insufficient_funds_page = "insufficient_funds.html";
- $system_malfunction_page = "system_malfunction.html";
- $trans_id = filter_input(INPUT_POST,'trans_id');
- if(strlen($trans_id) != 20 ||
- base64_encode(base64_decode($trans_id)) != $trans_id) {
- }
- $params['command'] = "C";
- $params['trans_id'] = $trans_id;
- if (filter_input(INPUT_SERVER, 'REMOTE_ADDR') != null) {
- $params['client_ip_addr'] = filter_input(INPUT_SERVER, 'REMOTE_ADDR');
- }elseif(filter_input(INPUT_SERVER, 'HTTP_X_FORWARDED_FOR') != null){
- $params['client_ip_addr'] = filter_input(INPUT_SERVER, 'HTTP_X_FORWARDED_FOR');
- }elseif(filter_input(INPUT_SERVER, 'HTTP_CLIENT_IP') != null){
- $params['client_ip_addr'] = filter_input(INPUT_SERVER, 'HTTP_CLIENT_IP');
- }else{
- $params['client_ip_addr'] = "10.10.10.10";
- }
- $qstring = http_build_query($params);
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $merchant_handler);
- curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
- curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
- curl_setopt($ch, CURLOPT_POSTFIELDS, $qstring);
- curl_setopt($ch, CURLOPT_SSLCERT, $cert);
- curl_setopt($ch, CURLOPT_SSLKEY, $key);
- curl_setopt($ch, CURLOPT_SSLKEYTYPE, "PEM");
- curl_setopt($ch, CURLOPT_SSLKEYPASSWD, $password);
- curl_setopt($ch, CURLOPT_CAPATH, $ca);
- curl_setopt($ch, CURLOPT_SSLCERTTYPE, "P12");
- curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2);
- $result = curl_exec($ch);
- if (curl_error($ch)) {
- header("Location: " . $system_malfunction_page);
- }
- curl_close($ch);
- //print_R($result); exit();
- $res = explode(":",$result)[1];
- $res = explode("RESULT_CODE",$res);
- $res = trim($res[0]);
- $ref = urlencode($trans_id);
- //$pay = PayReference::model()->findByAttributes(array('reference'=>$ref));
- $topupBalnace = TopupBalanceWpc::model()->find('transaction_id=:transaction_id', array(':transaction_id'=>$ref));
- if($res == "OK"){
- if($topupBalnace && $topupBalnace->status_id == 3){
- $this->redirect(Yii::app()->homeUrl);
- }
- $topupBalnace->status_id = 1;
- $topupBalnace->save();
- if($topupBalnace && $topupBalnace->status_id == 1){
- $p = new PayReference();
- $p ->users_id = Yii::app()->user->id;
- $p ->reference = $ref;
- $p->save();
- $user = Users::model()->findByPk(Yii::app()->user->id);
- if ($user){
- //$mblg = $_COOKIE["amnt"];
- $new_balance = $user->balance + $topupBalnace->balance;
- Users::model() -> updateByPk(Yii::app()->user->id, array('balance' => $new_balance));
- // balans loqlari
- $ph = new PaymentHistory();
- $ph ->users_id = Yii::app()->user->id;
- $ph ->date = time();
- $ph ->log = '+ '.$topupBalnace->balance.' AZN Onlayn balans artımı ( Hazırkı balans : '.$new_balance.') AZN | Onlayn balans artımı';
- $ph->save();
- // balans loq END
- $hesab = Hesablar::model()->findByPk(1);
- $hesab->hesab_mebleg = (float) $hesab->hesab_mebleg + $topupBalnace->balance;
- $hesab->save(false);
- $resp = true;
- }
- $topupBalnace->status_id = 3;
- $topupBalnace->save();
- }else{
- $topupBalnce->status_id = 2;
- $topupBalnce->save();
- }
- }else{
- $resp = false;
- }
- $this->render('paymentsuccess',array('res'=>$res,'mblg'=>$topupBalnace->balance));
- }
- public function actionerrorPayment(){
- $this->render('paymenterror');
- }
- public function actionIndex() {
- if(Yii::app()->language=="az")
- {
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, onlayn alış-veriş, çatdırılma xidməti, türkiyədən sifariş, türkiyə saytları, etibarlı şirkət, geyim sifarişi, ayaqqabı sifarişi'), 'keywords');
- $this->pageTitle = Yii::t('text','Amerikadan və Türkiyədən çatdırılma xidməti | Mover.az');
- }
- elseif(Yii::app()->language=="en")
- {
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, online shopping, delivery service, order from turkey, turkey online shopping webpages, trusted company, dress order, shoes order'), 'keywords');
- $this->pageTitle = Yii::t('text','Let the mover.az deliver all your orders from Turkey | Mover.az');
- }
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/ogimg.jpg';
- Yii::app()->params['OG_URL'] = 'http://mover.az';
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = Yii::t('text','Türkiyədən və Amerikadan məhsulların çatdırılma xidməti');
- Yii::app()->clientScript->registerLinkTag('canonical', null, Yii::app()->request->getHostInfo() . '/' . Yii::app()->request->getPathInfo());
- $this -> render('index');
- }
- public function actionOrder() {
- $this->pageTitle = 'Mover.az - '. Yii::t('text','Sifarişlərim');
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this -> createAbsoluteUrl('site/Order'));
- $criteria = new CDbCriteria;
- $criteria->with = 'users';
- $criteria->condition = "t.status='1' and t.users_id= :user_id";
- $criteria->order = 't.id asc';
- $criteria->params = array(':user_id' => (int)Yii::app() -> user -> id);
- $orders = Orders::model()->findAll($criteria);
- $last_order = end($orders);
- $model = new Orders();
- $this -> render('order',array('orders'=>$orders,'last_order'=>$last_order,'model'=>$model));
- }
- public function actionBundle() {
- $this->pageTitle = 'Mover.az - '. Yii::t('text','Bağlamalarım');
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this -> createAbsoluteUrl('site/Order'));
- $criteria = new CDbCriteria;
- $criteria->with = 'users';
- $criteria->condition = "t.status='1' and t.users_id= :user_id";
- $criteria->order = 't.id asc';
- $criteria->params = array(':user_id' => (int)Yii::app() -> user -> id);
- $orders = Orders::model()->findAll($criteria);
- $last_order = end($orders);
- $model = new Orders();
- $this -> render('bundle',array('orders'=>$orders,'last_order'=>$last_order,'model'=>$model));
- }
- public function actionKuponal(){
- $getLoginUser = Users::model()->findByPk(Yii::app()->user->id);
- $price = abs($_POST['coupon_buy']);
- if(isset($_POST['coupon_buy']))
- {
- if($price < 10)
- {
- Yii::app()->user->setFlash('amount_great_less','Məbləğ 10 TL-dən az olmamalıdir');
- return $this->redirect('/kuponal');
- }
- }
- switch ($price) {
- case 50:
- $coupon_type = 1;
- break;
- case 100:
- $coupon_type = 2;
- break;
- case 250:
- $coupon_type = 3;
- break;
- case 500:
- $coupon_type = 4;
- break;
- case 1000:
- $coupon_type = 5;
- break;
- case 2000:
- $coupon_type = 6;
- break;
- default:
- $coupon_type = 7;
- }
- $price = $price*1.05;
- if(isset($_POST['coupon_buy']) && $getLoginUser)
- {
- ## 1. ADIM için örnek kodlar ##
- ####################### DÜZENLEMESİ ZORUNLU ALANLAR #######################
- #
- ## API Entegrasyon Bilgileri - Mağaza paneline giriş yaparak BİLGİ sayfasından alabilirsiniz.
- $merchant_id = '109349';
- $merchant_key = 'khPZ6dN4gC8aZ4e9';
- $merchant_salt = 'BLeRAbrwku83Mrk8';
- #
- ## Müşterinizin sitenizde kayıtlı veya form vasıtasıyla aldığınız eposta adresi
- $email = $getLoginUser->email;
- #
- ## Tahsil edilecek tutar.
- $payment_amount = round($price*100); //9.99 için 9.99 * 100 = 999 gönderilmelidir.
- #
- ## Sipariş numarası: Her işlemde benzersiz olmalıdır!! Bu bilgi bildirim sayfanıza yapılacak bildirimde geri gönderilir.
- $merchant_oid = $getLoginUser->id.rand(0,9999).'coupon';
- #
- ## Müşterinizin sitenizde kayıtlı veya form aracılığıyla aldığınız ad ve soyad bilgisi
- $user_name = $getLoginUser->name." ".$getLoginUser->surname;
- #
- ## Müşterinizin sitenizde kayıtlı veya form aracılığıyla aldığınız adres bilgisi
- $user_address = $getLoginUser->address;
- #
- ## Müşterinizin sitenizde kayıtlı veya form aracılığıyla aldığınız telefon bilgisi
- $user_phone = $getLoginUser->mobile;
- #
- ## Başarılı ödeme sonrası müşterinizin yönlendirileceği sayfa
- ## !!! Bu sayfa siparişi onaylayacağınız sayfa değildir! Yalnızca müşterinizi bilgilendireceğiniz sayfadır!
- ## !!! Siparişi onaylayacağız sayfa "Bildirim URL" sayfasıdır (Bakınız: 2.ADIM Klasörü).
- $merchant_ok_url = "https://www.mover.az/callbackpaymentpaytrsuccess?coupone=$merchant_oid";
- #
- ## Ödeme sürecinde beklenmedik bir hata oluşması durumunda müşterinizin yönlendirileceği sayfa
- ## !!! Bu sayfa siparişi iptal edeceğiniz sayfa değildir! Yalnızca müşterinizi bilgilendireceğiniz sayfadır!
- ## !!! Siparişi iptal edeceğiniz sayfa "Bildirim URL" sayfasıdır (Bakınız: 2.ADIM Klasörü).
- $merchant_fail_url = "https://www.mover.az/callbackpaymentpaytrfailure";
- #
- ## Müşterinin sepet/sipariş içeriği
- $user_basket = base64_encode(json_encode(array(
- array($price) // 1. ürün (Ürün Ad - Birim Fiyat - Adet )
- )));
- #
- /* ÖRNEK $user_basket oluşturma - Ürün adedine göre array'leri çoğaltabilirsiniz
- $user_basket = base64_encode(json_encode(array(
- array("Örnek ürün 1", "18.00", 1), // 1. ürün (Ürün Ad - Birim Fiyat - Adet )
- array("Örnek ürün 2", "33.25", 2), // 2. ürün (Ürün Ad - Birim Fiyat - Adet )
- array("Örnek ürün 3", "45.42", 1) // 3. ürün (Ürün Ad - Birim Fiyat - Adet )
- )));
- */
- ############################################################################################
- ## Kullanıcının IP adresi
- if( isset( $_SERVER["HTTP_CLIENT_IP"] ) ) {
- $ip = $_SERVER["HTTP_CLIENT_IP"];
- } elseif( isset( $_SERVER["HTTP_X_FORWARDED_FOR"] ) ) {
- $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
- } else {
- $ip = $_SERVER["REMOTE_ADDR"];
- }
- ## !!! Eğer bu örnek kodu sunucuda değil local makinanızda çalıştırıyorsanız
- ## buraya dış ip adresinizi (https://www.whatismyip.com/) yazmalısınız. Aksi halde geçersiz paytr_token hatası alırsınız.
- $user_ip=$ip;
- ##
- ## İşlem zaman aşımı süresi - dakika cinsinden
- $timeout_limit = "30";
- ## Hata mesajlarının ekrana basılması için entegrasyon ve test sürecinde 1 olarak bırakın. Daha sonra 0 yapabilirsiniz.
- $debug_on = 1;
- ## Mağaza canlı modda iken test işlem yapmak için 1 olarak gönderilebilir.
- if(Yii::app()->user->id==23114)
- $test_mode = 1;
- else
- $test_mode = 0;
- $no_installment = 0; // Taksit yapılmasını istemiyorsanız, sadece tek çekim sunacaksanız 1 yapın
- ## Sayfada görüntülenecek taksit adedini sınırlamak istiyorsanız uygun şekilde değiştirin.
- ## Sıfır (0) gönderilmesi durumunda yürürlükteki en fazla izin verilen taksit geçerli olur.
- $max_installment = 0;
- $currency = "TL";
- ####### Bu kısımda herhangi bir değişiklik yapmanıza gerek yoktur. #######
- $hash_str = $merchant_id .$user_ip .$merchant_oid .$email .$payment_amount .$user_basket.$no_installment.$max_installment.$currency.$test_mode;
- $paytr_token=base64_encode(hash_hmac('sha256',$hash_str.$merchant_salt,$merchant_key,true));
- $post_vals=array(
- 'merchant_id'=>$merchant_id,
- 'user_ip'=>$user_ip,
- 'merchant_oid'=>$merchant_oid,
- 'email'=>$email,
- 'payment_amount'=>$payment_amount,
- 'paytr_token'=>$paytr_token,
- 'user_basket'=>$user_basket,
- 'debug_on'=>$debug_on,
- 'no_installment'=>$no_installment,
- 'max_installment'=>$max_installment,
- 'user_name'=>$user_name,
- 'user_address'=>$user_address,
- 'user_phone'=>$user_phone,
- 'merchant_ok_url'=>$merchant_ok_url,
- 'merchant_fail_url'=>$merchant_fail_url,
- 'timeout_limit'=>$timeout_limit,
- 'currency'=>$currency,
- 'test_mode'=>$test_mode
- );
- $ch=curl_init();
- curl_setopt($ch, CURLOPT_URL, "https://www.paytr.com/odeme/api/get-token");
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- curl_setopt($ch, CURLOPT_POST, 1) ;
- curl_setopt($ch, CURLOPT_POSTFIELDS, $post_vals);
- curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
- curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
- curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
- curl_setopt($ch, CURLOPT_TIMEOUT, 20);
- $result = @curl_exec($ch);
- if(curl_errno($ch))
- die("PAYTR IFRAME connection error. err:".curl_error($ch));
- curl_close($ch);
- $result=json_decode($result,1);
- if($result['status']=='success')
- {
- $token=$result['token'];
- }
- else
- die("PAYTR IFRAME failed. reason:".$result['reason']);
- $payment_amount2 = $payment_amount/100;
- $couponBuy = new CouponAction();
- $couponBuy->user_id = Yii::app()->user->id;
- $couponBuy->price = $payment_amount2;
- $couponBuy->merchant_oid = $merchant_oid;
- $couponBuy->paymentstatus = "loading";
- $couponBuy->coupontype = $coupon_type;
- $couponBuy->created = time();
- $couponBuy->save();
- $hesab = Hesablar::model()->findByPk(4);
- $hesab->hesab_mebleg = (float) $hesab->hesab_mebleg + (float) $payment_amount2;
- $hesab->save(false);
- return $this->render('buycouponpaytr',array("getProduct"=>"","datatype"=>"","token"=>$token));
- }
- $this->render('kuponal');
- }
- public function actionKupon(){
- $user = Users::model()->findByPk(Yii::app()->user->id);
- $c = new CDbCriteria();
- $c ->condition = "user_id = '".Yii::app()->user->id."' ";
- $c ->order = "`id` DESC";
- $logs = CouponHistory::model()->findAll($c);
- $sendUserId = Yii::app()->user->id;
- $sendUserInfo = Users::model()->findByPk($sendUserId);
- $sendUserCouponBalance = $sendUserInfo->coupon_balance;
- if(Yii::app()->request->isPostRequest)
- {
- $sendCouponBalance = Yii::app()->request->getPost('coupone_balance');
- $recipientClientId = Yii::app()->request->getPost('recipient_client_id');
- $receiveUserId = $recipientClientId - 100000;
- $receiveUserInfo = Users::model()->findByPk($receiveUserId);
- if($sendCouponBalance == '' || $recipientClientId == '')
- {
- Yii::app()->user->setFlash('is_not_empty', "Xanalar boş olmamalıdır.");
- return $this->render('coupon_balance',array('user' =>$user ,'logs' =>$logs,'aa'=>$aa));
- }
- if($sendUserId+100000 == $recipientClientId)
- {
- Yii::app()->user->setFlash('dont_same_id', "Müştəri kodu eyni ola bilməz.");
- return $this->render('coupon_balance',array('user' =>$user ,'logs' =>$logs));
- }
- if(!$receiveUserInfo)
- {
- Yii::app()->user->setFlash('dont_exist_clinet', "Bu koda uyğun müştəri mövcud deyil.");
- return $this->render('coupon_balance',array('user' =>$user ,'logs' =>$logs));
- }
- if(!is_numeric($sendCouponBalance))
- {
- Yii::app()->user->setFlash('not_numeric', "Məbləğ rəqəm olmalıdır.");
- return $this->render('coupon_balance',array('user' =>$user ,'logs' =>$logs));
- }
- if($sendCouponBalance < 0)
- {
- Yii::app()->user->setFlash('great_than', "Məbləğ 10 TL-dən az olmamalıdır.");
- return $this->render('coupon_balance',array('user' =>$user ,'logs' =>$logs));
- }
- if($sendUserCouponBalance < $_POST['coupone_balance'])
- {
- Yii::app() -> user -> setFlash('insufficient_fund', "Bu əməliyyatı yerinə yetirmək üçün kupon balansınız kifayət qədər deyil");
- return $this->render('coupon_balance',array('user' =>$user ,'logs' =>$logs));
- }
- else
- {
- $subtractionNewBalance = $sendUserCouponBalance - $sendCouponBalance;
- Users::model() -> updateByPk($sendUserId, array('coupon_balance' => $subtractionNewBalance));
- $coupon_send_log = New CouponHistory();
- $coupon_send_log->user_id = $sendUserId;
- $coupon_send_log->date = date('Y-m-d H:i:s');
- $coupon_send_log->log = '- '.$recipientClientId.' kodlu müştəriyə '.$sendCouponBalance.' TL kupon köçürməsi.Hal hazırki balans '.$subtractionNewBalance.') TL | Kupon Tansfer | '.$recipientClientId.' ';
- $coupon_send_log->type = 'send_transfer';
- $coupon_send_log->save();
- $receiveAddBalance = $receiveUserInfo->coupon_balance + $sendCouponBalance;
- Users::model() -> updateByPk($receiveUserId, array('coupon_balance' => $receiveAddBalance));
- $sendClientId = $sendUserId+100000;
- $coupon_receive_log = New CouponHistory();
- $coupon_receive_log->user_id = $receiveUserId;
- $coupon_receive_log->date = date('Y-m-d H:i:s');
- $coupon_receive_log->log = '+'.$sendClientId.' kodlu müştəridən balansa '.$sendCouponBalance.'TL köçürmə.Hal hazırki balans '.$receiveAddBalance.') TL | Kupon Tansfer | '.$sendClientId.' ';
- $coupon_receive_log->type = 'add_transfer';
- $coupon_receive_log->save();
- if($coupon_send_log && $coupon_receive_log )
- {
- $user = Users::model()->findByPk(Yii::app()->user->id);
- $c = new CDbCriteria();
- $c ->condition = "user_id = '".Yii::app()->user->id."' ";
- $c ->order = "`id` DESC";
- $logs = CouponHistory::model()->findAll($c);
- Yii::app()->user->setFlash('success', "Əməliyyat uğurla yerinə yetirlidi.");
- return $this->render('coupon_balance',array('user' =>$user ,'logs' =>$logs));
- }
- else
- {
- Yii::app()->user->setFlash('fail', "Əməliyyatda xəta baş verdi.");
- return $this->render('coupon_balance',array('user' =>$user ,'logs' =>$logs));
- }
- }
- }
- $this->render('coupon_balance',array('user' =>$user ,'logs' =>$logs));
- }
- public function actionTest() {
- $this->pageTitle = 'Mover.az - '. Yii::t('text','Sifarişlərim');
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this -> createAbsoluteUrl('site/Order'));
- $criteria = new CDbCriteria;
- $criteria->with = 'users';
- $criteria->condition = "t.status='1' and t.users_id= :user_id";
- $criteria->order = 't.id asc';
- $criteria->params = array(':user_id' => (int)Yii::app() -> user -> id);
- $orders = Orders::model()->findAll($criteria);
- $last_order = end($orders);
- $model = new Orders();
- $this -> render('test',array('orders'=>$orders,'last_order'=>$last_order,'model'=>$model));
- }
- public function actionOrderDo() {
- $p = Yii::app() -> request -> getPost('key');
- $p = MyClass::purify($p);
- $orders = Orders::model() -> with('users') -> findAll('t.delivery="' . $p . '" and t.status="1" and users_id=:user_id', array(":user_id" => Yii::app() -> user -> id));
- /*if ($orders == NULL)
- throw new CHttpException(404, 'Səhv müraciət');*/
- $this -> renderPartial('orderdo', array('orders' => $orders));
- }
- public function actionTestlayout(){
- $this->layout = "testlayout";
- $this->render('index');
- }
- public function actionMyorder() {
- $id = Yii::app()->user->id;
- $criteria = new CDbCriteria;
- $criteria ->condition = 'users_id=:id AND basket = "0" ';
- $criteria->order = 'id DESC';
- $criteria -> params = array(":id" => $id);
- $orders = Myorder::model()->findAll($criteria);
- $this -> renderPartial('myorder', array('orders' => $orders));
- }
- public function actionForgetPassword() {
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this -> createAbsoluteUrl('site/ForgetPassword'));
- $this->pageTitle = 'Mover.az - '.Yii::t('text','Şifrəni unutmusunuz?');
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/ogimg.jpg';
- Yii::app()->params['OG_URL'] = 'http://mover.az';
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = Yii::t('text','Şifrəni unutmusunuz?');
- $model = new ForgotPassword();
- if (isset($_POST['ForgotPassword'])) {
- $model -> attributes = CHtml::encodeArray($_POST['ForgotPassword']);
- if ($model -> validate()) {
- $code = sha1(md5(MyClass::RandomPassword(10)));
- Users::model() -> updateByPk($model -> userdata -> id, array('user_activation_key' => $code));
- $to = $model -> userdata -> email;
- $from_name = Yii::app() -> name;
- $from = Yii::app() -> params['adminEmail'];
- $subject = "Şifrə yeniləmə";
- $text_message = "";
- $link = $this -> createAbsoluteUrl('site/resetpassword', array('key' => $code));
- $html_message = "<a href=\"$link\">Şifrəni yeniləmək üçün click edin</a>";
- require '/home/mover.az/mailgun-php/vendor/autoload.php';
- //$httpClient = new Http\Adapter\Guzzle6\Client();
- $mailgunClient = new Mailgun\Mailgun('060c1707ab0899fcf36396af78c8ffa8-059e099e-9f1fe8d6');
- $domain = 'mail.mover.az';
- # Make the call to the client.
- $result = $mailgunClient->sendMessage($domain, array(
- 'from' => 'MOVER.AZ <info@mover.az>',
- 'to' => $to,
- 'subject' => 'Şifrə yeniləmə',
- 'html' => $html_message,
- ));
- if($result->http_response_code == 200)
- {
- Yii::app() -> user -> setFlash('congrat', "Şifrənin dəyişdirilməsi üçün müraciət e-mail ünvanınıza göndərildi");
- $this -> refresh();
- }
- }
- }
- $this -> render('forgetpassword', array('model' => $model));
- }
- public function actionResetPassword($key = NULL) {
- $this->pageTitle = 'Mover.az - '.Yii::t('text','Şifrəni yenilə');
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/ogimg.jpg';
- Yii::app()->params['OG_URL'] = 'http://mover.az';
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = Yii::t('text','Şifrəni yenilə');
- if ($key == NULL)
- throw new CHttpException(404, 'Səhv müraciət');
- $now = time();
- $user = Users::model() -> findByAttributes(array('user_activation_key' => $key));
- if ($user == NULL)
- throw new CHttpException(404, 'Səhv müraciət');
- $model = new ResetPassword();
- //$model -> user_id = $id;
- if (isset($_POST['ResetPassword'])) {
- $model -> attributes = CHtml::encodeArray($_POST['ResetPassword']);
- $model -> a_key = $key;
- if ($model -> validate()) {
- $new_password = md5(md5($model -> new_password));
- $user -> password = $new_password;
- if ($user -> update(array('password'))) {
- Yii::app() -> user -> setFlash('success', 'Şifrə uğurla yeniləndi');
- }
- }
- }
- $this -> render('resetpassword', array('model' => $model));
- }
- public function actionRegisterAjax() {
- //$this -> setPageTitle('APA - Qeydiyyat forması');
- $model = new Users;
- $model -> scenario = 'register';
- if (isset($_POST['Users'])) {
- $model -> attributes = CHtml::encodeArray($_POST['Users']);
- $day = $_POST['day'];
- $month = $_POST['month'];
- $year = $_POST['year'];
- $sex = $_POST['sex'];
- $optional = intval($_POST['optional']);
- $optional_desc = strip_tags($_POST['optional_desc']);
- $model -> user_activation_key = sha1(md5(time() + rand(999, 999999999)));
- $model -> activation_sms_key = MyClass::GenerateSMSKey();
- $model -> rdate = time();
- $model -> bday = implode('/', array($day,$month,$year));
- $model->sex = $sex;
- $model->status = '1';
- $model->optional = $optional;
- $model->optional_desc = $optional_desc;
- #echo $model -> bday;exit;
- $this -> performAjaxValidation($model);
- if ($model -> validate()) {
- if ($model -> save(FALSE)) {
- // Sms::Send($model -> mobile, "Tesdiqleme kodu: {$model -> activation_sms_key}");
- //$model -> sendActivation();
- }
- echo CJSON::encode(array('status' => 'success','url'=>Yii::app()->createAbsoluteUrl('site/login')));
- Yii::app() -> end();
- } else {
- $error = CActiveForm::validate($model);
- echo $error;
- Yii::app() -> end();
- }
- }
- }
- //beyanname formu
- public function actionFaktura() {
- //$this -> setPageTitle('APA - Qeydiyyat forması');
- $model = new Orders;
- //$model -> scenario = 'register';
- if (isset($_POST['Orders'])) {
- $newPhoto = CUploadedFile::getInstance($model, 'file');
- if(!$newPhoto){
- echo CJSON::encode(array('status' => 'failed','Orders_file'=>Yii::t('text','İnvoice boşdur')));
- Yii::app() -> end();
- }
- $model -> attributes = CHtml::encodeArray($_POST['Orders']);
- $model->users_id = Yii::app()->user->id;
- //$model->userkey = $model->users->user_key;
- $model->delivery = '1';
- $model->status = '1';
- $model->addedbyuser = '1';
- $model->date1 = $_POST['Orders']['date1'];
- $model->order_key = substr(uniqid(mt_rand()) , 0, 8);
- $model->add_date = date("Y-m-d H:i:s");
- $this -> performAjaxValidation($model);
- if ($model -> validate()) {
- $model->file = empty($newPhoto) ? $model->file : $newPhoto;
- if(!empty($newPhoto))
- {
- $photoPath = Yii::app()->params['invoice_path'];
- if (!file_exists($photoPath)) {
- mkdir($photoPath, 0777, true);
- }
- $name = time().$newPhoto->getName();
- $a = pathinfo($name);
- $name = md5($a['filename']).".".$a['extension'];
- $model->file->saveAs($photoPath.$name);
- $model->file = $name;
- }
- $model -> save(FALSE);
- echo CJSON::encode(array('status' => 'success','alert'=>Yii::t('text','Bəyannamə göndərildi')));
- Yii::app() -> end();
- } else {
- $error = CActiveForm::validate($model);
- echo $error;
- Yii::app() -> end();
- }
- }
- }
- public function actionNewInvoice() {
- //var_dump($_POST); die;
- $model = new Orders;
- if (isset($_POST['Orders'])) {
- $model -> attributes = CHtml::encodeArray($_POST['Orders']);
- $newPhoto = CUploadedFile::getInstance($model, 'file');
- if($_POST['gift'] == 1 ){
- $model->price = 0;
- }else{
- if((!isset($_POST['Orders']['from']) || $_POST['Orders']['from'] != 'other') && !$newPhoto){
- echo CJSON::encode(array('status' => 'failed','Orders_file'=>Yii::t('text','İnvoice boşdur')));
- Yii::app() -> end();
- }
- }
- $model->users_id = Yii::app()->user->id;
- //$model->userkey = $model->users->user_key;
- $model->delivery = '1';
- $model->status = '1';
- $model->valute_id = $_POST['Orders']['valute_id'];
- $model->addedbyuser = '1';
- $model->date1 = $_POST['Orders']['date1'];
- $model->order_key = substr(uniqid(mt_rand()) , 0, 8);
- if($_POST['Orders']['magaza_tracking'] == 1)
- {
- $model->magaza_order_id = $_POST['Orders']['magaza_order_id'];
- }
- elseif($_POST['Orders']['magaza_tracking'] == 2)
- {
- $model->magaza_tracking = $_POST['Orders']['magaza_order_id'];
- }
- $model->add_date = date("Y-m-d H:i:s");
- $this -> performAjaxValidation($model);
- if ($model -> validate()) {
- $model->file = empty($newPhoto) ? $model->file : $newPhoto;
- if(!empty($newPhoto))
- {
- $photoPath = Yii::app()->params['invoice_path'];
- if (!file_exists($photoPath)) {
- mkdir($photoPath, 0777, true);
- }
- $name = time().$newPhoto->getName();
- $a = pathinfo($name);
- $name = md5($a['filename']).".".$a['extension'];
- $model->file->saveAs($photoPath.$name);
- $model->file = $name;
- }
- $model -> save(FALSE);
- if(isset($_POST['Orders']['from']) && $_POST['Orders']['from'] == 'other'){
- $Receiver = new Receiver;
- $Receiver->order_id = $model->id;
- $Receiver->users_id = $model->users_id;
- $Receiver->fullname = $_POST['Orders']['receiver_fullname'];
- $Receiver->phone = $_POST['Orders']['receiver_phone'];
- $Receiver->address = $_POST['Orders']['receiver_address'];
- $Receiver->uid = $_POST['Orders']['receiver_id'];
- if(!$Receiver->save(false)){
- var_dump($Receiver);
- $error = CActiveForm::validate($Receiver);
- echo $error;
- Yii::app() -> end();
- }
- }
- echo CJSON::encode(array('status' => 'success','alert'=>Yii::t('text','Bəyannamə göndərildi')));
- Yii::app() -> end();
- } else {
- $error = CActiveForm::validate($model);
- echo $error;
- Yii::app() -> end();
- }
- }
- }
- public function actionAddBeyenname() {
- $model = Orders::model()->findByPk((int)$_POST['Orders']['id']);
- $old = clone $model;
- if ($model == NULL)
- throw new CHttpException(404, 'Səhv müraciət');
- if ($model->users_id != Yii::app()->user->id)
- throw new CHttpException(404, 'Səhv müraciət');
- if (isset($_POST['Orders'])) {
- $newPhoto = CUploadedFile::getInstance($model, 'file');
- if(!$newPhoto && strlen($model->file) <2){
- echo CJSON::encode(array('status' => 'failed','Orders_file'=>Yii::t('text','İnvoice boşdur')));
- Yii::app() -> end();
- }
- $model -> attributes = CHtml::encodeArray($_POST['Orders']);
- $model->delivery = ($model->delivery == '1')? '1':'8';
- $model->edit_date = date("Y-m-d H:i:s");
- $model->date8 = date("Y-m-d");
- $this -> performAjaxValidation($model);
- if ($model -> validate()) {
- $model->file = empty($newPhoto) ? $model->file : $newPhoto;
- if(!empty($newPhoto))
- {
- $photoPath = Yii::app()->params['invoice_path'];
- if (!file_exists($photoPath)) {
- mkdir($photoPath, 0777, true);
- }
- $name = time().$newPhoto->getName();
- $a = pathinfo($name);
- $name = md5($a['filename']).".".$a['extension'];
- $model->file->saveAs($photoPath.$name);
- $model->file = $name;
- }
- $model -> save(FALSE);
- /*********************************************
- * Istifadeci melumatlari deyishende loqlamaq
- *********************************************/
- $message = "İstifadəçi məhsulun dəyişdi:";
- $message .= "Ölkə: ".$old ->country_id ." -> ".$model ->country_id ;
- $message .= "Qiymət: ".$old ->price ." -> ". $model ->price ;
- $message .= "Valyuta: ".$old ->valute_id ." -> ".$model ->valute_id;
- $message .= "Bağlama sayı: ".$old ->count ." -> ".$model ->count;
- $message .= "Sifariş tarixi: ".$old ->date1 ." -> ".$model ->date1;
- $message .= "Şərh: ".$old ->comments ." -> ".$model ->comments;
- $message .= "Mağaza: ".$old ->shop ." -> ".$model ->shop;
- Iplog::write($message);
- /*********************************
- * Log end
- *******************************/
- echo CJSON::encode(array('status' => 'success','alert'=>Yii::t('text','Redaktə edildi')));
- Yii::app() -> end();
- } else {
- $error = CActiveForm::validate($model);
- echo $error;
- Yii::app() -> end();
- }
- }
- }
- public function actionEditFaktura() {
- /*print_r($_POST);
- exit;*/
- //$this -> setPageTitle('APA - Qeydiyyat forması');
- $model = Orders::model()->findByPk((int)$_POST['Orders']['id']);
- $old = clone $model;
- if ($model == NULL)
- throw new CHttpException(404, 'Səhv müraciət');
- if ($model->users_id != Yii::app()->user->id)
- throw new CHttpException(404, 'Səhv müraciət');
- //$model -> scenario = 'register';
- if (isset($_POST['Orders'])) {
- $newPhoto = CUploadedFile::getInstance($model, 'file');
- if(!$newPhoto){
- echo CJSON::encode(array('status' => 'failed','Orders_file'=>Yii::t('text','İnvoice boşdur')));
- Yii::app() -> end();
- }
- $model -> attributes = CHtml::encodeArray($_POST['Orders']);
- $model->users_id = Yii::app()->user->id;
- //$model->userkey = $model->users->user_key;
- $model->status = '1';
- $model->edit_date = date("Y-m-d H:i:s");
- $this -> performAjaxValidation($model);
- if ($model -> validate()) {
- $model->file = empty($newPhoto) ? $model->file : $newPhoto;
- if(!empty($newPhoto))
- {
- $photoPath = Yii::app()->params['invoice_path'];
- if (!file_exists($photoPath)) {
- mkdir($photoPath, 0777, true);
- }
- $name = time().$newPhoto->getName();
- $a = pathinfo($name);
- $name = md5($a['filename']).".".$a['extension'];
- $model->file->saveAs($photoPath.$name);
- $model->file = $name;
- }
- $model -> save(FALSE);
- /*********************************************
- * Istifadeci melumatlari deyishende loqlamaq
- *********************************************/
- $message = "İstifadəçi məhsulun dəyişdi:";
- $message .= "Ölkə: ".$old ->country_id ." -> ".$model ->country_id ;
- $message .= "Qiymət: ".$old ->price ." -> ". $model ->price ;
- $message .= "Valyuta: ".$old ->valute_id ." -> ".$model ->valute_id;
- $message .= "Bağlama sayı: ".$old ->count ." -> ".$model ->count;
- $message .= "Sifariş tarixi: ".$old ->date1 ." -> ".$model ->date1;
- $message .= "Şərh: ".$old ->comments ." -> ".$model ->comments;
- $message .= "Mağaza: ".$old ->shop ." -> ".$model ->shop;
- Iplog::write($message);
- /*********************************
- * Log end
- *******************************/
- echo CJSON::encode(array('status' => 'success','alert'=>Yii::t('text','Redaktə edildi')));
- Yii::app() -> end();
- } else {
- $error = CActiveForm::validate($model);
- echo $error;
- Yii::app() -> end();
- }
- }
- }
- public function actionLogin() {
- if(isset(Yii::app()->user->id)){
- return $this->redirect(array('site/bundle'));
- }
- $model = new LoginForm;
- $is_cookie = isset(Yii::app()->request->cookies['order_details']);
- if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') {
- $errors = CActiveForm::validate($model);
- if ($errors != '[]') {
- echo $errors;
- Yii::app() -> end();
- }
- }
- // <span class="IL_AD" id="IL_AD4">collect</span> user input data
- if (isset($_POST['LoginForm'])) {
- $model -> attributes = CHtml::encodeArray($_POST['LoginForm']);
- $lg = $model -> login();
- if ($model -> validate() && $lg['result'] ) {
- $cookie1 = new CHttpCookie('name',Yii::app()->user->getFirstName());
- $cookie1->expire = time() + ($lg['duration']);
- Yii::app()->request->cookies['name'] = $cookie1;
- $cookie2 = new CHttpCookie('surname',Yii::app()->user->getSurname());
- $cookie2->expire = time() + ($lg['duration']);
- Yii::app()->request->cookies['surname'] = $cookie2;
- $cookie3 = new CHttpCookie('userkey',Yii::app()->user->getUserCode());
- $cookie3->expire = time() + ($lg['duration']);
- Yii::app()->request->cookies['userkey'] = $cookie3;
- $cookie4 = new CHttpCookie('email',Yii::app()->user->getEmail());
- $cookie4->expire = time() + ($lg['duration']);
- Yii::app()->request->cookies['email'] = $cookie4;
- $cookie5 = new CHttpCookie('moverauth',base64_encode(Yii::app()->user->id));
- $cookie5->expire = time() + ($lg['duration']);
- Yii::app()->request->cookies['moverauth'] = $cookie5;
- Users::model() -> updateByPk(Yii::app()->user->id, array('ldate' => time()));
- if (!empty($lg['redirect'])){
- echo CJSON::encode(array('authenticated' => true,'redirectUrl'=>$lg['redirect']));
- Yii::app() -> end();
- }
- if($is_cookie) {
- $cook = json_decode(Yii::app()->request->cookies['order_details']->value);
- $order = new Myorder;
- $order->link = $cook->link;
- $order->comment = $cook->comment;
- $order->users_id = Yii::app()->user->id;
- $order->order_key = $cook->code;
- $order->date = time();
- $order->save(FALSE);
- //$this -> redirect(array('succesorder', 'code' => $cook->code));
- $redirect_url = CHtml::normalizeUrl(array("site/succesorder","code"=>$cook->code));
- }
- else {
- $redirect_url = CHtml::normalizeUrl(array("site/bundle"));
- }
- if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') {
- echo CJSON::encode(array('authenticated' => true, 'redirectUrl' =>$redirect_url
- //"param" => "Any additional param"
- ));
- Yii::app() -> end();
- }
- $this -> redirect(Yii::app() -> user -> returnUrl);
- }
- }
- // display the login form
- $this -> render('login', array('model' => $model));
- }
- protected function performAjaxValidation($model) {
- if (isset($_POST['ajax']) && $_POST['ajax'] === 'users-form') {
- echo CActiveForm::validate($model);
- Yii::app() -> end();
- }
- }
- public function actionRegister() {
- $this -> setPageTitle('Mover.az - Qeydiyyat forması');
- $model = new Users;
- $model -> scenario = 'register';
- // Uncomment the following line if AJAX validation is needed
- //$this->performAjaxValidation($model);
- if (isset($_POST['Users'])) {
- $model -> attributes = CHtml::encodeArray($_POST['Users']);
- $model -> status = '1';
- $model -> rdate = time();
- //$model -> mobile = $model->mobile;
- $model -> user_activation_key = sha1(md5(time() + rand(999, 999999999)));
- if ($model -> save()) {
- Yii::app() -> user -> setFlash('saved', "Qeydiyyatdan keçildi");
- if ($model -> sendActivation())
- $this -> redirect(array('thankyou', 'id' => $model -> id));
- else
- throw new CHttpException(200, "Email aktivasiyası alınmadı");
- } else {
- Yii::app() -> user -> setFlash('failure', "Xəta var");
- }
- }
- $this -> render('register', array('model' => $model, ));
- }
- public function actionThankYou() {
- $this -> setPageTitle('Mover.az - Təşəkkür mesajı');
- $this -> render('thankyou', array(
- //'model'=>$model,
- ));
- }
- public function actionActivate($a) {
- if ($a != '') {
- $model = Users::model() -> find('user_activation_key=:a', array(':a' => $a));
- if ($model) {
- // /$model->activate='';
- if ($model -> status != 1) {
- $model -> status = 1;
- $model -> balance = 0;
- $model -> user_activation_key = '';
- $model -> activation_sms_key = '';
- if ($model -> update(array('status', 'user_activation_key', 'activation_sms_key','balance'))) {
- $this -> render('activate', array('model' => $model, 'status' => 'success'));
- }
- } else {
- Yii::app() -> user -> logout();
- $this -> render('activate', array('model' => $model, 'status' => 'already'));
- }
- } else {
- throw new CHttpException(404, "Yalnış altivasiya kodu");
- }
- } else {
- $this -> redirect(Yii::app() -> homeUrl);
- }
- }
- public function actionSMSCheck($a) {
- if ($a != '') {
- $user = Users::model() -> findByAttributes(array('user_activation_key' => $a));
- if($user) {
- $model = new SMSForm();
- if (isset($_POST['SMSForm'])) {
- $model -> attributes = CHtml::encodeArray($_POST['SMSForm']);
- $model -> a_key = $a;
- if ($model -> validate()) {
- if ($user -> status != 1) {
- $user -> status = 1;
- $user -> balance = 0;
- $user -> user_activation_key = '';
- $user -> activation_sms_key = '';
- if ($user -> update(array('status', 'user_activation_key', 'activation_sms_key','balance'))) {
- Yii::app() -> user -> setFlash('smsactivate','<p>Sizin hesabınız aktivləşdirildi. Daxil ola bilərsiniz</p>');
- }
- else {
- Yii::app() -> user -> setFlash('smsactivate','<p>Hesabınız artıq aktivləşdirilib.Daxil ola bilərsiniz </p>');
- }
- }
- else {
- $this -> redirect(Yii::app() -> homeUrl);
- }
- }
- }
- }
- else {
- throw new CHttpException(404, "Yalnış altivasiya kodu");
- }
- } else {
- $this -> redirect(Yii::app() -> homeUrl);
- }
- $this -> render('sms', array('model' => $model));
- }
- public function actionError() {
- if ($error = Yii::app() -> errorHandler -> error) {
- if (Yii::app() -> request -> isAjaxRequest)
- echo $error['message'];
- else
- $this -> render('error', $error);
- }
- }
- public function actionError2() {
- if ($error = Yii::app() -> errorHandler -> error) {
- if (Yii::app() -> request -> isAjaxRequest)
- echo $error['message'];
- else
- $this -> render('error_2', $error);
- }
- }
- public function actionThanks(){
- $this -> render('thanks');
- }
- public function actionContact() {
- if(Yii::app()->language=="az")
- {
- $this->pageTitle = 'Əlaqə | Mover.az';
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, əlaqə məlumatları, mover ünvan, mover telefon, çatdırılma xidməti, türkiyədən geyim sifarişi'), 'keywords');
- }
- elseif(Yii::app()->language=="en")
- {
- $this->pageTitle = 'Contacts | Mover.az';
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, contact information, mover.az address, mover.az telephone, courier service, order dress from turkey'), 'keywords');
- }
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/ogimg.jpg';
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/contact');
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = Yii::t('text','Əlaqə');
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this -> createAbsoluteUrl('site/Contact'));
- $model = new ContactForm;
- if (isset($_POST['ContactForm'])) {
- $model -> attributes = CHtml::encodeArray($_POST['ContactForm']);
- if ($model -> validate()) {
- $body = '<h2> Ad,Soyad:' . $model -> name . '</h2><h4> Email:' . $model -> email . '</h4><p>Mətn:<br>' . $model -> body . '</p>';
- $mail = new PHPMailer();
- $mail -> IsSMTP();
- $mail -> SMTPAuth = true;
- $mail -> Host = 'smtp.gmail.com';
- $mail -> Port = 587;
- $mail -> SMTPSecure = 'tls';
- $mail -> Username = 'apanoreplyregister@apa.az';
- $mail -> Password = 'delixanamania!';
- $mail -> SetFrom($mail -> Username, 'MOVER.AZ');
- $mail -> AddAddress('info@mover.az');
- $mail -> CharSet = 'UTF-8';
- $mail -> Subject = 'Kontakt form - Mover';
- $mail -> MsgHTML($body);
- if ($mail -> Send()) {
- if(isset(Yii::app()->user->id))
- {
- $task = new Tasks;
- $task->kime = 1;
- $task->creator = Yii::app()->user->id;
- $task->status = 1;
- $task->baslama_tarixi = date('Y-m-d H:i:s');
- $task->prioritet = 1;
- $task->ad = 'Əlaqə formundan';
- $task->melumat = strip_tags($model -> body);
- $task->mail = Yii::app()->user->getEmail();
- $task->fullname = Yii::app()->user->getFirstName()." ".Yii::app()->user->getSurname();
- $task->save(false);
- }else{
- $task = new Feedback;
- $task->message = strip_tags($model -> body);
- $task->email = strip_tags($model -> email);
- $task->fullname = strip_tags($model->name);
- $task->save(false);
- }
- Yii::app() -> user -> setFlash('contact', 'Məktubunuz göndərildi');
- $this -> refresh();
- }
- }
- }
- $this -> render('contact', array('model' => $model));
- }
- public function actionNews($id = null,$view=1) {
- if ($id == null) {
- //$this->pageTitle = Yii::t('text','Yeniliklər və xəbərlər');
- $c = new CDbCriteria();
- $c -> condition = "status=:status";
- $c -> order = "data_created DESC";
- $c -> params = array(":status" => "1");
- $model = News::model() -> find($c);
- } else {
- $model = News::model() -> with(array('newsContents' => array('condition' => "news_id=:id", 'params' => array(':id' => $id)))) -> find();
- }
- if(Yii::app()->language=="az")
- {
- $this->pageTitle = 'Xəbərlər | Mover.az';
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az endirimlər, kampaniyalar, xidmətlər'), 'keywords');
- }
- elseif(Yii::app()->language=="en")
- {
- $this->pageTitle = 'News | Mover.az';
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az discounts, campaigns, services'), 'keywords');
- }
- if (!$model || !$model->newsContents)
- $this -> redirect(Yii::app() -> homeUrl);
- $con = new CDbCriteria();
- $con -> condition = "status=:status AND id <> :current_news";
- $con -> order = "data_created DESC";
- $con -> limit = 5;
- $con -> params = array(":status" => "1", ":current_news" => $model -> id);
- Yii::app()->params['OG_IMAGE'] = News::image($model->image);
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/news',array('id'=>$model -> id));
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = $model->newsContents->title;
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this->createAbsoluteUrl('site/news',array('id'=>$model -> id)));
- $other_news = News::model() -> findAll($con);
- if ($view == 1){
- $this -> render('news', array('model' => $model, 'othernews' => $other_news));
- }else{
- $this -> render('news_other', array('model' => $model, 'othernews' => $other_news));
- }
- }
- public function actionAjaxNews() {
- if (!Yii::app() -> request -> isAjaxRequest)
- throw new CHttpException(404, 'Səhifə tapılmadı');
- if (!isset($_POST['page']) || empty($_POST['page']) || !isset($_POST[Yii::app() -> request -> csrfTokenName]))
- $page = 1;
- else
- $page = (int)($_POST['page']);
- $limit = 5;
- $offset = ($page - 1) * $limit;
- $criteria = new CDbCriteria();
- $criteria -> order = '`data_created` DESC ';
- //, `id` ASC
- $criteria -> condition = '`status` = "1" and `data_created` <' . time();
- $criteria -> limit = $limit;
- $criteria -> offset = $offset;
- $news = News::model() -> findAll($criteria);
- /* end of the ajax request */
- if ($news == NULL)
- Yii::app() -> end();
- $this -> renderPartial('ajaxnews', array('news' => $news));
- }
- public function actionPost($id) {
- $about = false;
- $model = Post::model() -> with(array('postContents' => array('condition' => "post_id=:id", 'params' => array(':id' => $id)))) -> find();
- if ($model == null) {
- $this -> redirect('index');
- }
- if ($id==9) {
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/upload/post/images/img.png';
- $about = true;
- if(Yii::app()->language=="az")
- {
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, peşəkar xidmət, sərfəli qiymət, türkiyədən çatdırılma, Azərbaycan şirkəti, yüklərin daşınması xidməti'), 'keywords');
- $this->pageTitle = 'Haqqımızda | Mover.az';
- }
- elseif(Yii::app()->language=="en")
- {
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, professional service, affordable price, delivery from turkey, azerbaijan company, logistic company'), 'keywords');
- $this->pageTitle = 'About us | Mover.az';
- }
- }
- else
- {
- if(Yii::app()->language=="az")
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, onlayn alış-veriş, çatdırılma xidməti, türkiyədən sifariş, türkiyə saytları, etibarlı şirkət, geyim sifarişi, ayaqqabı sifarişi'), 'keywords');
- elseif(Yii::app()->language=="en")
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, online shopping, delivery service, order from turkey, turkey online shopping webpages, trusted company, dress order, shoes order'), 'keywords');
- $this->pageTitle = 'Mover.az - '. $model->postContents[0]->title;
- }
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/post',array('id'=>$id));
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = $model->postContents[0]->title;
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this->createAbsoluteUrl('site/post',array('id'=>$id)));
- $this -> render('post', array('model' => $model, 'about' => $about));
- }
- public function actionProfile() {
- $this->pageTitle = 'Mover.az - '. Yii::t('text','Profilim');
- $model = new Users();
- $order = new Orders();
- $criteria = new CDbCriteria;
- $criteria->condition = "users_id = ".Yii::app()->user->id." and sundurma=1";
- $sundurma = Orders::model()->findAll($criteria);
- $this -> render('profile',array('model'=>$order, 'sundurma' =>$sundurma));
- }
- public function actionSites($id = null) {
- if(Yii::app()->language=="az")
- {
- $this->pageTitle = 'Nümunə saytlar | Mover.az';
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, onlayn geyim saytları, türkiyə saytları, alış-veriş'), 'keywords');
- }
- elseif(Yii::app()->language=="en")
- {
- $this->pageTitle = 'List of webpages | Mover.az';
- Yii::app() -> clientScript -> registerMetaTag(Yii::t('text', 'mover.az, online dress shopping, online turkey sites'), 'keywords');
- }
- //$this->pageTitle = 'Mover.az - '. Yii::t('text','Alış-veriş saytları');
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/ogimg.jpg';
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/sites');
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = Yii::t('text','Alış-veriş saytları');
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this->createAbsoluteUrl('site/sites'));
- $categories = Category::model() -> with(array('categoryContents' => array('condition' => 'status="1"', 'order' => 't.order asc'))) -> findAll();
- if (empty($id)) {
- $model_tr = Sites::model() -> with('sitesContents') -> findAll(array('condition' => "category_id=:cat_id and status='1'", 'params' => array(':cat_id' => 2), 'order' => 't.order asc'));
- $model_us = Sites::model() -> with('sitesContents') -> findAll(array('condition' => "category_id=:cat_id and status='1'", 'params' => array(':cat_id' => 1), 'order' => 't.order asc'));
- } else {
- $model = Sites::model() -> with('sitesContents') -> findAll(array('order' => 't.order asc', 'condition' => "category_id=:cat_id and status='1'", 'params' => array(':cat_id' => $id)));
- }
- //$model = Sites::model() -> with('sitesContents') -> findAll();
- //print_r($model);exit;
- /*if ($model == null) {
- $this -> redirect('index');
- }*/
- $this -> render('sites', array('model_tr' => $model_tr,'model_us' => $model_us, 'categories' => $categories, 'id' => $id));
- }
- public function actionCalcPrice() {
- $model = Post::model() -> with('postContents') -> findByPk(10);
- $this->pageTitle = 'Mover.az - '. $model->postContents[0]->title;
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/ogimg.jpg';
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/CalcPrice');
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = $model->postContents[0]->title;
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this->createAbsoluteUrl('site/CalcPrice'));
- $this -> render('del_price', array('model' => $model));
- }
- public function actionSize()
- {
- $this->pageTitle = 'Mover.az - '. Yii::t('text','Həcmə görə çəki');
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/ogimg.jpg';
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/size');
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = Yii::t('text','Həcmə görə çəki');
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this->createAbsoluteUrl('site/size'));
- $this -> render('size');
- }
- public function actionRecomended() {
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/ogimg.jpg';
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/Recomended');
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = Yii::t('text','Tövsiyyə edilən məhsullar');
- $this->pageTitle = 'Mover.az - '. Yii::t('text','Tövsiyyə edilən məhsullar');
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this->createAbsoluteUrl('site/Recomended'));
- $json = file_get_contents('cat.json');
- $arr = json_decode($json, true);
- $k = array_rand($arr);
- $v = $arr[$k];
- $cat = $v['id'];
- $json = $this->get_web_page("http://api.shopstyle.com/action/apiSearch?pid=sugar&site=www.shopstyle.com&format=json&cat={$cat}&fts=&min=0&count=24");
- $array = json_decode($json['content']);
- if(empty($array)) {
- $this->redirect('Recomended');
- }
- $this -> render('recomended', array('array' => $array));
- }
- protected function get_web_page($url)
- {
- $user_agent = 'Mozilla/5.0 (Windows NT 6.1; rv:8.0) Gecko/20100101 Firefox/8.0';
- $options = array(CURLOPT_CUSTOMREQUEST => "GET", //set request type post or get
- CURLOPT_POST => false, //set to GET
- CURLOPT_USERAGENT => $user_agent, //set user agent
- CURLOPT_COOKIEFILE => "cookie.txt", //set cookie file
- CURLOPT_COOKIEJAR => "cookie.txt", //set cookie jar
- CURLOPT_RETURNTRANSFER => true, // return web page
- CURLOPT_HEADER => false, // don't return headers
- CURLOPT_FOLLOWLOCATION => true, // follow redirects
- CURLOPT_ENCODING => "", // handle all encodings
- CURLOPT_AUTOREFERER => true, // set referer on redirect
- // CURLOPT_PROXY => '127.0.0.1:8888'
- );
- $ch = curl_init($url);
- curl_setopt_array($ch, $options);
- $content = curl_exec($ch);
- $err = curl_errno($ch);
- $errmsg = curl_error($ch);
- $header = curl_getinfo($ch);
- curl_close($ch);
- $header['errno'] = $err;
- $header['errmsg'] = $errmsg;
- $header['content'] = $content;
- return $header;
- }
- public function actionBalance() {
- $user = Users::model()->findByPk(Yii::app()->user->id);
- $c = new CDbCriteria();
- $c ->condition = "users_id = '".Yii::app()->user->id."' ";
- $c ->order = "`id` DESC";
- $logs = PaymentHistory::model()->findAll($c);
- $c = new CDbCriteria();
- $c ->condition = "users_id = '".Yii::app()->user->id."' AND paymentstatus = 'SUCCESS' ";
- $c ->order = "`id` DESC";
- $card_logs = PaymentProducts::model()->findAll($c);
- if(Yii::app()->user->id == '23114')
- {
- //$array = (array) $card_logs;
- // print_r($array);
- }
- $this -> render('balance',array('user'=>$user, 'logs' =>$logs, 'card_logs' =>$card_logs));
- }
- public function actionSuccesOrder($code) {
- unset(Yii::app()->request->cookies['order_details']);
- $model = Myorder::model()->findByAttributes(array('order_key'=>$code));
- if($model==null)
- throw new CHttpException(404, 'Səhv müraciət');
- $this -> render('succesorder',array('model'=>$model));
- }
- public function actionSettings() {
- $this->pageTitle = 'Mover.az - '. Yii::t('text','Tənzimləmələr');
- $model = Users::model() -> findByPk(Yii::app() -> user -> id);
- $old = clone $model;
- $model -> scenario = 'update';
- // Uncomment the following line if AJAX validation is needed
- //$this->performAjaxValidation($model);
- if (isset($_POST['Users'])) {
- $model -> attributes = CHtml::encodeArray($_POST['Users']);
- if(CUploadedFile::getInstance($model,'photo'))
- $photo=$model->photo=CUploadedFile::getInstance($model,'photo');
- if ($model -> validate(array('name','surname','old_password','new_password','address','id_card','photo', 'mobile','fin'))) {
- if (isset($photo))
- {
- # Photo new name
- $new_name = time().'_'.$photo->getName();
- $pathBigPhoto = Yii::app()->params['users_image_path'].'passport/';
- //$pathSmallPhoto = Yii::app()->params['smallPhoto'].$id.'/';
- if (!is_dir($pathBigPhoto) )//&& !is_dir($pathSmallPhoto)
- {
- @mkdir($pathBigPhoto, 0777, true);
- }
- $wayBig = $pathBigPhoto.$new_name;
- //$waySmall = $pathSmallPhoto.$new_name;
- $photo->saveAs($wayBig);
- $model->photo = $new_name ;
- }
- $model -> save(false,array('name','surname','old_password','new_password','address','id_card','fin','photo', 'mobile'));
- /*
- Istifadeci melumatlari deyishende loqlamaq
- */
- $message = "İstifadəçi məlumatları yeniləndi:";
- if ($old ->name != $model ->name)
- $message .= "Ad: ".$old ->name." -> ".$model ->name."";
- if ($old ->surname != $model ->surname)
- $message .= "Soyad: ".$old ->surname." -> ".$model ->surname."";
- if (!empty($model ->old_password) && !empty($model ->new_password))
- $message .= "Şifrə: ".$model ->old_password." -> ".$model ->new_password."";
- if ($old ->address != $model ->address)
- $message .= "Ünvan:".$old ->address." -> ".$model ->address."";
- if ($old ->id_card != $model ->id_card)
- $message .= "Şəxsiyyət v.N:".$old ->id_card." -> ".$model ->id_card."";
- if ($old ->mobile != $model ->mobile)
- $message .= "Telefon:".$old ->mobile." -> ".$model ->mobile."";
- Iplog::write($message);
- /*
- Log end
- */
- Yii::app() -> user -> setFlash('saved', "Qeydiyyatdan keçildi");
- }
- }
- $this -> render('settings', array('model' => $model, ));
- }
- public function actionAddLink($id = 1){
- $this->pageTitle = 'Mover.az - '. Yii::t('text','Sifariş et');
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/sebet.png';
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/ordernow');
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = 'Sifariş et';
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this->createAbsoluteUrl('site/ordernow'));
- $model_order = new OrderForm;
- $model_login = new LoginForm();
- $model = new Users();
- $kargo_tr = KargoPrice::model()->findAllByAttributes(array('country_id' => 1));
- $kargo_usa = KargoPrice::model()->findAllByAttributes(array('country_id' => 2));
- if(isset($_POST)){
- $link = $_POST['link'];
- $price = $_POST['price'];
- $urgently = isset($_POST['urgently'])? 1 : 0;
- }
- $this -> render('addLink',array('model_order'=>$model_order, 'kargo_tr' => $kargo_tr , 'kargo_usa' => $kargo_usa ,'model_login'=>$model_login,'model'=>$model, 'country_id' =>$id));
- }
- public function actionAddLinks(){
- if (isset(Yii::app()->user->id)) {
- $id = Yii::app()->user->id;
- if (isset($_POST)) {
- $success = false;
- $country_id = $_POST['country_id'];
- if($country_id == 1){
- $link = $_POST['link'];
- $price = $_POST['price'];
- $qeyd = $_POST['qeyd'];
- $size = $_POST['size'];
- $pname = $_POST['pname'];
- $pid = $_POST['pid'];
- }else{
- $link = $_POST['link_usa'];
- $price = $_POST['price_usa'];
- $qeyd = $_POST['qeyd_usa'];
- $size = '0';
- $pname = '0';
- $pid = '0';
- }
- $urgently = isset($_POST['urgently']) ? 1 : 0;
- foreach ($link as $key => $val) {
- //$qeyd[$key] = isset($size[$key]) ? 'Ölcü '.explode(':', $size[$key])[0] : '';
- $order_key = substr(md5(uniqid(mt_rand(), true)), 0, 8);
- $price_percent = $price[$key] * 0.05 + $price[$key];
- // Image upload
- $getUrlDetails = file_get_contents("http://mover.az/diffbot.php?productPageUrl=" . $val . "");
- $getUrlDetails = json_decode($getUrlDetails, true);
- $image_url = $getUrlDetails['objects'][0]['images'][0]['url'];
- $info = pathinfo($image_url);
- $newfilename = '';
- if (isset($info['extension'])) {
- $ext = $info['extension'];
- $newfilename = md5(time()) . '.' . $ext;
- $pth = Yii::app()->params['myorder_image_path'] . $newfilename;
- copy($image_url, $pth);
- }
- // Image upload
- if (strpos($price[$key], ",") > 0)
- $price_new = str_replace(",", ".", $price[$key]);
- else
- $price_new = $price[$key];
- $sql = "INSERT INTO
- cms_myorder (`link`,`image`, `comment`,`users_id`,`order_key`,`price`,`ourprice`,`count`,`date`, `urgently`, `country_id`, `size`, `pname`, `pid`)
- VALUES (:link,:image,:comment,:users_id,:order_key,:price,:price,1," . time() . ", " . $urgently . ", " . $country_id . ", :size, :pname, :pid)";
- $command = Yii::app()->db->createCommand($sql)
- ->bindParam(':link', $val, PDO::PARAM_STR)
- ->bindParam(':image', $newfilename, PDO::PARAM_STR)
- ->bindParam(':comment', $qeyd[$key], PDO::PARAM_STR)
- ->bindParam(':order_key', $order_key, PDO::PARAM_STR)
- ->bindParam(':users_id', $id, PDO::PARAM_INT)
- ->bindParam(':price', $price_new, PDO::PARAM_STR)
- ->bindParam(':size', $size[$key], PDO::PARAM_STR)
- ->bindParam(':pname', $pname[$key], PDO::PARAM_STR)
- ->bindParam(':pid', $pid[$key], PDO::PARAM_STR)
- ->execute();
- try {
- if ($command) {
- $success = true;
- }
- } catch (Exception $ex) {
- $success = false;
- }
- }
- if ($success && $urgently == 1) {
- $User = Users::model()->findByPk($id);
- $User->balance = $User->balance - 3.4;
- $User->save(false);
- $history = new PaymentHistory();
- $history->date = time();
- $history->users_id = $id;
- $history->log = '- 3.4 AZN ( Hazırkı balans : '.$User->balance.') AZN Təcili Sİfariş üçün';
- $history->save(false);
- }
- echo json_encode(['success' => true]);
- }
- }
- }
- public function actionAddBasketLink(){
- $id = Yii::app()->user->id;
- if(isset($_POST))
- {
- if($_POST['basket_link'] != '' && $_POST['basket_login'] != '' && $_POST['basket_password'] != '' && $_POST['basket_amount'] != '' && $_POST['basket_note'] != '' )
- {
- $basket_link = Yii::app()->getRequest()->getPost('basket_link');
- $basket_login = Yii::app()->getRequest()->getPost('basket_login');
- $basket_password = Yii::app()->getRequest()->getPost('basket_password');
- $basket_amount = Yii::app()->getRequest()->getPost('basket_amount');
- $basket_note = Yii::app()->getRequest()->getPost('basket_note');
- $country_id = Yii::app()->getRequest()->getPost('country_id');
- if($_POST['default'] == 1)
- {
- $urgently = 0;
- }
- else
- {
- $urgently= isset($_POST['urgently1']) ? 1 : 0;
- }
- if (strpos($basket_amount, ",") > 0)
- {
- $price= str_replace(",", ".", $basket_amount);
- }
- else
- {
- $price = $basket_amount;
- }
- $command = Yii::app()->db->createCommand();
- $command->insert('cms_basket', array(
- 'users_id' => Yii::app()->user->id,
- 'basket_link' => $basket_link,
- 'basket_login' => $basket_login,
- 'basket_password' => $basket_password,
- 'total_amount_basket' => $price,
- 'note' => $basket_note,
- 'paid' => '0',
- 'status' => '0',
- 'urgently' => $urgently,
- 'country_id' => $country_id,
- 'date' => date('Y-m-d H:i:s')
- ));
- try{
- if($command){
- $success = true;
- }
- }
- catch (CDbException $e) {
- $success = false;
- }
- if ($success && $urgently == 1)
- {
- $User = Users::model()->findByPk($id);
- $User->balance = $User->balance - 3.4;
- $User->save(false);
- $history = new PaymentHistory();
- $history->date = time();
- $history->users_id = $id;
- $history->log = '- 3.4 AZN ( Hazırkı balans : '.$User->balance.') AZN Təcili Sİfariş üçün';
- $history->save(false);
- }
- echo CJSON::encode(array('result' => true, 'message' =>'successfully added'));
- Yii::app() -> end();
- }
- else
- {
- echo CJSON::encode(array('result' => false, 'message' =>'Bütün xanaları doldurun!'));
- Yii::app() -> end();
- }
- }
- }
- public function actionAddBasket()
- {
- $this->render('addbasketlink');
- }
- public function actionBasketdetails()
- {
- $id = Yii::app()->user->id;
- $basket_id = intval($_POST['basket_id']);
- $command = Yii::app()->db->createCommand();
- $basket_detail = $command
- ->select('id,basket_link,basket_login,basket_password,note,total_amount_basket')
- ->from('cms_basket')
- ->where('users_id=:users_id and id=:id',array(':users_id'=>$id,':id'=>$basket_id))
- ->queryRow();
- $this -> renderPartial('basketedit', array('basket' => $basket_detail));
- }
- public function actionBasketedit()
- {
- if ($_POST['basket_id']) {
- $basket_id = intval($_POST['basket_id']);
- $basket_link = Yii::app()->getRequest()->getPost('basket_link');
- $basket_login = Yii::app()->getRequest()->getPost('basket_login');
- $basket_password = Yii::app()->getRequest()->getPost('basket_password');
- $total_amount_basket = Yii::app()->getRequest()->getPost('total_amount_basket');
- $basket_note = Yii::app()->getRequest()->getPost('note');
- $command = Yii::app()->db->createCommand();
- $command->update('cms_basket', array(
- 'basket_link' => $basket_link,
- 'basket_login' => $basket_login,
- 'basket_password' => $basket_password,
- 'total_amount_basket' => $total_amount_basket,
- 'note' => $basket_note,
- 'date' => date('Y-m-d H:i:s'),
- ), 'id=:id', array(':id'=>$basket_id));
- }
- $this->redirect(CHtml::normalizeUrl(array("site/order")));
- }
- public function actionBasketdelete()
- {
- $basket_id = intval($_POST['basket_id']);
- $command = Yii::app()->db->createCommand();
- $baskets = $command->select('*')
- ->from('cms_basket')
- ->where('users_id=:users_id and id=:id' ,array(':users_id'=>$id,':id'=>$basket_id))
- ->queryRow();
- $soft_delete = $command->update('cms_basket', array('status' => 2),'id=:id', array(':id'=>$basket_id));
- if($baskets)
- {
- if($delete)
- echo CJSON::encode(array('status' => 1, 'error' => 'deleted'));
- else
- echo CJSON::encode(array('status' => 0, 'error' => 'not delete'));
- }
- else
- echo CJSON::encode(array('status' => 0, 'error' => 'not found'));
- }
- public function actionOrdernow() {
- $this->pageTitle = 'Mover.az - '. Yii::t('text','Sifariş et');
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/sebet.png';
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/ordernow');
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = 'Sifariş et';
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this->createAbsoluteUrl('site/ordernow'));
- $model_order = new OrderForm;
- $order = new Orders;
- if (isset($_POST['OrderForm'])) {
- $_POST['OrderForm']['price'] = str_replace(',', '.', $_POST['OrderForm']['price']);
- $model_order -> attributes = CHtml::encodeArray($_POST['OrderForm']);
- $name = strip_tags($_POST['OrderForm']['name']);
- $surname = strip_tags($_POST['OrderForm']['surname']);
- $email = strip_tags(trim($_POST['OrderForm']['email']));
- $price = strip_tags(trim($_POST['OrderForm']['price']));
- $urgently = ($_POST['OrderForm']['urgently']) ? 1 :0;
- #echo $name; exit;
- $order_key = substr(md5(uniqid(mt_rand(), true)) , 0, 8);
- if ($model_order -> validate()) {
- if (isset(Yii::app()->user->id)) {
- $id = Yii::app()->user->id;
- $price_percent = $model_order->price*0.05+$model_order->price;
- // Image upload
- $getUrlDetails = file_get_contents("http://mover.az/diffbot.php?productPageUrl=".$model_order->link."");
- $getUrlDetails = json_decode($getUrlDetails,true);
- $image_url = $getUrlDetails['objects'][0]['images'][0]['url'];
- $info = pathinfo($image_url);
- $ext = $info['extension'];
- $newfilename = md5(time()).'.'.$ext;
- $pth = Yii::app()->params['myorder_image_path'].$newfilename;
- copy($image_url, $pth);
- // Image upload
- if(strpos($model_order->price,",")>0)
- $price_new = str_replace(",",".",$model_order->price);
- else
- $price_new = $model_order->price;
- $command = Yii::app() -> db -> createCommand("INSERT INTO
- cms_myorder (`link`,`image`, `comment`,`users_id`,`order_key`,`price`,`count`,`date`, `urgently`)
- VALUES (:link,:image,:comment,:users_id,:order_key,:price,1,".time().", ".$urgently.")")
- -> bindParam(':link', $model_order->link, PDO::PARAM_STR)
- -> bindParam(':image', $newfilename, PDO::PARAM_STR)
- -> bindParam(':comment', $model_order->notes, PDO::PARAM_STR)
- -> bindParam(':order_key', $order_key, PDO::PARAM_STR)
- -> bindParam(':users_id', $id , PDO::PARAM_INT)
- -> bindParam(':price', $price_new, PDO::PARAM_STR)
- -> execute();
- if($command){
- $this -> redirect(array('succesorder', 'code' => $order_key));
- }
- }
- else {
- $cookie = new CHttpCookie('order_details', json_encode(array('link'=>$model_order->link,'comment'=>$model_order->notes,'code'=>$order_key,'name'=>$name,'surname'=>$surname,'email'=>$email)));
- $cookie->expire = time()+60*60*24;
- Yii::app()->request->cookies['cookie_name'] = $cookie;
- $this->redirect('auth');
- }
- }
- }
- $model_login = new LoginForm();
- $model = new Users();
- $model -> scenario = 'register';
- $is_cookie = isset(Yii::app()->request->cookies['order_details']);
- if (isset($_POST['LoginForm'])) {
- $model_login -> attributes = CHtml::encodeArray($_POST['LoginForm']);
- $lg = $model_login -> login();
- // validate user input and redirect to the previous page if valid
- if ($model_login -> validate() && $lg['result']) {
- Users::model() -> updateByPk(Yii::app()->user->id, array('ldate' => time()));
- $cookie1 = new CHttpCookie('name',Yii::app()->user->getFirstName());
- $cookie1->expire = time() + (60*60*72); // 24 hours
- Yii::app()->request->cookies['name'] = $cookie1;
- $cookie2 = new CHttpCookie('surname',Yii::app()->user->getSurname());
- $cookie2->expire = time() + (60*60*72); // 24 hours
- Yii::app()->request->cookies['surname'] = $cookie2;
- $cookie3 = new CHttpCookie('userkey',Yii::app()->user->getUserCode());
- $cookie3->expire = time() + (60*60*72); // 24 hours
- Yii::app()->request->cookies['userkey'] = $cookie3;
- $cookie4 = new CHttpCookie('email',Yii::app()->user->getEmail());
- $cookie4->expire = time() + (60*60*72); // 24 hours
- Yii::app()->request->cookies['email'] = $cookie4;
- $cookie5 = new CHttpCookie('moverauth',base64_encode(Yii::app()->user->id));
- $cookie5->expire = time() + (60*60*24); // 24 hours
- Yii::app()->request->cookies['moverauth'] = $cookie5;
- if (!empty($lg['redirect'])){
- $this -> redirect($lg['redirect']);
- Yii::app() -> end();
- }
- if($is_cookie) {
- $cook = json_decode(Yii::app()->request->cookies['order_details']->value);
- $order = new Myorder;
- $order->link = $cook->link;
- $order->comment = $cook->comment;
- $order->users_id = Yii::app()->user->id;
- $order->order_key = $cook->code;
- $order->date = time();
- $order->save(FALSE);
- $this -> redirect(array('succesorder', 'code' => $cook->code));
- }
- $this -> redirect('Profile');
- }
- }
- else if (isset($_POST['Users'])) {
- $model -> attributes = CHtml::encodeArray($_POST['Users']);
- $model -> user_activation_key = sha1(md5(time() + rand(999, 999999999)));
- $model -> activation_sms_key = MyClass::GenerateSMSKey();
- $model -> rdate = time();
- if ($model -> save()) {
- Sms::Send($model -> mobile, "Tesdiqleme kodu: {$model -> activation_sms_key}");
- /*if ($model -> sendActivation())*/
- Yii::app() -> user -> setFlash('activate', "<h3>Qeydiyyatdan keçdiyiniz üçün təşəkkür edirik!</h3>
- <p>Qeyd etdiyiniz nömrəyə təsdiqləmə kodu göndərilmişdir.</p>
- <p>Hesabı aktivləşdirdikdən sonra daxil ola bilərsiniz.</p>");
- /*else
- throw new CHttpException(200, "Email aktivasiyası alınmadı");*/
- }
- }
- $this -> render('ordernow',array('model_order'=>$model_order,'model_login'=>$model_login,'model'=>$model));
- }
- /*
- public function actionDeleteNotPaidOrders(){
- $time = time() - 30*60;
- $orders = Myorder::getNotPaidOrdersByTime($time);
- $model = array();
- $i = 0;
- foreach($orders as $order){
- $model[$i] = Myorder::model()->findByPk((int)$order['id']);
- $model[$i]->status = '0';
- $model[$i]->save();
- $i++;
- }
- }
- */
- public function actionAuth() {
- /*if(isset(Yii::app()->user->id)){
- return $this->redirect('profile');
- }*/
- $this->pageTitle = 'Mover.az - '. Yii::t('text','Daxil ol və ya qeydiyyatdan keç');
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/ogimg.jpg';
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/auth');
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = Yii::t('text','Daxil ol və ya qeydiyyatdan keç');
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this->createAbsoluteUrl('site/Auth'));
- $model_login = new LoginForm;
- $model = new Users();
- $model -> scenario = 'register';
- $is_cookie = isset(Yii::app()->request->cookies['order_details']);
- $active_tab = 'login';
- if (isset($_POST['LoginForm'])) {
- $model_login ->attributes = CHtml::encodeArray($_POST['LoginForm']);
- $lg = $model_login -> login();
- // validate user input and redirect to the previous page if valid
- if ($model_login -> validate() && $lg['result']) {
- Users::model() -> updateByPk(Yii::app()->user->id, array('ldate' => time()));
- $cookie1 = new CHttpCookie('name',Yii::app()->user->getFirstName());
- $cookie1->expire = time() + (60*60*72); // 24 hours
- Yii::app()->request->cookies['name'] = $cookie1;
- $cookie2 = new CHttpCookie('surname',Yii::app()->user->getSurname());
- $cookie2->expire = time() + (60*60*72); // 24 hours
- Yii::app()->request->cookies['surname'] = $cookie2;
- $cookie3 = new CHttpCookie('userkey',Yii::app()->user->getUserCode());
- $cookie3->expire = time() + (60*60*72); // 24 hours
- Yii::app()->request->cookies['userkey'] = $cookie3;
- $cookie4 = new CHttpCookie('email',Yii::app()->user->getEmail());
- $cookie4->expire = time() + (60*60*72); // 24 hours
- Yii::app()->request->cookies['email'] = $cookie4;
- $cookie5 = new CHttpCookie('moverauth',base64_encode(Yii::app()->user->id));
- $cookie5->expire = time() + (60*60*24); // 24 hours
- Yii::app()->request->cookies['moverauth'] = $cookie5;
- if (!empty($lg['redirect'])){
- $this -> redirect($lg['redirect']);
- Yii::app() -> end();
- }
- if($is_cookie) {
- $cook = json_decode(Yii::app()->request->cookies['order_details']->value);
- $order = new Myorder;
- $order->link = $cook->link;
- $order->comment = $cook->comment;
- $order->users_id = Yii::app()->user->id;
- $order->order_key = $cook->code;
- $order->date = time();
- $order->save(FALSE);
- $this -> redirect(array('succesorder', 'code' => $cook->code));
- }
- $this -> redirect('Profile');
- }
- }
- else if (isset($_POST['Users'])) {
- $model -> attributes = CHtml::encodeArray($_POST['Users']);
- $sex = $_POST['sex'];
- $model -> user_activation_key = sha1(md5(time() + rand(999, 999999999)));
- $model -> activation_sms_key = MyClass::GenerateSMSKey();
- $model -> rdate = time();
- $model->sex = $sex;
- $optional = intval($_POST['optional']);
- $optional_desc = strip_tags($_POST['optional_desc']);
- $model->optional = $optional;
- $model->optional_desc = $optional_desc;
- if ($model -> save()) {
- return $this->redirect(CHtml::normalizeUrl(array("site/login")));
- //Sms::Send($model -> mobile, "Tesdiqleme kodu: {$model -> activation_sms_key}");
- /*if ($model -> sendActivation())*/
- /*Yii::app() -> user -> setFlash('activate', "<h3>Qeydiyyatdan keçdiyiniz üçün təşəkkür edirik!</h3>
- <p>Qeyd etdiyiniz nömrəyə təsdiqləmə kodu göndərilmişdir.</p>
- <p>Hesabı aktivləşdirdikdən sonra daxil ola bilərsiniz.</p>");*/
- /*else
- throw new CHttpException(200, "Email aktivasiyası alınmadı");*/
- }
- $active_tab = 'register';
- }
- $this -> render('auth', array('model' => $model, 'model_login' => $model_login, 'active_tab'=>$active_tab));
- }
- /**
- * Logs out the current user and redirect to homepage.
- */
- public function actionLogout($rand) {
- if ($rand == Yii::app()->request->csrfToken){
- Yii::app()->user->logout();
- @session_destroy();
- unset(Yii::app()->request->cookies['moverauth']);
- }
- $this -> redirect(Yii::app() -> homeUrl);
- }
- public function actionGetParentCategories()
- {
- // ...
- $c = new CDbCriteria();
- $c ->condition = "confirm='1' AND parent_id IS NULL";
- $c ->select = "id,icon,name";
- $c ->order = "`order` ASC";
- $a = Categories::model()->findAll($c);
- //$b = CHtml::listData($a,'id', 'name','icon');
- foreach($a as $b ){
- $img = 'http://mover.az'.Categories::getcatimage($b->icon);
- $mas[] = array(
- 'id' => $b->id,
- 'icon' => $img,
- 'name' => $b->name
- );
- }
- echo json_encode($mas,JSON_UNESCAPED_SLASHES);
- //print_r($a);
- }
- public function actionGetChildCategories($id)
- {
- $c = new CDbCriteria();
- $c ->condition = "confirm='1' AND parent_id =:parent_id ";
- $c ->select = "id,name";
- $c ->order = "`order` ASC";
- $c ->params = array(":parent_id"=>$id);
- $a = Categories::model()->findAll($c);
- //$b = CHtml::listData($a,'id', 'name','icon');
- foreach($a as $b ){
- $mas[] = array(
- 'id' => $b->id,
- 'name' => $b->name
- );
- }
- echo json_encode($mas,JSON_UNESCAPED_SLASHES);
- }
- public function actionGettourslider(){
- $tourimage[] = array("image"=>"http://vaweave.com/wp-content/uploads/bfi_thumb/pro_test_1_3-mljvkxqiv322x2yurz628rmuqkml39j2689dr2uz1s.jpg");
- $tourimage[] = array("image"=>"http://vaweave.com/wp-content/uploads/bfi_thumb/pro_test_2_2-mljvklime8lcq5glrbvwucpv0katb76jsjs2ihd3ao.jpg");
- $tourimage[] = array("image"=>"http://vaweave.com/wp-content/uploads/bfi_thumb/pro_test_0-mljvlbu3plldr8edhn9gs62rncp3aq31861ny8a2gg.jpg");
- echo json_encode($tourimage,JSON_UNESCAPED_SLASHES);
- }
- public function actionGetLinks($id)
- {
- $sql='
- SELECT url,l.name,icon as thumb FROM {{type}} as t
- RIGHT JOIN {{links}} as l ON(t.link_id = l.id)
- WHERE t.category_id = :category_id AND l.confirm = "1"
- ORDER BY l.`order` ASC;
- ';
- $all = Yii::app()->db->createCommand($sql)->bindParam(":category_id",$id,PDO::PARAM_INT)->queryAll();
- if ($all){
- foreach($all as $b ){
- if (!empty($b['thumb'])){
- $img = 'http://mover.az'.Links::getlinkimage($b['thumb']);
- }else{
- $img = "";
- }
- $mas[] = array(
- 'url' => $b['url'],
- 'name' => $b['name'],
- 'thumb' => $img
- );
- }
- }else{
- $mas = array();
- }
- echo json_encode($mas,JSON_UNESCAPED_SLASHES);
- //print_r($users);
- }
- public function actionAjaxlogin() {
- $model = new LoginForm;
- $redirect_url = '';
- // if it is ajax validation request
- if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') {
- $errors = CActiveForm::validate($model);
- if ($errors != '[]') {
- echo $errors;
- Yii::app() -> end();
- }
- }
- // <span class="IL_AD" id="IL_AD4">collect</span> user input data
- if (isset($_POST['LoginForm'])) {
- $model -> attributes = CHtml::encodeArray($_POST['LoginForm']);
- $lg = $model -> login();
- if ($model -> validate() && $lg['result'] ) {
- $user = Users::model()->findByPk(Yii::app()->user->id);
- if (!empty($lg['redirect'])){
- echo CJSON::encode(array(
- 'authenticated' => true,
- 'keyforactivation' => $user->activation_sms_key,));
- Yii::app() -> end();
- }
- if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') {
- $t = time() + Yii::app()->user->id;
- $token = md5(md5($t));
- $user ->token = $token;
- $user ->save(false,array('token'));
- $_SESSION['token'] = $token;
- echo CJSON::encode(array(
- 'authenticated' => true,
- 'token' => $_SESSION['token'],
- 'name' => $user->name,
- 'surname' => $user->surname,
- 'address1' => "Merkez mahalle, Evren sokak, No18, daire 3 l65902 MOVER MMC",
- 'address2' => $user->user_key."MOVER MMC",
- 'city' => "İstanbul",
- 'region' => "Gaziosmanpaşa",
- 'zip' => "34275",
- 'country' => "Turkey",
- 'tc' => "66823284324",
- 'phone' => "5318964270",
- ));
- Yii::app() -> end();
- }
- }
- }
- // display the login form
- //$this -> render('login', array('model' => $model));
- }
- public function actionRegisterAjaxApp() {
- //$this -> setPageTitle('APA - Qeydiyyat forması');
- $model = new Users;
- $model -> scenario = 'register';
- if (isset($_POST['Users']))
- {
- $model -> attributes = CHtml::encodeArray($_POST['Users']);
- $model -> user_activation_key = sha1(md5(time() + rand(999, 999999999)));
- $model -> activation_sms_key = MyClass::GenerateSMSKey();
- $model -> rdate = time();
- $model->status = '1';
- //$this -> performAjaxValidation($model);
- if ($model -> validate()) {
- if ($model -> save(FALSE)) {
- //Sms::Send($model -> mobile, "Tesdiqleme kodu: {$model -> activation_sms_key}");
- //$model -> sendActivation();
- }
- echo CJSON::encode(array('status' => 'success','keyforactivation'=>$model -> user_activation_key,));
- Yii::app() -> end();
- } else {
- $error = CActiveForm::validate($model);
- echo $error;
- Yii::app() -> end();
- }
- }else{
- echo CJSON::encode(array('status' => 'error'));
- }
- }
- public function actionGetmenu()
- {
- $sql='
- SELECT url,name
- FROM {{appleftmenu}}
- WHERE confirm = "1"
- ORDER BY `order` ASC;
- ';
- $all = Yii::app()->db->createCommand($sql)->queryAll();
- //$ar = array(array("url"=>"http://link1","name"=>"menu 1"),array("url"=>"http://link2","name"=>"menu 2"),array("url"=>"http://link3","name"=>"menu 3"),array("url"=>"http://link4","name"=>"menu 4"));
- echo json_encode($all,JSON_UNESCAPED_SLASHES);
- }
- public function actionGetprofile($token)
- {
- $token = strip_tags(addslashes($token));
- $model = Users::model() -> findByAttributes(array('token'=>$token));
- if ($model)
- {
- //$model);
- $ar ['status'] ="success";
- $ar ['info']['name'] = $model->name;
- $ar ['info']['surname'] = $model->surname;
- $ar ['info']['email'] = $model->email;
- $ar ['info']['mobile'] = $model->mobile;
- $ar ['info']['address'] = $model->address;
- $ar ['info']['id_card'] = $model->id_card;
- }else{
- $ar ['status'] ="error";
- }
- echo json_encode($ar);
- }
- public function actionGetshopsite(){
- $sql='
- SELECT url,name,icon as thumb
- FROM {{links}}
- WHERE confirm = "1"
- ORDER BY `order` ASC;
- ';
- $all = Yii::app()->db->createCommand($sql)->queryAll();
- if ($all){
- foreach($all as $b ){
- if (!empty($b['thumb'])){
- $img = 'http://mover.az'.Links::getlinkimage($b['thumb']);
- }else{
- $img = "";
- }
- $mas[] = array(
- 'url' => $b['url'],
- 'name' => $b['name'],
- 'thumb' => $img
- );
- }
- }else{
- $mas = array();
- }
- echo json_encode($mas,JSON_UNESCAPED_SLASHES);
- //echo json_encode($all,JSON_UNESCAPED_SLASHES);
- }
- public function actionGetlinkfromuser($token)
- {
- $model = new OrderForm;
- $user = Users::model() -> findByAttributes(array('token'=>$token));
- if (isset($_POST) && $user) {
- //$model -> attributes = CHtml::encodeArray($_POST['OrderForm']);
- $model ->link = CHtml::encode($_POST['url']);
- $model->notes = "Appdan gonderilmish link";
- $order_key = substr(md5(uniqid(mt_rand(), true)) , 0, 8);
- if ($model -> validate()) {
- $id = $user->id;
- $command = Yii::app() -> db -> createCommand("INSERT INTO
- cms_myorder (`link`, `comment`,`users_id`,`order_key`,`date`)
- VALUES (:link,:comment,:users_id,:order_key,".time().")")
- -> bindParam(':link', $model->link, PDO::PARAM_STR)
- -> bindParam(':comment', $model->notes, PDO::PARAM_STR)
- -> bindParam(':order_key', $order_key, PDO::PARAM_STR)
- -> bindParam(':users_id', $id , PDO::PARAM_INT)
- -> execute();
- if($command){
- //$this -> redirect(array('succesorder', 'code' => $order_key));
- echo CJSON::encode(array('status' => 'success','code'=>$order_key ));
- }
- }else{
- $errors = CActiveForm::validate($model);
- if ($errors != '[]') {
- echo $errors;
- Yii::app() -> end();
- }
- }
- }
- }
- public function actionOrderfromapp($token)
- {
- $model = new OrderForm;
- $user = Users::model() -> findByAttributes(array('token'=>$token));
- $model->price = '0.00';
- if (/*isset($_POST['OrderForm']) && */ $user) {
- $model -> attributes = CHtml::encodeArray($_POST['OrderForm']);
- $order_key = substr(md5(uniqid(mt_rand(), true)) , 0, 8);
- $model->price = "0.00";
- if ($model -> validate()) {
- $id = $user->id;
- $command = Yii::app() -> db -> createCommand("INSERT INTO
- cms_myorder (`link`, `comment`,`users_id`,`order_key`,`date`)
- VALUES (:link,:comment,:users_id,:order_key,".time().")")
- -> bindParam(':link', $model->link, PDO::PARAM_STR)
- -> bindParam(':comment', $model->notes, PDO::PARAM_STR)
- -> bindParam(':order_key', $order_key, PDO::PARAM_STR)
- -> bindParam(':users_id', $id , PDO::PARAM_INT)
- -> execute();
- if($command){
- //$this -> redirect(array('succesorder', 'code' => $order_key));
- echo CJSON::encode(array('status' => 'success','code'=>$order_key ));
- }
- }else{
- $errors = CActiveForm::validate($model);
- if ($errors != '[]') {
- echo $errors;
- Yii::app() -> end();
- }
- }
- }
- }
- public function actionSmsactive($a) {
- $user = Users::model() -> findByAttributes(array('user_activation_key' => $a));
- if($user) {
- $model = new SMSForm();
- if (isset($_POST['SMSForm'])) {
- $model -> attributes = CHtml::encodeArray($_POST['SMSForm']);
- $model -> a_key = $a;
- if ($model -> validate()) {
- if ($user -> status != 1)
- {
- $user -> status = 1;
- $user -> balance = 0;
- $user -> user_activation_key = '';
- $user -> activation_sms_key = '';
- $t = time() + $user->id;
- $token = md5(md5($t));
- $user ->token = $token;
- $_SESSION['token'] = $token;
- //$user ->save(false,array('token'));
- if ($user -> update(array('status', 'user_activation_key', 'activation_sms_key','balance','token'))) {
- echo CJSON::encode(array('status' => 'success','token'=>$_SESSION['token']));
- }
- else {
- echo CJSON::encode(array('status' => 'error'));
- }
- }
- else {
- echo CJSON::encode(array('status' => 'success'));
- }
- }else{
- $error = CActiveForm::validate($model);
- echo $error;
- Yii::app() -> end();
- }
- }
- }else{
- echo CJSON::encode(array('status' => 'error'));
- }
- }
- public function actionApptoken($token,$notif_token)
- {
- $usertoken = strip_tags(CHtml::encode($token));
- $notiftoken = strip_tags(CHtml::encode($notif_token));
- $user = Users::model() -> findByAttributes(array('token'=>$usertoken));
- if ($user){
- $user -> notiftoken = $notiftoken;
- if($user->save(false,array('notiftoken')))
- {
- echo CJSON::encode(array('status' => 'success'));
- }else{
- echo CJSON::encode(array('status' => 'error'));
- }
- }else{
- echo CJSON::encode(array('status' => 'error'));
- }
- //$command = Yii::app() -> db -> createCommand("INSERT INTO {{appusers}} (`token`) VALUES (:token)")-> bindParam(':token', $token, PDO::PARAM_STR) -> execute();
- }
- public function actionNotificationlist()
- {
- /*$ar[] = array("title"=>"Test 1","body"=>"Notification body 1");
- $ar[] = array("title"=>"Test 2","body"=>"Notification body 2");
- $ar[] = array("title"=>"Test 3","body"=>"Notification body 3");
- $ar[] = array("title"=>"Test 4","body"=>"Notification body 4");
- $ar[] = array("title"=>"Test 5","body"=>"Notification body 5");
- $ar[] = array("title"=>"Test 5","body"=>"http://urun.n11.com/market11/alo-sivi-camasir-deterjani-ekstra-ferah-bahar-33-yikama-x4-P137745449");
- */
- $sql='
- SELECT title,body,url
- FROM {{notification}}
- ORDER BY `id` DESC;
- ';
- $all = Yii::app()->db->createCommand($sql)->queryAll();
- $m = array();
- foreach($all as $row){
- if ( !empty($row['url']) )
- {
- $body = $row['body']." ".$row['url'];
- }else{
- $body = $row['body'];
- }
- $m[] = array('title'=>$row['title'],'body'=>$body);
- }
- echo json_encode($m);
- }
- public function actionHowitworks() {
- // $this->redirect('index');
- $model = Post::model() -> with('postContents') -> findByPk(24);
- $this->pageTitle = 'Mover.az - '. $model->postContents[0]->title;
- Yii::app()->params['OG_IMAGE'] = 'http://mover.az/media/img/ogimg.jpg';
- Yii::app()->params['OG_URL'] = $this->createAbsoluteUrl('site/Howitworks');
- Yii::app()->params['OG_TITLE'] = 'Mover.az';
- Yii::app()->params['OG_TEXT'] = $model->postContents[0]->title;
- Yii::app()->clientScript->registerLinkTag('canonical', null, $this->createAbsoluteUrl('site/Howitworks'));
- $this -> render('howitwork', array('model' => $model));
- }
- public function actionAgreement()
- {
- $this -> render('agreement');
- }
- public function actionOrderdetails()
- {
- $id = Yii::app()->user->id;
- $order_id = intval($_POST['order_id']);
- $model = Myorder::model() -> findByPk($order_id);
- if($model->count==0)
- $model->count = 1;
- $this -> renderPartial('orderedit', array('model' => $model));
- }
- public function actionOrderedit()
- {
- $model = Myorder::model()->findByPk((int)$_POST['order_id']);
- if ($model == NULL)
- throw new CHttpException(404, 'Səhv müraciət');
- //$model -> scenario = 'register';
- if ($_POST['order_id']) {
- // Image upload
- if($model->link!=$_POST['link'] || $model->image=='')
- {
- $getUrlDetails = file_get_contents("http://mover.az/diffbot.php?productPageUrl=".$_POST['link']."");
- $getUrlDetails = json_decode($getUrlDetails,true);
- $image_url = $getUrlDetails['objects'][0]['images'][0]['url'];
- $info = pathinfo($image_url);
- $ext = $info['extension'];
- $newfilename = md5(time()).'.'.$ext;
- $pth = Yii::app()->params['myorder_image_path'].$newfilename;
- copy($image_url, $pth);
- $model->image = $newfilename;
- }
- // Image upload
- // $model -> attributes = CHtml::encodeArray($_POST['Myorder']);
- $model->link = $_POST['link'];
- $model->count = (int)$_POST['count'];
- $model->comment = $_POST['comment'];
- $model->price = $_POST['price'];
- // $this -> performAjaxValidation($model);
- if ($_POST['link']!='' and $_POST['count']!='' and $_POST['comment']!='' and $_POST['price']!="") {
- $model -> save(FALSE);
- // echo CJSON::encode(array('status' => 'success','alert'=>Yii::t('text','Düzəliş edildi')));
- // Yii::app() -> end();
- }
- }
- $this->redirect(CHtml::normalizeUrl(array("site/order")));
- }
- public function actionOrdersum()
- {
- // $criteria = new CDbCriteria;
- // $criteria->condition = "balance<0";
- // $users = Users::model()->findAll($criteria);
- // $a=0;
- //
- // foreach ($users as $row)
- // {
- //// $a+=$row['weight'];
- //// $a+=round(($row['count']*MyClass::GetPrice($row['width'],$row['length'],$row['height'],$row['weight'],$row['country_id'],$row['unit'],$row['type']))+2*$row['mergedpackcount'], 2);
- // $a+=$row['balance'];
- // }
- // echo $a;
- // exit;
- $criteria = new CDbCriteria;
- // $criteria->condition = "(date6>='2017-07-07' and date6<='2017-08-17')";
- $criteria->condition = "delivery='2'";
- $orders = Orders::model()->findAll($criteria);
- $a = 0;
- // echo count($orders)."<br>";
- foreach ($orders as $row)
- {
- $a+=$row['weight'];
- // $a+=round(($row['count']*MyClass::GetPrice($row['width'],$row['length'],$row['height'],$row['weight'],$row['country_id'],$row['unit'],$row['type']))+2*$row['mergedpackcount'], 2);
- // $a+=round(($row['count']*MyClass::GetPrice($row['width'],$row['length'],$row['height'],$row['weight'],$row['country_id'],$row['unit']))+2*$row['mergedpackcount'], 2);
- // $a+=$row['price'];
- }
- echo $a;
- }
- public function actionOrderdelete()
- {
- $order_id = intval($_POST['order_id']);
- $criteria = new CDbCriteria;
- $criteria->condition = "id=:id and users_id=:users_id";
- $criteria->params = array(':id'=>$order_id,':users_id' => (int)Yii::app() -> user -> id);
- $orders = Myorder::model()->find();
- $delete = Myorder::model()->deleteByPk(array('id'=>$order_id,'users_id'=>(int)Yii::app() -> user -> id));
- if($orders)
- {
- if($delete)
- echo CJSON::encode(array('status' => 1, 'error' => 'deleted'));
- else
- echo CJSON::encode(array('status' => 0, 'error' => 'not delete'));
- }
- else
- echo CJSON::encode(array('status' => 0, 'error' => 'not found'));
- }
- public function actionPayShipping()
- {
- $order_id = intval($_POST['order_id']);
- $pay = (float)$_POST['pay'];
- $criteria = new CDbCriteria;
- $criteria->condition = "id=:id and users_id=:users_id";
- $criteria->params = array(':id'=>$order_id,':users_id' => (int)Yii::app() -> user -> id);
- $orders = Orders::model()->find($criteria);
- if(!$orders)
- {
- echo CJSON::encode(array('status' => 2));
- Yii::app()->end();
- }
- $MehsulCodes = MehsulCodes::model()->findByPk((int) $edit_dec->type);
- $tarif = ($orders->date1 >= '2018-02-15' || $orders->date1 == '0000-00-00' || $orders->date1 < '2013-01-01');
- $tot_pay = Orders::calculateCh($orders->id);
- $exchange = Yii::app()->db->createCommand()
- ->select('usd_azn')
- ->from('central_bank_rates')
- ->limit(1)
- ->order('date DESC')
- ->queryRow();
- $tot_pay = $tot_pay*(float)$exchange['usd_azn'];
- $user = Users::model()->findByPk(Yii::app()->user->id);
- if($user->balance > $tot_pay){
- $command = Yii::app()->db->createCommand();
- $gen_code = $command
- ->select('secret_code')
- ->from('wh_door_lock')
- ->where('customer_code=:customer_code AND status=:status', array(':customer_code'=>Yii::app()->user->id+100000,'status'=>'0'))
- ->queryRow();
- //$secret_code= hexdec(uniqid());
- //$secret_code = substr($secret_code,-4);
- $secret_code= rand(1000,9999);
- if(empty($gen_code)){
- $command->insert('wh_door_lock', array(
- 'customer_code' => Yii::app()->user->id+100000,
- 'secret_code' => $secret_code,
- 'createdDate' => date('Y-m-d H:i:s'),
- 'status' => '0'
- ));
- }
- else
- {
- $secret_code = $gen_code['secret_code'];
- }
- $new_balance = $user->balance - $tot_pay;
- Users::model() -> updateByPk($user->id, array('balance' => $new_balance));
- $ph = new PaymentHistory();
- $ph ->users_id = Yii::app()->user->id;
- $ph ->date = time();
- $ph ->log = '- '.($pay).'AZN ( Hazırkı balans : '.$new_balance.') AZN (id:'.$order_id.':) nömrəli sifariş üçün balansdan çatdırılma haqqı';
- Sms::Send($user -> mobile, '- '.($pay).'AZN ( Hazırkı balans : '.$new_balance.') AZN. '.$order_id.' nömrəli sifariş üçün balansdan çatdırılma haqqı. Giris kodu:'.$secret_code);
- $ph->save(false);
- Orders::model() -> updateByPk($order_id, array('paid' => '1'));
- echo CJSON::encode(array('status' => 1));
- Yii::app()->end();
- }
- else
- {
- echo CJSON::encode(array('status' => 0));
- Yii::app()->end();
- }
- }
- public function actionMultiPayShipping1(){
- if(isset($_POST['datas1']) && !empty($_POST['datas1']))
- {
- $datas_id = $_POST['datas1'];
- $user_id = Yii::app()->user->id;
- $all_orders_id =array();
- $total_amount = 0;
- $exchange = Yii::app()->db->createCommand()->select('usd_azn')->from('central_bank_rates')->limit(1)->order('date DESC')->queryRow();
- foreach($datas_id as $data)
- {
- if (strpos($data, ',') !== false) {
- $count_bundle = substr_count($data, ',', strpos($data, ',') );
- if($count_bundle > 2){
- $multiple_ids = explode(',',$data);
- $array_second_part = end($multiple_ids);
- $array_second_part = explode('_',$array_second_part);
- $bundle_date = $array_second_part[0];
- $country_id = $array_second_part[1];
- array_pop($multiple_ids);
- $all_orders_id = array_merge($all_orders_id, $multiple_ids);
- $sql="SELECT * FROM cms_orders WHERE users_id ='$user_id' AND date6 = '$bundle_date' AND delivery = 5 AND country_id = '$country_id' ";
- $same_date_bundle = Yii::app()->db->createCommand($sql)->queryAll();
- $bundle_count = count($same_date_bundle);
- $i = 0;$amount = $tot_width = $tot_height = $tot_length = $tot_weight = 0;
- foreach($same_date_bundle as $bundle){
- if(in_array($bundle['id'],$multiple_ids))
- {
- $tarif = ($bundle['date1'] >= '2018-02-15' || $bundle['date1'] == '0000-00-00' || $bundle['date1'] < '2013-01-01');
- $tot_width += $bundle['width'];
- $tot_height += $bundle['height'];
- $tot_length += $bundle['length'];
- $tot_weight += $bundle['weight'];
- if(++$i == $bundle_count) {
- $MehsulCodes = MehsulCodes::model()->findByPk((int) $bundle['type']);
- $amount = Orders::calculateShipping($MehsulCodes->type, $tot_width , $tot_height , $tot_length , $tot_weight ,$tarif, $bundle['country_id']);
- $amount +=$bundle_count;
- $total_amount += round($amount*$exchange['usd_azn'],2);
- }
- }
- else{
- echo CJSON::encode(array('status' =>404, 'message' => Yii::app()->homeUrl));
- Yii::app()->end();
- }
- //print_R($same_date_new);
- }
- }
- else{
- echo CJSON::encode(array('status' =>404, 'message' => Yii::app()->homeUrl));
- Yii::app()->end();
- }
- }
- elseif(strpos($data, ':') !== false){
- $count_bundle = substr_count($data, ':', strpos($data, ':') );
- if($count_bundle == 1)
- {
- $one_bundle = explode(':',$data);
- $one_bundle_order_id = $one_bundle[0];
- $one_bundle_order_date = $one_bundle[1];
- array_push($all_orders_id, $one_bundle_order_id);
- $sql="SELECT * FROM cms_orders WHERE users_id ='$user_id' AND date6 = '$one_bundle_order_date' AND delivery = 5 AND id = '$one_bundle_order_id'";
- $one_bundle_info = Yii::app()->db->createCommand($sql)->queryRow();
- $amount = 0;
- if(!empty($one_bundle_info))
- {
- $MehsulCodes = MehsulCodes::model()->findByPk((int) $one_bundle_info['type']);
- $tarif = ($one_bundle_info['type'] >= '2018-02-15' || $one_bundle_info['type'] == '0000-00-00' || $one_bundle_info['type'] < '2013-01-01');
- $amount = Orders::calculateShipping($MehsulCodes->type, $one_bundle_info['width'], $one_bundle_info['height'], $one_bundle_info['length'],$one_bundle_info['weight'], $tarif, $one_bundle_info['country_id']);
- $amount = round($amount*$exchange['usd_azn'],2);
- $total_amount += round($amount,2);
- }
- else
- {
- echo CJSON::encode(array('status' =>404, 'message' => Yii::app()->homeUrl));
- Yii::app()->end();
- }
- }
- else
- {
- echo CJSON::encode(array('status' =>404, 'message' => Yii::app()->homeUrl));
- Yii::app()->end();
- }
- }
- else
- {
- echo CJSON::encode(array('status' =>404, 'message' => Yii::app()->homeUrl));
- Yii::app()->end();
- }
- }
- $criteria = new CDbCriteria();
- $criteria->addInCondition("id", $all_orders_id);
- $criteria->addInCondition("users_id",array($user_id));
- $orders = Orders::model()->findAll($criteria);
- $user_balance = Users::model()->findByPk($user_id)->balance;
- if($user_balance >= $total_amount)
- {
- $command = Yii::app()->db->createCommand();
- $gen_code = $command
- ->select('secret_code')
- ->from('wh_door_lock')
- ->where('customer_code=:customer_code AND status=:status', array(':customer_code'=>$user_id+100000,'status'=>'0'))
- ->queryRow();
- $secret_code= rand(1000,9999);
- if(empty($gen_code))
- {
- $command->insert('wh_door_lock', array(
- 'customer_code' => $user_id+100000,
- 'secret_code' => $secret_code,
- 'createdDate' => date('Y-m-d H:i:s'),
- 'status' => '0'
- ));
- }
- else
- {
- $secret_code = $gen_code['secret_code'];
- }
- $new_user_balance = $user_balance - $total_amount;
- Users::model() -> updateByPk($user_id, array('balance' => $new_user_balance));
- Orders::model()->updateAll(array( 'paid' => 1),$criteria);
- $ph = new PaymentHistory();
- $ph ->users_id = $user_id;
- $ph ->date = time();
- $ph ->log = '- '.($total_amount).'AZN catdirilma haqqi ucun balansdan cixildi.( Hazırkı balans : '.$new_user_balance.')';
- Sms::Send(Users::model()->findByPk($user_id) -> mobile, '- '.($total_amount).'AZN catdirilma haqqi ucun balansdan cixildi.( Hazırkı balans : '.$new_user_balance.'). Giris kodu:'.$secret_code);
- $ph->save(false);
- echo CJSON::encode(array('status' => 200, 'message' => 'Əməliyyat uğurla tamamlandı'));
- Yii::app()->end();
- }
- else
- {
- $reminder_paid_amount = New PayShippingWithCard();
- $reminder_paid_amount->user_id = $user_id;
- $reminder_paid_amount->total_paid_amount = $total_amount;
- $reminder_paid_amount->paid_from_card = round($total_amount - $user_balance,2);
- $reminder_paid_amount->order_ids = implode(",",$all_orders_id);
- $reminder_paid_amount->reference = rand(000000, 999999).'shipping';
- $reminder_paid_amount->save();
- if($user_balance<0)
- {
- echo CJSON::encode(array('status' => 202,
- 'message' => "Sizin balansınızda <strong>$user_balance AZN</strong> borc olduğu üçün toplam ödəyəcəyiniz məbləğ <strong>$reminder_paid_amount->paid_from_card AZN</strong>",
- 'reference'=>'<a class="btn btn-success" href ="/site/shippingwithcard?reference='.$reminder_paid_amount->reference.'" >Plastik kartla ödə</a>'));
- }
- else
- {
- echo CJSON::encode(array('status' => 202,
- 'message' => "Balansınızdan <strong>$user_balance AZN </strong> qədər məbləğ olduğundan bu əməliyyatı yerinə yetirmək üçün <strong>$reminder_paid_amount->paid_from_card AZN çatmır.</strong> ",
- 'reference'=>'<a class="btn btn-success" href ="/site/shippingwithcard?reference='.$reminder_paid_amount->reference.'" >Plastik kartla ödə</a>'));
- }
- Yii::app()->end();
- }
- }
- else
- {
- echo CJSON::encode(array('status' =>404, 'message' => Yii::app()->homeUrl));
- Yii::app()->end();
- }
- }
- public function actionMultiPayShipping()
- {
- $user_id = Yii::app()->user->id;
- if(isset($_POST['datas']))
- {
- $criteria = new CDbCriteria();
- $criteria->addInCondition("id", $_POST['datas']);
- $criteria->addInCondition("users_id",array($user_id));
- $orders = Orders::model()->findAll($criteria);
- if($orders)
- {
- $exchange = Yii::app()->db->createCommand()->select('usd_azn')->from('central_bank_rates')->limit(1)->order('date DESC')->queryRow();
- foreach($orders as $order)
- {
- $MehsulCodes = MehsulCodes::model()->findByPk((int) $order->type);
- $tarif = ($order->date1 >= '2018-02-15' || $order->date1 == '0000-00-00' || $order->date1 < '2013-01-01');
- $amount = Orders::calculateCh($order->id);
- $tot = round($amount*$exchange['usd_azn'],2);
- $total_amount += $tot;
- }
- }
- else
- {
- echo CJSON::encode(array('status' =>0, 'message' => 'Sifarişinizə uyğun məlumat tapılmadı'));
- Yii::app()->end();
- }
- $user_balance = Users::model()->findByPk($user_id)->balance;
- if($user_balance >= $total_amount)
- {
- $command = Yii::app()->db->createCommand();
- $gen_code = $command
- ->select('secret_code')
- ->from('wh_door_lock')
- ->where('customer_code=:customer_code AND status=:status', array(':customer_code'=>$user_id+100000,'status'=>'0'))
- ->queryRow();
- $secret_code= rand(1000,9999);
- if(empty($gen_code))
- {
- $command->insert('wh_door_lock', array(
- 'customer_code' => $user_id+100000,
- 'secret_code' => $secret_code,
- 'createdDate' => date('Y-m-d H:i:s'),
- 'status' => '0'
- ));
- }
- else
- {
- $secret_code = $gen_code['secret_code'];
- }
- $new_user_balance = $user_balance - $total_amount;
- Users::model() -> updateByPk($user_id, array('balance' => $new_user_balance));
- Orders::model()->updateAll(array( 'paid' => 1),$criteria);
- $ph = new PaymentHistory();
- $ph ->users_id = $user_id;
- $ph ->date = time();
- $ph ->log = '- '.($total_amount).'AZN catdirilma haqqi ucun balansdan cixildi.( Hazırkı balans : '.$new_user_balance.')';
- Sms::Send(Users::model()->findByPk($user_id) -> mobile, '- '.($total_amount).'AZN catdirilma haqqi ucun balansdan cixildi.( Hazırkı balans : '.$new_user_balance.'). Giris kodu:'.$secret_code);
- $ph->save(false);
- echo CJSON::encode(array('status' => 1, 'message' => 'Əməliyyat uğurla tamamlandı'));
- Yii::app()->end();
- }
- else
- {
- $reminder_paid_amount = New PayShippingWithCard();
- $reminder_paid_amount->user_id = $user_id;
- $reminder_paid_amount->total_paid_amount = $total_amount;
- $reminder_paid_amount->paid_from_card = round($total_amount - $user_balance,2);
- $reminder_paid_amount->order_ids = implode(",",$_POST['datas']);
- $reminder_paid_amount->reference = rand(000000, 999999).'shipping';
- $reminder_paid_amount->save();
- $command = Yii::app()->db->createCommand();
- $gen_code = $command
- ->select('secret_code')
- ->from('wh_door_lock')
- ->where('customer_code=:customer_code AND status=:status', array(':customer_code'=>$user_id+100000,'status'=>'0'))
- ->queryRow();
- $secret_code= rand(1000,9999);
- if(empty($gen_code))
- {
- $command->insert('wh_door_lock', array(
- 'customer_code' => $user_id+100000,
- 'secret_code' => $secret_code,
- 'createdDate' => date('Y-m-d H:i:s'),
- 'status' => '0'
- ));
- }
- else
- {
- $secret_code = $gen_code['secret_code'];
- }
- if($user_balance<0)
- {
- echo CJSON::encode(array('status' => 2,
- 'message' => "Sizin balansınızda <strong>$user_balance AZN</strong> borc olduğu üçün toplam ödəyəcəyiniz məbləğ <strong>$reminder_paid_amount->paid_from_card AZN</strong>",
- 'reference'=>'<a class="btn btn-success" href ="/site/shippingwithcard?reference='.$reminder_paid_amount->reference.'" >Plastik kartla ödə</a>'));
- }
- else
- {
- echo CJSON::encode(array('status' => 2,
- 'message' => "Balansınızdan <strong>$user_balance AZN </strong> qədər məbləğ olduğundan bu əməliyyatı yerinə yetirmək üçün <strong>$reminder_paid_amount->paid_from_card AZN çatmır.</strong> ",
- 'reference'=>'<a class="btn btn-success" href ="/site/shippingwithcard?reference='.$reminder_paid_amount->reference.'" >Plastik kartla ödə</a>'));
- }
- Yii::app()->end();
- }
- }
- }
- public function actionShippingWithCard(){
- if(isset($_GET['reference']))
- {
- $ref = str_replace(' ', '', $_GET['reference']);
- $exist_reference = PayShippingWithCard::model()->find('reference=:reference', array(':reference'=>$ref));
- if($exist_reference)
- {
- $mebleg = str_replace(",",".",$exist_reference->paid_from_card);
- $desc = CHtml::encode(Yii::app()->user->id."-".Yii::app()->user->getFirstName()." ".Yii::app()->user->getSurname());
- $desc = str_replace(' ','_',$desc);
- $desc = MyClass::slugify($desc);
- $payment = new Millikart($exist_reference->paid_from_card,$exist_reference->reference,$desc);
- $response = $payment->getURL();
- header("Location: ".$response);
- }
- else
- {
- $this->redirect(Yii::app()->homeUrl);
- }
- }
- else{
- $this->redirect(Yii::app()->homeUrl);
- }
- }
- public function actionDeleteorder()
- {
- $order_id = intval($_POST['order_id']);
- $criteria = new CDbCriteria;
- $criteria->condition = "id=:id and users_id=:users_id";
- $criteria->params = array(':id'=>$order_id,':users_id' => (int)Yii::app() -> user -> id);
- $orders = Orders::model()->find($criteria);
- $orders->status = 2;
- $delete = Orders::model()->deleteByPk(array('id'=>$order_id,'users_id'=>(int)Yii::app() -> user -> id));
- if($orders)
- {
- if($orders->save(false))
- echo CJSON::encode(array('status' => 1, 'error' => 'deleted'));
- else
- echo CJSON::encode(array('status' => 0, 'error' => 'not delete'));
- }
- else
- echo CJSON::encode(array('status' => 0, 'error' => 'not found'));
- }
- public function actionBasketaccept($id)
- {
- $id = intval($_GET['id']);
- Myorder::model() -> updateByPk($id, array('basket' => '0'));
- $this->redirect(CHtml::normalizeUrl(array("site/order")));
- }
- public function actionMultiplesms()
- {
- $offset = intval($_GET['offset']);
- $limit = intval($_GET['limit']);
- $sql="
- SELECT id,mobile FROM `cms_users` WHERE `status`='1' and `mobile`!='' LIMIT $offset,$limit
- ";
- $myorders = Yii::app()->db->createCommand($sql)->queryAll();
- echo count($myorders);
- foreach ($myorders as $val)
- Sms::Send($val['mobile'], "Hormetli musterimiz nezerinize catdiraq ki, sifarislerin verilmesi berpa olundu. Linklerinizi gondere bilersiniz.");
- // Sms::Send(994506877836, "Hormetli musterimiz nezerinize catdiraq ki, sifarislerin verilmesi berpa olundu. Linklerinizi gondere bilersiniz.");
- // var_dump($myorders);
- }
- public function actionGetpostivr(){
- header('Content-Type: application/json');
- if(isset($_GET['phone']) && !empty($_GET['phone'])){
- $phone = intval($_GET['phone']);
- $getUserByPhone = Users::model()->findByAttributes(array("phone"=>$phone));
- $getUserByMobile = Users::model()->findByAttributes(array("mobile"=>$phone));
- if(count($getUserByPhone)>0) $user_id_2 = $getUserByPhone->id;
- elseif(count($getUserByMobile)>0) $user_id_2 = $getUserByMobile->id;
- else $user_id_2 = 0;
- }elseif(isset($_GET['user_id']) && !empty($_GET['user_id'])){
- $user_id_2 = intval($_GET['user_id']);
- $user_id_2 = $user_id_2-100000;
- }
- else
- $user_id_2 = 0;
- if($user_id_2>0)
- $getUser = Users::model()->findByPk($user_id_2);
- else
- $getUser = null;
- if($getUser)
- {
- /*$orders = Orders::model()->findAllByAttributes(array('users_id' => $user_id_2));
- $delivery_names = array(
- 1 => 'sifarish_verilib',
- 2 => 'anbardadir',
- 3 => 'gonderilib',
- 4 => 'daxil_olub',
- 5 => 'catib',
- 6 => 'tehvil_verilib',
- 7 => 'beyenname_gozleyir',
- 8 => 'beyenname_elave_olunub'
- );
- $delivery_count = array(
- 1 => 0,
- 2 => 0,
- 3 => 0,
- 4 => 0,
- 5 => 0,
- 6 => 0,
- 7 => 0,
- 8 => 0
- );
- foreach($orders as $order){
- $delivery_count[(int)$order->delivery] += 1;
- }
- $response = [];
- foreach($delivery_count as $key => $val){
- $response[$delivery_names[$key]] = $val;
- }
- $response['gozleyir'] = 0;
- $response['odenis_olmayan'] = 0;*/
- // Sifarishi gozleyenler
- //$getmyorders = Myorder::model()->findAllByAttributes(array("users_id"=>$user_id_2,"status"=>'1'));
- $getmyorders = Myorder::model()->findAllByAttributes(array("users_id"=>$user_id_2,"status"=>'1'));
- $gozleyen = 0;
- $odenisolmayan = 0;
- foreach($getmyorders as $mo){
- $status = PaymentProducts::model()->findByAttributes(array('myorder_id' =>$mo->id, 'paymentstatus' => 'SUCCESS'));
- if($status){
- $gozleyen ++;
- }else{
- $odenisolmayan ++;
- }
- }
- /*$myorders_count = count($getmyorders);
- $getmyorders2 = Myorder::model()->findAllByAttributes(array("users_id"=>$user_id_2,"status"=>'1', 'order_type' => 'is null'));
- $myorders2_count = count($getmyorders2);*/
- // Sifairshi verilenler
- $getOrders1 = Orders::model()->findAllByAttributes(array("users_id"=>$user_id_2,"delivery"=>'1',"status"=>'1'));
- $anbar_date_tr1 = null;
- $anbar_date_tr2 = null;
- foreach($getOrders1 as $order){
- if($order['anbar_date_tr1'] !== null) $anbar_date_tr1 = $order['anbar_date_tr1'];
- if($order['anbar_date_tr2'] !== null) $anbar_date_tr2 = $order['anbar_date_tr2'];
- }
- $delivery1_count = count($getOrders1);
- // Turkiye anbarina daxil olmush sifar1ishler
- $getOrders2 = Orders::model()->findAllByAttributes(array("users_id"=>$user_id_2,"delivery"=>'2',"status"=>'1'));
- $plus_day = array(
- 0 => '+2 days',
- 1 => '+1 days',
- 2 => '+3 days',
- 3 => '+2 days',
- 4 => '+1 days',
- 5 => '+4 days',
- 6 => '+3 days',
- );
- foreach ($getOrders2 as $anbar){
- $weekday = date("w",strtotime($anbar->date2));
- $date = date("Y-m-d",strtotime($anbar->date2));
- $flight_day = date("Y-m-d",strtotime($date.$plus_day[$weekday]));
- }
- $delivery2_count = count($getOrders2);
- //$getOrders3 = Orders::model()->findAllByAttributes(array("users_id"=>$user_id_2,"delivery"=>'3',"status"=>'1'));
- $delivery3_count = 0;
- $date3 = null;
- /*foreach ($getOrders3 as $order){
- if($date3 === null){
- $date3 = date('Y-m-d', strtotime($order->date3 . ' +1 day'));
- break;
- }
- }*/
- $getOrders5 = Orders::model()->findAllByAttributes(array("users_id"=>$user_id_2,"delivery"=>'5',"status"=>'1'));
- $delivery5_count = count($getOrders5);
- $getOrders7 = Orders::model()->findAllByAttributes(array("users_id"=>$user_id_2,"delivery"=>'7',"status"=>'1'));
- $delivery7_count = count($getOrders7);
- echo CJSON::encode(array('status' => 1, 'info' =>
- array(
- "gozleme"=>$gozleyen,
- "odenis_olunmayan"=>$odenisolmayan,
- "verilen"=>
- array(
- "count"=>$delivery1_count,
- "anbar_date_tr1"=>$anbar_date_tr1,
- "anbar_date_tr2"=>$anbar_date_tr2
- ),
- "daxilolmush"=>
- array(
- "count"=>$delivery2_count,
- "anbar_date_baku"=>$flight_day
- ),
- "gonderilen"=>
- array(
- "count"=>$delivery3_count,
- "anbar_date_baku"=>$date3
- ),
- "beyenname_gozleyen"=>
- array(
- "count"=>$delivery7_count,
- "anbar_date_baku"=>$flight_day
- ),
- "catib"=>$delivery5_count)
- ));
- }
- else
- echo CJSON::encode(array("status" => 0, "info" => "User not found"));
- }
- public function actionPostturkey($key)
- {
- $login = 'mover';
- $pass = '0c5ff531018309164d347bc8b18fdcc8';//remover
- if( ( @md5(md5($_SERVER['PHP_AUTH_PW'])) != $pass || @$_SERVER['PHP_AUTH_USER'] != $login)|| !@$_SERVER['PHP_AUTH_USER'])
- {
- header('WWW-Authenticate: Basic realm="Access denied"');
- header('HTTP/1.0 401 Unauthorized');
- echo 'Auth failed';
- exit;
- }
- if($key=="mov3rp0stk4y")
- {
- if(!empty($_POST["save"])){
- extract($_POST);
- echo "<script>document.getElementById('successmesaj').style.display = 'block';</script>";
- }
- $this -> render('postturkey');
- }
- else{
- $this->redirect(Yii::app()->homeUrl);
- }
- }
- public function actionGetturkeyorders()
- {
- $post_val = strip_tags($_POST['input_val']);
- $type = intval($_POST['input_type']);
- //receive username from DB
- if($type==1)
- {
- $sql="
- SELECT * FROM `cms_orders` WHERE `magaza_tracking`='$post_val' and delivery='1' and status='1'";
- $orders = Yii::app()->db->createCommand($sql)->queryAll();
- $getUserId = $orders[0]['users_id'];
- $getUsername = Users::model()->findByPk($getUserId);
- }
- elseif($type==2)
- {
- $getUserId = Users::model()->findByAttributes(array("user_key"=>$post_val));
- $getUsername = Users::model()->findByPk($getUserId->id);
- $sql="SELECT * FROM `cms_orders` WHERE `users_id`='$getUserId->id' and delivery='1' and status='1'";
- $orders = Yii::app()->db->createCommand($sql)->queryAll();
- }
- else
- $orders = 0;
- $this->renderPartial('getturkeyinfo',array('orders' => $orders,'getUsername'=>$getUsername));
- }
- public function actionUpdateturkeyorder()
- {
- $order_id = intval($_POST['order_id']);
- $order_type = intval($_POST['order_type']);
- $no = intval($_POST['no']);
- $order = Orders::model()->findByPk($order_id);
- $this->renderPartial('orderinfoturkey',array('order'=>$order,'order_type'=>$order_type,'no'=>$no));
- }
- public function actionUpdateorderturkey()
- {
- $order_id = intval($_POST['order_id']);
- $order_type = intval($_POST['order_type']);
- if($order_type==3)
- {
- $height = $_POST['height'];
- $width = $_POST['width'];
- $length = $_POST['length'];
- $weight = $_POST['weight'];
- Orders::model()->updateByPk((int)$order_id, array('height' => $height,'width' => $width,'weight' => $weight, 'length' => $length, 'postturkey' => 1,'delivery' => '2','date2' => date('Y-m-d')));
- }
- else
- {
- $weight = $_POST['weight'];
- Orders::model()->updateByPk((int)$order_id, array('weight' => $weight, 'postturkey' => 1,'delivery' => '2','date2' => date('Y-m-d')));
- }
- }
- public function actionUserslocation()
- {
- $sql="
- SELECT address FROM `cms_users` WHERE `address`!='' and status='1'";
- $users = Yii::app()->db->createCommand($sql)->queryAll();
- foreach ($users as $user)
- {
- $getcoord = file_get_contents("https://maps.google.com/maps/api/geocode/xml?address=".urlencode($user['address'])."&sensor=false&key=AIzaSyDC_3TnJ0yUYMRPyoctLKqoBtNnLTNwzKc");
- if(!$getcoord) {
- echo "Err: No access to Google service: ".$a."<br/>\n";
- }else {
- $get = simplexml_load_string($getcoord);
- if ($get->status == "OK") {
- $lat = (float) $get->result->geometry->location->lat;
- $long = (float) $get->result->geometry->location->lng;
- echo "lat: ".$lat."; long: ".$long."; ".$a."<br/>\n";
- }else{
- echo "Err: address not found: ".$a."<br/>\n";
- }
- }
- }
- }
- public function actionetgb(){
- if($_GET["key"] == "delixana1"){
- $generalDetailsQuery = "SELECT count(*) as count, sum(price) as totalPrice, sum(weight) as totalWeight FROM mover.cms_orders WHERE shop NOT LIKE '%flo%' AND addedbyuser = '0' AND delivery = '2' AND status = '1'";
- $typesQuery = "SELECT count(*) as count,type FROM mover.cms_orders WHERE shop NOT LIKE '%flo%' AND addedbyuser = '0' AND delivery = '2' AND status = '1' GROUP BY type";
- $generalDetails = Yii::app()->db->createCommand($generalDetailsQuery)->queryAll();
- $types = Yii::app()->db->createCommand($typesQuery)->queryAll();
- echo "Toplam sifariş sayı: ".$generalDetails[0]["count"]."<br>";
- echo "Toplam dəyər: ".$generalDetails[0]["totalPrice"]."<br>";
- echo "Toplam çəki: ".$generalDetails[0]["totalWeight"]."<br>";
- echo "<hr>";
- foreach($types as $type){
- $typeName;
- if($type["type"] == "1"){
- $typeName = "Geyim";
- }else if($type["type"] == "2"){
- $typeName = "Ayaqqabi";
- }else if($type["type"] == "3"){
- $typeName = "Diger";
- }else if($type["type"] == "4"){
- $typeName = "Kitab";
- }
- echo $typeName.": ".$type["count"]."<br>";
- }
- }
- }
- public function actionMailgrabber(){
- $apiKey = 'delixana1';
- $trackNumber = isset($_POST["trackNumber"]) ? $_POST["trackNumber"] : NULL;
- $website = isset($_POST["website"]) ? $_POST["website"] : NULL;
- $invoiceLink = isset($_POST["invoiceLink"]) ? $_POST["invoiceLink"] : NULL;
- $status = isset($_POST["status"]) ? $_POST["status"] : NULL;
- if(!isset($_POST["apiKey"]) || hash('sha256',$apiKey) != $_POST["apiKey"]){
- http_response_code(401);
- $this->sendJSONResponse(array(
- "error" => "Not authorized.",
- // "your" => $_POST["apiKey"],
- // "needed" => hash('sha256',$apiKey),
- // "website" => $website
- ));
- Yii::app()->end();
- }
- if($trackNumber && $invoiceLink && $website){
- $this->addInvoiceFile($website,$trackNumber,$invoiceLink);
- }else if($trackNumber && $status){
- $this->updateOrderDeliveryStatus($trackNumber,$status);
- }else{
- http_response_code(400);
- $this->sendJSONResponse(array(
- "error" => "Not enough parameters sent"
- ));
- Yii::app()->end();
- }
- // $this->sendJSONResponse(array(
- // "success" => true
- // ));
- Yii::app()->end();
- }
- private function addInvoiceFile($website,$trackNumber,$invoiceLink){
- $criteria = new CDbCriteria;
- // $criteria->condition = "magaza_tracking=:magaza_tracking";
- $criteria->addSearchCondition("magaza_tracking","%".$trackNumber."%",false);
- // $criteria->params = array(':magaza_tracking' => $trackNumber);
- $order = Orders::model()->find($criteria);
- // $order->file = $fileName;
- // $order->save();
- // exit;
- if($order == NULL){
- http_response_code(404);
- $this->sendJSONResponse(array(
- "error" => "An order with given track number doesn't exists"
- ));
- Yii::app()->end();
- }else if($order->file != NULL){
- http_response_code(403);
- $this->sendJSONResponse(array(
- "error" => "Invoice already exists"
- ));
- Yii::app()->end();
- }else if($website == "trendyol.com"){
- $fileName = round(microtime(true) * 1000).".pdf";
- $filePath = Yii::app()->params['invoice_path'];
- if (!file_exists($filePath)) {
- mkdir($filePath, 0777, true);
- }
- file_put_contents($filePath.$fileName, file_get_contents($invoiceLink));
- $order->file = $fileName;
- $order->shop = $website;
- $order->save();
- // var_dump($order->errors);
- // exit;
- http_response_code(200);
- $this->sendJSONResponse(array(
- "fileName" => $fileName,
- "fullPath" => $filePath.$fileName
- ));
- }else{
- http_response_code(400);
- $this->sendJSONResponse(array(
- "error" => "Request parameters didn't match any condition"
- ));
- Yii::app()->end();
- }
- }
- private function updateOrderDeliveryStatus($trackNumber,$status){
- $criteria = new CDbCriteria;
- $criteria->condition = "tracking=:tracking";
- $criteria->params = array(':tracking' => $trackNumber);
- $order = Orders::model()->find($criteria);
- if($order == NULL){
- http_response_code(404);
- $this->sendJSONResponse(array(
- "error" => "An order with given track number doesn't exists"
- ));
- Yii::app()->end();
- }else{
- $deliveryStatus = $order["delivery"];
- if($status > 6){
- http_response_code(400);
- Yii::app()->end();
- }else if($status > $deliveryStatus){
- $order->delivery = $status;
- $order->save();
- }
- }
- }
- public function actionGetOrdersWithoutInvoice(){
- $arr = array();
- $ordersQuery = "SELECT year(order_date), month(order_date), magaza_tracking, id, `file`, shop, price, order_key FROM mover.cms_orders WHERE magaza_tracking <> '' AND year(order_date) = 2018 AND month(order_date) = 1 AND `file` = '' AND lower(shop) LIKE '%trend%' ORDER BY id ASC";
- // $typesQuery = "SELECT count(*) as count,type FROM mover.cms_orders WHERE shop NOT LIKE '%flo%' AND addedbyuser = '0' AND delivery = '2' AND status = '1' GROUP BY type";
- $orders = Yii::app()->db->createCommand($ordersQuery)->queryAll();
- // echo "<hr>";
- foreach($orders as $order){
- if(preg_match("/(\d+){8}/",$order['magaza_tracking'])){
- array_push($arr,$order['magaza_tracking']);
- }
- }
- $this->sendJSONResponse($arr);
- }
- public function sendJSONResponse($arr)
- {
- header('Content-type: application/json');
- echo json_encode($arr);
- Yii::app()->end();
- }
- private function generateRandomString($length = 10) {
- $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
- $charactersLength = strlen($characters);
- $randomString = '';
- for ($i = 0; $i < $length; $i++) {
- $randomString .= $characters[rand(0, $charactersLength - 1)];
- }
- return $randomString;
- }
- public function actionMonthlyInvoices($year = null,$month = null){
- if($year == null || $month == null){
- echo "Ay ve ya il duzgun yazilmayib";
- }else{
- $arr = array();
- $ordersQuery = "SELECT id,`file` FROM mover.cms_orders WHERE magaza_tracking <> '' AND year(order_date) = ".$year." AND month(order_date) = ".$month." AND `file` <> '' AND lower(shop) LIKE '%trend%' ORDER BY id ASC;";
- // $typesQuery = "SELECT count(*) as count,type FROM mover.cms_orders WHERE shop NOT LIKE '%flo%' AND addedbyuser = '0' AND delivery = '2' AND status = '1' GROUP BY type";
- $orders = Yii::app()->db->createCommand($ordersQuery)->queryAll();
- // echo "<hr>";
- foreach($orders as $order){
- echo $order["file"]."\n";
- }
- }
- }
- public function actionOrderfrommarkam(){
- /*$_POST = $_GET;
- error_reporting(E_ALL);
- ini_set('display_errors', 1);*/
- if(!$_POST){
- return $this->sendJSONResponse(['success' => false, 'message' => 'Only post request']);
- }
- $name = $_POST['name'];
- $surname = $_POST['surname'];
- $phone = $_POST['phone'];
- $size_id = $_POST['size_id'];
- $product_id = $_POST['product_id'];
- $address = $_POST['address'];
- $price = $_POST['price'];
- $link = $_POST['link'];
- $count = $_POST['count'];
- $order_id = $_POST['order_id'];
- $comment = $_POST['comment'];
- $success = false;
- foreach ($link as $key => $val) {
- if (strpos($price[$key], ",") > 0)
- $price_new = str_replace(",", ".", $price[$key]);
- else
- $price_new = $price[$key];
- $sql = "INSERT INTO
- cms_markam_links (`comment`,`name`,`surname`,`phone`,`address`,`size`,`pid`,`link`,`price`,`count`,`date`, `country_id`, `m_order_id`)
- VALUES (:comment,:name,:surname,:phone,:address,:size,:pid,:link,:price,$count[$key]," . time() . ", 1, " . $order_id . ")";
- //echo $sql;
- $command = Yii::app()->db->createCommand($sql)
- ->bindParam(':name', $name, PDO::PARAM_STR)
- ->bindParam(':surname', $surname, PDO::PARAM_STR)
- ->bindParam(':phone', $phone, PDO::PARAM_STR)
- ->bindParam(':address', $address, PDO::PARAM_STR)
- ->bindParam(':size', $size_id[$key], PDO::PARAM_STR)
- ->bindParam(':comment', $comment[$key], PDO::PARAM_STR)
- ->bindParam(':pid', $product_id[$key], PDO::PARAM_STR)
- ->bindParam(':link', $val, PDO::PARAM_STR)
- ->bindParam(':price', $price_new, PDO::PARAM_STR)
- ->execute();
- }
- try {
- if ($command) {
- $success = true;
- }
- } catch (Exception $ex) {
- //$ex->getMessage();
- $success = false;
- }
- echo json_encode(['success' => $success]);
- }
- public function actionOrderTracking($id = 0){
- $order = Orders::model()->findByPk((int) $id);
- $data = [];
- if($order){
- $date = 'date'.$order->delivery;
- $data['success'] = true;
- $data['status'] = $order->delivery;
- $data['date'] = $order->{$date};
- return $this->sendJSONResponse($data);
- }
- $data['success'] = false;
- $data['message'] = 'Order not exists';
- return $this->sendJSONResponse($data);
- }
- public function actionCancelCourierOrder(){
- if(isset($_POST['courier_order_data']))
- {
- $user = Users::model()->findByPk(Yii::app()->user->id);
- $data = explode(':',$_POST['courier_order_data']);
- $courier_order_id = $data[0];
- $status_id = $data[1];
- if($status_id == 0 ){
- DeliveryAddressNew::model() -> updateByPk($courier_order_id, array('status' => 4));
- }
- elseif($status_id == 1 ){
- $new_user_balance = $user->balance - 5;
- DeliveryAddressNew::model() -> updateByPk($courier_order_id, array('status' => 3));
- Users::model() -> updateByPk($user->id, array('balance' => $new_user_balance));
- // balans loqlari
- $ph = new PaymentHistory();
- $ph ->users_id = Yii::app()->user->id;
- $ph ->date = time();
- $ph ->log = '- 5 AZN Kuryer sifarişinin ləğvi ( Hazırkı balans : '.$new_user_balance.') AZN ';
- $ph->save();
- $order_ids = Yii::app()->db->createCommand()
- ->select('*')
- ->from('cms_delivery_order')
- ->where('delivery_id=:delivery_id', array(':delivery_id'=>$courier_order_id))
- ->queryAll();
- foreach($order_ids as $order_id)
- {
- Orders::model() -> updateByPk($order_id['order_id'], array('delivery' => '5'));
- }
- }
- Yii::app()->end();
- }
- }
- /* public function actionEmailConfirm()
- {
- if(isset($_POST['user_email']))
- {
- $user = Users::model()->find('email=:email', array(':email'=>$_POST['user_email']));
- $user_activation_key = sha1(md5(time() + rand(999, 999999999)));
- Users::model() -> updateByPk($user->id, array('user_activation_key' => $user_activation_key));
- $body="Hörmətli ".$user->name." ".$user->surname." \r\n <br>";
- $body.="Aşağıdakı linkdən istifadə edərək hesabınızı təstiqləyin \r\n <br>";
- $body.="<a href='".Yii::app()->createAbsoluteUrl('site/emailactivate',array('code'=>$user_activation_key))."'>".Yii::app()->createAbsoluteUrl('site/emailactivate',array('code'=>$user_activation_key))."</a> \r\n \r\n<br>";
- $body.="Təşəkkür edirik.<br>";
- $mail = new PHPMailer();
- $mail->isSMTP();
- $mail->Host = 'smtp.zoho.com';
- $mail->SMTPAuth = true;
- $mail->SMTPSecure = 'ssl';
- $mail->Port = 465;
- $mail->Username = 'info@mover.az';
- $mail->Password = '3lf3c!n@';
- $mail->SetFrom($mail->Username, 'MOVER.AZ');
- $mail->AddAddress($user->email);
- $mail->CharSet = 'UTF-8';
- $mail->Subject = 'Email təsdiqləməsi - Mover';
- $mail->MsgHTML($body);
- if(!$mail->send())
- {
- echo CJSON::encode(['error' => $mail->ErrorInfo]);
- Yii::app()->end();
- }
- else
- {
- echo CJSON::encode(['success' => 'Təsdiq maili göndərildi:']);
- Yii::app()->end();
- }
- }
- }*/
- public function actionEmailActivate($code) {
- if ($code != '') {
- $model = Users::model() -> find('user_activation_key=:code', array(':code' => $code));
- if ($model) {
- // /$model->activate='';
- if ($model -> verified_email == 0) {
- $model -> verified_email = 1;
- if ($model -> update(array('verified_email'))) {
- $this -> render('emailactivate', array('model' => $model, 'status' => 'success'));
- }
- } else {
- //Yii::app() -> user -> logout();
- $this -> render('emailactivate', array('model' => $model, 'status' => 'already'));
- }
- } else {
- throw new CHttpException(404, "Yalnış altivasiya kodu");
- }
- } else {
- $this -> redirect(Yii::app() -> homeUrl);
- }
- }
- public function actionEmailConfirm(){
- if(isset($_POST['user_email']))
- {
- $user = Users::model()->find('email=:email', array(':email'=>$_POST['user_email']));
- $user_activation_key = sha1(md5(time() + rand(999, 999999999)));
- Users::model() -> updateByPk($user->id, array('user_activation_key' => $user_activation_key));
- $body="Hörmətli ".$user->name." ".$user->surname." \r\n <br>";
- $body.="Aşağıdakı linkdən istifadə edərək hesabınızı təstiqləyin \r\n <br>";
- $body.="<a href='".Yii::app()->createAbsoluteUrl('site/emailactivate',array('code'=>$user_activation_key))."'>".Yii::app()->createAbsoluteUrl('site/emailactivate',array('code'=>$user_activation_key))."</a> \r\n \r\n<br>";
- $body.="Təşəkkür edirik.<br>";
- require '/home/mover.az/mailgun-php/vendor/autoload.php';
- //$httpClient = new Http\Adapter\Guzzle6\Client();
- $mailgunClient = new Mailgun\Mailgun('060c1707ab0899fcf36396af78c8ffa8-059e099e-9f1fe8d6');
- $domain = 'mail.mover.az';
- # Make the call to the client.
- $result = $mailgunClient->sendMessage($domain, array(
- 'from' => 'MOVER.AZ <info@mover.az>',
- 'to' => $user->email,
- 'subject' => 'Email təsdiqləməsi - Mover',
- 'html' => $body,
- ));
- if($result->http_response_code == 200)
- {
- echo CJSON::encode(['response' => 'Təsdiq maili göndərildi:']);
- Yii::app()->end();
- }
- elseif($result->http_response_code == 500)
- {
- echo CJSON::encode(['response' => 'Sistemde xeta baş verdi:']);
- Yii::app()->end();
- }
- }
- }
- public function actionMyCommitment()
- {
- $user_id =Yii::app()->user->id;
- $criteria = new CDbCriteria();
- $criteria->addCondition("users_id=:users_id");
- $criteria->params = array(':users_id' => $user_id);
- $commitment = Commitment::model()->findAll($criteria);
- $this -> render('commitment', array('commitment' => $commitment));
- }
- public function actionAddCommitment()
- {
- $model = new Commitment;
- if(isset($_POST['c_name']))
- {
- $commitmentName = Yii::app()->request->getPost('c_name');
- $commitmentSurname = Yii::app()->request->getPost('c_surname');
- $commitmentEnddate = Yii::app()->request->getPost('end_date');
- $date = date("Y-m-d");
- $commitmetImage = Yii::app()->request->getPost('image');
- if($_POST['c_name'] == '')
- {
- Yii::app()->user->setFlash('empty_info','Bütün məlumatları daxil edin');
- return $this -> render('addcommitment', array('model' => $model));
- }
- if($_POST['c_surname'] == '')
- {
- Yii::app()->user->setFlash('empty_info','Bütün məlumatları daxil edin');
- return $this -> render('addcommitment', array('model' => $model));
- }
- if($_POST['end_date'] == '')
- {
- Yii::app()->user->setFlash('empty_info','Bütün məlumatları daxil edin');
- return $this -> render('addcommitment', array('model' => $model));
- }
- if($_FILES['image']['name'] == '')
- {
- Yii::app()->user->setFlash('empty_image','Fayl seçilməyib');
- return $this -> render('addcommitment', array('model' => $model));
- }
- $model->users_id=Yii::app()->user->id;
- $model->attributes = $_POST;
- $type=$_FILES['image']['type'];
- $extension = strtolower(pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION));
- $path = Yii::app()->params['users_image_path'].'/commitment';
- $type_files=array('image/jpg','image/jpeg','image/png','image/bmp');
- $type_extension=array('jpg','jpeg','png','bmp');
- if(in_array($type, $type_files) && in_array($extension,$type_extension)){
- $model->image =time().uniqid(rand()).$_FILES['image']['name'];
- move_uploaded_file($_FILES["image"]["tmp_name"],$path.'/'.$model->image);
- $model->end_date = date('Y-m-d', strtotime($date . ' +'.$commitmentEnddate.' day'));
- if($model->save());
- {
- $this->redirect('/mycommitment');
- }
- }
- else
- {
- Yii::app()->user->setFlash('image_type','Faylın tipi düzgün deyil');
- return $this -> render('addcommitment', array('model' => $model));
- }
- }
- $this -> render('addcommitment', array('model' => $model));
- }
- public function actionDeleteCommitment(){
- $commitment_id = intval($_POST['commitment_id']);
- $criteria = new CDbCriteria;
- $criteria->condition = "id=:id and users_id=:users_id";
- $criteria->params = array(':id'=>$commitment_id,':users_id' => (int)Yii::app() -> user -> id);
- $commitment = Commitment::model()->find($criteria);
- $delete = Commitment::model()->deleteByPk(array('id'=>$commitment_id,'users_id'=>(int)Yii::app() -> user -> id));
- if($delete)
- {
- echo CJSON::encode(array('status' => 1, 'error' => 'deleted'));
- }
- else
- echo CJSON::encode(array('status' => 0, 'error' => 'not found'));
- }
- public function actionEditCommitment($id = 0){
- $id=intval($id);
- $criteria = new CDbCriteria;
- $criteria->condition = "id=:id and users_id=:users_id";
- $criteria->params = array(':id'=>$id,':users_id' => (int)Yii::app() -> user -> id);
- $commitment = Commitment::model()->find($criteria);
- if(isset($_POST['c_name']))
- {
- $commitmentName = Yii::app()->request->getPost('c_name');
- $commitmentSurname = Yii::app()->request->getPost('c_surname');
- $commitmentEnddate = Yii::app()->request->getPost('end_date');
- $type=$_FILES['image']['type'];
- $extension = strtolower(pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION));
- $path = Yii::app()->params['users_image_path'].'/commitment';
- $type_files=array('image/jpg','image/jpeg','image/png','image/bmp');
- $type_extension=array('jpg','jpeg','png','bmp');
- if($_FILES['image']['name'] != '')
- {
- if(in_array($type, $type_files) && in_array($extension,$type_extension))
- {
- $commitment->c_name = $commitmentName;
- $commitment->c_surname = $commitmentSurname;
- $commitment->image =time().uniqid(rand()).$_FILES['image']['name'];
- move_uploaded_file($_FILES["image"]["tmp_name"],$path.'/'.$commitment->image);
- if($commitment->save());
- {
- $this->redirect('/mycommitment');
- }
- }
- else
- {
- Yii::app()->user->setFlash('image_type','Faylın tipi düzgün deyil');
- return $this -> render('editCommitment', array('model' => $commitment));
- }
- }
- else
- {
- $commitment->c_name = $commitmentName;
- $commitment->c_surname = $commitmentSurname;
- $commitment->end_date = date('Y-m-d', strtotime($date . ' +'.$commitmentEnddate.' day'));
- if($commitment->save());
- {
- $this->redirect('/mycommitment');
- }
- }
- }
- $this->render('editCommitment',array('commitment' =>$commitment));
- }
- public function actionTestMandril(){
- //$this->render('popup');
- // $controller = Yii::app()->getController();
- Yii::app()->params['users_image_path'];
- }
- }
Add Comment
Please, Sign In to add comment