diff --git a/main/admin/configure_homepage.php b/main/admin/configure_homepage.php index 39b8f52f59..1c88674ec4 100644 --- a/main/admin/configure_homepage.php +++ b/main/admin/configure_homepage.php @@ -1,4 +1,4 @@ -"),strip_tags(stripslashes($_POST['notice_text']),''))); - + $notice_text=trim(str_replace(array("\r","\n"),array("","
"),strip_tags(stripslashes($_POST['notice_text']),'
'))); if(empty($notice_title)) { $errorMsg=get_lang('PleaseEnterNoticeTitle'); @@ -147,22 +187,30 @@ if(!empty($action)) { $errorMsg=get_lang('PleaseEnterNoticeText'); } - elseif(!is_writable('../../home/home_notice.html')) + // Write + if(file_exists($homep.$noticef.'_'.$lang.$ext)) { - $errorMsg=get_lang('HomePageFilesNotWritable'); + if(is_writable($homep.$noticef.'_'.$lang.$ext)) + { + $fp=fopen($homep.$noticef.'_'.$lang.$ext,"w"); + fputs($fp,"$notice_title
\n$notice_text"); + fclose($fp); + } + else + { + $errorMsg.="
\n".get_lang('HomePageFilesNotWritable'); + } } - else + else //File does not exist { - $fp=fopen('../../home/home_notice.html','w'); - + $fp=fopen($homep.$noticef.'_'.$lang.$ext,"w"); fputs($fp,"$notice_title
\n$notice_text"); - fclose($fp); - } + } break; case 'edit_news': - $s_languages_news=$_POST["news_languages"]; - //echo "langue choisie : ".$s_languages_news; + //Filter + //$s_languages_news=$_POST["news_languages"]; if (api_get_setting('wcag_anysurfer_public_pages')=='true') { $home_news=WCAG_rendering::prepareXHTML(); @@ -170,12 +218,12 @@ if(!empty($action)) { $home_news=trim(stripslashes($_POST['home_news'])); } - + //Write if($s_languages_news!="all"){ - if(file_exists("'../../home/home_news_".$s_languages_news.".html")){ - if(is_writable("../../home/home_news_".$s_languages_news.".html")){ - $fp=fopen("../../home/home_news_".$s_languages_news.".html","w"); + if(file_exists($homep.$newsf.'_'.$s_languages_news.$ext)){ + if(is_writable($homep.$newsf.'_'.$s_languages_news.$ext)){ + $fp=fopen($homep.$newsf.'_'.$s_languages_news.$ext,"w"); fputs($fp,$home_news); fclose($fp); } @@ -185,23 +233,22 @@ if(!empty($action)) } //File not exists else{ - $fp=fopen("../../home/home_news_".$s_languages_news.".html","w"); + $fp=fopen($homep.$newsf.'_'.$s_languages_news.$ext,"w"); fputs($fp,$home_news); fclose($fp); } } - - //we update all the news file - else{ + else //we update all the news file + { $_languages=api_get_languages(); foreach($_languages["name"] as $key => $value){ $english_name=$_languages["folder"][$key]; - if(file_exists("'../../home/home_news_".$english_name.".html")){ - if(is_writable("../../home/home_news_".$english_name.".html")){ - $fp=fopen("../../home/home_news_".$english_name.".html","w"); + if(file_exists($homep.$newsf.'_'.$english_name.$ext)){ + if(is_writable($homep.$newsf.'_'.$english_name.$ext)){ + $fp=fopen($homep.$newsf.'_'.$english_name.$ext,"w"); fputs($fp,$home_news); fclose($fp); } @@ -211,7 +258,7 @@ if(!empty($action)) } //File not exists else{ - $fp=fopen("../../home/home_news_".$english_name.".html","w"); + $fp=fopen($homep.$newsf.'_'.$english_name.$ext,"w"); fputs($fp,$home_news); fclose($fp); } @@ -242,7 +289,7 @@ if(!empty($action)) $link_url='http://'.$link_url; } - if(!is_writable('../../home/home_menu_'.$menu_language.'.html')) + if(!is_writable($homep.$menuf.'_'.$lang.$ext)) { $errorMsg=get_lang('HomePageFilesNotWritable'); } @@ -264,13 +311,13 @@ if(!empty($action)) } // If the typical language suffix is not found in the file name, // replace the ".html" suffix by "_en.html" or the active menu language - if(!strstr($filename,'_'.$menu_language.'.html')) + if(!strstr($filename,'_'.$lang.$ext)) { - $filename=str_replace('.html','_'.$menu_language.'.html',$filename); + $filename=str_replace($ext,'_'.$lang.$ext,$filename); } // Get the contents of home_menu_en.html (or active menu language // version) into $home_menu as an array of one entry per line - $home_menu=file('../../home/home_menu_'.$menu_language.'.html'); + $home_menu=file($homep.$menuf.'_'.$lang.$ext); // Prepare place to insert the new link into (default is end of file) if($insert_where < -1 || $insert_where > (sizeof($home_menu) - 1)) { @@ -284,12 +331,12 @@ if(!empty($action)) // If the given link url is empty, then replace the link url by a link to the link file created if(empty($link_url)) { - $link_url=$_configuration['root_web'].'index.php?include='.urlencode($filename); + $link_url=api_get_path(WEB_PATH).'index.php?include='.urlencode($filename); // If the file doesn't exist, then create it and // fill it with default text - if(!file_exists($_configuration['root_sys'].'home/'.$filename)) + if(!file_exists(api_get_path(SYS_PATH).'home/'.$filename)) { - $fp=@fopen($_configuration['root_sys'].'home/'.$filename,'w'); + $fp=@fopen(api_get_path(SYS_PATH).'home/'.$filename,'w'); if($fp) { @@ -303,7 +350,7 @@ if(!empty($action)) // write to it (if the file doesn't exist, create it) if($action == 'edit_link' && !empty($link_html)) { - $fp=@fopen($_configuration['root_sys'].'home/'.$filename,'w'); + $fp=@fopen(api_get_path(SYS_PATH).'home/'.$filename,'w'); if($fp) { @@ -337,12 +384,26 @@ if(!empty($action)) } // Re-build the file from the home_menu array $home_menu=implode("\n",$home_menu); - - $fp=fopen('../../home/home_menu_'.$menu_language.'.html','w'); - - fputs($fp,$home_menu); - - fclose($fp); + // Write + if(file_exists($homep.$menuf.'_'.$lang.$ext)) + { + if(is_writable($homep.$menuf.'_'.$lang.$ext)) + { + $fp=fopen($homep.$menuf.'_'.$lang.$ext,"w"); + fputs($fp,$home_menu); + fclose($fp); + } + else + { + $errorMsg=get_lang('HomePageFilesNotWritable'); + } + } + else //File does not exist + { + $fp=fopen($homep.$menuf.'_'.$lang.$ext,"w"); + fputs($fp,$home_menu); + fclose($fp); + } } break; } //end of switch($action) @@ -366,7 +427,7 @@ if(!empty($action)) // link and re-writing the array to the file $link_index=intval($_GET['link_index']); - $home_menu=file('../../home/home_menu_'.$menu_language.'.html'); + $home_menu=file($homep.$menuf.'_'.$lang.$ext); foreach($home_menu as $key=>$enreg) { @@ -382,7 +443,7 @@ if(!empty($action)) $home_menu=implode("\n",$home_menu); - $fp=fopen('../../home/home_menu_'.$menu_language.'.html','w'); + $fp=fopen($homep.$menuf.'_'.$lang.$ext,'w'); fputs($fp,$home_menu); @@ -393,44 +454,99 @@ if(!empty($action)) break; case 'edit_top': // This request is only the preparation for the update of the home_top - $home_top=file('../../home/home_top.html'); - - $home_top=implode('',$home_top); + $home_top = ''; + if(is_file($homep.$topf.'_'.$lang.$ext) + && is_readable($homep.$topf.'_'.$lang.$ext)) + { + $home_top=file_get_contents($homep.$topf.'_'.$lang.$ext); + } + elseif(is_file($homep.$topf.$lang.$ext) + && is_readable($homep.$topf.$lang.$ext)) + { + $home_top=file_get_contents($homep.$topf.$lang.$ext); + } + else + { + $errorMsg=get_lang('HomePageFilesNotReadable'); + } break; case 'edit_notice': // This request is only the preparation for the update of the home_notice - $home_notice=file('../../home/home_notice.html'); - + $home_notice = ''; + if(is_file($homep.$noticef.'_'.$lang.$ext) + && is_readable($homep.$noticef.'_'.$lang.$ext)) + { + $home_notice=file($homep.$noticef.'_'.$lang.$ext); + } + elseif(is_file($homep.$noticef.$lang.$ext) + && is_readable($homep.$noticef.$lang.$ext)) + { + $home_notice=file($homep.$noticef.$lang.$ext); + } + else + { + $errorMsg=get_lang('HomePageFilesNotReadable'); + } $notice_title=strip_tags($home_notice[0]); $notice_text=strip_tags(str_replace('
',"\n",$home_notice[1]),'
'); break; case 'edit_news': // This request is the preparation for the update of the home_news page - if(file_exists("'../../home/home_news_".$menu_language.".html")){ - if(is_readable("../../home/home_news_".$menu_language.".html")){ - $home_news=file_get_contents("../../home/home_news_".$menu_language.".html","r"); - $home_news=implode('',$home_news); - } - else{ - $errorMsg=get_lang('HomePageFilesNotReadable'); - } + $home_news = ''; + if(is_file($homep.$newsf.'_'.$lang.$ext) + && is_readable($homep.$newsf.'_'.$lang.$ext)) + { + $home_news=file_get_contents($homep.$newsf.'_'.$lang.$ext); + // $home_news=file($homep.$newsf.$ext); + // $home_news=implode('',$home_news); } - //File not exists - else{ - $home_news=file_get_contents("../../home/home_news_".$menu_language.".html","r"); - $home_news=implode('',$home_news); + elseif(is_file($homep.$newsf.$lang.$ext) + && is_readable($homep.$newsf.$lang.$ext)) + { + $home_news=file_get_contents($homep.$newsf.$lang.$ext); } + else + { + $errorMsg=get_lang('HomePageFilesNotReadable'); + } break; case 'insert_link': // This request is the preparation for the addition of an item in home_menu - $home_menu=file('../../home/home_menu_'.$menu_language.'.html'); + $home_menu = ''; + if(is_file($homep.$menuf.'_'.$lang.$ext) + && is_readable($homep.$menuf.'_'.$lang.$ext)) + { + $home_menu=file($homep.$menuf.'_'.$lang.$ext); + } + elseif(is_file($homep.$menuf.$lang.$ext) + && is_readable($homep.$menuf.$lang.$ext)) + { + $home_menu=file($homep.$menuf.$lang.$ext); + } + else + { + $errorMsg=get_lang('HomePageFilesNotReadable'); + } break; case 'edit_link': // This request is the preparation for the edition of the links array - $link_index=intval($_GET['link_index']); - - $home_menu=file('../../home/home_menu_'.$menu_language.'.html'); - + $home_menu = ''; + if(is_file($homep.$menuf.'_'.$lang.$ext) + && is_readable($homep.$menuf.'_'.$lang.$ext)) + { + $home_menu=file($homep.$menuf.'_'.$lang.$ext); + } + elseif(is_file($homep.$menuf.$lang.$ext) + && is_readable($homep.$menuf.$lang.$ext)) + { + $home_menu=file($homep.$menuf.$lang.$ext); + } + else + { + $errorMsg=get_lang('HomePageFilesNotReadable'); + } + + $link_index=intval($_GET['link_index']); $target_blank=false; $link_name=''; $link_url=''; @@ -467,7 +583,7 @@ if(!empty($action)) if(!strstr($filename,'/') && strstr($filename,'.html')) { // Get oonly the contents of the link file - $link_html=file($_configuration['root_web'].'home/'.$filename); + $link_html=file(api_get_path(SYS_PATH).'home/'.$filename); $link_html=implode('',$link_html); $link_url=''; } @@ -502,7 +618,7 @@ switch($action){ if(!empty($link)) { // $link is only set in case of action=open_link and is filtered - include('../../home/'.$link); + include($homep.$link); } break; case 'edit_notice': @@ -649,29 +765,13 @@ switch($action){ case 'edit_news': if($action == 'edit_top') { - $name="home_top"; + $name= $topf; $open = $home_top; } else { - $name="home_news"; - $user_selected_language = $_SESSION["_user"]["language"]; - if(!file_exists("../../home/home_news_".$user_selected_language.".html")){ - $platform_language=api_get_setting("platformLanguage"); - $open='../../home/home_news_'.$platform_language.'.html'; - } - else{ - $open='../../home/home_news_'.$user_selected_language.'.html'; - } - - if(isset($_SESSION["user_language_choice"])){ - $language=$user_selected_language; - } - else{ - $language=api_get_setting("platformLanguage"); - } - - $open=file_get_contents($open); + $name = $newsf; + $open=file_get_contents($homep.$newsf.'_'.$lang.$ext); } // print form header + important formSent attribute @@ -755,8 +855,14 @@ switch($action){ @@ -795,20 +901,13 @@ switch($action){