Ejemplo n.º 1
0
 public static function getSettingList()
 {
     $eventConfigs = EVENTX_BOL_EventService::getInstance()->getConfigs();
     $settingList = array();
     $settingList['events_count'] = array('presentation' => self::PRESENTATION_SELECT, 'label' => OW::getLanguage()->text('eventx', 'cmp_widget_events_count'), 'optionList' => $eventConfigs[EVENTX_BOL_EventService::CONF_WIDGET_EVENTS_COUNT_OPTION_LIST], 'value' => $eventConfigs[EVENTX_BOL_EventService::CONF_WIDGET_EVENTS_COUNT]);
     return $settingList;
 }
Ejemplo n.º 2
0
 public static function getInstance()
 {
     if (self::$classInstance === null) {
         self::$classInstance = new self();
     }
     return self::$classInstance;
 }
Ejemplo n.º 3
0
 public function __construct($eventId)
 {
     parent::__construct();
     $this->eventService = EVENTX_BOL_EventService::getInstance();
     $event = $this->eventService->findEvent($eventId);
     if ($event === null) {
         $this->setVisible(false);
     }
     $this->addUserList($event, EVENTX_BOL_EventService::USER_STATUS_YES);
     $this->addUserList($event, EVENTX_BOL_EventService::USER_STATUS_MAYBE);
     $this->addUserList($event, EVENTX_BOL_EventService::USER_STATUS_NO);
     $this->assign('userLists', $this->userLists);
     $this->addComponent('userListMenu', new BASE_CMP_WidgetMenu($this->userListMenu));
 }
Ejemplo n.º 4
0
 public function __construct($eventId)
 {
     $count = 100;
     $friendList = null;
     if (OW::getEventManager()->call('plugin.friends')) {
         $count = 1000;
         $friendList = OW::getEventManager()->call('plugin.friends.get_friend_list', array('userId' => OW::getUser()->getId()));
         if (empty($friendList) || !is_array($friendList)) {
             $count = 100;
             $friendList = array();
         }
     }
     $idList = EVENTX_BOL_EventService::getInstance()->findUserListForInvite((int) $eventId, 0, $count, $friendList);
     $this->setTemplate(OW::getPluginManager()->getPlugin('base')->getCmpViewDir() . 'avatar_user_list_select.html');
     parent::__construct($idList);
 }
Ejemplo n.º 5
0
 public function importEvents()
 {
     EVENTX_BOL_EventService::getInstance()->importAll();
 }
