예제 #1
0
 public function save()
 {
     $user = $this->post('upUser');
     if (is_numeric($user)) {
         // rolling as user id
         $ui = UserInfo::getByUserID($user);
     } else {
         $ui = UserInfo::getByUserName($user);
         // look up userID
     }
     if (!is_object($ui)) {
         $this->error->add(t('User Required'));
     }
     if (!$this->post('upaID')) {
         $this->error->add(t('Action Required'));
     }
     if (!is_numeric($this->post('upPoints'))) {
         $this->error->add(t('Points Required'));
     }
     if (!$this->error->has()) {
         $action = UserPointAction::getByID($this->post('upaID'));
         $obj = new UserPointActionDescription();
         $obj->setComments($this->post('upComments'));
         if ($this->post('manual_datetime') > 0) {
             $dt = Loader::helper('form/date_time');
             $entry = $action->addEntry($ui, $obj, $this->post('upPoints'), $dt->translate('dtoverride'));
         } else {
             $entry = $action->addEntry($ui, $obj, $this->post('upPoints'));
         }
         $this->redirect('/dashboard/users/points/assign', 'entry_saved');
     } else {
         $this->set('error', $error);
         $this->view();
     }
 }
예제 #2
0
 public function testCustomUserPointAction()
 {
     Action::add('won_badge', t('Won a Badge'), 5, false);
     $action2 = Action::getByID(1);
     $action3 = Action::getByHandle('won_badge');
     /* @var $action2 \Concrete\Core\User\Point\Action\WonBadgeAction */
     /* @var $action3 \Concrete\Core\User\Point\Action\WonBadgeAction */
     $this->assertTrue($action2->hasCustomClass());
     $this->assertInstanceOf('\\Concrete\\Core\\User\\Point\\Action\\WonBadgeAction', $action2);
     $this->assertEquals(5, $action2->getUserPointActionDefaultPoints());
     $this->assertEquals(null, $action2->getUserPointActionBadgeGroupObject());
     $this->assertInstanceOf('\\Concrete\\Core\\User\\Point\\Action\\WonBadgeAction', $action3);
     $this->assertEquals(5, $action3->getUserPointActionDefaultPoints());
     $this->assertEquals(null, $action3->getUserPointActionBadgeGroupObject());
 }
예제 #3
0
파일: Entry.php 프로젝트: ceko/concrete5-1
 public function getUserPointEntryActionObject()
 {
     return UserPointAction::getByID($this->getUserPointEntryActionID());
 }