NEW Support alternative aliases of page name in website
This commit is contained in:
parent
c8e6a8c014
commit
e2c7585ae7
@ -165,47 +165,70 @@ function dolWebsiteSaveContent($content)
|
||||
|
||||
|
||||
/**
|
||||
* Make a redirect to another container
|
||||
* Make a redirect to another container.
|
||||
*
|
||||
* @param string $containeralias Path to file to include (must be a page from website root. Example: 'mypage.php' means 'mywebsite/mypage.php')
|
||||
* @param string $containerref Ref of container to redirect to (must be a page from website root. Example: 'mypage.php' means 'mywebsite/mypage.php').
|
||||
* @param string $containeraliasalt Ref of alternative aliases to redirect to.
|
||||
* @param int $containerid Id of container.
|
||||
* @return void
|
||||
*/
|
||||
function redirectToContainer($containeralias)
|
||||
function redirectToContainer($containerref, $containeraliasalt='',$containerid=0)
|
||||
{
|
||||
global $db, $website;
|
||||
|
||||
$newurl = '';
|
||||
|
||||
// We make redirect using the alternative alias, we must find the real $containerref
|
||||
if ($containeraliasalt)
|
||||
{
|
||||
include_once DOL_DOCUMENT_ROOT.'/website/class/websitepage.class.php';
|
||||
$tmpwebsitepage=new WebsitePage($db);
|
||||
$result = $tmpwebsitepage->fetch(0, $website->id, '', $containeraliasalt);
|
||||
if ($result > 0)
|
||||
{
|
||||
$containerref = $tmpwebsitepage->pageurl;
|
||||
}
|
||||
else
|
||||
{
|
||||
print "Error, page contains a redirect to the alternative alias '".$containeraliasalt."' that does not exists in web site (".$website->id." / ".$website->ref.")";
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
if (defined('USEDOLIBARRSERVER')) // When page called from Dolibarr server
|
||||
{
|
||||
// Check new container exists
|
||||
$tmpwebsitepage=new WebsitePage($db);
|
||||
$result = $tmpwebsitepage->fetch(0, $website->id, $containeralias);
|
||||
unset($tmpwebsitepage);
|
||||
if (! $containeraliasalt) // If containeraliasalt set, we already did the test
|
||||
{
|
||||
include_once DOL_DOCUMENT_ROOT.'/website/class/websitepage.class.php';
|
||||
$tmpwebsitepage=new WebsitePage($db);
|
||||
$result = $tmpwebsitepage->fetch(0, $website->id, $containerref);
|
||||
unset($tmpwebsitepage);
|
||||
}
|
||||
if ($result > 0)
|
||||
{
|
||||
$currenturi = $_SERVER["REQUEST_URI"];
|
||||
if (preg_match('/&pageref=([^&]+)/', $currenturi, $regtmp))
|
||||
{
|
||||
if ($regtmp[0] == $containeralias)
|
||||
if ($regtmp[0] == $containerref)
|
||||
{
|
||||
print "Error, page with uri '.$currenturi.' try a redirect to the same alias page '".$containeralias."' in web site '".$website->ref."'";
|
||||
print "Error, page with uri '.$currenturi.' try a redirect to the same alias page '".$containerref."' in web site '".$website->ref."'";
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
$newurl = preg_replace('/&pageref=([^&]+)/', '&pageref='.$containeralias, $currenturi);
|
||||
$newurl = preg_replace('/&pageref=([^&]+)/', '&pageref='.$containerref, $currenturi);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$newurl = $currenturi.'&pageref='.urlencode($containeralias);
|
||||
$newurl = $currenturi.'&pageref='.urlencode($containerref);
|
||||
}
|
||||
}
|
||||
}
|
||||
else // When page called from virtual host server
|
||||
{
|
||||
$newurl = '/'.$containeralias.'.php';
|
||||
$newurl = '/'.$containerref.'.php';
|
||||
}
|
||||
|
||||
if ($newurl)
|
||||
@ -215,7 +238,7 @@ function redirectToContainer($containeralias)
|
||||
}
|
||||
else
|
||||
{
|
||||
print "Error, page contains a redirect to the alias page '".$containeralias."' that does not exists in web site '".$website->ref."'";
|
||||
print "Error, page contains a redirect to the alias page '".$containerref."' that does not exists in web site (".$website->id." / ".$website->ref.")";
|
||||
exit;
|
||||
}
|
||||
}
|
||||
@ -225,10 +248,10 @@ function redirectToContainer($containeralias)
|
||||
* Clean an HTML page to report only content, so we can include it into another page.
|
||||
* It outputs content of file sanitized from html and body part.
|
||||
*
|
||||
* @param string $containeralias Path to file to include (must be a page from website root. Example: 'mypage.php' means 'mywebsite/mypage.php')
|
||||
* @param string $containerref Path to file to include (must be a page from website root. Example: 'mypage.php' means 'mywebsite/mypage.php')
|
||||
* @return void
|
||||
*/
|
||||
function includeContainer($containeralias)
|
||||
function includeContainer($containerref)
|
||||
{
|
||||
global $conf, $db, $langs, $mysoc, $user, $website;
|
||||
global $includehtmlcontentopened;
|
||||
@ -236,9 +259,9 @@ function includeContainer($containeralias)
|
||||
|
||||
$MAXLEVEL=20;
|
||||
|
||||
if (! preg_match('/\.php$/i', $containeralias)) $containeralias.='.php';
|
||||
if (! preg_match('/\.php$/i', $containerref)) $containerref.='.php';
|
||||
|
||||
$fullpathfile=DOL_DATA_ROOT.'/website/'.$websitekey.'/'.$containeralias;
|
||||
$fullpathfile=DOL_DATA_ROOT.'/website/'.$websitekey.'/'.$containerref;
|
||||
|
||||
if (empty($includehtmlcontentopened)) $includehtmlcontentopened=0;
|
||||
$includehtmlcontentopened++;
|
||||
@ -261,7 +284,7 @@ function includeContainer($containeralias)
|
||||
|
||||
if (! $res)
|
||||
{
|
||||
print 'ERROR: FAILED TO INCLUDE PAGE '.$containeralias.".\n";
|
||||
print 'ERROR: FAILED TO INCLUDE PAGE '.$containerref.".\n";
|
||||
}
|
||||
|
||||
$includehtmlcontentopened--;
|
||||
@ -550,6 +573,42 @@ function dolSavePageContent($filetpl, $object, $objectpage)
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Save content of the index.php page
|
||||
*
|
||||
* @param string $pathofwebsite Path of website root
|
||||
* @param string $fileindex Full path of file index.php
|
||||
* @param string $filetpl File tpl to index.php page redirect to
|
||||
* @return boolean True if OK
|
||||
*/
|
||||
function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$result=0;
|
||||
|
||||
dol_mkdir($pathofwebsite);
|
||||
dol_delete_file($fileindex);
|
||||
|
||||
$indexcontent = '<?php'."\n";
|
||||
$indexcontent.= "// BEGIN PHP File generated to provide an index.php as Home Page or alias redirector - DO NOT MODIFY - It is just a generated wrapper.\n";
|
||||
$indexcontent.= '$websitekey=basename(dirname(__FILE__));'."\n";
|
||||
$indexcontent.= "if (! defined('USEDOLIBARRSERVER')) { require_once './master.inc.php'; } // Load master if not already loaded\n";
|
||||
$indexcontent.= 'if (! empty($_GET[\'pageref\']) || ! empty($_GET[\'pagealiasalt\']) || ! empty($_GET[\'pageid\'])) {'."\n";
|
||||
$indexcontent.= " require_once DOL_DOCUMENT_ROOT.'/core/lib/website.lib.php';\n";
|
||||
$indexcontent.= " require_once DOL_DOCUMENT_ROOT.'/core/website.inc.php';\n";
|
||||
$indexcontent.= ' redirectToContainer($_GET[\'pageref\'], $_GET[\'pagealiasalt\'], $_GET[\'pageid\']);'."\n";
|
||||
$indexcontent.= "}\n";
|
||||
$indexcontent.= "include_once './".basename($filetpl)."'\n";
|
||||
$indexcontent.= '// END PHP ?>'."\n";
|
||||
$result = file_put_contents($fileindex, $indexcontent);
|
||||
if (! empty($conf->global->MAIN_UMASK))
|
||||
@chmod($fileindex, octdec($conf->global->MAIN_UMASK));
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Save content of a page on disk
|
||||
*
|
||||
|
||||
@ -58,4 +58,5 @@ insert into llx_c_type_container (code,label,module,active) values ('other',
|
||||
|
||||
ALTER TABLE llx_expensereport_det ADD COLUMN docnumber varchar(128) after fk_expensereport;
|
||||
|
||||
ALTER TABLE llx_website_page ADD COLUMN aliasalt varchar(255) after pageurl;
|
||||
|
||||
|
||||
@ -22,6 +22,7 @@ CREATE TABLE llx_website_page
|
||||
rowid integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
|
||||
fk_website integer NOT NULL,
|
||||
pageurl varchar(255) NOT NULL,
|
||||
aliasalt varchar(255),
|
||||
title varchar(255),
|
||||
description varchar(255),
|
||||
keywords varchar(255),
|
||||
|
||||
@ -6,6 +6,7 @@ ConfirmDeleteWebsite=Are you sure you want to delete this web site. All its page
|
||||
WEBSITE_TYPE_CONTAINER=Type of page/container
|
||||
WEBSITE_PAGE_EXAMPLE=Web page to use as example
|
||||
WEBSITE_PAGENAME=Page name/alias
|
||||
WEBSITE_ALIASALT=Alternative page names/aliases
|
||||
WEBSITE_CSS_URL=URL of external CSS file
|
||||
WEBSITE_CSS_INLINE=CSS file content (common to all pages)
|
||||
WEBSITE_JS_INLINE=Javascript file content (common to all pages)
|
||||
@ -36,6 +37,7 @@ SetAsHomePage=Set as Home page
|
||||
RealURL=Real URL
|
||||
ViewWebsiteInProduction=View web site using home URLs
|
||||
SetHereVirtualHost=If you can create, on your web server (Apache, Nginx, ...), a dedicated Virtual Host with PHP enabled and a Root directory on<br><strong>%s</strong><br>then enter here the virtual hostname you have created, so the preview can be done also using this dedicated web server access instead of only using Dolibarr server.
|
||||
YouCanAlsoTestWithPHPS=On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running<br><strong>php -S 0.0.0.0:8080 -t %s</strong>
|
||||
CheckVirtualHostPerms=Check also that virtual host has <strong>%s</strong> on files into<br><strong>%s</strong>
|
||||
ReadPerm=Read permission
|
||||
WritePerm=Write permission
|
||||
|
||||
@ -612,17 +612,11 @@ class Website extends CommonObject
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
dol_delete_file($fileindex);
|
||||
|
||||
$filetpl=$pathofwebsitenew.'/page'.$newidforhome.'.tpl.php';
|
||||
|
||||
$indexcontent = '<?php'."\n";
|
||||
$indexcontent.= '// File generated to provide a shortcut to the Home Page - DO NOT MODIFY - It is just an include.'."\n";
|
||||
$indexcontent.= "include_once './".basename($filetpl)."'\n";
|
||||
$indexcontent.= '?>'."\n";
|
||||
$result = file_put_contents($fileindex, $indexcontent);
|
||||
if (! empty($conf->global->MAIN_UMASK))
|
||||
@chmod($fileindex, octdec($conf->global->MAIN_UMASK));
|
||||
// Generate the index.php page to be the home page
|
||||
//-------------------------------------------------
|
||||
$result = dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -53,6 +53,7 @@ class WebsitePage extends CommonObject
|
||||
|
||||
public $fk_website;
|
||||
public $pageurl;
|
||||
public $aliasalt;
|
||||
public $type_container;
|
||||
public $title;
|
||||
public $description;
|
||||
@ -71,8 +72,9 @@ class WebsitePage extends CommonObject
|
||||
*/
|
||||
public $fields=array(
|
||||
'rowid' =>array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'index'=>1, 'position'=>1, 'comment'=>'Id'),
|
||||
'pageurl' =>array('type'=>'varchar(16)', 'label'=>'WEBSITE_PAGENAME', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'index'=>1, 'position'=>10, 'searchall'=>1, 'comment'=>'Alias of page'),
|
||||
'type_container' =>array('type'=>'varchar(16)', 'label'=>'Type', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'index'=>0, 'position'=>11, 'comment'=>'Type of container'),
|
||||
'pageurl' =>array('type'=>'varchar(16)', 'label'=>'WEBSITE_PAGENAME', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'index'=>1, 'position'=>10, 'searchall'=>1, 'comment'=>'Ref/alias of page'),
|
||||
'aliasalt' =>array('type'=>'varchar(255)', 'label'=>'AliasAlt', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'index'=>0, 'position'=>11, 'searchall'=>0, 'comment'=>'Alias alternative of page'),
|
||||
'type_container' =>array('type'=>'varchar(16)', 'label'=>'Type', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'index'=>0, 'position'=>12, 'comment'=>'Type of container'),
|
||||
'title' =>array('type'=>'varchar(255)', 'label'=>'Label', 'enabled'=>1, 'visible'=>1, 'position'=>30, 'searchall'=>1),
|
||||
'description' =>array('type'=>'varchar(255)', 'label'=>'Description', 'enabled'=>1, 'visible'=>1, 'position'=>30, 'searchall'=>1),
|
||||
'keywords' =>array('type'=>'varchar(255)', 'label'=>'Keywords', 'enabled'=>1, 'visible'=>1, 'position'=>45, 'searchall'=>0),
|
||||
@ -115,6 +117,7 @@ class WebsitePage extends CommonObject
|
||||
{
|
||||
$this->description = dol_trunc($this->description, 255, 'right', 'utf-8', 1);
|
||||
$this->keywords = dol_trunc($this->keywords, 255, 'right', 'utf-8', 1);
|
||||
if ($this->aliasalt) $this->aliasalt = ','.preg_replace('/,+$/', '', preg_replace('/^,+/', '', $this->aliasalt)).','; // content in database must be ',xxx,...,yyy,'
|
||||
|
||||
return $this->createCommon($user, $notrigger);
|
||||
}
|
||||
@ -122,13 +125,14 @@ class WebsitePage extends CommonObject
|
||||
/**
|
||||
* Load object in memory from the database
|
||||
*
|
||||
* @param int $id Id object. If this is 0, the value into $page will be used. If not found of $page not defined, the default page of website_id will be used or the first page found if not set.
|
||||
* @param string $website_id Web site id (page name must also be filled if this parameter is used)
|
||||
* @param string $page Page name (website id must also be filled if this parameter is used)
|
||||
* @param int $id Id object. If this is 0, the value into $page will be used. If not found of $page not defined, the default page of website_id will be used or the first page found if not set.
|
||||
* @param string $website_id Web site id (page name must also be filled if this parameter is used)
|
||||
* @param string $page Page name (website id must also be filled if this parameter is used)
|
||||
* @param string $aliasalt Alternative alias to search page (slow)
|
||||
*
|
||||
* @return int <0 if KO, 0 if not found, >0 if OK
|
||||
*/
|
||||
public function fetch($id, $website_id = null, $page = null)
|
||||
public function fetch($id, $website_id = null, $page = null, $aliasalt = null)
|
||||
{
|
||||
dol_syslog(__METHOD__, LOG_DEBUG);
|
||||
|
||||
@ -137,6 +141,7 @@ class WebsitePage extends CommonObject
|
||||
$sql .= " t.fk_website,";
|
||||
$sql .= ' t.type_container,';
|
||||
$sql .= " t.pageurl,";
|
||||
$sql .= " t.aliasalt,";
|
||||
$sql .= " t.title,";
|
||||
$sql .= " t.description,";
|
||||
$sql .= " t.keywords,";
|
||||
@ -159,7 +164,8 @@ class WebsitePage extends CommonObject
|
||||
{
|
||||
if (null !== $website_id) {
|
||||
$sql .= " AND t.fk_website = '" . $this->db->escape($website_id) . "'";
|
||||
if ($page) $sql .= " AND t.pageurl = '" . $this->db->escape($page) . "'";
|
||||
if ($page) $sql .= " AND t.pageurl = '" . $this->db->escape($page) . "'";
|
||||
if ($aliasalt) $sql .= " AND t.aliasalt LIKE '%," . $this->db->escape($aliasalt) . ",%'";
|
||||
}
|
||||
}
|
||||
$sql .= $this->db->plimit(1);
|
||||
@ -175,6 +181,7 @@ class WebsitePage extends CommonObject
|
||||
$this->fk_website = $obj->fk_website;
|
||||
$this->type_container = $obj->type_container;
|
||||
$this->pageurl = $obj->pageurl;
|
||||
$this->aliasalt = preg_replace('/,+$/', '', preg_replace('/^,+/', '', $obj->aliasalt));
|
||||
$this->title = $obj->title;
|
||||
$this->description = $obj->description;
|
||||
$this->keywords = $obj->keywords;
|
||||
@ -225,6 +232,7 @@ class WebsitePage extends CommonObject
|
||||
$sql .= " t.fk_website,";
|
||||
$sql .= " t.type_container,";
|
||||
$sql .= " t.pageurl,";
|
||||
$sql .= " t.aliasalt,";
|
||||
$sql .= " t.title,";
|
||||
$sql .= " t.description,";
|
||||
$sql .= " t.keywords,";
|
||||
@ -272,6 +280,7 @@ class WebsitePage extends CommonObject
|
||||
$record->fk_website = $obj->fk_website;
|
||||
$record->type_container = $obj->type_container;
|
||||
$record->pageurl = $obj->pageurl;
|
||||
$record->aliasalt = preg_replace('/,+$/', '', preg_replace('/^,+/', '', $obj->aliasalt));
|
||||
$record->title = $obj->title;
|
||||
$record->description = $obj->description;
|
||||
$record->keywords = $obj->keywords;
|
||||
@ -306,6 +315,10 @@ class WebsitePage extends CommonObject
|
||||
*/
|
||||
public function update(User $user, $notrigger = false)
|
||||
{
|
||||
$this->description = dol_trunc($this->description, 255, 'right', 'utf-8', 1);
|
||||
$this->keywords = dol_trunc($this->keywords, 255, 'right', 'utf-8', 1);
|
||||
if ($this->aliasalt) $this->aliasalt = ','.preg_replace('/,+$/', '', preg_replace('/^,+/', '', $this->aliasalt)).','; // content in database must be ',xxx,...,yyy,'
|
||||
|
||||
return $this->updateCommon($user, $notrigger);
|
||||
}
|
||||
|
||||
@ -371,6 +384,7 @@ class WebsitePage extends CommonObject
|
||||
// Clear fields
|
||||
$object->ref = $newref;
|
||||
$object->pageurl = $newref;
|
||||
$object->aliasalt = '';
|
||||
$object->title = $langs->trans("CopyOf").' '.$object->title;
|
||||
if (! empty($newlang)) $object->lang=$newlang;
|
||||
if ($istranslation) $object->fk_page = $fromid;
|
||||
@ -510,6 +524,7 @@ class WebsitePage extends CommonObject
|
||||
$this->fk_website = '';
|
||||
$this->type_container = 'page';
|
||||
$this->pageurl = 'specimen';
|
||||
$this->aliasalt = 'specimenalt';
|
||||
$this->title = 'My Page';
|
||||
$this->description = 'This is my page';
|
||||
$this->keywords = 'keyword1, keyword2';
|
||||
|
||||
@ -35,9 +35,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
|
||||
require_once DOL_DOCUMENT_ROOT.'/website/class/website.class.php';
|
||||
require_once DOL_DOCUMENT_ROOT.'/website/class/websitepage.class.php';
|
||||
|
||||
$langs->load("admin");
|
||||
$langs->load("other");
|
||||
$langs->load("website");
|
||||
$langs->loadLangs(array("admin","other","website"));
|
||||
|
||||
if (! $user->admin) accessforbidden();
|
||||
|
||||
@ -60,18 +58,18 @@ $type_container=GETPOST('WEBSITE_TYPE_CONTAINER', 'alpha');
|
||||
$section_dir = GETPOST('section_dir', 'alpha');
|
||||
$file_manager = GETPOST('file_manager', 'alpha');
|
||||
|
||||
if (GETPOST('delete')) { $action='delete'; }
|
||||
if (GETPOST('preview')) $action='preview';
|
||||
if (GETPOST('createsite')) { $action='createsite'; }
|
||||
if (GETPOST('createcontainer')) { $action='createcontainer'; }
|
||||
if (GETPOST('editcss')) { $action='editcss'; }
|
||||
if (GETPOST('editmenu')) { $action='editmenu'; }
|
||||
if (GETPOST('setashome')) { $action='setashome'; }
|
||||
if (GETPOST('editmeta')) { $action='editmeta'; }
|
||||
if (GETPOST('editsource')) { $action='editsource'; }
|
||||
if (GETPOST('editcontent')) { $action='editcontent'; }
|
||||
if (GETPOST('createfromclone')) { $action='createfromclone'; }
|
||||
if (GETPOST('createpagefromclone')) { $action='createpagefromclone'; }
|
||||
if (GETPOST('delete','alpha')) { $action='delete'; }
|
||||
if (GETPOST('preview','alpha')) $action='preview';
|
||||
if (GETPOST('createsite','alpha')) { $action='createsite'; }
|
||||
if (GETPOST('createcontainer','alpha')) { $action='createcontainer'; }
|
||||
if (GETPOST('editcss','alpha')) { $action='editcss'; }
|
||||
if (GETPOST('editmenu','alpha')) { $action='editmenu'; }
|
||||
if (GETPOST('setashome','alpha')) { $action='setashome'; }
|
||||
if (GETPOST('editmeta','alpha')) { $action='editmeta'; }
|
||||
if (GETPOST('editsource','alpha')) { $action='editsource'; }
|
||||
if (GETPOST('editcontent','alpha')) { $action='editcontent'; }
|
||||
if (GETPOST('createfromclone','alpha')) { $action='createfromclone'; }
|
||||
if (GETPOST('createpagefromclone','alpha')) { $action='createpagefromclone'; }
|
||||
if (empty($action) && $file_manager) $action='file_manager';
|
||||
|
||||
// Load variable for pagination
|
||||
@ -331,6 +329,9 @@ if ($action == 'addcontainer')
|
||||
$objectpage->pageurl=$tmpdomain.'-home';
|
||||
}
|
||||
|
||||
$objectpage->aliasalt = '';
|
||||
if (preg_match('/^(\d+)\-/', basename($pageurl), $reg)) $objectpage->aliasalt = $reg[0];
|
||||
|
||||
if (preg_match('/<title>(.*)<\/title>/ims', $head, $regtmp))
|
||||
{
|
||||
$objectpage->title = $regtmp[1];
|
||||
@ -542,8 +543,9 @@ if ($action == 'addcontainer')
|
||||
else
|
||||
{
|
||||
$objectpage->type_container = GETPOST('WEBSITE_TYPE_CONTAINER','alpha');
|
||||
$objectpage->title = GETPOST('WEBSITE_TITLE','alpha');
|
||||
$objectpage->pageurl = GETPOST('WEBSITE_PAGENAME','alpha');
|
||||
$objectpage->aliasalt = GETPOST('WEBSITE_ALIASALT','alpha');
|
||||
$objectpage->title = GETPOST('WEBSITE_TITLE','alpha');
|
||||
$objectpage->description = GETPOST('WEBSITE_DESCRIPTION','alpha');
|
||||
$objectpage->keywords = GETPOST('WEBSITE_KEYWORDS','alpha');
|
||||
$objectpage->lang = GETPOST('WEBSITE_LANG','aZ09');
|
||||
@ -914,16 +916,7 @@ if ($action == 'setashome')
|
||||
|
||||
// Generate the index.php page to be the home page
|
||||
//-------------------------------------------------
|
||||
dol_mkdir($pathofwebsite);
|
||||
dol_delete_file($fileindex);
|
||||
|
||||
$indexcontent = '<?php'."\n";
|
||||
$indexcontent.= '// File generated to provide a shortcut to the Home Page - DO NOT MODIFY - It is just an include.'."\n";
|
||||
$indexcontent.= "include_once './".basename($filetpl)."'\n";
|
||||
$indexcontent.= '?>'."\n";
|
||||
$result = file_put_contents($fileindex, $indexcontent);
|
||||
if (! empty($conf->global->MAIN_UMASK))
|
||||
@chmod($fileindex, octdec($conf->global->MAIN_UMASK));
|
||||
$result = dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl);
|
||||
|
||||
if ($result) setEventMessages($langs->trans("Saved"), null, 'mesgs');
|
||||
else setEventMessages('Failed to write file '.$fileindex, null, 'errors');
|
||||
@ -967,6 +960,7 @@ if ($action == 'updatemeta')
|
||||
|
||||
$objectpage->type_container = GETPOST('WEBSITE_TYPE_CONTAINER', 'alpha');
|
||||
$objectpage->pageurl = GETPOST('WEBSITE_PAGENAME', 'alpha');
|
||||
$objectpage->aliasalt = GETPOST('WEBSITE_ALIASALT', 'alpha');
|
||||
$objectpage->title = GETPOST('WEBSITE_TITLE', 'alpha');
|
||||
$objectpage->description = GETPOST('WEBSITE_DESCRIPTION', 'alpha');
|
||||
$objectpage->keywords = GETPOST('WEBSITE_KEYWORDS', 'alpha');
|
||||
@ -1273,7 +1267,7 @@ $moreheadcss='';
|
||||
$moreheadjs='';
|
||||
|
||||
$arrayofjs[]='includes/jquery/plugins/blockUI/jquery.blockUI.js';
|
||||
$arrayofjs[]='core/js/blockUI.js'; // Used by ecm/tpl/enabledfiletreeajax.tpl.pgp
|
||||
$arrayofjs[]='core/js/blockUI.js'; // Used by ecm/tpl/enabledfiletreeajax.tpl.php
|
||||
if (empty($conf->global->MAIN_ECM_DISABLE_JS)) $arrayofjs[]="includes/jquery/plugins/jqueryFileTree/jqueryFileTree.js";
|
||||
|
||||
$moreheadjs.='<script type="text/javascript">'."\n";
|
||||
@ -1438,6 +1432,9 @@ if (count($object->records) > 0)
|
||||
//print '<input type="submit" class="button" name="previewwebsite" target="tab'.$website.'" value="'.$langs->trans("ViewSiteInNewTab").'">';
|
||||
$htmltext =$langs->trans("SetHereVirtualHost", $dataroot);
|
||||
$htmltext.='<br>';
|
||||
$htmltext.='<br>';
|
||||
$htmltext.=$langs->trans("YouCanAlsoTestWithPHPS", $dataroot);
|
||||
$htmltext.='<br>';
|
||||
$htmltext.='<br>'.$langs->trans("CheckVirtualHostPerms", $langs->transnoentitiesnoconv("ReadPerm"), DOL_DOCUMENT_ROOT);
|
||||
$htmltext.='<br>'.$langs->trans("CheckVirtualHostPerms", $langs->transnoentitiesnoconv("WritePerm"), DOL_DATA_ROOT);
|
||||
print $form->textwithpicto('', $htmltext, 1, 'help', '', 0, 2, 'helpvirtualhost');
|
||||
@ -2000,7 +1997,7 @@ if ($action == 'editmeta' || $action == 'createcontainer')
|
||||
|
||||
if ($action != 'createcontainer')
|
||||
{
|
||||
print '<tr><td class="titlefield fieldrequired">';
|
||||
print '<tr><td class="titlefield">';
|
||||
print $langs->trans('IDOfPage');
|
||||
print '</td><td>';
|
||||
print $pageid;
|
||||
@ -2022,6 +2019,7 @@ if ($action == 'editmeta' || $action == 'createcontainer')
|
||||
|
||||
$type_container=$objectpage->type_container;
|
||||
$pageurl=$objectpage->pageurl;
|
||||
$pagealiasalt=$objectpage->aliasalt;
|
||||
$pagetitle=$objectpage->title;
|
||||
$pagedescription=$objectpage->description;
|
||||
$pagekeywords=$objectpage->keywords;
|
||||
@ -2029,29 +2027,33 @@ if ($action == 'editmeta' || $action == 'createcontainer')
|
||||
$pagehtmlheader=$objectpage->htmlheader;
|
||||
}
|
||||
if (GETPOST('WEBSITE_PAGENAME','alpha')) $pageurl=GETPOST('WEBSITE_PAGENAME','alpha');
|
||||
if (GETPOST('WEBSITE_ALIASALT','alpha')) $pagealiasalt=GETPOST('WEBSITE_ALIASALT','alpha');
|
||||
if (GETPOST('WEBSITE_TITLE','alpha')) $pagetitle=GETPOST('WEBSITE_TITLE','alpha');
|
||||
if (GETPOST('WEBSITE_DESCRIPTION','alpha')) $pagedescription=GETPOST('WEBSITE_DESCRIPTION','alpha');
|
||||
if (GETPOST('WEBSITE_KEYWORDS','alpha')) $pagekeywords=GETPOST('WEBSITE_KEYWORDS','alpha');
|
||||
if (GETPOST('WEBSITE_LANG','aZ09')) $pagelang=GETPOST('WEBSITE_LANG','aZ09');
|
||||
if (GETPOST('htmlheader','none')) $pagehtmlheader=GETPOST('htmlheader','none');
|
||||
|
||||
print '<tr><td class="titlefieldcreate fieldrequired">';
|
||||
print $langs->trans('WEBSITE_PAGENAME');
|
||||
print '</td><td>';
|
||||
print '<input type="text" class="flat minwidth300" name="WEBSITE_PAGENAME" value="'.dol_escape_htmltag($pageurl).'">';
|
||||
print '</td></tr>';
|
||||
|
||||
print '<tr><td class="titlefield fieldrequired">';
|
||||
print $langs->trans('WEBSITE_TYPE_CONTAINER');
|
||||
print '</td><td>';
|
||||
print $formwebsite->selectTypeOfContainer('WEBSITE_TYPE_CONTAINER', (GETPOST('WEBSITE_TYPE_CONTAINER')?GETPOST('WEBSITE_TYPE_CONTAINER'):'page'));
|
||||
print '</td></tr>';
|
||||
|
||||
print '<tr><td class="titlefield fieldrequired">';
|
||||
print $langs->trans('WEBSITE_PAGE_EXAMPLE');
|
||||
print '</td><td>';
|
||||
print $formwebsite->selectSampleOfContainer('sample', (GETPOST('sample')?GETPOST('sample'):'corporatehomepage'));
|
||||
print '</td></tr>';
|
||||
|
||||
print '<tr><td class="titlefieldcreate fieldrequired">';
|
||||
print $langs->trans('WEBSITE_PAGENAME');
|
||||
print '</td><td>';
|
||||
print '<input type="text" class="flat minwidth300" name="WEBSITE_PAGENAME" value="'.dol_escape_htmltag($pageurl).'">';
|
||||
print '</td></tr>';
|
||||
if ($action == 'createcontainer')
|
||||
{
|
||||
print '<tr><td class="titlefield fieldrequired">';
|
||||
print $langs->trans('WEBSITE_PAGE_EXAMPLE');
|
||||
print '</td><td>';
|
||||
print $formwebsite->selectSampleOfContainer('sample', (GETPOST('sample')?GETPOST('sample'):'corporatehomepage'));
|
||||
print '</td></tr>';
|
||||
}
|
||||
|
||||
print '<tr><td class="fieldrequired">';
|
||||
print $langs->trans('WEBSITE_TITLE');
|
||||
@ -2077,6 +2079,12 @@ if ($action == 'editmeta' || $action == 'createcontainer')
|
||||
print $formadmin->select_language($pagelang?$pagelang:$langs->defaultlang, 'WEBSITE_LANG', 0, null, '1');
|
||||
print '</td></tr>';
|
||||
|
||||
print '<tr><td class="titlefieldcreate">';
|
||||
print $langs->trans('WEBSITE_ALIASALT');
|
||||
print '</td><td>';
|
||||
print '<input type="text" class="flat minwidth300" name="WEBSITE_ALIASALT" value="'.dol_escape_htmltag($pagealiasalt).'">';
|
||||
print '</td></tr>';
|
||||
|
||||
print '<tr><td class="tdhtmlheader tdtop">';
|
||||
$htmlhelp=$langs->trans("EditTheWebSiteForACommonHeader").'<br><br>';
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user