Ejemplo n.º 6
0
function eventx_get_content_menu(OW_Event $event)
{
    $event->setData(EVENTX_BOL_EventService::getInstance()->getContentMenu());
}
Ejemplo n.º 7
0
 public function __construct($name)
 {
     parent::__construct($name);
     $militaryTime = Ow::getConfig()->getValue('base', 'military_time');
     $language = OW::getLanguage();
     $currentYear = date('Y', time());
     $title = new TextField('title');
     $title->setRequired();
     $title->setLabel($language->text('eventx', 'add_form_title_label'));
     $event = new OW_Event(self::EVENTX_NAME, array('name' => 'title'), $title);
     OW::getEventManager()->trigger($event);
     $title = $event->getData();
     $this->addElement($title);
     $startDate = new DateField('start_date');
     $startDate->setMinYear($currentYear);
     $startDate->setMaxYear($currentYear + 5);
     $startDate->setRequired();
     $event = new OW_Event(self::EVENTX_NAME, array('name' => 'start_date'), $startDate);
     OW::getEventManager()->trigger($event);
     $startDate = $event->getData();
     $this->addElement($startDate);
     $startTime = new EventTimeField('start_time');
     $startTime->setMilitaryTime($militaryTime);
     if (!empty($_POST['endDateFlag'])) {
         $startTime->setRequired();
     }
     $event = new OW_Event(self::EVENTX_NAME, array('name' => 'start_time'), $startTime);
     OW::getEventManager()->trigger($event);
     $startTime = $event->getData();
     $this->addElement($startTime);
     $endDate = new DateField('end_date');
     $endDate->setMinYear($currentYear);
     $endDate->setMaxYear($currentYear + 5);
     $event = new OW_Event(self::EVENTX_NAME, array('name' => 'end_date'), $endDate);
     OW::getEventManager()->trigger($event);
     $endDate = $event->getData();
     $this->addElement($endDate);
     $endTime = new EventTimeField('end_time');
     $endTime->setMilitaryTime($militaryTime);
     $event = new OW_Event(self::EVENTX_NAME, array('name' => 'end_time'), $endTime);
     OW::getEventManager()->trigger($event);
     $endTime = $event->getData();
     $this->addElement($endTime);
     if (OW::getConfig()->getValue('eventx', 'enableCategoryList') == '1') {
         if (OW::getConfig()->getValue('eventx', 'enableMultiCategories') == 1) {
             $element = new CheckboxGroup('event_category');
             $element->setColumnCount(3);
         } else {
             $element = new SelectBox('event_category');
         }
         $element->setRequired(true);
         $element->setLabel($language->text('eventx', 'event_category_label'));
         foreach (EVENTX_BOL_EventService::getInstance()->getCategoriesList() as $category) {
             $element->addOption($category->id, $category->name);
         }
         $this->addElement($element);
     }
     $maxInvites = new TextField('max_invites');
     $maxInvites->setRequired();
     $validator = new IntValidator(0);
     $validator->setErrorMessage($language->text('eventx', 'invalid_integer_value'));
     $maxInvites->addValidator($validator);
     $maxInvites->setLabel($language->text('eventx', 'add_form_maxinvites_label'));
     $this->addElement($maxInvites);
     $location = new TextField('location');
     $location->setRequired();
     $location->setId('location');
     $location->setLabel($language->text('eventx', 'add_form_location_label'));
     $event = new OW_Event(self::EVENTX_NAME, array('name' => 'location'), $location);
     OW::getEventManager()->trigger($event);
     $location = $event->getData();
     $this->addElement($location);
     $whoCanView = new RadioField('who_can_view');
     $whoCanView->setRequired();
     $whoCanView->addOptions(array('1' => $language->text('eventx', 'add_form_who_can_view_option_anybody'), '2' => $language->text('eventx', 'add_form_who_can_view_option_invit_only')));
     $whoCanView->setLabel($language->text('eventx', 'add_form_who_can_view_label'));
     $event = new OW_Event(self::EVENTX_NAME, array('name' => 'who_can_view'), $whoCanView);
     OW::getEventManager()->trigger($event);
     $whoCanView = $event->getData();
     $this->addElement($whoCanView);
     $whoCanInvite = new RadioField('who_can_invite');
     $whoCanInvite->setRequired();
     $whoCanInvite->addOptions(array(EVENTX_BOL_EventService::CAN_INVITE_PARTICIPANT => $language->text('eventx', 'add_form_who_can_invite_option_participants'), EVENTX_BOL_EventService::CAN_INVITE_CREATOR => $language->text('eventx', 'add_form_who_can_invite_option_creator')));
     $whoCanInvite->setLabel($language->text('eventx', 'add_form_who_can_invite_label'));
     $event = new OW_Event(self::EVENTX_NAME, array('name' => 'who_can_invite'), $whoCanInvite);
     OW::getEventManager()->trigger($event);
     $whoCanInvite = $event->getData();
     $this->addElement($whoCanInvite);
     $desc = new WysiwygTextarea('desc');
     $desc->setLabel($language->text('eventx', 'add_form_desc_label'));
     $desc->setRequired();
     $event = new OW_Event(self::EVENTX_NAME, array('name' => 'desc'), $desc);
     OW::getEventManager()->trigger($event);
     $desc = $event->getData();
     $this->addElement($desc);
     $imageField = new FileField('image');
     $imageField->setLabel($language->text('eventx', 'add_form_image_label'));
     $this->addElement($imageField);
     if (OW::getConfig()->getValue('eventx', 'enableTagsList') == '1') {
         $tags = new TagsInputField('tags');
         $tags->setId('tags');
         $tags->setLabel($language->text('base', 'tags_cloud_cap_label'));
         $this->addElement($tags);
     }
     $submit = new Submit('submit');
     $submit->setValue($language->text('eventx', 'add_form_submit_label'));
     $this->addElement($submit);
     $event = new OW_Event(self::EVENTX_NAME, array('name' => 'image'), $imageField);
     OW::getEventManager()->trigger($event);
     $imageField = $event->getData();
     $this->setEnctype(Form::ENCTYPE_MULTYPART_FORMDATA);
 }
