424 lines
11 KiB
PHP
424 lines
11 KiB
PHP
|
|
<?php
|
||
|
|
/**
|
||
|
|
* @version $Id: admin.templates.html.php 10002 2008-02-08 10:56:57Z willebil $
|
||
|
|
* @package Joomla
|
||
|
|
* @subpackage Templates
|
||
|
|
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
|
||
|
|
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL, see LICENSE.php
|
||
|
|
* Joomla! is free software. This version may have been modified pursuant
|
||
|
|
* to the GNU General Public License, and as distributed it includes or
|
||
|
|
* is derivative of works licensed under the GNU General Public License or
|
||
|
|
* other free or open source software licenses.
|
||
|
|
* See COPYRIGHT.php for copyright notices and details.
|
||
|
|
*/
|
||
|
|
|
||
|
|
// no direct access
|
||
|
|
defined( '_VALID_MOS' ) or die( 'Restricted access' );
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @package Joomla
|
||
|
|
* @subpackage Templates
|
||
|
|
*/
|
||
|
|
class HTML_templates {
|
||
|
|
/**
|
||
|
|
* @param array An array of data objects
|
||
|
|
* @param object A page navigation object
|
||
|
|
* @param string The option
|
||
|
|
*/
|
||
|
|
function showTemplates( &$rows, &$pageNav, $option, $client ) {
|
||
|
|
global $my, $mosConfig_live_site;
|
||
|
|
|
||
|
|
if ( isset( $row->authorUrl) && $row->authorUrl != '' ) {
|
||
|
|
$row->authorUrl = str_replace( 'http://', '', $row->authorUrl );
|
||
|
|
}
|
||
|
|
|
||
|
|
mosCommonHTML::loadOverlib();
|
||
|
|
?>
|
||
|
|
<script language="Javascript">
|
||
|
|
<!--
|
||
|
|
function showInfo(name, dir) {
|
||
|
|
var pattern = /\b \b/ig;
|
||
|
|
name = name.replace(pattern,'_');
|
||
|
|
name = name.toLowerCase();
|
||
|
|
if (document.adminForm.doPreview.checked) {
|
||
|
|
var src = '<?php echo $mosConfig_live_site . ($client == 'admin' ? '/administrator' : '');?>/templates/'+dir+'/template_thumbnail.png';
|
||
|
|
var html=name;
|
||
|
|
html = '<br /><img border="1" src="'+src+'" name="imagelib" alt="No preview available" width="206" height="145" />';
|
||
|
|
return overlib(html, CAPTION, name)
|
||
|
|
} else {
|
||
|
|
return false;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
-->
|
||
|
|
</script>
|
||
|
|
|
||
|
|
<form action="index2.php" method="post" name="adminForm">
|
||
|
|
<table class="adminheading">
|
||
|
|
<tr>
|
||
|
|
<th class="templates">
|
||
|
|
Template Manager <small><small>[ <?php echo $client == 'admin' ? 'Administrator' : 'Site';?> ]</small></small>
|
||
|
|
</th>
|
||
|
|
<td align="right" nowrap="nowrap">
|
||
|
|
Preview Template
|
||
|
|
</td>
|
||
|
|
<td align="right">
|
||
|
|
<input type="checkbox" name="doPreview" checked="checked"/>
|
||
|
|
</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
<table class="adminlist">
|
||
|
|
<tr>
|
||
|
|
<th width="5%">#</th>
|
||
|
|
<th width="5%"> </th>
|
||
|
|
<th width="25%" class="title">
|
||
|
|
Name
|
||
|
|
</th>
|
||
|
|
<?php
|
||
|
|
if ( $client == 'admin' ) {
|
||
|
|
?>
|
||
|
|
<th width="10%">
|
||
|
|
Default
|
||
|
|
</th>
|
||
|
|
<?php
|
||
|
|
} else {
|
||
|
|
?>
|
||
|
|
<th width="5%">
|
||
|
|
Default
|
||
|
|
</th>
|
||
|
|
<th width="5%">
|
||
|
|
Assigned
|
||
|
|
</th>
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
<th width="20%" align="left">
|
||
|
|
Author
|
||
|
|
</th>
|
||
|
|
<th width="5%" align="center">
|
||
|
|
Version
|
||
|
|
</th>
|
||
|
|
<th width="10%" align="center">
|
||
|
|
Date
|
||
|
|
</th>
|
||
|
|
<th width="20%" align="left">
|
||
|
|
Author URL
|
||
|
|
</th>
|
||
|
|
</tr>
|
||
|
|
<?php
|
||
|
|
$k = 0;
|
||
|
|
for ( $i=0, $n = count( $rows ); $i < $n; $i++ ) {
|
||
|
|
$row = &$rows[$i];
|
||
|
|
?>
|
||
|
|
<tr class="<?php echo 'row'. $k; ?>">
|
||
|
|
<td>
|
||
|
|
<?php echo $pageNav->rowNumber( $i ); ?>
|
||
|
|
</td>
|
||
|
|
<td>
|
||
|
|
<?php
|
||
|
|
if ( $row->checked_out && $row->checked_out != $my->id ) {
|
||
|
|
?>
|
||
|
|
|
||
|
|
<?php
|
||
|
|
} else {
|
||
|
|
?>
|
||
|
|
<input type="radio" id="cb<?php echo $i;?>" name="cid[]" value="<?php echo $row->directory; ?>" onClick="isChecked(this.checked);" />
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
</td>
|
||
|
|
<td>
|
||
|
|
<a href="#info" onmouseover="showInfo('<?php echo $row->name;?>','<?php echo $row->directory; ?>')" onmouseout="return nd();">
|
||
|
|
<?php echo $row->name;?>
|
||
|
|
</a>
|
||
|
|
</td>
|
||
|
|
<?php
|
||
|
|
if ( $client == 'admin' ) {
|
||
|
|
?>
|
||
|
|
<td align="center">
|
||
|
|
<?php
|
||
|
|
if ( $row->published == 1 ) {
|
||
|
|
?>
|
||
|
|
<img src="images/tick.png" alt="Published">
|
||
|
|
<?php
|
||
|
|
} else {
|
||
|
|
?>
|
||
|
|
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
</td>
|
||
|
|
<?php
|
||
|
|
} else {
|
||
|
|
?>
|
||
|
|
<td align="center">
|
||
|
|
<?php
|
||
|
|
if ( $row->published == 1 ) {
|
||
|
|
?>
|
||
|
|
<img src="images/tick.png" alt="Default">
|
||
|
|
<?php
|
||
|
|
} else {
|
||
|
|
?>
|
||
|
|
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
</td>
|
||
|
|
<td align="center">
|
||
|
|
<?php
|
||
|
|
if ( $row->assigned == 1 ) {
|
||
|
|
?>
|
||
|
|
<img src="images/tick.png" alt="Assigned" />
|
||
|
|
<?php
|
||
|
|
} else {
|
||
|
|
?>
|
||
|
|
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
</td>
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
<td>
|
||
|
|
<?php echo $row->authorEmail ? '<a href="mailto:'. $row->authorEmail .'">'. $row->author .'</a>' : $row->author; ?>
|
||
|
|
</td>
|
||
|
|
<td align="center">
|
||
|
|
<?php echo $row->version; ?>
|
||
|
|
</td>
|
||
|
|
<td align="center">
|
||
|
|
<?php echo $row->creationdate; ?>
|
||
|
|
</td>
|
||
|
|
<td>
|
||
|
|
<a href="<?php echo substr( $row->authorUrl, 0, 7) == 'http://' ? $row->authorUrl : 'http://'.$row->authorUrl; ?>" target="_blank">
|
||
|
|
<?php echo $row->authorUrl; ?>
|
||
|
|
</a>
|
||
|
|
</td>
|
||
|
|
</tr>
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
</table>
|
||
|
|
<?php echo $pageNav->getListFooter(); ?>
|
||
|
|
|
||
|
|
<input type="hidden" name="option" value="<?php echo $option;?>" />
|
||
|
|
<input type="hidden" name="task" value="" />
|
||
|
|
<input type="hidden" name="boxchecked" value="0" />
|
||
|
|
<input type="hidden" name="hidemainmenu" value="0" />
|
||
|
|
<input type="hidden" name="client" value="<?php echo $client;?>" />
|
||
|
|
<input type="hidden" name="<?php echo josSpoofValue(); ?>" value="1" />
|
||
|
|
</form>
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @param string Template name
|
||
|
|
* @param string Source code
|
||
|
|
* @param string The option
|
||
|
|
*/
|
||
|
|
function editTemplateSource( $template, &$content, $option, $client ) {
|
||
|
|
global $mosConfig_absolute_path;
|
||
|
|
$template_path =
|
||
|
|
$mosConfig_absolute_path . ($client == 'admin' ? '/administrator':'') .
|
||
|
|
'/templates/' . $template . '/index.php';
|
||
|
|
?>
|
||
|
|
<form action="index2.php" method="post" name="adminForm">
|
||
|
|
<table cellpadding="1" cellspacing="1" border="0" width="100%">
|
||
|
|
<tr>
|
||
|
|
<td width="290"><table class="adminheading"><tr><th class="templates">Template HTML Editor</th></tr></table></td>
|
||
|
|
<td width="220">
|
||
|
|
<span class="componentheading">index.php is :
|
||
|
|
<b><?php echo is_writable($template_path) ? '<font color="green"> Writeable</font>' : '<font color="red"> Unwriteable</font>' ?></b>
|
||
|
|
</span>
|
||
|
|
</td>
|
||
|
|
<?php
|
||
|
|
if (mosIsChmodable($template_path)) {
|
||
|
|
if (is_writable($template_path)) {
|
||
|
|
?>
|
||
|
|
<td>
|
||
|
|
<input type="checkbox" id="disable_write" name="disable_write" value="1"/>
|
||
|
|
<label for="disable_write">Make unwriteable after saving</label>
|
||
|
|
</td>
|
||
|
|
<?php
|
||
|
|
} else {
|
||
|
|
?>
|
||
|
|
<td>
|
||
|
|
<input type="checkbox" id="enable_write" name="enable_write" value="1"/>
|
||
|
|
<label for="enable_write">Override write protection while saving</label>
|
||
|
|
</td>
|
||
|
|
<?php
|
||
|
|
} // if
|
||
|
|
} // if
|
||
|
|
?>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
<table class="adminform">
|
||
|
|
<tr><th><?php echo $template_path; ?></th></tr>
|
||
|
|
<tr><td><textarea style="width:100%;height:500px" cols="110" rows="25" name="filecontent" class="inputbox"><?php echo $content; ?></textarea></td></tr>
|
||
|
|
</table>
|
||
|
|
<input type="hidden" name="template" value="<?php echo $template; ?>" />
|
||
|
|
<input type="hidden" name="option" value="<?php echo $option;?>" />
|
||
|
|
<input type="hidden" name="task" value="" />
|
||
|
|
<input type="hidden" name="client" value="<?php echo $client;?>" />
|
||
|
|
<input type="hidden" name="<?php echo josSpoofValue(); ?>" value="1" />
|
||
|
|
</form>
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @param string Template name
|
||
|
|
* @param string Source code
|
||
|
|
* @param string The option
|
||
|
|
*/
|
||
|
|
function editCSSSource( $template, &$content, $option, $client ) {
|
||
|
|
global $mosConfig_absolute_path;
|
||
|
|
$css_path =
|
||
|
|
$mosConfig_absolute_path . ($client == 'admin' ? '/administrator' : '')
|
||
|
|
. '/templates/' . $template . '/css/template_css.css';
|
||
|
|
?>
|
||
|
|
<form action="index2.php" method="post" name="adminForm">
|
||
|
|
<table cellpadding="1" cellspacing="1" border="0" width="100%">
|
||
|
|
<tr>
|
||
|
|
<td width="280"><table class="adminheading"><tr><th class="templates">Template CSS Editor</th></tr></table></td>
|
||
|
|
<td width="260">
|
||
|
|
<span class="componentheading">template_css.css is :
|
||
|
|
<b><?php echo is_writable($css_path) ? '<font color="green"> Writeable</font>' : '<font color="red"> Unwriteable</font>' ?></b>
|
||
|
|
</span>
|
||
|
|
</td>
|
||
|
|
<?php
|
||
|
|
if (mosIsChmodable($css_path)) {
|
||
|
|
if (is_writable($css_path)) {
|
||
|
|
?>
|
||
|
|
<td>
|
||
|
|
<input type="checkbox" id="disable_write" name="disable_write" value="1"/>
|
||
|
|
<label for="disable_write">Make unwriteable after saving</label>
|
||
|
|
</td>
|
||
|
|
<?php
|
||
|
|
} else {
|
||
|
|
?>
|
||
|
|
<td>
|
||
|
|
<input type="checkbox" id="enable_write" name="enable_write" value="1"/>
|
||
|
|
<label for="enable_write">Override write protection while saving</label>
|
||
|
|
</td>
|
||
|
|
<?php
|
||
|
|
} // if
|
||
|
|
} // if
|
||
|
|
?>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
<table class="adminform">
|
||
|
|
<tr><th><?php echo $css_path; ?></th></tr>
|
||
|
|
<tr><td><textarea style="width:100%;height:500px" cols="110" rows="25" name="filecontent" class="inputbox"><?php echo $content; ?></textarea></td></tr>
|
||
|
|
</table>
|
||
|
|
<input type="hidden" name="template" value="<?php echo $template; ?>" />
|
||
|
|
<input type="hidden" name="option" value="<?php echo $option;?>" />
|
||
|
|
<input type="hidden" name="task" value="" />
|
||
|
|
<input type="hidden" name="client" value="<?php echo $client;?>" />
|
||
|
|
<input type="hidden" name="<?php echo josSpoofValue(); ?>" value="1" />
|
||
|
|
</form>
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @param string Template name
|
||
|
|
* @param string Menu list
|
||
|
|
* @param string The option
|
||
|
|
*/
|
||
|
|
function assignTemplate( $template, &$menulist, $option ) {
|
||
|
|
?>
|
||
|
|
<form action="index2.php" method="post" name="adminForm">
|
||
|
|
<table class="adminform">
|
||
|
|
<tr>
|
||
|
|
<th class="left" colspan="2">
|
||
|
|
Assign template <?php echo $template; ?> to menu items
|
||
|
|
</th>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td valign="top" align="left">
|
||
|
|
Page(s):
|
||
|
|
</td>
|
||
|
|
<td width="90%">
|
||
|
|
<?php echo $menulist; ?>
|
||
|
|
</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
<input type="hidden" name="template" value="<?php echo $template; ?>" />
|
||
|
|
<input type="hidden" name="option" value="<?php echo $option;?>" />
|
||
|
|
<input type="hidden" name="task" value="" />
|
||
|
|
<input type="hidden" name="<?php echo josSpoofValue(); ?>" value="1" />
|
||
|
|
</form>
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @param array
|
||
|
|
* @param string The option
|
||
|
|
*/
|
||
|
|
function editPositions( &$positions, $option ) {
|
||
|
|
$rows = 25;
|
||
|
|
$cols = 2;
|
||
|
|
$n = $rows * $cols;
|
||
|
|
?>
|
||
|
|
<form action="index2.php" method="post" name="adminForm">
|
||
|
|
<table class="adminheading">
|
||
|
|
<tr>
|
||
|
|
<th class="templates">
|
||
|
|
Module Positions
|
||
|
|
</th>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
|
||
|
|
<table class="adminlist">
|
||
|
|
<tr>
|
||
|
|
<?php
|
||
|
|
for ( $c = 0; $c < $cols; $c++ ) {
|
||
|
|
?>
|
||
|
|
<th width="25">
|
||
|
|
#
|
||
|
|
</th>
|
||
|
|
<th align="left">
|
||
|
|
Position
|
||
|
|
</th>
|
||
|
|
<th align="left">
|
||
|
|
Description
|
||
|
|
</th>
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
</tr>
|
||
|
|
<?php
|
||
|
|
$i = 1;
|
||
|
|
for ( $r = 0; $r < $rows; $r++ ) {
|
||
|
|
?>
|
||
|
|
<tr>
|
||
|
|
<?php
|
||
|
|
for ( $c = 0; $c < $cols; $c++ ) {
|
||
|
|
?>
|
||
|
|
<td>(<?php echo $i; ?>)</td>
|
||
|
|
<td>
|
||
|
|
<input type="text" name="position[<?php echo $i; ?>]" value="<?php echo @$positions[$i-1]->position; ?>" size="10" maxlength="10" />
|
||
|
|
</td>
|
||
|
|
<td>
|
||
|
|
<input type="text" name="description[<?php echo $i; ?>]" value="<?php echo htmlspecialchars( @$positions[$i-1]->description ); ?>" size="50" maxlength="255" />
|
||
|
|
</td>
|
||
|
|
<?php
|
||
|
|
$i++;
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
</tr>
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
</table>
|
||
|
|
<input type="hidden" name="option" value="<?php echo $option;?>" />
|
||
|
|
<input type="hidden" name="task" value="" />
|
||
|
|
<input type="hidden" name="<?php echo josSpoofValue(); ?>" value="1" />
|
||
|
|
</form>
|
||
|
|
<?php
|
||
|
|
}
|
||
|
|
}
|
||
|
|
?>
|