}); $("#menu_item_print_view").click(function () { window.open("' . $g_root_path . '/adm_program/modules/lists/lists_show.php?lst_id=' . $getListId . '&rol_ids=' . $getRoleIds . '&mode=print&show_members=' . $getShowMembers . '&date_from=' . $getDateFrom . '&date_to=' . $getDateTo . '", "_blank"); });', true); // get module menu $listsMenu = $page->getMenu(); $listsMenu->addItem('menu_item_back', $gNavigation->getPreviousUrl(), $gL10n->get('SYS_BACK'), 'back.png'); if ($getFullScreen) { $listsMenu->addItem('menu_item_normal_picture', $g_root_path . '/adm_program/modules/lists/lists_show.php?lst_id=' . $getListId . '&rol_ids=' . $getRoleIds . '&mode=html&show_members=' . $getShowMembers . '&full_screen=false&date_from=' . $getDateFrom . '&date_to=' . $getDateTo . '', $gL10n->get('SYS_NORMAL_PICTURE'), 'arrow_in.png'); } else { $listsMenu->addItem('menu_item_full_screen', $g_root_path . '/adm_program/modules/lists/lists_show.php?lst_id=' . $getListId . '&rol_ids=' . $getRoleIds . '&mode=html&show_members=' . $getShowMembers . '&full_screen=true&date_from=' . $getDateFrom . '&date_to=' . $getDateTo . '', $gL10n->get('SYS_FULL_SCREEN'), 'arrow_out.png'); } if ($numberRoles === 1) { // link to assign or remove members if you are allowed to do it if ($role->allowedToAssignMembers($gCurrentUser)) { $listsMenu->addItem('menu_item_assign_members', $g_root_path . '/adm_program/modules/lists/members_assignment.php?rol_id=' . $role->getValue('rol_id'), $gL10n->get('SYS_ASSIGN_MEMBERS'), 'add.png'); } } // link to print overlay and exports $listsMenu->addItem('menu_item_print_view', '#', $gL10n->get('LST_PRINT_PREVIEW'), 'print.png'); $form = new HtmlForm('navbar_export_to_form', '', $page, array('type' => 'navbar', 'setFocus' => false)); $selectBoxEntries = array('' => $gL10n->get('LST_EXPORT_TO') . ' ...', 'csv-ms' => $gL10n->get('LST_MICROSOFT_EXCEL') . ' (' . $gL10n->get('SYS_ISO_8859_1') . ')', 'pdf' => $gL10n->get('SYS_PDF') . ' (' . $gL10n->get('SYS_PORTRAIT') . ')', 'pdfl' => $gL10n->get('SYS_PDF') . ' (' . $gL10n->get('SYS_LANDSCAPE') . ')', 'csv-oo' => $gL10n->get('SYS_CSV') . ' (' . $gL10n->get('SYS_UTF8') . ')'); $form->addSelectBox('export_list_to', null, $selectBoxEntries, array('showContextDependentFirstEntry' => false)); $listsMenu->addForm($form->show(false)); $table = new HtmlTable('adm_lists_table', $page, $hoverRows, $datatable, $classTable); $table->setDatatablesRowsPerPage($gPreferences['lists_members_per_page']); } else { $table = new HtmlTable('adm_lists_table', $page, $hoverRows, $datatable, $classTable); } }
function getRoleMemberships($htmlListId, $user, $result_role, $count_role, $directOutput) { global $gDb, $gL10n, $gCurrentUser, $gPreferences, $g_root_path, $gProfileFields; $countShowRoles = 0; $member = new TableMembers($gDb); $role = new TableRoles($gDb); $roleMemHTML = '<ul class="list-group admidio-list-roles-assign" id="' . $htmlListId . '">'; while ($row = $gDb->fetch_array($result_role)) { if ($gCurrentUser->hasRightViewRole($row['mem_rol_id']) && $row['rol_visible'] == 1) { $formerMembership = false; $futureMembership = false; $showRoleEndDate = false; $deleteMode = 'pro_role'; $member->clear(); $member->setArray($row); $role->clear(); $role->setArray($row); // if membership will not end, then don't show end date if (strcmp($member->getValue('mem_end', 'Y-m-d'), '9999-12-31') != 0) { $showRoleEndDate = true; } // check if membership ends in the past if (strcmp(DATE_NOW, $member->getValue('mem_end', 'Y-m-d')) > 0) { $formerMembership = true; $deleteMode = 'pro_former'; } // check if membership starts in the future if (strcmp($member->getValue('mem_begin', 'Y-m-d'), DATE_NOW) > 0) { $futureMembership = true; $deleteMode = 'pro_future'; } // create list entry for one role $roleMemHTML .= ' <li class="list-group-item" id="role_' . $row['mem_rol_id'] . '"> <ul class="list-group admidio-list-roles-assign-pos"> <li class="list-group-item"> <span>' . $role->getValue('cat_name') . ' - '; if ($gCurrentUser->hasRightViewRole($member->getValue('mem_rol_id'))) { $roleMemHTML .= '<a href="' . $g_root_path . '/adm_program/modules/lists/lists_show.php?mode=html&rol_id=' . $member->getValue('mem_rol_id') . '" title="' . $role->getValue('rol_description') . '">' . $role->getValue('rol_name') . '</a>'; } else { echo $role->getValue('rol_name'); } if ($member->getValue('mem_leader') == 1) { $roleMemHTML .= ' - ' . $gL10n->get('SYS_LEADER'); } $roleMemHTML .= ' </span> <span class="pull-right text-right">'; if ($showRoleEndDate == true) { $roleMemHTML .= $gL10n->get('SYS_SINCE_TO', $member->getValue('mem_begin', $gPreferences['system_date']), $member->getValue('mem_end', $gPreferences['system_date'])); } elseif ($futureMembership == true) { $roleMemHTML .= $gL10n->get('SYS_FROM', $member->getValue('mem_begin', $gPreferences['system_date'])); } else { $roleMemHTML .= $gL10n->get('SYS_SINCE', $member->getValue('mem_begin', $gPreferences['system_date'])); } if ($role->allowedToAssignMembers($gCurrentUser)) { // You are not allowed to delete your own webmaster membership, other roles could be deleted if ($role->getValue('rol_webmaster') == 1 && $gCurrentUser->getValue('usr_id') != $user->getValue('usr_id') || $role->getValue('rol_webmaster') == 0) { $roleMemHTML .= ' <a class="admidio-icon-link" data-toggle="modal" data-target="#admidio_modal" href="' . $g_root_path . '/adm_program/system/popup_message.php?type=' . $deleteMode . '&element_id=role_' . $role->getValue('rol_id') . '&database_id=' . $member->getValue('mem_id') . '&name=' . urlencode($role->getValue('rol_name')) . '"><img src="' . THEME_PATH . '/icons/delete.png" alt="' . $gL10n->get('PRO_CANCEL_MEMBERSHIP') . '" title="' . $gL10n->get('PRO_CANCEL_MEMBERSHIP') . '" /></a>'; } else { $roleMemHTML .= ' <a class="admidio-icon-link"><img src="' . THEME_PATH . '/icons/dummy.png" alt=""/></a>'; } // do not edit webmaster role if ($row['rol_webmaster'] == 0) { $roleMemHTML .= '<a class="admidio-icon-link" style="cursor:pointer;" onclick="profileJS.toggleDetailsOn(' . $member->getValue('mem_id') . ')"><img src="' . THEME_PATH . '/icons/edit.png" alt="' . $gL10n->get('PRO_CHANGE_DATE') . '" title="' . $gL10n->get('PRO_CHANGE_DATE') . '" /></a>'; } else { $roleMemHTML .= '<a class="admidio-icon-link"><img src="' . THEME_PATH . '/icons/dummy.png" alt=""/></a>'; } } // only show info if system setting is activated if ($gPreferences['system_show_create_edit'] > 0) { $roleMemHTML .= '<a class="admidio-icon-link admMemberInfo" id="member_info_' . $member->getValue('mem_id') . '" href="javascript:"><img src="' . THEME_PATH . '/icons/info.png" alt="' . $gL10n->get('SYS_INFORMATIONS') . '" title="' . $gL10n->get('SYS_INFORMATIONS') . '"/></a>'; } $roleMemHTML .= '</span> </li> <li class="list-group-item" id="membership_period_' . $member->getValue('mem_id') . '" style="visibility: hidden; display: none;"><div class="collapse navbar-collapse">'; $form = new HtmlForm('membership_period_form_' . $member->getValue('mem_id'), $g_root_path . '/adm_program/modules/profile/profile_function.php?mode=7&user_id=' . $user->getValue('usr_id') . '&mem_id=' . $row['mem_id'], null, array('type' => 'navbar', 'setFocus' => false, 'class' => 'admidio-form-membership-period')); $form->addInput('membership_start_date_' . $member->getValue('mem_id'), $gL10n->get('SYS_START'), $member->getValue('mem_begin', $gPreferences['system_date']), array('type' => 'date', 'maxLength' => 10)); $form->addInput('membership_end_date_' . $member->getValue('mem_id'), $gL10n->get('SYS_END'), $member->getValue('mem_end', $gPreferences['system_date']), array('type' => 'date', 'maxLength' => 10)); $form->addSubmitButton('btn_send_' . $member->getValue('mem_id'), $gL10n->get('SYS_OK')); $roleMemHTML .= $form->show(false); $roleMemHTML .= '</div></li> <li class="list-group-item" id="member_info_' . $member->getValue('mem_id') . '_Content" style="display: none;">'; // show informations about user who creates the recordset and changed it $roleMemHTML .= admFuncShowCreateChangeInfoById($member->getValue('mem_usr_id_create'), $member->getValue('mem_timestamp_create'), $member->getValue('mem_usr_id_change'), $member->getValue('mem_timestamp_change')) . ' </li> </ul> </li>'; $countShowRoles++; } } if ($countShowRoles == 0) { $roleMemHTML = '<div class="block-padding">' . $gL10n->get('PRO_NO_ROLES_VISIBLE') . '</div>'; } else { $roleMemHTML .= '</ul>'; } if ($directOutput) { echo $roleMemHTML; return ''; } else { return $roleMemHTML; } }