/** * set list filter string (function is called when user hits filter button) * this function is registered in xajax * @param string $list_title title of list * @param string $filter_str filter string that user has set * @return xajaxResponse every xajax registered function needs to return this object */ function action_set_list_filter($list_title, $filter_str) { global $logging; global $user; global $list_state; global $list_table_configuration; global $user_start_time_array; $logging->info("USER_ACTION " . __METHOD__ . " (user="******", list_title={$list_title}, filter_str={$filter_str})"); # store start time $user_start_time_array[__METHOD__] = microtime(TRUE); # create necessary objects $result = new Result(); $response = new xajaxResponse(); $html_database_table = new HtmlDatabaseTable($list_table_configuration); # check if filter_str is well formed if (str_is_well_formed("filter_str", $filter_str) == FALSE_RETURN_STRING) { set_error_message("filter_form", "below", "ERROR_NOT_WELL_FORMED_STRING", "", "", $response); return $response; } # create list table object $list_table = new ListTable($list_title); if ($list_table->get_is_valid() == FALSE) { $logging->warn("create list object returns false"); $error_message_str = $list_table->get_error_message_str(); $error_log_str = $list_table->get_error_log_str(); $error_str = $list_table->get_error_str(); set_error_message("filter_form", "below", $error_message_str, $error_log_str, $error_str, $response); return $response; } # set filter value $user->get_list_state($list_table->get_table_name()); $list_state->set_filter_str($filter_str); $list_state->set_filter_str_sql(""); $user->set_list_state(); # set content $html_database_table->get_content($list_table, $list_title, "", DATABASETABLE_UNKWOWN_PAGE, $result); $response->custom_response->assign_with_effect(LIST_CSS_NAME_PREFIX . "content_pane", $result->get_result_str()); # check post conditions if (check_postconditions($result, $response) == FALSE) { return $response; } # log total time for this function $logging->info(get_function_time_str(__METHOD__)); return $response; }
/** * delete a record * this function is registered in xajax * @param string $title title of page * @param string $key_string comma separated name value pairs * @return xajaxResponse every xajax registered function needs to return this object */ function action_delete_user_list_permissions_record($title, $key_string) { global $logging; global $user; global $user_list_permissions; global $user_list_permissions_table_configuration; global $user_start_time_array; $logging->info("USER_ACTION " . __METHOD__ . " (user="******", title={$title}, key_string={$key_string})"); # store start time $user_start_time_array[__METHOD__] = microtime(TRUE); # create necessary objects $result = new Result(); $response = new xajaxResponse(); $html_database_table = new HtmlDatabaseTable($user_list_permissions_table_configuration); # display error when delete returns false if (!$user_list_permissions->delete($key_string)) { $logging->warn("delete user list permissions record returns false"); $error_message_str = $user_list_permissions->get_error_message_str(); $error_log_str = $user_list_permissions->get_error_log_str(); $error_str = $user_list_permissions->get_error_str(); set_error_message("tab_list_table_permissions_id", "below", $error_message_str, $error_log_str, $error_str, $response); return $response; } # set content $html_database_table->get_content($user_list_permissions, $title, "", DATABASETABLE_UNKWOWN_PAGE, $result); $response->custom_response->assign_with_effect(USERLISTTABLEPERMISSIONS_CSS_NAME_PREFIX . "content_pane", $result->get_result_str()); # check post conditions if (check_postconditions($result, $response) == FALSE) { return $response; } # log total time for this function $logging->info(get_function_time_str(__METHOD__)); return $response; }
/** * delete a record * this function is registered in xajax * @param string $title title of page * @param string $key_string comma separated name value pairs * @return xajaxResponse every xajax registered function needs to return this object */ function action_delete_user_admin_record($title, $key_string) { global $logging; global $user; global $user_admin_table_configuration; global $user_start_time_array; $logging->info("USER_ACTION " . __METHOD__ . " (user="******", title={$title}, key_string={$key_string})"); # store start time $user_start_time_array[__METHOD__] = microtime(TRUE); # create necessary objects $result = new Result(); $response = new xajaxResponse(); $html_database_table = new HtmlDatabaseTable($user_admin_table_configuration); $logging->debug("get user record"); $user_array = $user->select_record($key_string); if (count($user_array) == 0) { $logging->warn("select user record returns empty array"); $error_message_str = $user->get_error_message_str(); $error_log_str = $user->get_error_log_str(); $error_str = $user->get_error_str(); set_error_message("tab_user_admin_id", "below", $error_message_str, $error_log_str, $error_str, $response); return $response; } $user_name = $user_array[USER_NAME_FIELD_NAME]; $logging->debug("found user: "******"admin") { set_error_message("tab_user_admin_id", "below", "ERROR_CANNOT_DELETE_USER_ADMIN", "", "", $response); return $response; } # display error when current user wants to delete him/herself if ($user_name == $user->get_name()) { set_error_message("tab_user_admin_id", "below", "ERROR_CANNOT_DELETE_YOURSELF", "", "", $response); return $response; } # display error when delete returns false if ($user->delete($key_string) == FALSE) { $logging->warn("delete user record returns false"); $error_message_str = $user->get_error_message_str(); $error_log_str = $user->get_error_log_str(); $error_str = $user->get_error_str(); set_error_message("tab_user_admin_id", "below", $error_message_str, $error_log_str, $error_str, $response); return $response; } # set content $html_database_table->get_content($user, $title, "", DATABASETABLE_UNKWOWN_PAGE, $result); $response->custom_response->assign_with_effect(USER_ADMIN_CSS_NAME_PREFIX . "content_pane", $result->get_result_str()); # check post conditions if (check_postconditions($result, $response) == FALSE) { return $response; } # log total time for this function $logging->info(get_function_time_str(__METHOD__)); return $response; }
/** * delete a list table * this function is registered in xajax * @param string $list_title title of list table * @param string $key_string comma separated name value pairs * @return xajaxResponse every xajax registered function needs to return this object */ function action_delete_portal_record($list_title) { global $logging; global $user; global $list_table_description; global $portal_table_configuration; global $user_start_time_array; $logging->info("USER_ACTION " . __METHOD__ . " (user="******", list_title={$list_title})"); # store start time $user_start_time_array[__METHOD__] = microtime(TRUE); # create necessary objects $result = new Result(); $response = new xajaxResponse(); $list_table = new ListTable($list_title); if ($list_table->get_is_valid() == FALSE) { $logging->warn("create list object returns false"); $error_message_str = $list_table->get_error_message_str(); $error_log_str = $list_table->get_error_log_str(); $error_str = $list_table->get_error_str(); set_error_message("tab_portal_id", "below", $error_message_str, $error_log_str, $error_str, $response); return $response; } $html_database_table = new HtmlDatabaseTable($portal_table_configuration); # display error when delete returns false if ($list_table->drop() == FALSE) { $logging->warn("drop list returns false"); $error_message_str = $list_table->get_error_message_str(); $error_log_str = $list_table->get_error_log_str(); $error_str = $list_table->get_error_str(); set_error_message("tab_portal_id", "below", $error_message_str, $error_log_str, $error_str, $response); return $response; } # set content $html_database_table->get_content($list_table_description, $list_title, "", DATABASETABLE_ALL_PAGES, $result); $response->custom_response->assign_with_effect(PORTAL_CSS_NAME_PREFIX . "content_pane", $result->get_result_str()); # reset current list name only when active list has been removed if ($list_title == $user->get_current_list_name()) { $user->set_current_list_name(""); } # set page navigation and login status to update old 'list' links $page_navigation_str = get_page_navigation(PAGE_TYPE_PORTAL); $response->assign("navigation_container", "innerHTML", $page_navigation_str); # check post conditions if (check_postconditions($result, $response) == FALSE) { return $response; } # log total time for this function $logging->info(get_function_time_str(__METHOD__)); return $response; }