/** * @before _secure */ public function account() { $this->seo(array("title" => "Account")); $view = $this->getActionView(); $invoices = \Invoice::all(['user_id = ?' => $this->user->_id], ['start', 'end', 'amount', 'live', 'created']); $payments = \Payment::all(['user_id = ?' => $this->user->_id], ['type', 'amount', 'meta', 'live', 'created']); $user = $this->user; $view->set("errors", []); if (RM::type() == 'POST') { $action = RM::post('action', ''); switch ($action) { case 'account': $fields = ['name', 'phone', 'currency', 'username']; foreach ($fields as $f) { $user->{$f} = RM::post($f); } $user->save(); $view->set('message', 'Account Info updated!!'); break; case 'password': $old = RM::post('password'); $new = RM::post('npassword'); $view->set($user->updatePassword($old, $new)); break; case 'bank': $user->getMeta()['bank'] = ['name' => RM::post('account_bank', ''), 'ifsc' => RM::post('account_code', ''), 'account_no' => RM::post('account_number', ''), 'account_owner' => RM::post('account_owner', '')]; $user->save(); $view->set('message', 'Bank Info Updated!!'); break; case 'payout': $user->getMeta()['payout'] = ['paypal' => RM::post('paypal', ''), 'payquicker' => RM::post('payquicker', ''), 'payoneer' => RM::post('payoneer', ''), 'paytm' => RM::post('paytm', ''), 'mobicash' => RM::post('mobicash', ''), 'easypaisa' => RM::post('easypaisa', '')]; $user->save(); $view->set('message', 'Payout Info Updated!!'); break; case 'custom': $output = Shared\Services\User::customFields($user, $this->org); if (!$output['success']) { return $view->set($output); } $user->save(); $view->set('user', $user); $view->set('message', 'Custom field updated!!'); break; default: $this->_postback('add'); break; } $this->setUser($user); } if (RM::type() === 'DELETE') { $this->_postback('delete'); } $this->_postback('show'); $afields = Meta::search('customField', $this->org); $view->set('afields', $afields)->set("invoices", $invoices)->set("payments", $payments); }
protected function _publisherRegister($org, $view) { $platformUrl = RM::post("platform", ''); try { $platform = new \Platform(['url' => $platformUrl]); } catch (\Exception $e) { return $view->set('message', $e->getMessage()); } $user = User::addNew('publisher', $org, $view); if ($user === false) { return; } $pass = $user->password; $user->password = sha1($pass); $output = Shared\Services\User::customFields($user, $org); if (!$output['success']) { return $view->set($output); } $user->save(); Mail::send(['user' => $user, 'org' => $this->org, 'template' => 'pubRegister', 'pass' => $pass, 'subject' => $this->org->name . ' Support']); $platform->user_id = $user->_id; $platform->save(); $view->set('message', "Registered Successfully"); }