/** create the form, INTERNAL * this methods creates the form with the form definitions * * @author CommSy Development Topic */ function _createForm() { // rubrics $iid = $_GET['iid']; $manager = $this->_environment->getItemManager(); $item = $manager->getItem($iid); $module = $item->getItemType(); $link_module = $module; if ($module == 'label' or $module == 'labels') { $label_manager = $this->_environment->getLabelManager(); $label = $label_manager->getItem($iid); $link_module = $label->getLabelType(); } $item_manager = $this->_environment->getManager($module); $item = $item_manager->getItem($iid); $item_name = $item->getTitle(); $context_name = $this->_context_name; $article = ''; // Wenn man mit HTTPS auf Commsy surft und eine Email generiert // sollte diese Mail auch https links erstellen. if (!empty($_SERVER["HTTPS"]) and $_SERVER["HTTPS"]) { $url = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '?cid=' . $this->_environment->getCurrentContextID() . '&mod=' . $link_module . '&fct=detail' . '&iid=' . $item->getItemID(); } else { $url = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '?cid=' . $this->_environment->getCurrentContextID() . '&mod=' . $link_module . '&fct=detail' . '&iid=' . $item->getItemID(); } $link = $url; $rubric_type_pretty = ''; $content = ''; //generate module name for the interface- a pretty version of module... if ($module == 'new' or $module == 'news') { $news_content = $this->_translator->getMessage('COMMON_NEWS') . ': ' . $item->getTitle() . LF; $content = $news_content; } elseif ($module == CS_DATE_TYPE) { $rubric_type_pretty = $this->_translator->getMessage('COMMON_DATES'); // set up style of days and times $parse_time_start = convertTimeFromInput($item->getStartingTime()); $conforms = $parse_time_start['conforms']; if ($conforms == TRUE) { $start_time_print = getTimeLanguage($parse_time_start['datetime']); } else { $start_time_print = $item->getStartingTime(); } $parse_time_end = convertTimeFromInput($item->getEndingTime()); $conforms = $parse_time_end['conforms']; if ($conforms == TRUE) { $end_time_print = getTimeLanguage($parse_time_end['datetime']); } else { $end_time_print = $item->getEndingTime(); } $parse_day_start = convertDateFromInput($item->getStartingDay(), $this->_environment->getSelectedLanguage()); $conforms = $parse_day_start['conforms']; if ($conforms == TRUE) { $start_day_print = getDateInLang($parse_day_start['datetime']); } else { $start_day_print = $item->getStartingDay(); } $parse_day_end = convertDateFromInput($item->getEndingDay(), $this->_environment->getSelectedLanguage()); $conforms = $parse_day_end['conforms']; if ($conforms == TRUE) { $end_day_print = getDateLanguage($parse_day_end['datetime']); } else { $end_day_print = $item->getEndingDay(); } //formating dates and times for displaying $date_print = ""; $time_print = ""; if ($end_day_print != "") { //with ending day $date_print = $this->_translator->getMessage('DATES_AS_OF') . ' ' . $start_day_print . ' ' . $this->_translator->getMessage('DATES_TILL') . ' ' . $end_day_print; if ($parse_day_start['conforms'] and $parse_day_end['conforms']) { //start and end are dates, not strings $date_print .= ' (' . getDifference($parse_day_start['timestamp'], $parse_day_end['timestamp']) . ' ' . $this->_translator->getMessage('DATES_DAYS') . ')'; } if ($start_time_print != "" and $end_time_print == "") { //starting time given $time_print = $this->_translator->getMessage('DATES_AS_OF_LOWER') . ' ' . $start_time_print; if ($parse_time_start['conforms'] == true) { $time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print == "" and $end_time_print != "") { //endtime given $time_print = $this->_translator->getMessage('DATES_TILL') . ' ' . $end_time_print; if ($parse_time_end['conforms'] == true) { $time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print != "" and $end_time_print != "") { //all times given if ($parse_time_end['conforms'] == true) { $end_time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } if ($parse_time_start['conforms'] == true) { $start_time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } $date_print = $this->_translator->getMessage('DATES_AS_OF') . ' ' . $start_day_print . ', ' . $start_time_print . '<br />' . $this->_translator->getMessage('DATES_TILL') . ' ' . $end_day_print . ', ' . $end_time_print; if ($parse_day_start['conforms'] and $parse_day_end['conforms']) { $date_print .= ' (' . getDifference($parse_day_start['timestamp'], $parse_day_end['timestamp']) . ' ' . $this->_translator->getMessage('DATES_DAYS') . ')'; } } } else { //without ending day $date_print = $start_day_print; if ($start_time_print != "" and $end_time_print == "") { //starting time given $time_print = $this->_translator->getMessage('DATES_AS_OF_LOWER') . ' ' . $start_time_print; if ($parse_time_start['conforms'] == true) { $time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print == "" and $end_time_print != "") { //endtime given $time_print = $this->_translator->getMessage('DATES_TILL') . ' ' . $end_time_print; if ($parse_time_end['conforms'] == true) { $time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print != "" and $end_time_print != "") { //all times given if ($parse_time_end['conforms'] == true) { $end_time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } if ($parse_time_start['conforms'] == true) { $start_time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } $time_print = $this->_translator->getMessage('DATES_FROM_TIME_LOWER') . ' ' . $start_time_print . ' ' . $this->_translator->getMessage('DATES_TILL') . ' ' . $end_time_print; } } if ($parse_day_start['timestamp'] == $parse_day_end['timestamp'] and $parse_day_start['conforms'] and $parse_day_end['conforms']) { $date_print = $this->_translator->getMessage('DATES_ON_DAY') . ' ' . $start_day_print; if ($start_time_print != "" and $end_time_print == "") { //starting time given $time_print = $this->_translator->getMessage('DATES_AS_OF_LOWER') . ' ' . $start_time_print; } elseif ($start_time_print == "" and $end_time_print != "") { //endtime given $time_print = $this->_translator->getMessage('DATES_TILL') . ' ' . $end_time_print; } elseif ($start_time_print != "" and $end_time_print != "") { //all times given $time_print = $this->_translator->getMessage('DATES_FROM_TIME_LOWER') . ' ' . $start_time_print . ' ' . $this->_translator->getMessage('DATES_TILL') . ' ' . $end_time_print; } } // Date and time $dates_content = ''; $dates_content = $this->_translator->getMessage('DATES_DATETIME') . ': ' . $item_name . LF; if ($time_print != '') { $dates_content .= $this->_translator->getMessage('COMMON_TIME') . ': ' . $date_print . ',' . $time_print . LF; } else { $dates_content .= $this->_translator->getMessage('COMMON_TIME') . ': ' . $date_print . LF; } // Place $place = $item->getPlace(); if (!empty($place)) { $dates_content .= $this->_translator->getMessage('DATES_PLACE') . ': '; $dates_content .= $place . LF; } $content = $dates_content; } elseif ($module == 'discussion' or $module == 'discussions') { $discussion_content = $this->_translator->getMessage('COMMON_DISCUSSION') . ': ' . $item->getTitle() . LF; $article_count = $item->getAllArticlesCount(); $discussion_content .= $this->_translator->getMessage('DISCUSSION_DISCARTICLE_COUNT') . ': ' . $article_count . LF; $time = $item->getLatestArticleModificationDate(); $discussion_content .= $this->_translator->getMessage('DISCUSSION_LAST_ENTRY') . ': ' . getDateTimeInLang($time) . LF; $content = $discussion_content; } elseif ($module == 'material' or $module == 'materials') { $material_content = $this->_translator->getMessage('COMMON_MATERIAL') . ': ' . $item->getTitle() . LF; $content = $material_content; } elseif ($module == 'announcement' or $module == CS_ANNOUNCEMENT_TYPE) { $announcement_content = $this->_translator->getMessage('COMMON_ANNOUNCEMENT') . ': ' . $item->getTitle() . LF; $content = $announcement_content; } elseif ($module == 'label' or $module == 'labels') { $label_manager = $this->_environment->getLabelManager(); $label = $label_manager->getItem($iid); $module = $label->getLabelType(); if ($module == 'group' or $module == 'groups') { $group_content = $this->_translator->getMessage('COMMON_GROUP') . ': ' . $item->getTitle() . LF; $content = $group_content; } elseif ($module == 'institution' or $module == 'institutions') { $institution_content = $this->_translator->getMessage('INSTITUTION') . ': ' . $item->getTitle() . LF; $content = $institution_content; } } if ($this->_environment->inProjectRoom()) { $emailtext = $this->_translator->getMessage('RUBRIC_EMAIL_DEFAULT_PROJECT', $context_name) . LF; } elseif ($this->_environment->inGroupRoom()) { $emailtext = $this->_translator->getMessage('RUBRIC_EMAIL_DEFAULT_GROUPROOM', $context_name) . LF; } else { $emailtext = $this->_translator->getMessage('RUBRIC_EMAIL_DEFAULT_COMMUNITY', $context_name) . LF; } if (empty($content)) { $emailtext .= LF . LF; } else { $emailtext .= $content; } $emailtext .= $this->_translator->getMessage('RUBRIC_EMAIL_DEFAULT_PROJECT_END', $link); $this->_form->addTextField('subject', '', $this->_translator->getMessage('COMMON_MAIL_SUBJECT'), '', '', '57', true); $this->_form->addTextArea('mailcontent', $emailtext, $this->_translator->getMessage('COMMON_MAIL_CONTENT'), $this->_translator->getMessage('COMMON_MAIL_CONTENT_DESC'), '60', '15', '', true, false, false); if ($module == 'date') { $this->_form->addCheckBox('attendees', '2', false, $this->_translator->getMessage('COMMON_MAIL_SEND_TO_ASIGNED_PEOPLE'), $this->_translator->getMessage('COMMON_MAIL_SEND_TO_ATTENDEES')); } elseif ($module == 'todo') { $this->_form->addCheckBox('processors', '2', false, $this->_translator->getMessage('COMMON_MAIL_SEND_TO_ASIGNED_PEOPLE'), $this->_translator->getMessage('COMMON_MAIL_SEND_TO_PROCESSORS')); } if ($this->_environment->inProjectRoom() and !empty($this->_group_array)) { $context_item = $this->_environment->getCurrentContextItem(); if ($context_item->withRubric(CS_GROUP_TYPE)) { $this->_initCheckBoxGroup(); } } else { $context_item = $this->_environment->getCurrentContextItem(); if ($context_item->withRubric(CS_INSTITUTION_TYPE) and !empty($this->_institution_array)) { $this->_initCheckBoxInstitution(); } } $projekt_room_show_mail_to_all = false; //Projectroom and no groups enabled -> send mails to group all if ($context_item->isProjectRoom() and !$context_item->withRubric(CS_GROUP_TYPE)) { $cid = $this->_environment->getCurrentContextId(); $user_manager = $this->_environment->getUserManager(); $user_manager->setUserLimit(); $user_manager->setContextLimit($cid); $count = $user_manager->getCountAll(); $all_iid = $this->_group_array[0]['value']; if ($item->getItemType() != CS_DATE_TYPE and $item->getItemType() != CS_TODO_TYPE) { $this->_form->addText('receiver_text', $this->_translator->getMessage('COMMON_MAIL_RECEIVER'), $this->_translator->getMessage('COMMON_MAIL_ALL_IN_ROOM', $count)); $this->_form->addHidden('groups[0]', $all_iid); } else { $this->_form->combine(); $this->_form->addCheckbox('groups[0]', $all_iid, false, $this->_translator->getMessage('COMMON_MAIL_RECEIVER'), $this->_translator->getMessage('COMMON_MAIL_ALL_IN_ROOM', $count)); } } if ($context_item->isCommunityRoom() and !$context_item->withRubric(CS_INSTITUTION_TYPE)) { $cid = $this->_environment->getCurrentContextId(); $user_manager = $this->_environment->getUserManager(); $user_manager->setUserLimit(); $user_manager->setContextLimit($cid); $count = $user_manager->getCountAll(); if ($item->getItemType() != CS_DATE_TYPE and $item->getItemType() != CS_TODO_TYPE) { $this->_form->addText('receiver_text', $this->_translator->getMessage('COMMON_MAIL_RECEIVER'), $this->_translator->getMessage('COMMON_MAIL_ALL_IN_ROOM', $count)); $this->_form->addHidden('send_to_all', true); } else { $this->_form->combine(); $this->_form->addCheckbox('send_to_all', 1, false, $this->_translator->getMessage('COMMON_MAIL_RECEIVER'), $this->_translator->getMessage('COMMON_MAIL_ALL_IN_ROOM', $count)); } } // send to all members in group rooms if ($context_item->isGroupRoom()) { $cid = $this->_environment->getCurrentContextID(); $user_manager = $this->_environment->getUserManager(); $user_manager->setUserLimit(); $user_manager->setContextLimit($cid); $count = $user_manager->getCountAll(); if ($item->getItemType() != CS_DATE_TYPE and $item->getItemType() != CS_TODO_TYPE) { $this->_form->addText('receiver_text', $this->_translator->getMessage('COMMON_MAIL_RECEIVER'), $this->_translator->getMessage('COMMON_MAIL_ALL_IN_ROOM', $count)); $this->_form->addHidden('send_to_all', true); } else { $this->_form->combine(); $this->_form->addCheckbox('send_to_all', 1, false, $this->_translator->getMessage('COMMON_MAIL_RECEIVER'), $this->_translator->getMessage('COMMON_MAIL_ALL_IN_ROOM', $count)); } } $yesno[][] = array(); $yesno['0']['text'] = $this->_translator->getMessage('COMMON_YES'); $yesno['0']['value'] = $this->_translator->getMessage('COMMON_YES'); $yesno['1']['text'] = $this->_translator->getMessage('COMMON_NO'); $yesno['1']['value'] = $this->_translator->getMessage('COMMON_NO'); $this->_form->addRadioGroup('copytosender', $this->_translator->getMessage('MAILCOPY_TO_SENDER'), $this->_translator->getMessage('MAILCOPY_TO_SENDER_DESC'), $yesno, $this->_translator->getMessage('COMMON_NO'), true, false); // buttons $this->_form->addButtonBar('option', $this->_translator->getMessage('COMMON_MAIL_SEND_BUTTON'), $this->_translator->getMessage('COMMON_CANCEL_BUTTON')); }
/** get the date of the item * this method returns the item place in the right formatted style * * @return string title * * @author CommSy Development Group */ function _getItemDate($item) { // set up style of days and times $shown_time = $item->getShownStartingTime(); if (!empty($shown_time)) { $parse_time_start = convertTimeFromInput($shown_time); } else { $parse_time_start = convertTimeFromInput($item->getStartingTime()); } $conforms = $parse_time_start['conforms']; if ($conforms == TRUE) { $start_time_print = getTimeLanguage($parse_time_start['datetime']); } else { if (!empty($shown_time)) { $start_time_print = $shown_time; } else { $start_time_print = $item->getStartingTime(); } } $parse_time_end = convertTimeFromInput($item->getEndingTime()); $conforms = $parse_time_end['conforms']; if ($conforms == TRUE) { $end_time_print = getTimeLanguage($parse_time_end['datetime']); } else { $end_time_print = $item->getEndingTime(); } $shown_day = $item->getShownStartingDay(); if (!empty($shown_day)) { $parse_day_start = convertDateFromInput($shown_day, $this->_environment->getSelectedLanguage()); } else { $parse_day_start = convertDateFromInput($item->getStartingDay(), $this->_environment->getSelectedLanguage()); } $conforms = $parse_day_start['conforms']; if ($conforms == TRUE) { $start_day_print = $this->_translator->getDateInLang($parse_day_start['datetime']); } else { if (!empty($shown_day)) { $start_day_print = $shown_day; } else { $start_day_print = $item->getStartingDay(); } } $parse_day_end = convertDateFromInput($item->getEndingDay(), $this->_environment->getSelectedLanguage()); $conforms = $parse_day_end['conforms']; if ($conforms == TRUE) { $end_day_print = getDateLanguage($parse_day_end['datetime']); } else { $end_day_print = $item->getEndingDay(); } //formating dates and times for displaying $date_print = ""; $time_print = ""; if ($end_day_print != "") { //with ending day $date_print = $this->_translator->getMessage('DATES_AS_OF') . ' ' . $start_day_print . ' ' . $this->_translator->getMessage('DATES_TILL') . ' ' . $end_day_print; if ($parse_day_start['conforms'] and $parse_day_end['conforms']) { //start and end are dates, not strings $date_print .= ' (' . getDifference($parse_day_start['timestamp'], $parse_day_end['timestamp']) . ' ' . $this->_translator->getMessage('DATES_DAYS') . ')'; } if ($start_time_print != "" and $end_time_print == "") { //starting time given $time_print = $this->_translator->getMessage('DATES_AS_OF_LOWER') . ' ' . $start_time_print; if ($parse_time_start['conforms'] == true) { $time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print == "" and $end_time_print != "") { //endtime given $time_print = $this->_translator->getMessage('DATES_TILL') . ' ' . $end_time_print; if ($parse_time_end['conforms'] == true) { $time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print != "" and $end_time_print != "") { //all times given if ($parse_time_end['conforms'] == true) { $end_time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } if ($parse_time_start['conforms'] == true) { $start_time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } $date_print = $this->_translator->getMessage('DATES_AS_OF') . ' ' . $start_day_print . ', ' . $start_time_print . ' ' . $this->_translator->getMessage('DATES_TILL') . ' ' . $end_day_print . ', ' . $end_time_print; if ($parse_day_start['conforms'] and $parse_day_end['conforms']) { $date_print .= ' (' . getDifference($parse_day_start['timestamp'], $parse_day_end['timestamp']) . ' ' . $this->_translator->getMessage('DATES_DAYS') . ')'; } } } else { //without ending day $date_print = $start_day_print; if ($start_time_print != "" and $end_time_print == "") { //starting time given $time_print = $this->_translator->getMessage('DATES_AS_OF_LOWER') . ' ' . $start_time_print; if ($parse_time_start['conforms'] == true) { $time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print == "" and $end_time_print != "") { //endtime given $time_print = $this->_translator->getMessage('DATES_TILL') . ' ' . $end_time_print; if ($parse_time_end['conforms'] == true) { $time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print != "" and $end_time_print != "") { //all times given if ($parse_time_end['conforms'] == true) { $end_time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } if ($parse_time_start['conforms'] == true) { $start_time_print .= ' ' . $this->_translator->getMessage('DATES_OCLOCK'); } $time_print = $this->_translator->getMessage('DATES_FROM_TIME_LOWER') . ' ' . $start_time_print . ' ' . $this->_translator->getMessage('DATES_TILL') . ' ' . $end_time_print; } } if ($parse_day_start['timestamp'] == $parse_day_end['timestamp'] and $parse_day_start['conforms'] and $parse_day_end['conforms']) { $date_print = $this->_translator->getMessage('DATES_ON_DAY') . ' ' . $start_day_print; if ($start_time_print != "" and $end_time_print == "") { //starting time given $time_print = $this->_translator->getMessage('DATES_AS_OF_LOWER') . ' ' . $start_time_print; } elseif ($start_time_print == "" and $end_time_print != "") { //endtime given $time_print = $this->_translator->getMessage('DATES_TILL') . ' ' . $end_time_print; } elseif ($start_time_print != "" and $end_time_print != "") { //all times given $time_print = $this->_translator->getMessage('DATES_FROM_TIME_LOWER') . ' ' . $start_time_print . ' ' . $this->_translator->getMessage('DATES_TILL') . ' ' . $end_time_print; } } // Date and time $date = ''; if ($time_print != '') { $date .= $date_print . ', ' . $time_print; } else { $date .= $date_print; } return $date; }
public function actionInit() { $response = array(); $iid = $this->_data['itemId']; $current_user = $this->_environment->getCurrentUserItem(); $current_context = $this->_environment->getCurrentContextItem(); $translator = $this->_environment->getTranslationObject(); // context information $contextInformation = array(); $contextInformation["name"] = $current_context->getTitle(); $response['context'] = $contextInformation; // group information $groupArray = $this->getAllLabelsByType("group"); // institutions information $institutionArray = $this->getAllLabelsByType("institution"); // get item $manager = $this->_environment->getItemManager(); $item = $manager->getItem($iid); $module = $item->getItemType(); $link_module = $module; if ($module == 'label' or $module == 'labels') { $label_manager = $this->_environment->getLabelManager(); $label = $label_manager->getItem($iid); $link_module = $label->getLabelType(); } $item_manager = $this->_environment->getManager($module); $item = $item_manager->getItem($iid); $item_name = $item->getTitle(); // Wenn man mit HTTPS auf Commsy surft und eine Email generiert // sollte diese Mail auch https links erstellen. if (!empty($_SERVER["HTTPS"]) and $_SERVER["HTTPS"]) { $url = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '?cid=' . $this->_environment->getCurrentContextID() . '&mod=' . $link_module . '&fct=detail' . '&iid=' . $item->getItemID(); } else { $url = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '?cid=' . $this->_environment->getCurrentContextID() . '&mod=' . $link_module . '&fct=detail' . '&iid=' . $item->getItemID(); } $link = $url; $content = ''; //generate module name for the interface- a pretty version of module... if ($module == CS_DATE_TYPE) { // set up style of days and times $parse_time_start = convertTimeFromInput($item->getStartingTime()); $conforms = $parse_time_start['conforms']; if ($conforms == TRUE) { $start_time_print = getTimeLanguage($parse_time_start['datetime']); } else { $start_time_print = $item->getStartingTime(); } $parse_time_end = convertTimeFromInput($item->getEndingTime()); $conforms = $parse_time_end['conforms']; if ($conforms == TRUE) { $end_time_print = getTimeLanguage($parse_time_end['datetime']); } else { $end_time_print = $item->getEndingTime(); } $parse_day_start = convertDateFromInput($item->getStartingDay(), $this->_environment->getSelectedLanguage()); $conforms = $parse_day_start['conforms']; if ($conforms == TRUE) { $start_day_print = getDateInLang($parse_day_start['datetime']); } else { $start_day_print = $item->getStartingDay(); } $parse_day_end = convertDateFromInput($item->getEndingDay(), $this->_environment->getSelectedLanguage()); $conforms = $parse_day_end['conforms']; if ($conforms == TRUE) { $end_day_print = getDateLanguage($parse_day_end['datetime']); } else { $end_day_print = $item->getEndingDay(); } //formating dates and times for displaying $date_print = ""; $time_print = ""; if ($end_day_print != "") { //with ending day $date_print = $translator->getMessage('DATES_AS_OF') . ' ' . $start_day_print . ' ' . $translator->getMessage('DATES_TILL') . ' ' . $end_day_print; if ($parse_day_start['conforms'] and $parse_day_end['conforms']) { //start and end are dates, not strings $date_print .= ' (' . getDifference($parse_day_start['timestamp'], $parse_day_end['timestamp']) . ' ' . $translator->getMessage('DATES_DAYS') . ')'; } if ($start_time_print != "" and $end_time_print == "") { //starting time given $time_print = $translator->getMessage('DATES_AS_OF_LOWER') . ' ' . $start_time_print; if ($parse_time_start['conforms'] == true) { $time_print .= ' ' . $translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print == "" and $end_time_print != "") { //endtime given $time_print = $translator->getMessage('DATES_TILL') . ' ' . $end_time_print; if ($parse_time_end['conforms'] == true) { $time_print .= ' ' . $translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print != "" and $end_time_print != "") { //all times given if ($parse_time_end['conforms'] == true) { $end_time_print .= ' ' . $translator->getMessage('DATES_OCLOCK'); } if ($parse_time_start['conforms'] == true) { $start_time_print .= ' ' . $translator->getMessage('DATES_OCLOCK'); } $date_print = $translator->getMessage('DATES_AS_OF') . ' ' . $start_day_print . ', ' . $start_time_print . '<br />' . $translator->getMessage('DATES_TILL') . ' ' . $end_day_print . ', ' . $end_time_print; if ($parse_day_start['conforms'] and $parse_day_end['conforms']) { $date_print .= ' (' . getDifference($parse_day_start['timestamp'], $parse_day_end['timestamp']) . ' ' . $translator->getMessage('DATES_DAYS') . ')'; } } } else { //without ending day $date_print = $start_day_print; if ($start_time_print != "" and $end_time_print == "") { //starting time given $time_print = $translator->getMessage('DATES_AS_OF_LOWER') . ' ' . $start_time_print; if ($parse_time_start['conforms'] == true) { $time_print .= ' ' . $translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print == "" and $end_time_print != "") { //endtime given $time_print = $translator->getMessage('DATES_TILL') . ' ' . $end_time_print; if ($parse_time_end['conforms'] == true) { $time_print .= ' ' . $translator->getMessage('DATES_OCLOCK'); } } elseif ($start_time_print != "" and $end_time_print != "") { //all times given if ($parse_time_end['conforms'] == true) { $end_time_print .= ' ' . $translator->getMessage('DATES_OCLOCK'); } if ($parse_time_start['conforms'] == true) { $start_time_print .= ' ' . $translator->getMessage('DATES_OCLOCK'); } $time_print = $translator->getMessage('DATES_FROM_TIME_LOWER') . ' ' . $start_time_print . ' ' . $translator->getMessage('DATES_TILL') . ' ' . $end_time_print; } } if ($parse_day_start['timestamp'] == $parse_day_end['timestamp'] and $parse_day_start['conforms'] and $parse_day_end['conforms']) { $date_print = $translator->getMessage('DATES_ON_DAY') . ' ' . $start_day_print; if ($start_time_print != "" and $end_time_print == "") { //starting time given $time_print = $translator->getMessage('DATES_AS_OF_LOWER') . ' ' . $start_time_print; } elseif ($start_time_print == "" and $end_time_print != "") { //endtime given $time_print = $translator->getMessage('DATES_TILL') . ' ' . $end_time_print; } elseif ($start_time_print != "" and $end_time_print != "") { //all times given $time_print = $translator->getMessage('DATES_FROM_TIME_LOWER') . ' ' . $start_time_print . ' ' . $translator->getMessage('DATES_TILL') . ' ' . $end_time_print; } } // Date and time $dates_content = ''; $dates_content = $translator->getMessage('DATES_DATETIME') . ': ' . $item_name . LF; if ($time_print != '') { $dates_content .= $translator->getMessage('COMMON_TIME') . ': ' . $date_print . ',' . $time_print . LF; } else { $dates_content .= $translator->getMessage('COMMON_TIME') . ': ' . $date_print . LF; } // Place $place = $item->getPlace(); if (!empty($place)) { $dates_content .= $translator->getMessage('DATES_PLACE') . ': '; $dates_content .= $place . LF; } $content = $dates_content; } elseif ($module == 'discussion' or $module == 'discussions') { $discussion_content = $translator->getMessage('COMMON_DISCUSSION') . ': ' . $item->getTitle() . LF; $article_count = $item->getAllArticlesCount(); $discussion_content .= $translator->getMessage('DISCUSSION_DISCARTICLE_COUNT') . ': ' . $article_count . LF; $time = $item->getLatestArticleModificationDate(); $discussion_content .= $translator->getMessage('DISCUSSION_LAST_ENTRY') . ': ' . getDateTimeInLang($time) . LF; $content = $discussion_content; } elseif ($module == 'material' or $module == 'materials') { $material_content = $translator->getMessage('COMMON_MATERIAL') . ': ' . $item->getTitle() . LF; $content = $material_content; } elseif ($module == 'announcement' or $module == CS_ANNOUNCEMENT_TYPE) { $announcement_content = $translator->getMessage('COMMON_ANNOUNCEMENT') . ': ' . $item->getTitle() . LF; $content = $announcement_content; } elseif ($module == 'label' or $module == 'labels') { $label_manager = $this->_environment->getLabelManager(); $label = $label_manager->getItem($iid); $module = $label->getLabelType(); if ($module == 'group' or $module == 'groups') { $group_content = $translator->getMessage('COMMON_GROUP') . ': ' . $item->getTitle() . LF; $content = $group_content; } elseif ($module == 'institution' or $module == 'institutions') { $institution_content = $translator->getMessage('INSTITUTION') . ': ' . $item->getTitle() . LF; $content = $institution_content; } } if ($this->_environment->inProjectRoom()) { $emailtext = $translator->getMessage('RUBRIC_EMAIL_DEFAULT_PROJECT', $current_context->getTitle()) . LF; } elseif ($this->_environment->inGroupRoom()) { $emailtext = $translator->getMessage('RUBRIC_EMAIL_DEFAULT_GROUPROOM', $current_context->getTitle()) . LF; } else { $emailtext = $translator->getMessage('RUBRIC_EMAIL_DEFAULT_COMMUNITY', $current_context->getTitle()) . LF; } if (empty($content)) { $emailtext .= LF . LF; } else { $emailtext .= $content; } $emailtext .= $translator->getMessage('RUBRIC_EMAIL_DEFAULT_PROJECT_END', $link); $response['body'] = strip_tags($emailtext); // receiver $showAttendees = false; if ($module === CS_DATE_TYPE) { $showAttendees = true; $attendeeType = CS_DATE_TYPE; } if ($module === CS_TODO_TYPE) { $showAttendees = true; $attendeeType = CS_TODO_TYPE; } $response['showAttendees'] = $showAttendees; $response['attendeeType'] = $attendeeType; $showGroupRecipients = false; $showInstitutionRecipients = false; if ($this->_environment->inProjectRoom() and !empty($groupArray)) { if ($current_context->withRubric(CS_GROUP_TYPE)) { $showGroupRecipients = true; } } else { if ($current_context->withRubric(CS_INSTITUTION_TYPE) and !empty($institutionArray)) { $showInstitutionRecipients = true; } } //Projectroom and no groups enabled -> send mails to group all $withGroups = true; if ($current_context->isProjectRoom() && !$current_context->withRubric(CS_GROUP_TYPE)) { $showGroupRecipients = true; $withGroups = false; // get number of users $cid = $this->_environment->getCurrentContextId(); $user_manager = $this->_environment->getUserManager(); $user_manager->setUserLimit(); $user_manager->setContextLimit($cid); $count = $user_manager->getCountAll(); $response['numMebers'] = $count; $groupArray = array_slice($groupArray, 0, 1); } $response['showGroupRecipients'] = $showGroupRecipients; $response['withGroups'] = $withGroups; $response['groups'] = $groupArray; $allMembers = false; if ($current_context->isCommunityRoom() && !$current_context->withRubric(CS_INSTITUTION_TYPE) || $current_context->isGroupRoom()) { $allMembers = true; // get number of users $cid = $this->_environment->getCurrentContextId(); $user_manager = $this->_environment->getUserManager(); $user_manager->setUserLimit(); $user_manager->setContextLimit($cid); $count = $user_manager->getCountAll(); $response['numMebers'] = $count; } $response['showInstitutionRecipients'] = $showInstitutionRecipients; $response['institutions'] = $institutionArray; $response['allMembers'] = $allMembers; $response['allowAdditional'] = true; $this->setSuccessfullDataReturn($response); echo $this->_return; }