Ejemplo n.º 8
0
 public function import()
 {
     if (!is_dir(OW_DIR_PLUGIN . 'event')) {
         throw new Redirect404Exception();
         return;
     }
     $importForm = new Form('importForm');
     $language = OW::getLanguage();
     $element = new Submit('importVideos');
     $element->setValue($language->text('eventx', 'admin_import_events'));
     $importForm->addElement($element);
     if (OW::getRequest()->isPost()) {
         if ($importForm->isValid($_POST)) {
             $sql = "INSERT INTO " . OW_DB_PREFIX . "eventx_item (title,description,location,createTimeStamp,startTimeStamp,endTimeStamp,userId,whoCanView,whoCanInvite,maxInvites,status,image,endDateFlag,startTimeDisabled,endTimeDisabled,importId,importStatus)  \n                        SELECT title,description,location,createTimeStamp,startTimeStamp,endTimeStamp,userId,whoCanView,whoCanInvite,0,'approved',image,endDateFlag,startTimeDisabled,endTimeDisabled,id,1 FROM " . OW_DB_PREFIX . "event_item c\n                           WHERE NOT EXISTS (SELECT 1 FROM " . OW_DB_PREFIX . "eventx_item WHERE importId = c.id)";
             OW::getDbo()->query($sql);
             $sourcePath = OW_DIR_USERFILES . 'plugins' . DS . 'event' . DS;
             $destPath = OW::getPluginManager()->getPlugin('eventx')->getUserFilesDir();
             UTIL_File::copyDir($sourcePath, $destPath);
             EVENTX_BOL_EventService::getInstance()->importAll();
             OW::getFeedback()->info($language->text('eventx', 'admin_import_ok'));
         }
     }
     $this->addForm($importForm);
 }
Ejemplo n.º 9
0
 public function onCommand(OW_Event $event)
 {
     if (!OW::getUser()->isAuthenticated()) {
         return 'auth faild';
     }
     $params = $event->getParams();
     if (!in_array($params['command'], array('events.accept', 'events.ignore'))) {
         return 'wrong command';
     }
     $eventId = $params['data'];
     $eventDto = EVENTX_BOL_EventService::getInstance()->findEvent($eventId);
     $userId = OW::getUser()->getId();
     $jsResponse = UTIL_JsGenerator::newInstance();
     $eventService = EVENTX_BOL_EventService::getInstance();
     if (empty($eventDto)) {
         BOL_InvitationService::getInstance()->deleteInvitation(self::INVITATION_JOIN, $eventId, $userId);
         return 'empty Event Id';
     }
     if ($params['command'] == 'events.accept') {
         $feedback = array('messageType' => 'error');
         $exit = false;
         $attendedStatus = 1;
         if ($eventService->canUserView($eventId, $userId)) {
             $eventDto = $eventService->findEvent($eventId);
             if ($eventDto->getEndTimeStamp() < time()) {
                 $eventService->deleteUserEventInvites((int) $eventId, $userId);
                 $jsResponse->callFunction(array('OW', 'error'), array(OW::getLanguage()->text('eventx', 'user_status_updated')));
                 $event->setData($jsResponse);
                 return;
             }
             $eventUser = $eventService->findEventUser($eventId, $userId);
             if ($eventUser !== null && (int) $eventUser->getStatus() === (int) $attendedStatus) {
                 $jsResponse->callFunction(array('OW', 'error'), array(OW::getLanguage()->text('eventx', 'user_status_not_changed_error')));
                 $exit = true;
             }
             if ($eventDto->getUserId() == OW::getUser()->getId() && (int) $attendedStatus == EVENTX_BOL_EventService::USER_STATUS_NO) {
                 $jsResponse->callFunction(array('OW', 'error'), array(OW::getLanguage()->text('eventx', 'user_status_author_cant_leave_error')));
                 $exit = true;
             }
             if (!$exit) {
                 $eventUserDto = EVENTX_BOL_EventService::getInstance()->addEventUser($userId, $eventId, $attendedStatus);
                 if (!empty($eventUserDto)) {
                     $e = new OW_Event(EVENTX_BOL_EventService::EVENTX_ON_CHANGE_USER_STATUS, array('eventId' => $eventDto->id, 'userId' => $eventUserDto->userId));
                     OW::getEventManager()->trigger($e);
                     $jsResponse->callFunction(array('OW', 'info'), array(OW::getLanguage()->text('eventx', 'user_status_updated')));
                     BOL_InvitationService::getInstance()->deleteInvitation(self::INVITATION_JOIN, $eventId, $userId);
                 } else {
                     $jsResponse->callFunction(array('OW', 'error'), array(OW::getLanguage()->text('eventx', 'user_status_update_error')));
                 }
             }
         } else {
             $jsResponse->callFunction(array('OW', 'error'), array(OW::getLanguage()->text('eventx', 'user_status_update_error')));
         }
     } else {
         if ($params['command'] == 'events.ignore') {
             $eventService->deleteUserEventInvites((int) $eventId, $userId);
             $jsResponse->callFunction(array('OW', 'info'), array(OW::getLanguage()->text('eventx', 'user_status_updated')));
             BOL_InvitationService::getInstance()->deleteInvitation(self::INVITATION_JOIN, $eventId, $userId);
         }
     }
     $event->setData($jsResponse);
 }