add_session(ERROR_NO_PROFILE_DEFINED, 'error'); zen_redirect(zen_href_link(FILENAME_PROFILES)); } // take appropriate steps depending upon the action requested switch ($action) { case 'add': $pagesByMenu = zen_get_admin_pages(FALSE); $menuTitles = zen_get_menu_titles(); break; case 'edit': $pagesByMenu = zen_get_admin_pages(FALSE); $menuTitles = zen_get_menu_titles(); $profileName = zen_get_profile_name($profile); $permittedPages = zen_get_permitted_pages_for_profile($profile); break; case 'deleteconfirm': $error = zen_delete_profile($profile); if ($error != '') { $messageStack->add_session($error, 'error'); } else { $messageStack->add_session(SUCCESS_PROFILE_DELETED, 'success'); } zen_redirect(zen_href_link(FILENAME_PROFILES)); break; case 'insert': $error = zen_create_profile($_POST); if ($error != '') { $messageStack->add($error, 'error'); $pagesByMenu = zen_get_admin_pages(FALSE); $action = 'add'; } else { $messageStack->add_session(SUCCESS_PROFILE_INSERTED, 'success'); zen_redirect(zen_href_link(FILENAME_PROFILES)); } break; case 'update': zen_remove_profile_permits($profile); zen_insert_pages_into_profile($profile, $_POST['p']); $messageStack->add_session(SUCCESS_PROFILE_UPDATED, 'success'); zen_redirect(zen_href_link(FILENAME_PROFILES)); break; case 'update_name': $profileName = $_POST['profile-name']; $_POST['profile-name'] = trim($_POST['profile-name']); // $_POST['profile-name'] = preg_replace('/[^a-zA-Z0-9_-]/', '', $_POST['profile-name']); if ($_POST['profile-name'] != '' && $_POST['profile-name'] == $profileName) { zen_update_profile_name($profile, $_POST['profile-name']); $messageStack->add_session(SUCCESS_PROFILE_NAME_UPDATED, 'success'); } else { $messageStack->add_session(ERROR_INVALID_PROFILE_NAME, 'error'); } zen_redirect(zen_href_link(FILENAME_PROFILES)); break; case 'rename': default: // if no specific action requested prepare the listing data $profileList = zen_get_profiles(TRUE); break; } ?> >