Beispiel #1
0
 static function RenameFile($title)
 {
     global $langmessage, $page, $gp_index, $gp_titles;
     //change the title
     $title = gp_rename::RenameFileWorker($title);
     if ($title === false) {
         return false;
     }
     if (!isset($gp_index[$title])) {
         msg($langmessage['OOPS']);
         return false;
     }
     $id = $gp_index[$title];
     $title_info =& $gp_titles[$id];
     //change the label
     $title_info['label'] = admin_tools::PostedLabel($_POST['new_label']);
     if (isset($title_info['lang_index'])) {
         unset($title_info['lang_index']);
     }
     //change the browser title
     $auto_browser_title = strip_tags($title_info['label']);
     $custom_browser_title = false;
     if (isset($_POST['browser_title'])) {
         $browser_title = $_POST['browser_title'];
         $browser_title = htmlspecialchars($browser_title);
         if ($browser_title != $auto_browser_title) {
             $title_info['browser_title'] = trim($browser_title);
             $custom_browser_title = true;
         }
     }
     if (!$custom_browser_title) {
         unset($title_info['browser_title']);
     }
     //keywords
     if (isset($_POST['keywords'])) {
         $title_info['keywords'] = htmlspecialchars($_POST['keywords']);
         if (empty($title_info['keywords'])) {
             unset($title_info['keywords']);
         }
     }
     //description
     if (isset($_POST['description'])) {
         $title_info['description'] = htmlspecialchars($_POST['description']);
         if (empty($title_info['description'])) {
             unset($title_info['description']);
         }
     }
     //robots
     $title_info['rel'] = '';
     if (isset($_POST['nofollow'])) {
         $title_info['rel'] = 'nofollow';
     }
     if (isset($_POST['noindex'])) {
         $title_info['rel'] .= ',noindex';
     }
     $title_info['rel'] = trim($title_info['rel'], ',');
     if (empty($title_info['rel'])) {
         unset($title_info['rel']);
     }
     if (!admin_tools::SavePagesPHP()) {
         msg($langmessage['OOPS'] . ' (R1)');
         return false;
     }
     msg($langmessage['SAVED']);
     return $title;
 }
Beispiel #2
0
 /**
  * Perform a page copy
  *
  */
 function CopyPage()
 {
     global $gp_index, $gp_titles, $page, $langmessage;
     //existing page info
     $from_title = $_POST['from_title'];
     if (!isset($gp_index[$from_title])) {
         message($langmessage['OOPS_TITLE']);
         return false;
     }
     $from_index = $gp_index[$from_title];
     $info = $gp_titles[$from_index];
     //check the new title
     $title = $_POST['title'];
     $title = admin_tools::CheckPostedNewPage($title, $message);
     if ($title === false) {
         message($message);
         return false;
     }
     //get the existing content
     $from_file = gpFiles::PageFile($from_title);
     $contents = file_get_contents($from_file);
     //add to $gp_index first!
     $index = common::NewFileIndex();
     $gp_index[$title] = $index;
     $file = gpFiles::PageFile($title);
     if (!gpFiles::Save($file, $contents)) {
         message($langmessage['OOPS'] . ' (File not saved)');
         return false;
     }
     //add to gp_titles
     $new_titles = array();
     $new_titles[$index]['label'] = admin_tools::PostedLabel($_POST['title']);
     $new_titles[$index]['type'] = $info['type'];
     $gp_titles += $new_titles;
     if (!admin_tools::SavePagesPHP()) {
         message($langmessage['OOPS'] . ' (CP2)');
         return false;
     }
     message($langmessage['SAVED']);
     if (isset($_REQUEST['redir'])) {
         $url = common::AbsoluteUrl($title, '', true, false);
         $page->ajaxReplace[] = array('eval', '', 'window.setTimeout(function(){window.location="' . $url . '"},15000);');
         message(sprintf($langmessage['will_redirect'], common::Link_Page($title)));
     }
     return $index;
 }
Beispiel #3
0
 /**
  * Perform a page copy
  *
  */
 function CopyPage()
 {
     global $gp_index, $gp_titles, $page, $langmessage;
     $this->CacheSettings();
     //existing page info
     $from_title = $_POST['from_title'];
     if (!isset($gp_index[$from_title])) {
         msg($langmessage['OOPS_TITLE']);
         return false;
     }
     $from_index = $gp_index[$from_title];
     $info = $gp_titles[$from_index];
     //check the new title
     $title = $_POST['title'];
     $title = admin_tools::CheckPostedNewPage($title, $message);
     if ($title === false) {
         msg($message);
         return false;
     }
     //get the existing content
     $from_file = gpFiles::PageFile($from_title);
     $contents = file_get_contents($from_file);
     //add to $gp_index first!
     $index = common::NewFileIndex();
     $gp_index[$title] = $index;
     $file = gpFiles::PageFile($title);
     if (!gpFiles::Save($file, $contents)) {
         msg($langmessage['OOPS'] . ' (File not saved)');
         return false;
     }
     //add to gp_titles
     $new_titles = array();
     $new_titles[$index]['label'] = admin_tools::PostedLabel($_POST['title']);
     $new_titles[$index]['type'] = $info['type'];
     $gp_titles += $new_titles;
     //add to menu
     $insert = array();
     $insert[$index] = array();
     if (!$this->SaveNew($insert)) {
         $this->RestoreSettings();
         return false;
     }
     $this->HiddenSaved($index);
     return true;
 }