/** * * @param \k1lib\crudlexs\class_db_table $db_table * @param array $field_links_array * @param string $title * @param string $board_root * @param string $board_create * @param string $board_read * @param boolean $show_create * @return \k1lib\html\div|boolean */ public function create_related_list(class_db_table $db_table, $field_links_array, $title, $board_root, $board_create, $board_read, $board_list, $use_back_url = FALSE, $clear_url = FALSE) { $table_alias = \k1lib\db\security\db_table_aliases::encode($db_table->get_db_table_name()); $detail_div = new \k1lib\html\div(); $this->related_list = $this->do_related_list($db_table, $field_links_array, $board_root, $board_read); if (!empty($this->related_list)) { $current_row_keys_text = $this->read_object->get_row_keys_text(); $current_row_keys_text_auth_code = md5(\k1lib\K1MAGIC::get_value() . $current_row_keys_text); $detail_div->set_class("k1lib-related-data-list {$table_alias}"); $related_title = $detail_div->append_h4($title, "{$table_alias}"); $detail_div->append_div("related-messaje"); if ($data_loaded) { $get_vars = ["auth-code" => $current_row_keys_text_auth_code, "back-url" => $_SERVER['REQUEST_URI']]; $all_data_url = url::do_url(APP_URL . $board_root . "/" . $board_list . "/{$current_row_keys_text}/", $get_vars, FALSE); $this->related_html_object_show_all_data = \k1lib\html\get_link_button($all_data_url, board_read_strings::$button_all_data, "tiny"); if ($this->related_show_all_data) { $related_title->set_value($this->related_html_object_show_all_data, TRUE); } } if ($use_back_url) { $get_vars = ["auth-code" => $current_row_keys_text_auth_code, "back-url" => $_SERVER['REQUEST_URI']]; $create_url = url::do_url(APP_URL . $board_root . "/" . $board_create . "/{$current_row_keys_text}/", $get_vars, TRUE); } else { $get_vars = ["auth-code" => $current_row_keys_text_auth_code]; $create_url = url::do_url(APP_URL . $board_root . "/" . $board_create . "/{$current_row_keys_text}/", $get_vars, TRUE, ['back-url'], FALSE); } $this->related_html_object_show_new = \k1lib\html\get_link_button($create_url, board_list_strings::$button_new, "tiny"); if ($this->related_show_new) { $related_title->set_value($this->related_html_object_show_new, TRUE); } $this->related_list->do_html_object()->append_to($detail_div); $this->related_html_table_object = $this->related_list->get_html_table(); if ($db_table->get_total_rows() > $this->related_rows_to_show) { $this->related_list->do_pagination()->append_to($detail_div); $this->related_list->do_row_stats()->append_to($detail_div); } listing::$rows_per_page = $actual_rows_per_page; } // TODO: NONSENSE line ! // $this->set_related_show_new(TRUE); return $detail_div; }