Beispiel #1
0
 public function grantCredits()
 {
     if (!OW::getRequest()->isAjax()) {
         throw new Redirect404Exception();
     }
     if (!OW::getUser()->isAuthenticated()) {
         throw new AuthenticateException();
     }
     $form = new USERCREDITS_CLASS_GrantCreditsForm();
     if ($form->isValid($_POST)) {
         $lang = OW::getLanguage();
         $creditService = USERCREDITS_BOL_CreditsService::getInstance();
         $grantorId = OW::getUser()->getId();
         $values = $form->getValues();
         $userId = (int) $values['userId'];
         $amount = abs((int) $values['amount']);
         $granted = $creditService->grantCredits($grantorId, $userId, $amount);
         $credits = $creditService->getCreditsBalance($grantorId);
         if ($granted) {
             $data = array('amount' => $amount, 'grantorId' => $grantorId, 'userId' => $userId);
             $event = new OW_Event('usercredits.grant', $data);
             OW::getEventManager()->trigger($event);
             $data = array('message' => $lang->text('usercredits', 'credits_granted', array('amount' => $amount)), 'credits' => $credits);
         } else {
             $data = array('error' => $lang->text('usercredits', 'credits_grant_error'));
         }
         exit(json_encode($data));
     }
 }
Beispiel #2
0
 public function __construct($userId)
 {
     parent::__construct();
     if (!OW::getUser()->isAuthenticated()) {
         $this->setVisible(false);
     }
     $creditService = USERCREDITS_BOL_CreditsService::getInstance();
     $amount = $creditService->getGrantableAmountForUser(OW::getUser()->getId());
     $form = new USERCREDITS_CLASS_GrantCreditsForm();
     $form->getElement('userId')->setValue($userId);
     $form->getElement('amount')->setValue($amount);
     $this->addForm($form);
 }