Suggestion - add new page to correct menu

PurpleEdge

Done, easier than modifying WB on every release!  :-)

erpe0812

You can open a ticket and hope, that someone finds it useful............ :wink:
http://project.websitebaker2.org/newticket

rgds

erpe

PurpleEdge

Is there a process to get this implemented in future releases?

pcwacht

Hmm didn't see it, must have dirt im my eyes :P
but yes, they are there ;)

John
[url="http://www.ictwacht.nl"]http://www.ictwacht.nl[/url] = Dutch ICT info
[url="http://www.pcwacht.nl"]http://www.pcwacht.nl[/url] = My first
both still work in progress, since years.....

PurpleEdge

The parent template is already used in the sql statement, and visibility is a value on the form when creating the page, so I think they are both OK?

pcwacht

Might I suggest adding the parents template as well, and maybe even parents visibility?

John
[url="http://www.ictwacht.nl"]http://www.ictwacht.nl[/url] = Dutch ICT info
[url="http://www.pcwacht.nl"]http://www.pcwacht.nl[/url] = My first
both still work in progress, since years.....

crnogorac081

Web developer

PurpleEdge

#1
In the admin/pages/add.php file is a section of code that adds a new page, lines 120 - 138 ...


// Work-out if the page parent (if selected) has a seperate template or language to the default
$query_parent = $database->query("SELECT template, language FROM ".TABLE_PREFIX."pages WHERE page_id = '$parent'");
if($query_parent->numRows() > 0) {
$fetch_parent = $query_parent->fetchRow();
$template = $fetch_parent['template'];
$language = $fetch_parent['language'];
} else {
$template = '';
$language = DEFAULT_LANGUAGE;
}

// Insert page into pages table
$query = "INSERT INTO ".TABLE_PREFIX."pages (page_title,menu_title,parent,template,target,position,visibility,searching,menu,language,admin_groups,viewing_groups,modified_when,modified_by) VALUES ('$title','$title','$parent','$template','_top','$position','$visibility','1','1','$language','$admin_groups','$viewing_groups','".time()."','".$admin->get_user_id()."')";
$database->query($query);
if($database->is_error()) {
$admin->print_error($database->get_error());
}


Can I suggest that instead of always inserting "1" for the menu, can this be modified to insert the parent link menu value.

For a multi-menu template it is annoying to have to reset the new page to the correct menu when the value is already known.

Suggested mod...


// Work-out if the page parent (if selected) has a seperate template or language to the default
$query_parent = $database->query("SELECT template, language, menu FROM ".TABLE_PREFIX."pages WHERE page_id = '$parent'");
if($query_parent->numRows() > 0) {
$fetch_parent = $query_parent->fetchRow();
$template = $fetch_parent['template'];
$language = $fetch_parent['language'];
$menu = $fetch_parent['menu'];               //GWB
} else {
$template = '';
$language = DEFAULT_LANGUAGE;
 $menu = 1;                                  //GWB
}

// Insert page into pages table
$query = "INSERT INTO ".TABLE_PREFIX."pages (page_title,menu_title,parent,template,target,position,visibility,searching,menu,language,admin_groups,viewing_groups,modified_when,modified_by) VALUES ('$title','$title','$parent','$template','_top','$position','$visibility','1','$menu','$language','$admin_groups','$viewing_groups','".time()."','".$admin->get_user_id()."')";
$database->query($query);
if($database->is_error()) {
$admin->print_error($database->get_error());
}