}
?>
- <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" name="form">
- <div class="input-form">
- <div class="row">
- <span class="required" title="<?php echo _AT('required_field'); ?>">*</span><label for="sitename"><?php echo _AT('site_name'); ?></label><br />
- <input type="text" name="site_name" size="40" maxlength="60" id="sitename" value="<?php if (!empty($_POST['site_name'])) { echo $stripslashes(htmlspecialchars($_POST['site_name'])); } else { echo $_config['site_name']; } ?>" />
- </div>
-
- <div class="row">
- <label for="home_url"><?php echo _AT('home_url'); ?></label><br />
-
- <input type="text" name="home_url" size="50" maxlength="60" id="home_url" value="<?php if (!empty($_POST['home_url'])) { echo $stripslashes(htmlspecialchars($_POST['home_url'])); } else { echo $_config['home_url']; } ?>" />
- </div>
-
- <div class="row">
- <label for="default_lang"><?php echo _AT('default_language'); ?></label><br />
-
- <?php if (!empty($_POST['default_language'])) {
- $select_lang = $_POST['default_language'];
- } else {
- $select_lang = $_config['default_language'];
- } ?>
- <?php if ($disabled): ?>
- <select name="default_language" id="default_lang" disabled="disabled"><option><?php echo $select_lang; ?></option></select>
- <?php else: ?>
- <?php $languageManager->printDropdown($select_lang, 'default_language', 'default_lang'); ?>
- <?php endif; ?>
- </div>
-
- <div class="row">
- <span class="required" title="<?php echo _AT('required_field'); ?>">*</span><label for="cemail"><?php echo _AT('contact_email'); ?></label><br />
- <input type="text" name="contact_email" id="cemail" size="40" value="<?php if (!empty($_POST['email'])) { echo $stripslashes(htmlspecialchars($_POST['email'])); } else { echo $_config['contact_email']; } ?>" />
- </div>
-
- <div class="row">
- <label for="time_zone"><?php echo _AT('time_zone'); ?></label><br />
-
- <?php
-
-
- // Replace this hack to use the PHP timezone functions when the PHP requirement is raised to 5.3
- global $utc_timezones; // set in include/lib/constants.inc.php
- $local_offset = ((date(Z)/3600));
- echo '<select name="time_zone" id="time_zone">';
- echo '<option value="0">'._AT('none').'</option>';
- foreach ($utc_timezones as $zone => $offset){
- if(($offset[1]) == $_config['time_zone']){
- echo '<option value="'.($offset[1]).'" selected="selected">'.$offset[1].'</option>';
- }else{
- echo '<option value="'.($offset[1]).'">'.$offset[1].'</option>';
-
- }
- }
- echo "</select>";
-
-
- //echo '<input type="text" name="time_zone" value="'.$_config['time_zone'].'" size="5" maxlength="5"/> ';
-
- // If PHP 5+ generate a list of timezones
- /*
- if(phpversion() >= 5){
- $timezone_names = timezone_identifiers_list();
- }else{
- // if less than PHP version 5, read a text file to generate the menu
- $timezone_names = file("timezones.txt");
- }
-
- echo '<select name="time_zone">';
- foreach($timezone_names as $timezone_name){
- if($timezone_name == $_config{'time_zone'}){
- $selected = ' selected="selected"';
- }
- echo '<option'.$selected.'>'.$timezone_name.'</option>';
- $selected = '';
- }
- echo '</select>';
- */
- echo AT_date(_AT('server_date_format'), '', AT_DATE_MYSQL_DATETIME);
- ?>
- </div>
-
- <div class="row">
- <label for="maxfile"><?php echo _AT('maximum_file_size'); ?></label> (<?php echo _AT('default'); ?>: <?php echo $_config_defaults['max_file_size']; ?>)<br />
- <input type="text" size="10" name="max_file_size" id="maxfile" value="<?php if (!empty($_POST['max_file_size'])) { echo $stripslashes(htmlspecialchars($_POST['max_file_size'])); } else { echo $_config['max_file_size']; } ?>" /> <?php echo _AT('bytes'); ?>
- </div>
-
- <div class="row">
- <label for="maxcourse"><?php echo _AT('maximum_course_size'); ?></label> (<?php echo _AT('default'); ?>: <?php echo $_config_defaults['max_course_size']; ?>)<br />
- <input type="text" size="10" name="max_course_size" id="maxcourse" value="<?php if (!empty($_POST['max_course_size'])) { echo $stripslashes(htmlspecialchars($_POST['max_course_size'])); } else { echo $_config['max_course_size']; } ?>" /> <?php echo _AT('bytes'); ?>
- </div>
-
- <div class="row">
- <label for="float"><?php echo _AT('maximum_course_float'); ?></label> (<?php echo _AT('default'); ?>: <?php echo $_config_defaults['max_course_float']; ?>)<br />
- <input type="text" size="10" name="max_course_float" id="float" value="<?php if (!empty($_POST['max_course_float'])) { echo $stripslashes(htmlspecialchars($_POST['max_course_float'])); } else { echo $_config['max_course_float']; } ?>" /> <?php echo _AT('bytes'); ?>
- </div>
-
- <div class="row">
- <label for="maximum_login_attempt"><?php echo _AT('maximum_login_attempt'); ?></label> (<?php echo _AT('default'); ?>: <?php echo $_config_defaults['max_login']; ?>)<br />
- <input type="text" size="10" name="max_login" id="maximum_login_attempt" value="<?php if (!empty($_POST['max_login'])) { echo $stripslashes(htmlspecialchars($_POST['max_login'])); } else { echo $_config['max_login']; } ?>" /> <?php echo _AT('times'); ?>
- </div>
-
- <div class="row">
- <?php echo _AT('display_name_format'); ?> (<?php echo _AT('default'); ?>: <?php echo _AT($display_name_formats[$_config_defaults['display_name_format']], _AT('login_name'), _AT('first_name'), _AT('second_name'), _AT('last_name')); ?>)<br />
- <?php foreach ($display_name_formats as $key => $value): ?>
- <input type="radio" name="display_name_format" value="<?php echo $key; ?>" id="dnf<?php echo $key; ?>" <?php if ($_config['display_name_format'] == $key) { echo 'checked="checked"'; }?> /><label for="dnf<?php echo $key; ?>"><?php echo _AT($value, _AT('login_name'), _AT('first_name'), _AT('second_name'), _AT('last_name')); ?></label><br />
- <?php endforeach; ?>
- </div>
-
- <div class="row">
- <?php echo _AT('master_list_authentication'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['master_list'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="master_list" value="1" id="ml_y" <?php if ($_config['master_list']) { echo 'checked="checked"'; }?> /><label for="ml_y"><?php echo _AT('enable'); ?></label>
-
- <input type="radio" name="master_list" value="0" id="ml_n" <?php if(!$_config['master_list']) { echo 'checked="checked"'; }?> /><label for="ml_n"><?php echo _AT('disable'); ?></label>
- </div>
- <div class="row">
- <?php echo _AT('allow_registration'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['allow_registration'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="allow_registration" value="1" id="reg_y" <?php if($_config['allow_registration']) { echo 'checked="checked"'; }?> /><label for="reg_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="allow_registration" value="0" id="reg_n" <?php if(!$_config['allow_registration']) { echo 'checked="checked"'; }?> /><label for="reg_n"><?php echo _AT('disable'); ?></label>
- </div>
- <div class="row">
- <?php echo _AT('allow_browse'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['allow_browse'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="allow_browse" value="1" id="browse_y" <?php if($_config['allow_browse']) { echo 'checked="checked"'; }?> /><label for="browse_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="allow_browse" value="0" id="browse_n" <?php if(!$_config['allow_browse']) { echo 'checked="checked"'; }?> /><label for="browse_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <?php echo _AT('allow_instructor_registration'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['allow_instructor_registration'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="allow_instructor_registration" value="1" id="enrollreg_y" <?php if($_config['allow_instructor_registration']) { echo 'checked="checked"'; }?> /><label for="enrollreg_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="allow_instructor_registration" value="0" id="enrollreg_n" <?php if(!$_config['allow_instructor_registration']) { echo 'checked="checked"'; }?> /><label for="enrollreg_n"><?php echo _AT('disable'); ?></label>
- </div>
- <div class="row">
- <?php echo _AT('use_captcha'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['use_captcha'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <?php if (extension_loaded('gd')): ?>
- <input type="radio" name="use_captcha" value="1" id="use_captcha_y" <?php if($_config['use_captcha']) { echo 'checked="checked"'; }?> /><label for="use_captcha_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="use_captcha" value="0" id="use_captcha_n" <?php if(!$_config['use_captcha']) { echo 'checked="checked"'; }?> /><label for="use_captcha_n"><?php echo _AT('disable'); ?></label>
- <?php else: ?>
- <input type="radio" name="use_captcha" value="1" id="use_captcha_y" disabled="disabled" /><label for="use_captcha_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="use_captcha" value="0" id="use_captcha_n" checked="checked" /><label for="use_captcha_n"><?php echo _AT('disable'); ?></label>
- <?php endif; ?>
- </div>
- <div class="row">
- <?php echo _AT('allow_unenroll'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['allow_unenroll'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="allow_unenroll" value="1" id="ene_y" <?php if($_config['allow_unenroll']) { echo 'checked="checked"'; }?> /><label for="ene_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="allow_unenroll" value="0" id="ene_n" <?php if(!$_config['allow_unenroll']) { echo 'checked="checked"'; }?> /><label for="ene_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <?php echo _AT('require_email_confirmation'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['email_confirmation'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="email_confirmation" value="1" id="ec_y" <?php if ($_config['email_confirmation']) { echo 'checked="checked"'; }?> /><label for="ec_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="email_confirmation" value="0" id="ec_n" <?php if(!$_config['email_confirmation']) { echo 'checked="checked"'; }?> /><label for="ec_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <?php echo _AT('allow_instructor_requests'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['allow_instructor_requests'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="allow_instructor_requests" value="1" id="air_y" <?php if($_config['allow_instructor_requests']) { echo 'checked="checked"'; }?> /><label for="air_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="allow_instructor_requests" value="0" id="air_n" <?php if(!$_config['allow_instructor_requests']) { echo 'checked="checked"'; }?> /><label for="air_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <?php echo _AT('instructor_request_email_notification'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['email_notification'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="email_notification" value="1" id="en_y" <?php if ($_config['email_notification']) { echo 'checked="checked"'; }?> /><label for="en_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="email_notification" value="0" id="en_n" <?php if(!$_config['email_notification']) { echo 'checked="checked"'; }?> /><label for="en_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <?php echo _AT('auto_approve_instructors'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['auto_approve_instructors'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="auto_approve_instructors" value="1" id="aai_y" <?php if($_config['auto_approve_instructors']) { echo 'checked="checked"'; }?> /><label for="aai_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="auto_approve_instructors" value="0" id="aai_n" <?php if(!$_config['auto_approve_instructors']) { echo 'checked="checked"'; }?> /><label for="aai_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <?php echo _AT('theme_specific_categories'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['theme_categories'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="theme_categories" value="1" id="tc_y" <?php if($_config['theme_categories']) { echo 'checked="checked"'; }?> /><label for="tc_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="theme_categories" value="0" id="tc_n" <?php if(!$_config['theme_categories']) { echo 'checked="checked"'; }?> /><label for="tc_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <?php echo _AT('user_contributed_notes'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['user_notes'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="user_notes" value="1" id="un_y" <?php if($_config['user_notes']) { echo 'checked="checked"'; }?> /><label for="un_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="user_notes" value="0" id="un_n" <?php if(!$_config['user_notes']) { echo 'checked="checked"'; }?> /><label for="un_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <label for="ext"><?php echo _AT('illegal_file_extensions'); ?></label><br />
- <textarea name="illegal_extentions" cols="24" id="ext" rows="2" class="formfield" ><?php if ($_config['illegal_extentions']) { echo str_replace('|',' ',$_config['illegal_extentions']); }?></textarea>
- </div>
-
- <div class="row">
- <label for="cache"><?php echo _AT('cache_directory'); ?></label><br />
- <input type="text" name="cache_dir" id="cache" size="40" value="<?php if (!empty($_POST['cache_dir'])) { echo $stripslashes(htmlspecialchars($_POST['cache_dir'])); } else { echo $_config['cache_dir']; } ?>" />
- </div>
-
- <div class="row">
- <label for="latex_server"><?php echo _AT('latex_server'); ?></label><br />
- <input type="text" name="latex_server" id="latex_server" size="40" value="<?php if (!empty($_POST['latex_server'])) { echo $stripslashes(htmlspecialchars($_POST['latex_server'])); } else { echo $_config['latex_server']; } ?>" />
- </div>
-
- <div class="row">
- <label for="course_backups"><?php echo _AT('course_backups'); ?></label> (<?php echo _AT('default'); ?>: <?php echo $_config_defaults['course_backups']; ?>)<br />
- <input type="text" size="2" name="course_backups" id="course_backups" value="<?php if (!empty($_POST['course_backups'])) { echo $stripslashes(htmlspecialchars($_POST['course_backups'])); } else { echo $_config['course_backups']; } ?>" />
- </div>
-
- <div class="row">
- <label for="sent_msgs_ttl"><?php echo _AT('sent_msgs_ttl_text'); ?></label> (<?php echo _AT('default'); ?>: <?php echo $_config_defaults['sent_msgs_ttl']; ?>)<br />
- <input type="text" size="3" name="sent_msgs_ttl" id="sent_msgs_ttl" value="<?php if (!empty($_POST['sent_msgs_ttl'])) { echo intval($_POST['sent_msgs_ttl']); } else { echo $_config['sent_msgs_ttl']; } ?>" />
- </div>
-
- <div class="row">
- <?php echo _AT('auto_check_new_version'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['check_version'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="check_version" value="1" id="cv_y" <?php if($_config['check_version']) { echo 'checked="checked"'; }?> /><label for="cv_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="check_version" value="0" id="cv_n" <?php if(!$_config['check_version']) { echo 'checked="checked"'; }?> /><label for="cv_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <?php echo _AT('file_storage_version_control'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['fs_versioning'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="fs_versioning" value="1" id="cf_y" <?php if($_config['fs_versioning']) { echo 'checked="checked"'; }?> /><label for="cf_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="fs_versioning" value="0" id="cf_n" <?php if(!$_config['fs_versioning']) { echo 'checked="checked"'; }?> /><label for="cf_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <input type="hidden" name="old_enable_mail_queue" value="<?php echo $_config['enable_mail_queue']; ?>" />
- <?php echo _AT('enable_mail_queue'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['enable_mail_queue'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <?php echo _AT('mail_queue_cron'); ?><br />
- <?php if (!$_config['last_cron'] || (time() - (int) $_config['last_cron'] > 2 * 60 * 60)): ?>
- <input type="radio" name="enable_mail_queue" value="1" disabled="disabled" id="mq_y" /><label for="mq_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="enable_mail_queue" value="0" id="mq_n" checked="checked" /><label for="mq_n"><?php echo _AT('disable'); ?></label>
- <?php else: ?>
- <input type="radio" name="enable_mail_queue" value="1" id="mq_y" <?php if($_config['enable_mail_queue']) { echo 'checked="checked"'; }?> /><label for="mq_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="enable_mail_queue" value="0" id="mq_n" <?php if(!$_config['enable_mail_queue']) { echo 'checked="checked"'; }?> /><label for="mq_n"><?php echo _AT('disable'); ?></label>
- <?php endif; ?>
- </div>
-
- <div class="row">
- <?php echo _AT('auto_install_languages'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['auto_install_languages'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <?php echo _AT('auto_install_languages_cron'); ?><br />
- <?php if (!$_config['last_cron'] || (time() - (int) $_config['last_cron'] > 2 * 60 * 60)): ?>
- <input type="radio" name="auto_install_languages" value="1" disabled="disabled" /><?php echo _AT('enable'); ?> <input type="radio" name="auto_install_languages" value="0" id="ai_n" checked="checked" /><label for="ai_n"><?php echo _AT('disable'); ?></label>
- <?php else: ?>
- <input type="radio" name="auto_install_languages" value="1" id="ai_y" <?php if($_config['auto_install_languages']) { echo 'checked="checked"'; }?> /><label for="ai_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="auto_install_languages" value="0" id="ai_n" <?php if(!$_config['auto_install_languages']) { echo 'checked="checked"'; }?> /><label for="ai_n"><?php echo _AT('disable'); ?></label>
- <?php endif; ?>
- </div>
-
- <div class="row">
- <?php echo _AT('pretty_url'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['pretty_url'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="pretty_url" value="1" id="pu_y" <?php if($_config['pretty_url']) { echo 'checked="checked"'; }?> onclick="apache_mod_rewrite_toggler(true);"/><label for="pu_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="pretty_url" value="0" id="pu_n" <?php if(!$_config['pretty_url']) { echo 'checked="checked"'; }?> onclick="apache_mod_rewrite_toggler(false);"/><label for="pu_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <?php echo _AT('course_dir_name'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['course_dir_name'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="course_dir_name" value="1" id="cdn_y" <?php if($_config['course_dir_name']) { echo 'checked="checked"'; }?> /><label for="cdn_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="course_dir_name" value="0" id="cdn_n" <?php if(!$_config['course_dir_name']) { echo 'checked="checked"'; }?> /><label for="cdn_n"><?php echo _AT('disable'); ?></label>
- </div>
-
- <div class="row">
- <?php echo _AT('apache_mod_rewrite'); ?><br />
- <?php if (function_exists('apache_get_modules') && in_array('mod_rewrite', apache_get_modules())): ?>
- <?php echo _AT('mod_rewrite'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['apache_mod_rewrite'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="apache_mod_rewrite" value="1" id="mr_y" <?php if($_config['apache_mod_rewrite']) { echo 'checked="checked"'; }?> /><label for="mr_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="apache_mod_rewrite" value="0" id="mr_n" <?php if(!$_config['apache_mod_rewrite']) { echo 'checked="checked"'; }?> /><label for="mr_n"><?php echo _AT('disable'); ?></label>
- <?php else: ?>
- <?php echo _AT('mod_rewrite'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['apache_mod_rewrite'] ? _AT('enable') : _AT('disable')); ?>)<br />
- <input type="radio" name="apache_mod_rewrite" value="1" id="mr_y" disabled="disabled" /><label for="mr_y"><?php echo _AT('enable'); ?></label> <input type="radio" name="apache_mod_rewrite" value="0" id="mr_n" checked="checked" /><label for="mr_n"><?php echo _AT('disable'); ?></label>
- <?php endif; ?>
- </div>
-
- <div class="row buttons">
- <input type="submit" name="submit" value="<?php echo _AT('save'); ?>" accesskey="s" />
- <input type="submit" name="cancel" value="<?php echo _AT('cancel'); ?>" />
- </div>
- </div>
- </form>
-
--
<script type="text/javascript">
function apache_mod_rewrite_toggler(enabled){
var obj_y = document.getElementById('mr_y');
<?php
+ $savant->assign('display_name_formats', $display_name_formats);
+ $savant->display('admin/system_preferences/config_edit.tmpl.php');
require(AT_INCLUDE_PATH.'footer.inc.php');
?>
}
$_config['just_social'] = $_POST['just_social'];
}
++
require(AT_INCLUDE_PATH.'header.inc.php');
if ($_config['check_version']) {
$msg->printFeedbacks('ATUTOR_UPDATE_AVAILABLE');
}
}
-
- ?>
-
- <div class="container" style="width: 40%; float: right; padding-top: 4px; padding-left: 10px;">
- <div class="input-form" style="width: 98%;">
- <div class="row">
- <h3><?php echo _AT('social_switch'); ?></h3>
- <p><?php echo _AT('social_switch_text'); ?></p>
- </div>
- <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
- <div class="row">
- <?php echo _AT('social_switch'); ?> (<?php echo _AT('default'); ?>: <?php echo ($_config_defaults['just_social'] ? _AT('just_social') : _AT('social_and_lms')); ?>)<br />
- <input type="radio" name="just_social" value="1" id="social_y" <?php if($_config['just_social']) { echo 'checked="checked"'; }?> /><label for="social_y"><?php echo _AT('just_social'); ?></label> <br /><input type="radio" name="just_social" value="0" id="social_n" <?php if(!$_config['just_social']) { echo 'checked="checked"'; }?> /><label for="social_n"><?php echo _AT('social_and_lms'); ?></label>
- </div>
-
- <div class="row buttons">
- <input type="submit" name="social_submit" value="<?php echo _AT('save'); ?>" />
- </div>
- </form>
-
- </div>
- <div class="input-form" style="width: 98%;">
- <div class="row">
- <h3><?php echo _AT('donate'); ?></h3>
- <p><?php echo _AT('donate_text'); ?></p>
- </div>
-
- <div style="text-align:center;">
- <a href="http://www.atutor.ca/payment/index.php?project=ATutor-Donation"><img src="<?php echo $_base_href; ?>/images/donate.gif" height="28" width="136" border="0" alt="<?php echo _AT('donate'); ?>" /></a><br /><br />
- </div>
- </div>
- <?php if ($_config['allow_instructor_requests'] && admin_authenticate(AT_ADMIN_PRIV_USERS, AT_PRIV_RETURN)): ?>
- <?php
- $sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."instructor_approvals";
+ if ($_config['allow_instructor_requests'] && admin_authenticate(AT_ADMIN_PRIV_USERS, AT_PRIV_RETURN)){
+ $sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."instructor_approvals";
$result = mysql_query($sql, $db);
$row = mysql_fetch_assoc($result);
- ?>
- <div class="input-form" style="width: 98%;">
- <form method="get" action="mods/_core/users/instructor_requests.php">
- <div class="row">
- <h3><?php echo _AT('instructor_requests'); ?></h3>
- <p><?php echo _AT('instructor_requests_text', $row['cnt']); ?></p>
- </div>
+ $instructor_row[] = $row;
+ $savant->assign('row_instructor', $instructor_row);
+ }
+
- <div class="row buttons">
- <input type="submit" name="submit" value="<?php echo _AT('view'); ?>" />
- </div>
- </form>
- </div>
- <?php endif; ?>
- <?php
- $update_server = "update.atutor.ca";
++$update_server = "update.atutor.ca";
+
++$file = fsockopen ($update_server, 80, $errno, $errstr, 15);
+
- $update_server = "update.atutor.ca";
++if ($file)
++{
++ // get patch list
++ $patch_folder = "http://" . $update_server . '/patch/' . str_replace('.', '_', VERSION) . '/';
-- $file = fsockopen ($update_server, 80, $errno, $errstr, 15);
++ $patch_list_xml = @file_get_contents($patch_folder . 'patch_list.xml');
-- if ($file)
++ if ($patch_list_xml)
{
-- // get patch list
-- $patch_folder = "http://" . $update_server . '/patch/' . str_replace('.', '_', VERSION) . '/';
--
-- $patch_list_xml = @file_get_contents($patch_folder . 'patch_list.xml');
++ require_once('../mods/_standard/patcher/classes/PatchListParser.class.php');
++ $patchListParser = new PatchListParser();
++ $patchListParser->parse($patch_list_xml);
++ $patch_list_array = $patchListParser->getMyParsedArrayForVersion(VERSION);
-- if ($patch_list_xml)
-- {
-- require_once('../mods/_standard/patcher/classes/PatchListParser.class.php');
-- $patchListParser = new PatchListParser();
-- $patchListParser->parse($patch_list_xml);
-- $patch_list_array = $patchListParser->getMyParsedArrayForVersion(VERSION);
--
-- if (count($patch_list_array)) {
-- foreach ($patch_list_array as $row_num => $patch) {
-- $patch_ids .= '\'' . $patch['atutor_patch_id'] . '\', ';
-- }
--
-- $sql = "select count(distinct atutor_patch_id) cnt_installed_patches from ".TABLE_PREFIX."patches " .
-- "where atutor_patch_id in (" . substr($patch_ids, 0, -2) .")".
-- " and status like '%Installed'";
--
-- $result = mysql_query($sql, $db) or die(mysql_error());
-- $row = mysql_fetch_assoc($result);
-
- $cnt = count($patch_list_array) - $row['cnt_installed_patches'];
-
- if ($cnt > 0)
- {
- ?>
- <div class="input-form" style="width: 98%;">
- <form method="get" action="mods/_standard/patcher/index_admin.php">
- <div class="row">
- <h3><?php echo _AT('available_patches'); ?></h3>
- <p><?php echo _AT('available_patches_text', $cnt); ?></p>
- </div>
-
- <div class="row buttons">
- <input type="submit" name="submit" value="<?php echo _AT('view'); ?>" />
- </div>
- </form>
- </div>
- <?php
- }
- }
- }
- }
-
- ?>
-
- <div class="input-form" style="width: 98%">
- <?php
- if (!isset($_config['db_size']) || ($_config['db_size_ttl'] < time())) {
- $_config['db_size'] = 0;
- $sql = 'SHOW TABLE STATUS';
- $result = mysql_query($sql, $db);
- while($row = mysql_fetch_assoc($result)) {
- $_config['db_size'] += $row['Data_length']+$row['Index_length'];
- }
-
- $sql = "REPLACE INTO ".TABLE_PREFIX."config VALUES ('db_size', '{$_config['db_size']}')";
- mysql_query($sql, $db);
-
- // get disk usage if we're on *nix
- if (DIRECTORY_SEPARATOR == '/') {
- $du = @shell_exec('du -sk '.escapeshellcmd(AT_CONTENT_DIR));
- if ($du) {
- $_config['du_size'] = (int) $du;
- $sql = "REPLACE INTO ".TABLE_PREFIX."config VALUES ('du_size', '{$_config['du_size']}')";
- mysql_query($sql, $db);
- }
- }
-
- $ttl = time() + 24 * 60 * 60; // every 1 day.
- $sql = "REPLACE INTO ".TABLE_PREFIX."config VALUES ('db_size_ttl', '$ttl')";
- mysql_query($sql, $db);
++ if (count($patch_list_array)) {
++ foreach ($patch_list_array as $row_num => $patch) {
++ $patch_ids .= '\'' . $patch['atutor_patch_id'] . '\', ';
+ }
-
- $sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."courses";
- $result = mysql_query($sql, $db);
- $row = mysql_fetch_assoc($result);
- $num_courses = $row['cnt'];
-
- $sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."members";
- $result = mysql_query($sql, $db);
- $row = mysql_fetch_assoc($result);
- $num_users = $row['cnt'];
-
- $sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."admins";
- $result = mysql_query($sql, $db);
+
- $cnt = count($patch_list_array) - $row['cnt_installed_patches'];
- $savant->assign('cnt', $cnt);
-
- if ($cnt > 0)
- {
-
++ $sql = "select count(distinct atutor_patch_id) cnt_installed_patches from ".TABLE_PREFIX."patches " .
++ "where atutor_patch_id in (" . substr($patch_ids, 0, -2) .")".
++ " and status like '%Installed'";
++
++ $result = mysql_query($sql, $db) or die(mysql_error());
+ $row = mysql_fetch_assoc($result);
- $num_users += $row['cnt'];
-
- $sql = "SELECT VERSION()";
- $result = mysql_query($sql, $db);
- $row = mysql_fetch_array($result);
- $mysql_version = $row[0];
- ?>
++
++ $cnt = count($patch_list_array) - $row['cnt_installed_patches'];
++ $savant->assign('cnt', $cnt);
+
- <div class="row">
- <h3><?php echo _AT('statistics_information'); ?></h3>
++ if ($cnt > 0)
++ {
+
- <dl class="col-list">
- <?php if ($_config['db_size']): ?>
- <dt><?php echo _AT('database'); ?>:</dt>
- <dd><?php echo number_format($_config['db_size']/AT_KBYTE_SIZE/AT_KBYTE_SIZE,2); ?> <acronym title="<?php echo _AT('megabytes'); ?>"><?php echo _AT('mb'); ?></acronym></dd>
- <?php endif; ?>
+
- <?php if ($_config['du_size']): ?>
- <dt><?php echo _AT('disk_usage'); ?>:</dt>
- <dd><?php echo number_format($_config['du_size']/AT_KBYTE_SIZE,2); ?> <acronym title="<?php echo _AT('megabytes'); ?>"><?php echo _AT('mb'); ?></acronym></dd>
- <?php endif; ?>
- <dt><?php echo _AT('courses'); ?>:</dt>
- <dd><?php echo $num_courses; ?></dd>
-
- }
+ }
+ }
- }
++ }
++}
++
+ if (!isset($_config['db_size']) || ($_config['db_size_ttl'] < time())) {
- $_config['db_size'] = 0;
- $sql = 'SHOW TABLE STATUS';
- $result = mysql_query($sql, $db);
- while($row = mysql_fetch_assoc($result)) {
- $_config['db_size'] += $row['Data_length']+$row['Index_length'];
-
- }
++ $_config['db_size'] = 0;
++ $sql = 'SHOW TABLE STATUS';
++ $result = mysql_query($sql, $db);
++ while($row = mysql_fetch_assoc($result)) {
++ $_config['db_size'] += $row['Data_length']+$row['Index_length'];
++
++ }
- <dt><?php echo _AT('users'); ?>:</dt>
- <dd><?php echo $num_users; ?></dd>
- $sql = "REPLACE INTO ".TABLE_PREFIX."config VALUES ('db_size', '{$_config['db_size']}')";
- mysql_query($sql, $db);
++ $sql = "REPLACE INTO ".TABLE_PREFIX."config VALUES ('db_size', '{$_config['db_size']}')";
++ mysql_query($sql, $db);
+
- <dt><?php echo _AT('atutor_version'); ?>:</dt>
- <?php
- require('../svn.php');
- if (!empty($svn_data)) {
- $svn_data = explode("\n", $svn_data);
- if (substr($svn_data[1], 0, 1) == 'r') {
- $svn_data = $svn_data[1];
- } else if (substr($svn_data[2], 0, 1) == 'r') {
- $svn_data = $svn_data[2];
- }
++ // get disk usage if we're on *nix
++ if (DIRECTORY_SEPARATOR == '/') {
++ $du = @shell_exec('du -sk '.escapeshellcmd(AT_CONTENT_DIR));
++ if ($du) {
++ $_config['du_size'] = (int) $du;
++ $sql = "REPLACE INTO ".TABLE_PREFIX."config VALUES ('du_size', '{$_config['du_size']}')";
++ mysql_query($sql, $db);
+
- // get disk usage if we're on *nix
- if (DIRECTORY_SEPARATOR == '/') {
- $du = @shell_exec('du -sk '.escapeshellcmd(AT_CONTENT_DIR));
- if ($du) {
- $_config['du_size'] = (int) $du;
- $sql = "REPLACE INTO ".TABLE_PREFIX."config VALUES ('du_size', '{$_config['du_size']}')";
- mysql_query($sql, $db);
-
- }
- }
-
- $ttl = time() + 24 * 60 * 60; // every 1 day.
- $sql = "REPLACE INTO ".TABLE_PREFIX."config VALUES ('db_size_ttl', '$ttl')";
- mysql_query($sql, $db);
-
- }
++ }
++ }
- if (count($svn_data) > 1) {
- $build = 'unknown';
- $build_date = date('Y-m-d H:i:s');
- } else {
- $svn_data = explode(' ', $svn_data);
- $sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."courses";
- $result = mysql_query($sql, $db);
- $row = mysql_fetch_assoc($result);
- $num_courses = $row['cnt'];
- $savant->assign('num_courses', $num_courses);
++ $ttl = time() + 24 * 60 * 60; // every 1 day.
++ $sql = "REPLACE INTO ".TABLE_PREFIX."config VALUES ('db_size_ttl', '$ttl')";
++ mysql_query($sql, $db);
++
++}
- $build = $svn_data[0];
- $build_date = $svn_data[4] .' '. $svn_data[5];
- }
- $build_str = '(' . $build . ' - '.$build_date . ')';
- }
- ?>
- <dd><?php echo _AT('atutor_version_text', VERSION . $build_str, urlencode(VERSION)); ?></dd>
- $sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."members";
- $result = mysql_query($sql, $db);
- $row = mysql_fetch_assoc($result);
- $num_users = $row['cnt'];
- $savant->assign('num_users', $num_users);
++$sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."courses";
++$result = mysql_query($sql, $db);
++$row = mysql_fetch_assoc($result);
++$num_courses = $row['cnt'];
++$savant->assign('num_courses', $num_courses);
- <dt><?php echo _AT('php_version'); ?>:</dt>
- <dd><?php echo PHP_VERSION; ?></dd>
- $sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."admins";
- $result = mysql_query($sql, $db);
- $row = mysql_fetch_assoc($result);
- $num_users += $row['cnt'];
-
++$sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."members";
++$result = mysql_query($sql, $db);
++$row = mysql_fetch_assoc($result);
++$num_users = $row['cnt'];
++$savant->assign('num_users', $num_users);
- <dt><?php echo _AT('mysql_version'); ?>:</dt>
- <dd><?php echo $mysql_version; ?></dd>
- $sql = "SELECT VERSION()";
- $result = mysql_query($sql, $db);
- $row = mysql_fetch_array($result);
- $mysql_version = $row[0];
++$sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."admins";
++$result = mysql_query($sql, $db);
++$row = mysql_fetch_assoc($result);
++$num_users += $row['cnt'];
+
- <dt><?php echo _AT('os'); ?>:</dt>
- <dd><?php echo @php_uname('s') . ' ' . @php_uname('r'); ?></dd>
- </dl>
- </div>
- </div>
+
- </div>
++$sql = "SELECT VERSION()";
++$result = mysql_query($sql, $db);
++$row = mysql_fetch_array($result);
++$mysql_version = $row[0];
- <div class="admin_container" style="width: 55%;">
- <?php
- $path_length = strlen($_base_path);
+ $savant->assign('path_length', $path_length);
+ $savant->assign('pages', $_pages);
+ $savant->assign('db_size', $_config['db_size']);
+ $savant->assign('du_size', $_config['du_size']);
+ $savant->assign('row', $row);
+
- echo '<ol id="tools" style="margin-right: 0px;">';
- foreach ($_top_level_pages as $page_info) {
- echo '<li class="top-tool"><a href="' . $page_info['url'] . '">' . $page_info['title'] . '</a> ';
+ $savant->display('admin/index.tmpl.php');
-require(AT_INCLUDE_PATH.'footer.inc.php'); ?>
+
- $page_info['url'] = substr($page_info['url'], $path_length);
++require(AT_INCLUDE_PATH.'footer.inc.php');
+
- if ($_pages[$page_info['url']]['children']) {
- echo '<ul class="child-top-tool">';
- foreach ($_pages[$page_info['url']]['children'] as $child) {
- // check whether the page is set to be available for mobile themes. @see include/lib/menu_pages.php
- if (page_available($child)) {
- echo ' <li class="child-tool"><a href="'.$child.'">'._AT($_pages[$child]['title_var']).'</a></li>';
- }
- }
- echo '</ul>';
- }
- echo '</li>';
- }
- echo '</ol>';
- ?>
- </div>
- <?php require(AT_INCLUDE_PATH.'footer.inc.php'); ?>
++?>
}
}
--require(AT_INCLUDE_PATH.'header.inc.php'); ?>
++require(AT_INCLUDE_PATH.'header.inc.php');
- <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="form">
-
-
-<?php
+ $savant->display('confirm.tmpl.php');
-require(AT_INCLUDE_PATH.'footer.inc.php'); ?>
+
- <div class="input-form" style="max-width: 400px">
- <div class="row">
- <p><?php echo _AT('send_confirmation'); ?></p>
- </div>
-
- <div class="row">
- <span class="required" title="<?php echo _AT('required_field'); ?>">*</span><label for="email"><?php echo _AT('email'); ?></label><br />
- <input type="text" name="email" id="email" size="50" />
- <input type="hidden" name="en_id" id="en_id" value="<?php echo AT_print($_REQUEST['en_id'], 'input.email'); ?>" size="50" />
- </div>
-
- <div class="row buttons">
- <input type="submit" name="submit" value="<?php echo _AT('send'); ?>" />
- <input type="submit" name="cancel" value="<?php echo _AT('cancel'); ?>" />
- </div>
- </div>
- </form>
-
- <?php require(AT_INCLUDE_PATH.'footer.inc.php'); ?>
++require(AT_INCLUDE_PATH.'footer.inc.php');
++?>
$content_forum_ids[] = $content_forum_row;
}
- // use any styles that were part of the imported document
+ // use any styles that were part of the imported document, except on the mobile theme.
// $_custom_css = $_base_href.'headstuff.php?cid='.$cid.SEP.'path='.urlEncode($_base_href.$course_base_href.$content_base_href);
-
+ if (is_mobile_device == false) {
if ($content_row['use_customized_head'] && strlen($content_row['head']) > 0)
{
$_custom_head .= $content_row['head'];
}
-
+ }
global $_custom_head;
$_custom_head .= '
<script language="javascript" type="text/javascript">
//<!--
- jQuery(function() {
- jQuery(\'a.tooltip\').tooltip( { showBody: ": ", showURL: false } );
- } );
+ jQuery(".tooltip").tooltip();
//-->
</script>
';
$_config_defaults['main_defaults'] = 'mods/_standard/forums/forum/list.php|mods/_core/glossary/index.php|mods/_standard/file_storage/index.php|mods/_standard/social/index.php|mods/_standard/sitemap/sitemap.php|mods/_standard/photos/index.php';
$_config_defaults['home_defaults'] = 'mods/_standard/file_storage/index.php|mods/_standard/tests/my_tests.php|mods/_standard/tracker/my_stats.php|mods/_standard/directory/directory.php';
$_config_defaults['side_defaults'] = 'social|menu_menu|related_topics|users_online|glossary|search|poll|posts';
-$_config_defaults['pref_defaults'] = 'a:35:{s:10:"PREF_THEME";s:7:"default";s:17:"PREF_MOBILE_THEME";s:6:"mobile";s:15:"PREF_FORM_FOCUS";i:1;s:14:"PREF_NUMBERING";i:0;s:13:"PREF_TIMEZONE";s:1:"0";s:18:"PREF_JUMP_REDIRECT";i:1;s:19:"PREF_CONTENT_EDITOR";i:2;s:15:"PREF_SHOW_GUIDE";i:1;s:14:"PREF_FONT_FACE";s:0:"";s:15:"PREF_FONT_TIMES";s:3:"1.0";s:14:"PREF_FG_COLOUR";s:0:"";s:14:"PREF_BG_COLOUR";s:0:"";s:14:"PREF_HL_COLOUR";s:0:"";s:28:"PREF_USE_ALTERNATIVE_TO_TEXT";i:0;s:16:"PREF_ALT_TO_TEXT";s:5:"audio";s:34:"PREF_ALT_TO_TEXT_APPEND_OR_REPLACE";s:6:"append";s:25:"PREF_ALT_TEXT_PREFER_LANG";s:2:"en";s:29:"PREF_USE_ALTERNATIVE_TO_AUDIO";i:0;s:17:"PREF_ALT_TO_AUDIO";s:4:"text";s:35:"PREF_ALT_TO_AUDIO_APPEND_OR_REPLACE";s:6:"append";s:26:"PREF_ALT_AUDIO_PREFER_LANG";s:2:"en";s:30:"PREF_USE_ALTERNATIVE_TO_VISUAL";i:0;s:18:"PREF_ALT_TO_VISUAL";s:4:"text";s:36:"PREF_ALT_TO_VISUAL_APPEND_OR_REPLACE";s:6:"append";s:27:"PREF_ALT_VISUAL_PREFER_LANG";s:2:"en";s:15:"PREF_DICTIONARY";i:1;s:14:"PREF_THESAURUS";i:1;s:16:"PREF_NOTE_TAKING";i:1;s:15:"PREF_CALCULATOR";i:1;s:11:"PREF_ABACUS";i:1;s:10:"PREF_ATLAS";i:1;s:17:"PREF_ENCYCLOPEDIA";i:1;s:18:"PREF_SHOW_CONTENTS";i:1;s:31:"PREF_SHOW_NEXT_PREVIOUS_BUTTONS";i:1;s:22:"PREF_SHOW_BREAD_CRUMBS";i:1;}';
+$_config_defaults['pref_defaults'] = 'a:35:{s:10:"PREF_THEME";s:7:"default";s:17:"PREF_MOBILE_THEME";s:6:"mobile";s:15:"PREF_FORM_FOCUS";i:1;s:14:"PREF_NUMBERING";i:0;s:13:"PREF_TIMEZONE";s:1:"0";s:18:"PREF_JUMP_REDIRECT";i:1;s:19:"PREF_CONTENT_EDITOR";i:2;s:15:"PREF_SHOW_GUIDE";i:1;s:14:"PREF_FONT_FACE";s:0:"";s:15:"PREF_FONT_TIMES";s:3:"0.8";s:14:"PREF_FG_COLOUR";s:0:"";s:14:"PREF_BG_COLOUR";s:0:"";s:14:"PREF_HL_COLOUR";s:0:"";s:28:"PREF_USE_ALTERNATIVE_TO_TEXT";i:0;s:16:"PREF_ALT_TO_TEXT";s:5:"audio";s:34:"PREF_ALT_TO_TEXT_APPEND_OR_REPLACE";s:6:"append";s:25:"PREF_ALT_TEXT_PREFER_LANG";s:2:"en";s:29:"PREF_USE_ALTERNATIVE_TO_AUDIO";i:0;s:17:"PREF_ALT_TO_AUDIO";s:4:"text";s:35:"PREF_ALT_TO_AUDIO_APPEND_OR_REPLACE";s:6:"append";s:26:"PREF_ALT_AUDIO_PREFER_LANG";s:2:"en";s:30:"PREF_USE_ALTERNATIVE_TO_VISUAL";i:0;s:18:"PREF_ALT_TO_VISUAL";s:4:"text";s:36:"PREF_ALT_TO_VISUAL_APPEND_OR_REPLACE";s:6:"append";s:27:"PREF_ALT_VISUAL_PREFER_LANG";s:2:"en";s:15:"PREF_DICTIONARY";i:1;s:14:"PREF_THESAURUS";i:1;s:16:"PREF_NOTE_TAKING";i:1;s:15:"PREF_CALCULATOR";i:1;s:11:"PREF_ABACUS";i:1;s:10:"PREF_ATLAS";i:1;s:17:"PREF_ENCYCLOPEDIA";i:1;s:18:"PREF_SHOW_CONTENTS";i:1;s:31:"PREF_SHOW_NEXT_PREVIOUS_BUTTONS";i:1;s:22:"PREF_SHOW_BREAD_CRUMBS";i:1;}';
$_config_defaults['pref_inbox_notify'] = 0; // disabled
$_config_defaults['pref_is_auto_login'] = "disable"; // disabled
$_config_defaults['check_version'] = 0; // disabled
$endpos = strlen($_base_href);
}
-$_base_href = substr($_base_href, 0, $endpos);
-$_base_path = substr($_base_href, strlen($server_protocol . $_SERVER['HTTP_HOST']));
+$_base_href = substr($_base_href, 0, $endpos);
+$_base_path = substr($_base_href, strlen($server_protocol . $_SERVER['HTTP_HOST']));
define('AT_BASE_HREF', $_base_href);
define('AT_BACKUP_DIR', AT_CONTENT_DIR . 'backups/'); // where the backups get stored
-define('VERSION', '2.0.2');
+define('VERSION', '2.0.3');
define('ONLINE_UPDATE', 3); /* update the user expiry every 3 min */
/* valid date format_types: */
define('BLACKBERRY_DEVICE', 'blackberry');
define('ANDROID_DEVICE', 'android');
define('UNKNOWN_DEVICE', 'unknown');
+ define('IPAD_DEVICE', 'ipad');
// machine type
define('DESKTOP_DEVICE', 'Desktop');
/* the length of sublink text display in the course index page, detail view */
define('SUBLINK_TEXT_LEN', 38);
+
+/* The lock out time for max login attempts */
+define('DEFAULT_VIDEO_PLAYER_WIDTH', 425); // in pixels
+define('DEFAULT_VIDEO_PLAYER_HEIGHT', 350); // in pixels
/* The lock out time for max login attempts */
define('LOGIN_ATTEMPT_LOCKED_TIME', 60); //in minutes, default an hour, 60 minutes
if (!defined('AT_INCLUDE_PATH')) { exit; }
--define('AT_DEVEL', 1);
++define('AT_DEVEL', 0);
define('AT_ERROR_REPORTING', E_ALL ^ E_NOTICE); // default is E_ALL ^ E_NOTICE, use E_ALL or E_ALL + E_STRICT for developing
define('AT_DEVEL_TRANSLATE', 0);
$stripslashes = 'my_null_slashes';
}
+function regenerate_session($reload = false)
+{
+ if(!isset($_SESSION['IPaddress']) || $reload)
+ $_SESSION['IPaddress'] = $_SERVER['REMOTE_ADDR'];
+
+ if(!isset($_SESSION['userAgent']) || $reload)
+ $_SESSION['userAgent'] = $_SERVER['HTTP_USER_AGENT'];
+
+ $session_values = $_SESSION;
+
+ // Set current session to expire in 10 seconds
+ $_SESSION['OBSOLETE'] = true;
+ $_SESSION['EXPIRES'] = time() + 10;
+
+ // Create new session without destroying the old one
+ session_regenerate_id(false);
+
+ // Grab current session ID and close both sessions to allow other scripts to use them
+ $newSession = session_id();
+ session_write_close();
+
+ // Set session ID to the new one, and start it back up again
+ session_id($newSession);
+ session_start();
+
+ $_SESSION = $session_values;
+}
+
+function check_session()
+{
+ if($_SESSION['OBSOLETE'] && ($_SESSION['EXPIRES'] < time())) {
+ return false;
+ }
+
+ if($_SESSION['IPaddress'] != $_SERVER['REMOTE_ADDR']) {
+ return false;
+ }
+
+ if($_SESSION['userAgent'] != $_SERVER['HTTP_USER_AGENT']) {
+ return false;
+ }
+
+ if(!$_SESSION['OBSOLETE']) {
+ regenerate_session();
+ }
+ return true;
+}
+
/*
* structure of this document (in order):
*
* 0. load config.inc.php
* 1. load constants
- * 2. initilize session
- * 3. load language constants
+ * 2. initialize db connection and populate $_config
+ * 3. initialize session
* 4. enable output compression
- * 5. initilize db connection
- * 6. load cache library
- * 7. initilize session localization
- * 8. load ContentManagement/output/Savant/Message libraries
+ * 5. validate login user
+ * 6. load language
+ * 7. load cache/ContentManagement/output/Savant/Message libraries
***/
/**** 0. start system configuration options block ****/
+ //set the timezone, php 5.3+ problem. http://atutor.ca/atutor/mantis/view.php?id=4409
+ date_default_timezone_set('UTC');
+
error_reporting(0);
if (!defined('AT_REDIRECT_LOADED')){
include_once(AT_INCLUDE_PATH.'config.inc.php');
header('Location: ' . $relative_path . 'install/not_installed.php');
exit;
}
-/*** end system config block ****/
+/*** end system config block ***/
/*** 1. constants ***/
- if (!defined('AT_REDIRECT_LOADED')){
- require_once(AT_INCLUDE_PATH.'lib/constants.inc.php');
- }
-
-/***** 2. start session initilization block ****/
- if (headers_sent()) {
- require_once(AT_INCLUDE_PATH . 'classes/ErrorHandler/ErrorHandler.class.php');
- $err = new ErrorHandler();
- trigger_error('VITAL#<br /><br /><code><strong>An error occurred. Output sent before it should have. Please correct the above error(s).' . '</strong></code><br /><hr /><br />', E_USER_ERROR);
- }
-
- @set_time_limit(0);
- @ini_set('session.gc_maxlifetime', '36000'); /* 10 hours */
- @session_cache_limiter('private, must-revalidate');
- session_name('ATutorID');
- error_reporting(AT_ERROR_REPORTING);
-
- if (headers_sent()) {
- require_once(AT_INCLUDE_PATH . 'classes/ErrorHandler/ErrorHandler.class.php');
- $err = new ErrorHandler();
- trigger_error('VITAL#<br /><code><strong>Headers already sent. ' .
- 'Cannot initialise session.</strong></code><br /><hr /><br />', E_USER_ERROR);
- exit;
- }
-
- ob_start();
- session_set_cookie_params(0, $_base_path);
- session_start();
- $str = ob_get_contents();
- ob_end_clean();
- unregister_GLOBALS();
-
- if ($str) {
- require_once(AT_INCLUDE_PATH . 'classes/ErrorHandler/ErrorHandler.class.php');
- $err = new ErrorHandler();
- trigger_error('VITAL#<br /><code><strong>Error initializing session. ' .
- 'Please varify that session.save_path is correctly set in your php.ini file ' .
- 'and the directory exists.</strong></code><br /><hr /><br />', E_USER_ERROR);
- exit;
- }
-
-
-/***** end session initilization block ****/
-
-// 4. enable output compression, if it isn't already enabled:
-if ((@ini_get('output_handler') == '') && (@ini_get('zlib.output_handler') == '')) {
- @ini_set('zlib.output_compression', 1);
+if (!defined('AT_REDIRECT_LOADED')){
+ require_once(AT_INCLUDE_PATH.'lib/constants.inc.php');
}
-/* 5. database connection */
+/*** 2. initialize db connection and populate $_config ***/
+
if (!defined('AT_REDIRECT_LOADED')){
require_once(AT_INCLUDE_PATH.'lib/mysql_connect.inc.php');
}
$_config[$row['name']] = $row['value'];
}
-//Check if users=valid
+/***** 3. start session initilization block *****/
+if (headers_sent()) {
+ require_once(AT_INCLUDE_PATH . 'classes/ErrorHandler/ErrorHandler.class.php');
+ $err = new ErrorHandler();
+ trigger_error('VITAL#<br /><br /><code><strong>An error occurred. Output sent before it should have. Please correct the above error(s).' . '</strong></code><br /><hr /><br />', E_USER_ERROR);
+}
+
+@set_time_limit(0);
+@ini_set('session.gc_maxlifetime', '36000'); /* 10 hours */
+@session_cache_limiter('private, must-revalidate');
+session_name('ATutorID');
+error_reporting(AT_ERROR_REPORTING);
+
+if (headers_sent()) {
+ require_once(AT_INCLUDE_PATH . 'classes/ErrorHandler/ErrorHandler.class.php');
+ $err = new ErrorHandler();
+ trigger_error('VITAL#<br /><code><strong>Headers already sent. ' .
+ 'Cannot initialise session.</strong></code><br /><hr /><br />', E_USER_ERROR);
+ exit;
+}
+
+$isHttps = (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != "on")
+ ? false
+ : true;
+ob_start();
+session_set_cookie_params(0, $_config["session_path"], "", $isHttps);
+session_start();
+
+// Regenerate session id at every page refresh to prevent CSRF
+$valid_session = true;
+if (count($_SESSION) == 0) {
+ regenerate_session();
+} else {
+ $valid_session = check_session();
+}
+
+$str = ob_get_contents();
+ob_end_clean();
+unregister_GLOBALS();
+
+// Re-direct to login page at a potential session hijack
+if (!$valid_session) {
+ $_SESSION = array();
+ header('Location: '.AT_BASE_HREF.'login.php');
+ exit;
+}
+
+if ($str) {
+ require_once(AT_INCLUDE_PATH . 'classes/ErrorHandler/ErrorHandler.class.php');
+ $err = new ErrorHandler();
+ trigger_error('VITAL#<br /><code><strong>Error initializing session. ' .
+ 'Please varify that session.save_path is correctly set in your php.ini file ' .
+ 'and the directory exists.</strong></code><br /><hr /><br />', E_USER_ERROR);
+ exit;
+}
+/***** end session initilization block ****/
+
+/**** 4. enable output compression, if it isn't already enabled: ****/
+if ((@ini_get('output_handler') == '') && (@ini_get('zlib.output_handler') == '')) {
+ @ini_set('zlib.output_compression', 1);
+}
+
+/**** 5. validate login user ****/
if (!isset($_SESSION['course_id']) && !isset($_SESSION['valid_user']) && (!isset($_user_location) || $_user_location != 'public') && !isset($_pretty_url_course_id)) {
if (isset($in_get) && $in_get && (($pos = strpos($_SERVER['PHP_SELF'], 'get.php/')) !== FALSE)) {
$redirect = substr($_SERVER['PHP_SELF'], 0, $pos) . 'login.php';
$_config['home_defaults'] .= (isset($_config['home_defaults_2']) ? $_config['home_defaults_2'] : '');
$_config['main_defaults'] .= (isset($_config['main_defaults_2']) ? $_config['main_defaults_2'] : '');
-//set the timezone, php 5.3+ problem. http://atutor.ca/atutor/mantis/view.php?id=4409
-date_default_timezone_set('UTC');
-
if ($_config['time_zone']) {
//$sql = "SET time_zone='{$_config['time_zone']}'";
//mysql_query($sql, $db);
@putenv("TZ={$_config['time_zone']}");
}
}
-/***** 7. start language block *****/
- // set current language
- require(AT_INCLUDE_PATH . '../mods/_core/languages/classes/LanguageManager.class.php');
- $languageManager = new LanguageManager();
+/***** 6. load language *****/
+// set current language
+require(AT_INCLUDE_PATH . '../mods/_core/languages/classes/LanguageManager.class.php');
+$languageManager = new LanguageManager();
- $myLang =& $languageManager->getMyLanguage();
+$myLang =& $languageManager->getMyLanguage();
- if ($myLang === FALSE) {
- echo 'There are no languages installed!';
- exit;
- }
- $myLang->saveToSession();
- if (isset($_GET['lang']) && $_SESSION['valid_user']) {
- if ($_SESSION['course_id'] == -1) {
- $myLang->saveToPreferences($_SESSION['login'], 1); //1 for admin
- } else {
- $myLang->saveToPreferences($_SESSION['member_id'], 0); //0 for non-admin
- }
+if ($myLang === FALSE) {
+ echo 'There are no languages installed!';
+ exit;
+}
+$myLang->saveToSession();
+if (isset($_GET['lang']) && $_SESSION['valid_user']) {
+ if ($_SESSION['course_id'] == -1) {
+ $myLang->saveToPreferences($_SESSION['login'], 1); //1 for admin
+ } else {
+ $myLang->saveToPreferences($_SESSION['member_id'], 0); //0 for non-admin
}
- $myLang->sendContentTypeHeader();
+}
+$myLang->sendContentTypeHeader();
- /* set right-to-left language */
- $rtl = '';
- if ($myLang->isRTL()) {
- $rtl = 'rtl_'; /* basically the prefix to a rtl variant directory/filename. eg. rtl_tree */
- }
+/* set right-to-left language */
+$rtl = '';
+if ($myLang->isRTL()) {
+ $rtl = 'rtl_'; /* basically the prefix to a rtl variant directory/filename. eg. rtl_tree */
+}
/***** end language block ****/
-/* 8. load common libraries */
- require(AT_INCLUDE_PATH.'classes/ContentManager.class.php'); /* content management class */
- require_once(AT_INCLUDE_PATH.'lib/output.inc.php'); /* output functions */
- if (!(defined('AT_REDIRECT_LOADED'))){
- require_once(AT_INCLUDE_PATH . 'classes/UrlRewrite/UrlParser.class.php'); /* pretty url tool */
- }
- require(AT_INCLUDE_PATH.'classes/Savant2/Savant2.php'); /* for the theme and template management */
-
- // set default template paths:
- $savant = new Savant2();
- $savant->addPath('template', AT_INCLUDE_PATH . '../themes/default/');
+/* 7. load common libraries */
+require(AT_INCLUDE_PATH.'classes/ContentManager.class.php'); /* content management class */
+require_once(AT_INCLUDE_PATH.'lib/output.inc.php'); /* output functions */
+if (!(defined('AT_REDIRECT_LOADED'))){
+ require_once(AT_INCLUDE_PATH . 'classes/UrlRewrite/UrlParser.class.php'); /* pretty url tool */
+}
+require(AT_INCLUDE_PATH.'classes/Savant2/Savant2.php'); /* for the theme and template management */
+
+// set default template paths:
+$savant = new Savant2();
+$savant->addPath('template', AT_INCLUDE_PATH . '../themes/default/');
+
+//if user has requested theme change, make the change here
+if (($_POST['theme'] || $_POST['mobile_theme']) && $_POST['submit']) {
+ //http://atutor.ca/atutor/mantis/view.php?id=4781
+ //Themes should be in the same folder, disallow '../'
+ $newTheme = str_replace("../", "", $_POST['theme']);
+ $newMobileTheme = str_replace("../", "", $_POST['mobile_theme']);
+ if ($newTheme != $_POST['theme'] || $newMobileTheme != $_POST['mobile_theme']) {
+ header('Location:'.AT_BASE_HREF.'users/preferences.php');
+ exit;
+ }
+
+ $_SESSION['prefs']['PREF_THEME'] = $addslashes($_POST['theme']);
+ $_SESSION['prefs']['PREF_MOBILE_THEME'] = $addslashes($_POST['mobile_theme']);
+} else if ($_POST['set_default']) {
+ $_SESSION['prefs']['PREF_THEME'] = 'default';
+ $_SESSION['prefs']['PREF_MOBILE_THEME'] = 'mobile';
+}
- //if user has requested theme change, make the change here
- if (($_POST['theme'] || $_POST['mobile_theme']) && $_POST['submit']) {
- $_SESSION['prefs']['PREF_THEME'] = $addslashes($_POST['theme']);
- $_SESSION['prefs']['PREF_MOBILE_THEME'] = $addslashes($_POST['mobile_theme']);
-
- } else if ($_POST['set_default']) {
- $_SESSION['prefs']['PREF_THEME'] = 'default';
- $_SESSION['prefs']['PREF_MOBILE_THEME'] = 'mobile';
-
- }
-
- // Reset PREF_THEME when:
- // 1. If PREF_THEME is not set
- // 2. The request is from the mobile device but PREF_THEME is not a mobile theme
- if (!isset($_SESSION['prefs']['PREF_THEME']) ||
- $_SESSION['prefs']['PREF_THEME'] == "" ||
- (is_mobile_device() && !is_mobile_theme($_SESSION['prefs']['PREF_THEME']))) {
- // get default
- $default_theme = get_default_theme();
-
- $_SESSION['prefs']['PREF_THEME'] = $default_theme['dir_name'];
-
- }
-
- if (!is_dir(AT_INCLUDE_PATH . '../themes/' . $_SESSION['prefs']['PREF_THEME']) || $_SESSION['prefs']['PREF_THEME'] == '') {
- $_SESSION['prefs']['PREF_THEME'] = get_system_default_theme();
-
- }
+// Reset PREF_THEME when:
+// 1. If PREF_THEME is not set
+// 2. The request is from the mobile device but PREF_THEME is not a mobile theme
+if (!isset($_SESSION['prefs']['PREF_THEME']) ||
+ $_SESSION['prefs']['PREF_THEME'] == "" ||
+ (is_mobile_device() && !is_mobile_theme($_SESSION['prefs']['PREF_THEME']))) {
+ // get default
+ $default_theme = get_default_theme();
- // use "mobile" theme for mobile devices. For now, there's only one mobile theme and it's hardcoded.
- // When more mobile themes come in, this should be changed.
- if (isset($_SESSION['prefs']['PREF_THEME']) && file_exists(AT_INCLUDE_PATH . '../themes/' . $_SESSION['prefs']['PREF_THEME']) && isset($_SESSION['valid_user']) && $_SESSION['valid_user']) {
- if ($_SESSION['course_id'] == -1) {
- if ($_SESSION['prefs']['PREF_THEME'] == '' || !is_dir(AT_INCLUDE_PATH . '../themes/' . $_SESSION['prefs']['PREF_THEME'])) {
- $_SESSION['prefs']['PREF_THEME'] = get_system_default_theme();
-
- }
+ $_SESSION['prefs']['PREF_THEME'] = $default_theme['dir_name'];
+}
+
+if (!is_dir(AT_INCLUDE_PATH . '../themes/' . $_SESSION['prefs']['PREF_THEME']) || $_SESSION['prefs']['PREF_THEME'] == '') {
+ $_SESSION['prefs']['PREF_THEME'] = get_system_default_theme();
+}
+
+// use "mobile" theme for mobile devices. For now, there's only one mobile theme and it's hardcoded.
+// When more mobile themes come in, this should be changed.
+if (isset($_SESSION['prefs']['PREF_THEME']) && file_exists(AT_INCLUDE_PATH . '../themes/' . $_SESSION['prefs']['PREF_THEME']) && isset($_SESSION['valid_user']) && $_SESSION['valid_user']) {
+ if ($_SESSION['course_id'] == -1) {
+ if ($_SESSION['prefs']['PREF_THEME'] == '' || !is_dir(AT_INCLUDE_PATH . '../themes/' . $_SESSION['prefs']['PREF_THEME'])) {
+ $_SESSION['prefs']['PREF_THEME'] = get_system_default_theme();
+ }
+ } else {
+ //check if enabled
+ $sql = "SELECT status FROM ".TABLE_PREFIX."themes WHERE dir_name = '".$_SESSION['prefs']['PREF_THEME']."'";
+ $result = mysql_query($sql, $db);
+ $row = mysql_fetch_assoc($result);
+ if ($row['status'] > 0) {
} else {
- //check if enabled
- $sql = "SELECT status FROM ".TABLE_PREFIX."themes WHERE dir_name = '".$_SESSION['prefs']['PREF_THEME']."'";
- $result = mysql_query($sql, $db);
- $row = mysql_fetch_assoc($result);
- if ($row['status'] > 0) {
- } else {
- // get default
- $default_theme = get_default_theme();
- if (!is_dir(AT_INCLUDE_PATH . '../themes/' . $default_theme['dir_name'])) {
- $default_theme = array('dir_name' => get_system_default_theme());
- }
- $_SESSION['prefs']['PREF_THEME'] = $default_theme['dir_name'];
-
+ // get default
+ $default_theme = get_default_theme();
+ if (!is_dir(AT_INCLUDE_PATH . '../themes/' . $default_theme['dir_name'])) {
+ $default_theme = array('dir_name' => get_system_default_theme());
}
+ $_SESSION['prefs']['PREF_THEME'] = $default_theme['dir_name'];
}
}
-
- $savant->addPath('template', AT_INCLUDE_PATH . '../themes/' . $_SESSION['prefs']['PREF_THEME'] . '/');
- require(AT_INCLUDE_PATH . '../themes/' . $_SESSION['prefs']['PREF_THEME'] . '/theme.cfg.php');
-
-
- require(AT_INCLUDE_PATH.'classes/Message/Message.class.php');
- $msg = new Message($savant);
+}
- $contentManager = new ContentManager($db, isset($_SESSION['course_id']) ? $_SESSION['course_id'] : $_GET['p_course']);
- $contentManager->initContent();
-/**************************************************/
+$savant->addPath('template', AT_INCLUDE_PATH . '../themes/' . $_SESSION['prefs']['PREF_THEME'] . '/');
+require(AT_INCLUDE_PATH . '../themes/' . $_SESSION['prefs']['PREF_THEME'] . '/theme.cfg.php');
+
+require(AT_INCLUDE_PATH.'classes/Message/Message.class.php');
+$msg = new Message($savant);
+$contentManager = new ContentManager($db, isset($_SESSION['course_id']) ? $_SESSION['course_id'] : $_GET['p_course']);
+$contentManager->initContent();
+
+/**************************************************/
require(AT_INCLUDE_PATH.'phpCache/phpCache.inc.php'); // cache library
require(AT_INCLUDE_PATH.'lib/utf8.php'); //UTF-8 multibyte library
/* */
/********************************************************************/
// p_course is set when pretty url is on and guests access a public course. @see bounce.php
+// First, santinize p_course
+if (isset($_REQUEST['p_course'])) {
+ $_REQUEST['p_course'] = intval($_REQUEST['p_course']);
+}
+
if (isset($_SESSION['course_id']) && $_SESSION['course_id'] > 0 || $_REQUEST['p_course'] > 0) {
$sql = 'SELECT * FROM '.TABLE_PREFIX.'glossary
WHERE course_id='.($_SESSION['course_id']>0 ? $_SESSION['course_id'] : $_REQUEST['p_course']).'
return ((stripos($http_user_agent, IPOD_DEVICE) !== false && stripos($http_user_agent, IPOD_DEVICE) >= 0) ||
(stripos($http_user_agent, IPHONE_DEVICE) !== false && stripos($http_user_agent, IPHONE_DEVICE) >= 0) ||
(stripos($http_user_agent, BLACKBERRY_DEVICE) !== false && stripos($http_user_agent, BLACKBERRY_DEVICE) >= 0) ||
- (stripos($http_user_agent, IPAD_DEVICE) !== false && stripos($http_user_agent, IPAD_DEVICE) >= 0) ||
++ (stripos($http_user_agent, IPAD_DEVICE) !== false && stripos($http_user_agent, IPAD_DEVICE) >= 0) ||
(stripos($http_user_agent, ANDROID_DEVICE) !== false && stripos($http_user_agent, ANDROID_DEVICE) >= 0))
-
? true : false;
}
return IPHONE_DEVICE;
} else if (stripos($http_user_agent, BLACKBERRY_DEVICE) !== false && stripos($http_user_agent, BLACKBERRY_DEVICE) >= 0) {
return BLACKBERRY_DEVICE;
- } else if (stripos($http_user_agent, IPAD_DEVICE) !== false && stripos($http_user_agent, IPAD_DEVICE) >= 0) {
++ } else if (stripos($http_user_agent, IPAD_DEVICE) !== false && stripos($http_user_agent, IPAD_DEVICE) >= 0) {
+ return IPAD_DEVICE;
} else if (stripos($http_user_agent, ANDROID_DEVICE) !== false && stripos($http_user_agent, ANDROID_DEVICE) >= 0) {
return ANDROID_DEVICE;
} else {
if (isset($_SESSION['course_id']) && $_SESSION['course_id'] > 0) {
$_custom_head .= '<script type="text/javascript" src="'.$_base_path.'jscripts/ATutorCourse.js"></script>';
}
-
?>
\r
$this->_pages['mods/_core/courses/admin/courses.php']['title_var'] = 'courses';\r
$this->_pages['mods/_core/courses/admin/courses.php']['parent'] = AT_NAV_ADMIN;\r
- $this->_pages['mods/_core/courses/admin/courses.php']['guide'] = 'mods/_core/courses/admin/?p=courses.php';\r
+ $this->_pages['mods/_core/courses/admin/courses.php']['guide'] = 'admin/?p=courses.php';\r
$this->_pages['mods/_core/courses/admin/courses.php']['children'] = array('mods/_core/courses/admin/create_course.php','mods/_core/enrolment/admin/index.php', 'mods/_core/courses/admin/default_mods.php', 'mods/_core/courses/admin/default_side.php','mods/_core/courses/admin/auto_enroll.php');\r
\r
$this->_pages['mods/_core/courses/admin/instructor_login.php']['title_var'] = 'view';\r
\r
$this->_pages['mods/_core/courses/admin/create_course.php']['title_var'] = 'create_course';\r
$this->_pages['mods/_core/courses/admin/create_course.php']['parent'] = 'mods/_core/courses/admin/courses.php';\r
- $this->_pages['mods/_core/courses/admin/create_course.php']['guide'] = 'mods/_core/courses/admin/?p=creating_courses.php';\r
+ $this->_pages['mods/_core/courses/admin/create_course.php']['guide'] = 'admin/?p=creating_courses.php';\r
\r
$this->_pages['mods/_core/courses/admin/default_mods.php']['title_var'] = 'default_modules';\r
$this->_pages['mods/_core/courses/admin/default_mods.php']['parent'] = 'mods/_core/courses/admin/courses.php';\r
- $this->_pages['mods/_core/courses/admin/default_mods.php']['guide'] = 'mods/_core/courses/admin/?p=default_student_tools.php';\r
+ $this->_pages['mods/_core/courses/admin/default_mods.php']['guide'] = 'admin/?p=default_student_tools.php';\r
\r
$this->_pages['mods/_core/courses/admin/default_side.php']['title_var'] = 'default_side_menu';\r
$this->_pages['mods/_core/courses/admin/default_side.php']['parent'] = 'mods/_core/courses/admin/courses.php';\r
- $this->_pages['mods/_core/courses/admin/default_side.php']['guide'] = 'mods/_core/courses/admin/?p=default_side_menu.php';\r
+ $this->_pages['mods/_core/courses/admin/default_side.php']['guide'] = 'admin/?p=default_side_menu.php';\r
\r
\r
$this->_pages['mods/_core/courses/admin/auto_enroll.php']['title_var'] = 'auto_enroll';\r
$this->_pages['mods/_core/courses/admin/auto_enroll.php']['guide'] = 'admin/?p=auto_enroll.php';\r
$this->_pages['mods/_core/courses/admin/auto_enroll.php']['children'] = array_merge(array('mods/_core/courses/admin/auto_enroll_edit.php'));\r
$this->_pages['admin/config_edit.php']['children'] = array_merge((array) $this->_pages['admin/config_edit.php']['children']);\r
- \r
+ $this->_pages['mods/_core/courses/admin/auto_enroll.php']['avail_in_mobile'] = false;\r
\r
\r
$this->_pages['mods/_core/courses/admin/auto_enroll_edit.php']['title_var'] = 'auto_enroll_edit';\r
?>
- <form method="get" action="<?php echo $_SERVER['PHP_SELF']; ?>">
- <input type="hidden" name="tab" value="<?php echo $current_tab; ?>"/>
- <input type="hidden" name="course_id" value="<?php echo $course_id; ?>"/>
- <div class="input-form">
- <fieldset class="group_form"><legend class="group_form"><?php echo _AT('search'); ?></legend>
- <?php if (admin_authenticate(AT_ADMIN_PRIV_ENROLLMENT, TRUE)): ?>
- <div class="row">
- <label for="course"><?php echo _AT('course'); ?></label><br/>
- <select name="course_id" id="course">
- <?php
- $sql = "SELECT course_id, title FROM ".TABLE_PREFIX."courses ORDER BY title";
- $result = mysql_query($sql, $db);
- while ($courses_row = mysql_fetch_assoc($result)) {
- if ($courses_row['course_id'] == $course_id) {
- echo '<option value="'.$courses_row['course_id'].'" selected="selected">'.validate_length($courses_row['title'], 45,VALIDATE_LENGTH_FOR_DISPLAY).'</option>';
- } else {
- echo '<option value="'.$courses_row['course_id'].'">'.validate_length($courses_row['title'],45,VALIDATE_LENGTH_FOR_DISPLAY).'</option>';
- }
- }
- ?></select>
- </div>
- <?php endif; ?>
-
- <div class="row">
- <label for="search"><?php echo _AT('search'); ?> (<?php echo _AT('login_name').', '._AT('first_name').', '._AT('second_name').', '._AT('last_name') .', '._AT('email'); ?>)</label><br />
- <input type="text" name="search" id="search" size="40" value="<?php echo htmlspecialchars($_GET['search']); ?>" />
- <br/>
- <?php echo _AT('search_match'); ?>:
- <input type="radio" name="match" value="all" id="match_all" <?php echo $checked_match_all; ?> /><label for="match_all"><?php echo _AT('search_all_words'); ?></label> <input type="radio" name="match" value="one" id="match_one" <?php echo $checked_match_one; ?> /><label for="match_one"><?php echo _AT('search_any_word'); ?></label>
- </div>
-
- <div class="row buttons">
- <input type="submit" name="filter" value="<?php echo _AT('filter'); ?>" />
- <input type="submit" name="reset_filter" value="<?php echo _AT('reset_filter'); ?>" />
- </div>
- </fieldset>
- </div>
- </form>
-
- <?php print_paginator($page, $tab_counts[$current_tab], $page_string_w_tab . SEP . $order .'='. $col, $results_per_page); ?>
-
- <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" name="selectform">
- <input type="hidden" name="tab" value="<?php echo $current_tab; ?>" />
- <input type="hidden" name="course_id" value="<?php echo $course_id; ?>"/>
-
- <ul id="etabbed-list">
- <?php for ($i = 0; $i< $num_tabs; $i++): ?>
- <?php if ($current_tab == $i): ?>
- <li class="prefs_tab_selected"><a href="<?php echo $_SERVER['PHP_SELF']; ?>?tab=<?php echo $i.$page_string; ?>" class="active"><strong><?php echo _AT($tabs[$i]); ?> - <?php echo $tab_counts[$i]; ?></strong></a></li>
- <?php else: ?>
- <li class="prefs_tab"><a href="<?php echo $_SERVER['PHP_SELF']; ?>?tab=<?php echo $i.$page_string; ?>"><?php echo _AT($tabs[$i]); ?> - <?php echo $tab_counts[$i]; ?></a></li>
- <?php endif; ?>
- <?php endfor; ?>
- </ul>
-
-
- <table class="data" style="width:95%;" summary="" rules="cols" >
- <colgroup>
- <?php if ($col == 'login'): ?>
- <col />
- <col class="sort" />
- <col span="4" />
- <?php elseif($col == 'first_name'): ?>
- <col span="2" />
- <col class="sort" />
- <col span="3" />
- <?php elseif($col == 'second_name'): ?>
- <col span="3" />
- <col class="sort" />
- <col span="2" />
- <?php elseif($col == 'last_name'): ?>
- <col span="4" />
- <col class="sort" />
- <col />
- <?php elseif($col == 'email'): ?>
- <col span="5" />
- <col class="sort" />
- <?php endif; ?>
- </colgroup>
- <thead>
- <tr>
- <th scope="col" align="left"><input type="checkbox" value="<?php echo _AT('select_all'); ?>" id="all" title="<?php echo _AT('select_all'); ?>" name="selectall" onclick="CheckAll();" /></th>
-
- <th scope="col"><a href="<?php echo $_SERVER['PHP_SELF']; ?>?<?php echo $orders[$order]; ?>=login<?php echo $page_string_w_tab;?>"><?php echo _AT('login_name'); ?></a></th>
-
- <th scope="col"><a href="<?php echo $_SERVER['PHP_SELF']; ?>?<?php echo $orders[$order]; ?>=first_name<?php echo $page_string_w_tab;?>"><?php echo _AT('first_name'); ?></a></th>
-
- <th scope="col"><a href="<?php echo $_SERVER['PHP_SELF']; ?>?<?php echo $orders[$order]; ?>=second_name<?php echo $page_string_w_tab;?>"><?php echo _AT('second_name'); ?></a></th>
-
- <th scope="col"><a href="<?php echo $_SERVER['PHP_SELF']; ?>?<?php echo $orders[$order]; ?>=last_name<?php echo $page_string_w_tab;?>"><?php echo _AT('last_name'); ?></a></th>
-
- <th scope="col"><a href="<?php echo $_SERVER['PHP_SELF']; ?>?<?php echo $orders[$order]; ?>=email<?php echo $page_string_w_tab;?>"><?php echo _AT('email'); ?></a></th>
- </tr>
- </thead>
- <tfoot>
- <tr>
- <td colspan="6">
- <?php if ($current_tab == 0): ?>
- <input type="submit" name="role" value="<?php echo _AT('privileges'); ?>" />
- <input type="submit" name="unenroll" value="<?php echo _AT('remove'); ?>" />
- <input type="submit" name="alumni" value="<?php echo _AT('mark_alumni'); ?>" />
- <?php elseif ($current_tab == 1): ?>
- <input type="submit" name="role" value="<?php echo _AT('privileges'); ?>" />
- <input type="submit" name="unenroll" value="<?php echo _AT('remove'); ?>" />
-
- <?php elseif ($current_tab == 2): ?>
- <input type="submit" name="enroll" value="<?php echo _AT('enroll'); ?>" />
- <input type="submit" name="unenroll" value="<?php echo _AT('remove'); ?>" />
-
- <?php elseif ($current_tab == 3): ?>
- <input type="submit" name="enroll" value="<?php echo _AT('enroll'); ?>" />
- <input type="submit" name="unenroll" value="<?php echo _AT('remove'); ?>" />
-
- <?php elseif ($current_tab == 4): ?>
- <input type="submit" name="enroll" value="<?php echo _AT('enroll'); ?>" />
--
- <?php endif; ?></td>
- </tr>
- </tfoot>
- <tbody>
- <?php if ($tab_counts[$current_tab]): ?>
- <?php while ($row = mysql_fetch_assoc($enrollment_result)): ?>
- <tr onmousedown="document.selectform['m<?php echo $row['member_id']; ?>'].checked = !document.selectform['m<?php echo $row['member_id']; ?>'].checked; togglerowhighlight(this, 'm<?php echo $row['member_id']; ?>');" id="rm<?php echo $row['member_id']; ?>">
- <td><input type="checkbox" name="id[]" value="<?php echo $row['member_id']; ?>" id="m<?php echo $row['member_id']; ?>" onmouseup="this.checked=!this.checked" title="<?php echo AT_print($row['login'], 'members.login'); ?>" /></td>
- <td><?php echo AT_print($row['login'], 'members.login'); ?></td>
- <td><?php echo AT_print($row['first_name'], 'members.name'); ?></td>
- <td><?php echo AT_print($row['second_name'], 'members.name'); ?></td>
- <td><?php echo AT_print($row['last_name'], 'members.name'); ?></td>
- <td><?php echo AT_print($row['email'], 'members.email'); ?></td>
- </tr>
- <?php endwhile; ?>
- <?php else: ?>
- <tr>
- <td colspan="6"><?php echo _AT('none_found'); ?></td>
- </tr>
- <?php endif; ?>
- </tbody>
- </table>
- </form>
--
<script language="JavaScript" type="text/javascript">
//<!--
function CheckAll() {
}
//-->
</script>
- <?php require(AT_INCLUDE_PATH.'footer.inc.php'); ?>
+ <?php
+
+ $savant->assign('current_tab', $current_tab);
+ $savant->assign('course_id', $course_id);
+ $sql = "SELECT course_id, title FROM ".TABLE_PREFIX."courses ORDER BY title";
+ $result = mysql_query($sql, $db);
+ $savant->assign('result', $result);
+ $savant->assign('checked_match_all', $checked_match_all);
+ $savant->assign('checked_match_one', $checked_match_one);
+ $savant->assign('page', $page);
+ $savant->assign('tab_counts', $tab_counts);
+ $savant->assign('page_string_w_tab', $page_string_w_tab);
+ $savant->assign('order', $order);
+ $savant->assign('orders', $orders);
+ $savant->assign('col', $col);
+ $savant->assign('cols', $cols);
+ $savant->assign('results_per_page', $results_per_page);
+ $savant->assign('num_tabs', $num_tabs);
+ $savant->assign('tabs', $tabs);
+ $savant->assign('enrollment_result', $enrollment_result);
+ if($_SESSION['is_admin'] == 0 && $_SESSION['privileges'] == AT_ADMIN_PRIV_ADMIN) {
+ $savant->display('admin/courses/enrollment.tmpl.php');
+ }
+ if($_SESSION['is_admin'] == 1){
+ $savant->display('instructor/enrolment/index.tmpl.php');
+ }
+
-require(AT_INCLUDE_PATH.'footer.inc.php'); ?>
++require(AT_INCLUDE_PATH.'footer.inc.php');
++?>
require(AT_INCLUDE_PATH.'vitals.inc.php');
admin_authenticate(AT_ADMIN_PRIV_USERS);
+/**
+ * A simple method to sign the request with the secret using HMAC.
+ * @param String Use UTC time, gmdate("Y-m-d\TH:i:s\Z");
+ * @param String Hashed secret. Unique per user.
+ */
+function at_sign_request($timestamp, $publicKey) {
+ global $db;
+ if (!isset($_SESSION['login'])) {
+ return $url;
+ }
+ $sql = 'SELECT last_login FROM ' . TABLE_PREFIX . "admins WHERE login='$_SESSION[login]'";
+ $result = mysql_query($sql, $db);
+ $row = mysql_fetch_assoc($result);
+ //This key should be unique often enough yet binds to the user only.
+ //easier way is to create a key table
+ $privateKey = hash_hmac('sha256', $row['last_login'], $row['password']);
+
+ /*
+ * Our simple way to sign the key
+ * include GET header, then sort query, add current timestamp, sign it.
+ */
+ $canonicalArray['publicKey'] = $publicKey;
+ $canonicalArray['timestamp'] = $timestamp;
+
+ $str = "GET http/1.0\n";
+ foreach ($canonicalArray as $k => $v) {
+ $str .= "$k=" . rawurlencode($v) . "\n";
+ }
+ $hmacSignature = base64_encode(hash_hmac('sha512', $str, $privateKey, true));
+ return rawurlencode($hmacSignature);
+}
+
+/**
+ * Verify request by the given signedUrl
+ * @param String querystring without '?', usually the $_SERVER['QUERY_STRING']
+ *
+ */
+function at_verify_request($signature, $timestamp, $publicKey) {
+ global $db;
+ if ($signature == "" || $timestamp == "" || $publicKey == "") {
+ //if parameters are empty, return false.
+ return false;
+ }
+ $sql = 'SELECT last_login FROM ' . TABLE_PREFIX . "admins WHERE login='$_SESSION[login]'";
+ $result = mysql_query($sql, $db);
+ $row = mysql_fetch_assoc($result);
+ $privateKey = hash_hmac('sha256', $row['last_login'], $row['password']);
+
+ $canonicalArray = array();
+ $canonicalArray['publicKey'] = $publicKey;
+ $canonicalArray['timestamp'] = $timestamp;
+ //check expirary
+ $timeDiff = time() - strtotime($canonicalArray['timestamp']);
+ if ($timeDiff > 36000) {
+ //more than 10mins, expired.
+ //TODO: use constants.
+ die('time expired');
+ return false;
+ }
+ //check data integrity
+ //generate our own hmac to check
+ $str = "GET http/1.0\n";
+ foreach ($canonicalArray as $k => $v) {
+ $str .= "$k=" . rawurlencode($v) . "\n";
+ }
+ $hmacSignature = base64_encode(hash_hmac('sha512', $str, $privateKey, true));
+ if (rawurldecode($signature) === $hmacSignature) {
+ return true;
+ }
+ return false;
+}
+
if (isset($_GET['deny']) && isset($_GET['id'])) {
header('Location: admin_deny.php?id='.$_GET['id']);
exit;
*/
} else if (isset($_GET['approve']) && isset($_GET['id'])) {
+ //verify token first.
+ if (!at_verify_request($_GET['auth_token'], $_GET['auth_timestamp'], $_GET['auth_publicKey'])) {
+ $msg->addError('INVALID_AUTH_REQUEST');
+ header('Location: instructor_requests.php');
+ exit;
+ }
+
$id = intval($_GET['id']);
$sql = 'DELETE FROM '.TABLE_PREFIX.'instructor_approvals WHERE member_id='.$id;
$msg->addError('NO_ITEM_SELECTED');
}
+/* Authentication info */
+$timestamp = gmdate("Y-m-d\TH:i:s\Z");
+$publicKey = hash('sha256', mt_rand());
+
require(AT_INCLUDE_PATH.'header.inc.php');
$sql = "SELECT M.login, M.first_name, M.last_name, M.email, M.member_id, A.* FROM ".TABLE_PREFIX."members M, ".TABLE_PREFIX."instructor_approvals A WHERE A.member_id=M.member_id ORDER BY M.login";
$result = mysql_query($sql, $db);
$num_pending = mysql_num_rows($result);
- ?>
-
- <form name="form" method="get" action="<?php echo $_SERVER['PHP_SELF']; ?>">
- <table class="data" summary="" rules="cols">
- <thead>
- <tr>
- <th scope="col"> </th>
- <th scope="col"><?php echo _AT('login_name'); ?></th>
- <th scope="col"><?php echo _AT('first_name'); ?></th>
- <th scope="col"><?php echo _AT('last_name'); ?></th>
- <th scope="col"><?php echo _AT('email'); ?></th>
- <th scope="col"><?php echo _AT('notes'); ?></th>
- </tr>
- </thead>
- <tfoot>
- <tr>
- <td colspan="6">
- <input type="hidden" name="auth_publicKey" value="<?php echo $publicKey; ?>" />
- <input type="hidden" name="auth_timestamp" value="<?php echo $timestamp; ?>" />
- <input type="hidden" name="auth_token" value="<?php echo at_sign_request($timestamp, $publicKey); ?>" />
- <input type="submit" name="deny" value="<?php echo _AT('deny'); ?>" />
- <input type="submit" name="approve" value="<?php echo _AT('approve'); ?>" /></td>
- </tr>
- </tfoot>
- <tbody>
- <?php
- if ($row = mysql_fetch_assoc($result)) {
- do {
- echo '<tr onmousedown="document.form[\'i'.$row['member_id'].'\'].checked = true;rowselect(this);" id="r_'.$row['member_id'].'">';
- echo '<td><input type="radio" name="id" value="'.$row['member_id'].'" id="i'.$row['member_id'].'" /></td>';
- echo '<td><label for="i'.$row['member_id'].'">'.AT_print($row['login'], 'members.login').'</label></td>';
- echo '<td>'.AT_print($row['first_name'], 'members.first_name').'</td>';
- echo '<td>'.AT_print($row['last_name'], 'members.last_name').'</td>';
- echo '<td>'.AT_print($row['email'], 'members.email').'</td>';
-
- echo '<td>'.AT_print($row['notes'], 'instructor_approvals.notes').'</td>';
-
- echo '</tr>';
- } while ($row = mysql_fetch_assoc($result));
- } else {
- echo '<tr><td colspan="6">'._AT('none_found').'</td></tr>';
- }
- ?>
- </tbody>
- </table>
- </form>
- <?php require(AT_INCLUDE_PATH.'footer.inc.php'); ?>
+ $savant->assign('result', $result);
+ $savant->assign('num_pending', $num_pending);
+ $savant->display('admin/users/instructor_requests.tmpl.php');
-require(AT_INCLUDE_PATH.'footer.inc.php'); ?>
++
++require(AT_INCLUDE_PATH.'footer.inc.php');
++?>
$this->_pages['mods/_standard/patcher/index_admin.php']['title_var'] = 'patcher';\r
$this->_pages['mods/_standard/patcher/index_admin.php']['parent'] = AT_NAV_ADMIN;\r
$this->_pages['mods/_standard/patcher/index_admin.php']['avail_in_mobile'] = false;\r
- \r
-\r
++
$this->_pages['mods/_standard/patcher/index_admin.php']['children'] = array('mods/_standard/patcher/myown_patches.php','mods/_standard/patcher/patch_create.php');\r
$this->_pages['mods/_standard/patcher/myown_patches.php']['title_var'] = 'myown_patches';\r
$this->_pages['mods/_standard/patcher/myown_patches.php']['parent'] = 'mods/_standard/patcher/index_admin.php';\r
-\r
+ \r
$this->_pages['mods/_standard/patcher/myown_patches.php']['children'] = array('mods/_standard/patcher/patch_create.php');\r
$this->_pages['mods/_standard/patcher/patch_create.php']['title_var'] = 'create_patch';\r
$this->_pages['mods/_standard/patcher/patch_create.php']['parent'] = 'mods/_standard/patcher/myown_patches.php';\r
-\r
+ \r
$this->_pages['mods/_standard/patcher/patch_edit.php']['title_var'] = 'edit_patch';\r
$this->_pages['mods/_standard/patcher/patch_edit.php']['parent'] = 'mods/_standard/patcher/myown_patches.php';\r
\r
margin-left:.8em;
float:left;
}
- /* main body attributes */
+ /* main body attributes STARTED HERE */
body {
font-family: Verdana, Helevetica, Arial, sans-serif;
+ font-size:.8em;
margin:0px;
- margin-top: -10px;
- background-color: #EDE7C2;
+ background-color: #F2F9FA;
}
.page_wrapper{
- border:1px solid #aaaaaa;
- width:97%;
+/* border:1px solid #aaaaaa;*/
+ width:100%;
margin-left:auto;
margin-right:auto;
- margin-top:1em;
background-color: #ffffff;
border-radius: 1em 1em 1em 1em;
-moz-border-radius: 1em 1em 1em 1em;
- -moz-box-shadow:.1em .1em #999999;
- box-shadow: .1em .1em #999999;
- background-image: url('images/atutor_head.jpg');
+/* -moz-box-shadow:.1em .1em #999999;
+ box-shadow: .1em .1em #999999;*/
+/* background-image: url('images/atutor_head.jpg');*/
background-position: 0% 0%;
background-repeat: repeat-x;
background-size:auto auto;
margin: 0.5em 0em 1em 0em;
text-align: justify;
line-height: 150%;
- font-size: 1em;
+/* font-size: 1em;*/
}
p a {
h2.sidebox{
font-size: 110%;
}
+h2.box{
+ font-size: 110%;
+}
h3 {
font-size: 130%;
}
border: #AAA solid 1px;
border-radius: .3em .3em .3em .3em;
-moz-border-radius: .3em .3em .3em .3em;
- -moz-box-shadow:.1em .1em .2em #999999;
- box-shadow: .1em .1em .2em #999999;
- font-size:100%;
+/* -moz-box-shadow:.1em .1em .2em #999999;
+ box-shadow: .1em .1em .2em #999999;*/
+/* font-size:100%;*/
}
.button:focus {
/* edit content tabs */
.buttontab {
color:#555;
- font-size:10pt;
white-space: nowrap;
background-color: #FFFFFF;
margin: 0px;
h1#section-title {
float: left;
margin-left:1em;
- margin-top:-1em;
+ margin-top:-.5em;
}
float:right;
clear:right;
margin-left: 2em;
- margin-top:.2em;
+ margin-top:-1em;
white-space:nowrap;
- background-color:#eeeeee;
+ background-color:#F2F7F7;
border:thin solid #cccccc;
border-radius: .3em .3em .3em .3em;
-mox-border-radius: .3em .3em .3em .3em;
- -moz-box-shadow:.1em .1em .2em #999999;
- box-shadow: .1em .1em .2em #999999;
+/* -moz-box-shadow:.1em .1em .2em #999999;
+ box-shadow: .1em .1em .2em #999999;*/
}
#top-links-jump{
float:left;
white-space:nowrap;
- margin-top:.2em;
- background-color:#eeeeee;
+ margin-top:-1em;
+ background-color:#F2F7F7;
padding-right:.5em;
}
#jumpmenu{
- background-color:#eeeeee;
+ background-color:#F2F7F7;
border:thin solid #cccccc;
border-radius:.3em .3em .3em .3em;
-moz-border-radius:.3em .3em .3em .3em;
- font-size:100%;
+/* font-size:100%;*/
}
a#editor-link {
background-color: #F7F3ED;
list-style: none;
margin-left: 0px;
padding-left: 0px;
+ list-style-type:none;
}
div#error ul li{
#header{
/* background-image: url('images/pencil_top_ds.png'); */
- background-position: 99% 99%;
- background-repeat: no-repeat;
+/* background-position: 99% 99%;*/
+ background-repeat: repeatx;
+ background-image: url('images/atutor_head.jpg');
+ height:4em;
+ margin-bottom:-2em;
+ padding-bottom: 2em;
}
#header a{
.contentbox{
border-radius:.5em;
-moz-border-radius: 0em 0em .5em .5em;
- -moz-box-shadow:.1em .1em .1em #999999;
- box-shadow: .1em .1em .1em #999999;
+/* -moz-box-shadow:.1em .1em .1em #999999;
+ box-shadow: .1em .1em .1em #999999;*/
}
.headingbox{
border-radius:.5em;
-moz-border-radius: .5em .5em 0em 0em;
- -moz-box-shadow:.1em .1em .2em #999999;
- box-shadow: .1em .1em .2em #999999;
+/* -moz-box-shadow:.1em .1em .2em #999999;
+ box-shadow: .1em .1em .2em #999999;*/
}
.headingbox a{
color: #A50707;
border-radius: .5em .5em 0em 0em;
-moz-border-radius: .5em .5em 0em 0em;
padding:.2em;
- border:1px solid #ccc;
- -moz-box-shadow:.1em .1em .1em #999999;
- box-shadow: .1em .1em .1em #999999;
+ border-top:1px solid #F2F7F7;
+ border-left:1px solid #F2F7F7;
+ border-right:1px solid #F2F7F7;
+ border-bottom:1px solid #F2F7F7;
+/* -moz-box-shadow:.1em .1em .1em #999999;
+ box-shadow: .1em .1em .1em #999999;*/
+}
+h2.box {
+ font-size:0.85em;
+ padding: 2px;
+ border-radius: .5em .5em 0em 0em;
+ -moz-border-radius: .5em .5em 0em 0em;
+ padding:.2em;
+ border-top:1px solid #F2F7F7;
+ border-left:1px solid #F2F7F7;
+ border-right:1px solid #F2F7F7;
+ border-bottom:1px solid #F2F7F7;
+/* -moz-box-shadow:.1em .1em .1em #999999;
+ box-shadow: .1em .1em .1em #999999;*/
}
div.box {
font-weight: normal;
border-radius:.0em .0em .5em .5em;
-moz-border-radius: .0em .0em .5em .5em;
- border-left:1px solid #ccc;
+/* border-left:1px solid #ccc;
border-right:1px solid #ccc;
- border-bottom:1px solid #ccc;
- -moz-box-shadow:.1em .1em .1em #999999;
- box-shadow: .1em .1em .1em #999999;
+ border-bottom:1px solid #ccc;*/
+/* -moz-box-shadow:.1em .1em .1em #999999;
+ box-shadow: .1em .1em .1em #999999;*/
}
h5.box {
div.box .content {
padding: 1em;
- font-size: 1em;
+/* font-size: 1em;*/
}
div.box a.close {
margin: -2em 5pt;
border-radius: .5em .5em .5em .5em;;
-moz-border-radius: .5em .5em .5em .5em;
- -moz-box-shadow:.1em .1em .2em #999999;
- box-shadow: .1em .1em .2em #999999;
- border:1px solid #cccccc;
+/* -moz-box-shadow:.1em .1em .2em #999999;
+ box-shadow: .1em .1em .2em #999999;*/
+ border:1px solid #F2F7F7;
padding-top: .2em;
padding-left: .2em;
padding-right: .2em;
padding:.2em
}
div#shortcuts{
- border-left:thin solid #cccccc;
- border-right:thin solid #cccccc;
- border-bottom:thin solid #cccccc;
- border-radius: 0em 0em .5em .5em;;
+ border-left:thin solid #F2F7F7;
+ border-right:thin solid #F2F7F7;
+ border-bottom:thin solid #F2F7F7;
+ border-radius: 0em 0em .5em .5em;
-moz-border-radius: 0em 0em .5em .5em;
float:right;
margin-top:-.2em;
- -moz-box-shadow:.1em .1em .2em #999999;
- box-shadow: .1em .1em .2em #999999;
+/* -moz-box-shadow:.1em .1em .2em #999999;
+ box-shadow: .1em .1em .2em #999999;*/
margin-right:2em;
padding:.1em;
}
border-bottom:thin solid #cccccc;
border-radius: 0em 0em .5em .5em;
-moz-border-radius: 0em 0em .5em .5em;
- -moz-box-shadow:.1em .1em .2em #999999;
- box-shadow: .1em .1em .2em #999999;
+/* -moz-box-shadow:.1em .1em .2em #999999;
+ box-shadow: .1em .1em .2em #999999;*/
float:right;
margin-top:-.2em;
margin-right:2em;
width: 80%;
}
div#content-test ol{
- margin-right: 5pt;
+ margin-right: 5pt;
}
div#content-test ol ul li{
- list-style: none;
+ list-style-type: none;
padding: 0px 2px 0px 15px;
margin-bottom: 1px;
line-height: 200%;
border-bottom: 1px solid #efefef;
border: 1px solid #eeeeff;
}
+div#content-test li{
+ list-style-type: none;
+}
+div#content-forum {
+ float: left;
+ margin-top: 2em;
+ padding-right: 5pt;
+ width: 80%;
+}
+div#content-forum ol{
+ margin-right: 5pt;
+}
+
+div#content-forum ol ul li{
+ list-style-type: none;
+ padding: 0px 2px 0px 15px;
+ margin-bottom: 1px;
+ line-height: 200%;
+ background-color: #fdfdfd;
+ border-bottom: 1px solid #efefef;
+ border: 1px solid #eeeeff;
+}
+div#content-forum li{
+ list-style-type: none;
+}
div#content-info {
margin: 5pt;
border:1px solid #cccccc;
border-radius: .5em .5em .5em .5em;
-moz-border-radius: .5em .5em .5em .5em;
- -moz-box-shadow:.1em .1em .2em #999999;
- box-shadow: .1em .1em .2em #999999;
+/* -moz-box-shadow:.1em .1em .2em #999999;
+ box-shadow: .1em .1em .2em #999999;*/
padding:.2em
}
padding:5em;
border-radius:.5em .5em .5em .5em;
-moz-border-radius: .5em .5em .5em .5em;
- -moz-box-shadow:.1em .1em .2em #999999;
- box-shadow: .1em .1em .2em #999999;
+/* -moz-box-shadow:.1em .1em .2em #999999;
+ box-shadow: .1em .1em .2em #999999;*/
}
/* floating layout */
#contentwrapper{
}
/** forum stuff **/
-#forum-thread li {border:1px solid #eee; border-bottom: 1px solid #F7F3ED; float:left; width: 97%; list-style: none; }
-#forum-thread li.even { background-color: #F7F3ED; border-top: none; margin-top:.5em;}
-#forum-thread li.odd { background-color: #fff; margin-top:1em;}
+.forum-thread li {border:1px solid #eee; border-bottom: 1px solid #F7F3ED; float:left; width: 97%; list-style: none; }
+.forum-thread li.even { background-color: #F7F3ED; border-top: none; margin-top:.5em;}
+.forum-thread li.odd { background-color: #fff; margin-top:1em;}
div.forum-post-author { float:left; width:150px; padding:8px 10px; }
div.forum-post-author a.title {font-size: 1.1em; line-height: 1.2em; font-weight: bold; text-decoration:none; }
div.forum-post-author img.profile-picture { border: 2px solid #F7F3ED; text-align:right;}
/*background-image: url('images/pencil_bottom_ds.png'); */
height:1.6em;
margin-left:1em;
- border-bottom:1px solid #cccccc;
clear:both;
+
}
ul#topnavlist {
list-style: none;
display: inline-block;
height:auto;
- margin-top:.1em;
border-radius: .5em .5em 0em 0em;
-moz-border-radius: .5em .5em 0em 0em;
- -moz-box-shadow:.1em .0em .1em #999999;
- box-shadow: .1em .0em .1em #999999;
+/* -moz-box-shadow:.1em .0em .1em #999999;
+ box-shadow: .1em .0em .1em #999999;*/
padding: 0em 0em 0em 0em;
}
ul#topnavlist li a:hover, ul#topnavlist li a:focus, ul#topnavlist li a.active {
- background-color: #E6E6E6;
+ background-color: #F2F7F7;
color: black;
text-decoration:none;
border-radius: .5em .5em 0em 0em;
-moz-border-radius: .5em .5em 0em 0em;
- padding: .2em 1.8em .2em 1.8em;
- border-bottom: 1px solid #E6E6E6;
+ padding: .1em 1.8em .2em 1.8em;
+ border-bottom: 1px solid #F2F7F7;
}
font-weight: normal;
border-radius:.3em .3em 0em 0em;
-moz-border-radius: .3em .3em 0em 0em;
- padding: .2em 1.8em .1em 1.8em;
+ padding: 1em 1.8em 1em 1.8em;
+ margin-bottom:0em;
}
ol#tools>li:hover {
li.child-tool {
display: inline;
margin-right: 5px;
- font-size: 80%;
+/* font-size: 80%;*/
}
/* to modify tool icons on the course home page */
padding-bottom: 10px;
background-color: #fffaf0;
border:1px #6F7172 solid;
- font-size:9pt;
+/* font-size:9pt;*/
min-height:18em;
margin:auto;
margin-left:1em;
padding-right: 1em;
border-radius:.2em;
-moz-border-radius: .2em .2em .2em .2em;
- -moz-box-shadow:.1em .1em .1em #999999;
- box-shadow: .1em .1em .1em #999999;
+/* -moz-box-shadow:.1em .1em .1em #999999;
+ box-shadow: .1em .1em .1em #999999;*/
}
/* file storage */
}
a.tooltip{
color:blue;
- font-size:100%;
+/* font-size:100%;*/
padding-left:.2em;
padding-right:.2em;
padding-bottom:.2em;
div.home_box {
width: 25em;
- height: 166px;
- margin-top: .4em;
+ height: 10em;
+ margin-top: 1em;
padding: 3px;
padding-bottom: .4em;
float: left;
height:9.8em;
-moz-border-radius:.3em .3em .3em .3em;
border-radius: .3em .3em .3em .3em;
- -moz-box-shadow:.1em .1em .2em #999999;
- box-shadow: .1em .1em .2em #999999;
+/* -moz-box-shadow:.1em .1em .2em #999999;
+ box-shadow: .1em .1em .2em #999999;*/
padding:.2em;
}
}
.draggable_selected {
- background-color: lightgrey;
+ background-color: lightgray;
cursor: move;
}
div#subnavlistcontainer {
- width:95%;
+ width:90%;
margin:auto;
-
- height:auto;
+ height:1.8em;
}
div#subnavbacktopage {
padding-top: 4px;
margin-top: 0px;
font-family: Verdana,Helvetica,Arial,serif;
- font-size:.8em;
+/*font-size:1.0em;*/
}
border-right:1px solid #cccccc;
border-radius: .3em .3em 0em 0em;
-moz-border-radius: .3em .3em 0em 0em;
- height:1.0em;
- -moz-box-shadow:.1em .0em .1em #999999;
- box-shadow: .1em .0em .1em #999999;
+ height:.8em;
+/* -moz-box-shadow:.1em .0em .1em #999999;
+ box-shadow: .1em .0em .1em #999999;*/
padding: 0em .5em .6em .5em ;
}
ul#subnavlist li a:hover, ul#subnavlist li a:focus, ul#subnavlist li.active, ul#subnavlist li:hover{
color: black;
text-decoration:none;
- background-color: #E6E6E6;
+ background-color: #F8F8F8;
+ border-bottom:thin solid #F8F8F8;
}
ul#subnavlist li a {
/* Content editor tabs */
.editor_buttontab {
color:#000000;
- font-size:10pt;
+/* font-size:10pt;*/
border:0;
white-space: nowrap;
background-color: #ffffff;
background-color: #ffffff;
border-radius: .3em .3em 0em 0em;
-moz-border-radius: .3em .3em 0em 0em;
- -moz-box-shadow:.1em .0em .1em #999999;
- box-shadow: .1em .0em .1em #999999;
+/* -moz-box-shadow:.1em .0em .1em #999999;
+ box-shadow: .1em .0em .1em #999999;*/
padding: 0em .2em 0em .2em ;
height:1.4em;
}
border: 1px solid #cccccc;
border-radius: .5em .5em .5em .5em;
-moz-border-radius: .5em .5em .5em .5em;
- -moz-box-shadow:.1em .1em .1em #999999;
- box-shadow: .1em .1em .2em #999999;
+/* -moz-box-shadow:.1em .1em .1em #999999;
+ box-shadow: .1em .1em .2em #999999;*/
}
ul.current_list{
}
.logoutbar{
- background-color:#E6E6E6;
+ background-color: #F2F7F7;
font-size:0.85em;
- border-bottom:1px solid #cccccc;
+ border-bottom:1px solid #F2F7F7;
height:2em;
- margin-top:-.15em;
text-align:right;
padding-right:1em;
clear:both;
table.etabbed-table {
padding-left:5em;
- font-size:10pt;
+/* font-size:10pt;*/
}
/* Preference Editor tabs */
.etabbed-list-container {
- font-size:10pt;
+/* font-size:10pt;*/
width:75%;
margin-left:auto;
margin-right:auto;
}
.prefs_buttontab {
- height:1.4em;
+
background-color: #ffffff;
border-left:0;
border-right:0;
border-bottom:0;
border-top: 1px solid #ffffff;
-
-/* color:#000555;
- font-size:0pt;
- white-space: nowrap;
- background-color: #ffffff;
- border:0;
- font-weight:500;
- padding:0em 0em -.3em -.4em;
- border-radius:.3em;
- -moz-border-radius: .3em .3em .3em .3em;*/
-
}
.prefs_tab{
- height:1.6em;
+
border-top: 1px solid #cccccc;
border-left: 1px solid #cccccc;
border-right: 1px solid #cccccc;
background-color: #FFFFFF;
border-radius: .3em .3em 0em 0em;
-moz-border-radius: .3em .3em 0em 0em;
- padding: .3em .2em 0em .3em;
+ padding: 0em .2em .2em .3em;
display: inline;
margin-left:.5em;
font-weight:bold;
text-decoration:none;
}
-
-
.prefs_tab_selected{
- height:1.8em;
+
border-top: 1px solid #cccccc;
border-left: 1px solid #cccccc;
border-right: 1px solid #cccccc;
background-color: #eeeeee;
border-radius:.3em .3em 0em 0em;
-moz-border-radius: .3em .3em 0em 0em;
- padding: .2em .2em 0em .5em;
- padding: .2em .2em 0em .3em;
+ padding: .2em .2em .2em .3em;
display: inline;
margin-left:.5em;
font-weight:bold;
}
-
-/*.prefs_buttontab {
- color:#000555;
- font-size:0pt;
- white-space: nowrap;
- background-color: #ffffff;
- margin-bottom: .5px;
- border:0;
- font-weight:500;
- padding:0em 0em 0em;
- border-radius:.3em;
- -moz-border-radius: .3em .3em .3em .3em;
-
-}
-.prefs_tab{
- border-top: 1px solid #cccccc;
- border-left: 1px solid #cccccc;
- border-right: 1px solid #cccccc;
- text-align: center;
- white-space: nowrap;
- background-color: #FFFFFF;
- border-radius: .3em .3em 0em 0em;
- -moz-border-radius: .3em .3em 0em 0em;
- padding: .2em .5em 0em .5em;
- -moz-box-shadow:.1em .1em 0em #999999;
- box-shadow: .1em .1em 0em #999999;
- display: inline;
- padding-bottom: .9px;
- margin: .5em;
+a.pref_wiz_launcher{
+ cursor:pointer;
}
-
-.prefs_buttontab:hover, .prefs_tab:hover {
- background-color: #eeeeee;
-}
-
-.prefs_tab_selected{
-
- border-top: 1px solid #cccccc;
- border-left: 1px solid #cccccc;
- border-right: 1px solid #cccccc;
- border-bottom:0;
- background-color: #eeeeee;
- margin: 0px;
- font-weight:bold;
- text-align:center;
- padding: .2em .5em 0em .5em ;
- white-space: nowrap;
- text-decoration:none;
- border-radius:.3em;
- -moz-border-radius: .3em .3em 0em 0em;
- -moz-box-shadow:.1em .1em .0 #999999;
- box-shadow: .1em .1em .1em #999999;
- display: inline;
-}*/
.admin_container{
border:1px solid #cccccc;
width:100%;
height:2.5em;
clear:both;
- font-size: 0.85em;
+/* font-size: 0.85em;*/
padding:3px;
float:left;
float:left;
border-radius: .5em .5em .5em .5em;
-moz-border-radius: .5em .5em .5em .5em;
- -moz-box-shadow:.1em .1em .1em #999999;
- box-shadow: .1em .1em .1em #999999;
+/* -moz-box-shadow:.1em .1em .1em #999999;
+ box-shadow: .1em .1em .1em #999999;*/
}
.shortcut_icon{
border:0;
margin-right:auto;
border-radius: .3em .3em .3em .3em;
-moz-border-radius: .3em .3em .3em .3em;
- -moz-box-shadow:.1em .1em .1em #999999;
- box-shadow: .1em .1em .1em #999999;
+/* -moz-box-shadow:.1em .1em .1em #999999;
+ box-shadow: .1em .1em .1em #999999;*/
}
.tr_results_tools{
border:thin solid #cccccc;
border-radius: .3em .3em .3em .3em;
-moz-border-radius: .3em .3em .3em .3em;
- -moz-box-shadow:.1em .1em .1em #999999;
- box-shadow: .1em .1em .1em #999999;
+/* -moz-box-shadow:.1em .1em .1em #999999;
+ box-shadow: .1em .1em .1em #999999;*/
}
div.pageinator_box{
border:0;
height:.9em;
width:.9em;
-font-size:100%;
+/*font-size:100%;*/
}
div.bypass{
height:1px;
}
/* relative image size styles */
-img.img1616{
-height:1.5em;
-width:1.5em;
+input.img1616{
+cursor:pointer;
+}
+
+input.img1616, img.img1616{
+height:1.6em;
+width:1.6em;
}
img.img1111{
font-size:100%;
}
+.fl-force-right{
+float:right;
+
+}
img.fl-col{
height:3.5em;
width:3.5em;
-font-size:100%;
+/*font-size:100%;*/
+}
+
+
+/* Photo Album Styles
+ *
+ *
+ *
+ *
+ */
+div.topbar{
+ float:left;
+ width: 95%;
+}
+div.paginator{
+ float: right;
+ margin: 0px;
+}
+.paginator ul li{
+ list-style: none;
+}
+.paginator li{
+ padding-right: 0.5em;
+ float: left;
+}
+
+div.summary{
+ float: left;
+ margin-top: 0.5em;
+ width:70%;
+}
+
+div.album_panel{
+ float: left;
+ background: #F7F7F7;
+ border: 1px solid #D2D2D2;
+ width: 96%;
+ border-radius:.5em;
+ -moz-border-radius: .5em .5em .5em .5em;
+/* -moz-box-shadow:.2em .2em .1em #999999;
+ box-shadow: .2em .2em .1em #999999;*/
+ padding:.3em;
+}
+div.album_panel div.photo_wrapper {
+ /* This class is to fix the problem where the images shift
+ * to the right when there is a border upon selection
+ */
+ height: 150px;
+ float: left;
+}
+div.album_panel .photo_frame{
+ float: left;
+ margin: 0.2em;
+ min-height: 140px;
+ min-width: 140px;
+ text-align: center;
+}
+div.album_panel .photo_frame a:focus, div.album_panel .photo_frame a:hover{
+ cursor: pointer;
+ float:left;
+ min-width: 140px;
+ min-height: 140px;
+ background: #FCE6C9;
+}
+div.album_panel .photo_frame img{
+ background: #FFFFFF;
+ border: 1px solid #D2D2D2;
+ padding: 0.2em;
+}
+div.album_panel .album_description{
+ margin: 0.5em;
+ width: 95%;
+ float: left;
+}
+
+div.search_bar {
+ /* background-image: url('images/search_bg.png');
+ background-repeat: no-repeat; */
+ background-color:#ffffff;
+ border:thin solid #cccccc;
+ margin-left: 0.5em;
+ margin-top: 0.5em;
+ height: 27px;
+ width: 180px;
+ float: left;
+ border-radius:.5em;
+ -moz-border-radius:.8em .8em .8em .8em;
+/* -moz-box-shadow:.2em .2em .1em #999999;
+ box-shadow: .2em .2em .1em #999999;*/
+}
+div.search_bar .s{
+ float: left;
+ border: 0px;
+ margin-top: 0.3em;
+ margin-left: 0.5em;
+ width: 148px;
+}
+div.search_bar .s_img{
+ float: right;
+ border: 0px;
+ margin-top: 0.375em;
+ margin-top: -1.4em\9; /* the \9 to accomodate IE 7&8 */
+ margin-right: 0.4em;
+}
+
+div.album {
+ background: #FFFFFF;
+ padding:1em;
+ border: 1px solid #D2D2D2;
+ width: 95%;
+ margin: 0.5em;
+ float: left;
+ border-radius:.5em .5em .5em .5em;
+ -moz-border-radius: .5em .5em .5em .5em;
+/* -moz-box-shadow:.2em .2em .1em #999999;
+ box-shadow: .2em .2em .1em #999999;*/
+}
+div.album .image{
+ float: left;
+ margin: 0.5em;
+ min-width: 140px;
+}
+div.album img{
+ border-width: 0px;
+}
+div.album .image img.no-image {
+ float: left;
+ width: 130px;
+ height: 97px;
+ background-color: #EFEFEF;
+}
+div.album .info{
+ float: left;
+ width: 70%;
+}
+div.album .info span{
+ float: left;
+ color: #666666;
+}
+div.album .info p{
+ font-size: 0.85em;
+ margin: 0;
+}
+div.album .search_photo_frame{
+ float: left;
+ margin: 0.2em;
+ min-height: 160px;
+ max-height: 160px;
+ max-width: 140px;
+ text-align: center;
+ border: 1px solid #d3d3d3;
+ overflow: hidden;
+}
+div.album .search_slider{
+ float: left;
+ overflow: hidden;
+ position: relative; /* ie7 */
+}
+div.album .search_slider_left{
+ float: left;
+ width: 10%;
+}
+div.album .search_slider_right{
+ float: right;
+ text-align: right;
+ width: 10%;
+}
+div.album .search_slider ul {
+ list-style-type: none;
+ margin: 0;
+ padding: 0;
+ width: 99999px;
+ position: relative;
+}
+div.album .search_slider ul li{
+ float: left;
+}
+div.album .search_slider_a{
+ width: 80%;
+}
+div.album .search_slider_p{
+ width: 730px; /* 146 per frame, 5 frame per row */
+}
+div.album .search_slider_p ul li{
+/* height: 576px; /* 144 per frame, 4 row */
+ width: 730px; /* 146 per frame, 5 frame per row */
+}
+div.album .search_paginator {
+ width: 100%;
+}
+
+div.add_photo{
+ float: left;
+ background: #F7F7F7;
+ border: 1px solid #D2D2D2;
+ width: 96%;
+ border-radius:.5em;
+ -moz-border-radius: .3em .3em .3em .3em;
+ margin-bottom:.2em;
+}
+div.add_photo ul{
+ margin: 0px;
+ padding: 0px;
+}
+div.add_photo .toggle_uploader{
+ width: 95%;
+ margin: 0.5em;
+}
+div.add_photo div#ajax_uploader{
+ display: none;
+ margin-top: 0.5em;
+}
+div.add_photo .files .tn {
+ max-height: 30px;
+}
+div.add_photo img{
+ border: 0;
+}
+div.add_photo ul li{
+ float: left;
+ padding: 0.2em;
+ list-style: none;
+ width: 100%;
+ height: 100%;
+ border-bottom: 1px solid #ddd;
+/* display: inline; */
+}
+div.add_photo p.memory_usage {
+ float: right;
+ font-size: 0.9em;
+ color: #5B5B5B;
+}
+
+div.add_profile_photo{
+ float: left;
+ background: #F7F7F7;
+ border: 1px solid #D2D2D2;
+ width: 96%;
+ border-radius:.5em;
+ -moz-border-radius: .5em .5em .5em .5em;
+/* -moz-box-shadow:.2em .2em .1em #999999;
+ box-shadow: .2em .2em .1em #999999;*/
+ margin-bottom:.2em;
+
+}
+div.add_profile_photo .profile_photo{
+ float: left;
+ padding: 0.5em;
+
+}
+div.add_profile_photo .uploader{
+ float: left;
+ width: 50%;
+ padding: 0.5em;
+ border-bottom: 1px solid #ddd;
+}
+
+div.photo_panel{
+ background: #F7F7F7;
+ float: left;
+ border: 1px solid #D2D2D2;
+ text-align: center;
+ width: 95%;
+ padding: 0.5em;
+ border-radius:.5em;
+ -moz-border-radius: .5em .5em .5em .5em;
+}
+div.photo_panel img{
+ background: #FFFFFF;
+ border: 1px solid #D2D2D2;
+ padding: 0.2em;
+}
+div.photo_panel div.ordering{
+ float:left;
+}
+div.photo_panel div.paginator{
+ float:right;
+}
+div.photo_panel .flc-inlineEditable{
+ width: 604px;
+ margin: 0 auto;
+ padding-top: 0.5em;
+ padding-bottom: 0.5em;
+}
+div.comment_panel{
+ background: #FFFFFF;
+ float: left;
+ border: 1px solid #D2D2D2;
+ width: 95%;
+ padding:.5em;
+ border-radius: .3em .3em .3em .3em;
+ -moz-border-radius: .3em .3em .3em .3em;
+/* -moz-box-shadow:.2em .2em .1em #999999;
+ box-shadow: .2em .2em .1em #999999;*/
+ margin-top:.2em;
+}
+div.comment_panel .comment_feeds{
+ float: left;
+ width: 50%;
+}
+div.comment_panel .photo_actions{
+ margin: 0.5em;
+ max-width: 49%;
+ background: #F7F7F7;
+ float:right;
+ padding:1em;
+ border:thin solid #cccccc;
+ border-radius:.3em;
+ -moz-border-radius: .3em .3em .3em .3em;
+}
+.row textarea#comment_template, textarea#comment_template active{
+ background-color:#eeeeee;
+ border:thin solid #eeeeee;
+ border:thin solid #cccccc;
+ padding:.2em;
+ border-radius:.3em;
+ -moz-border-radius: .3em .3em .3em .3em;
+}
+.row textarea#comment{
+ background-color:#ffffff;
+ border:thin solid #eeeeee;
+ border:thin solid #cccccc;
+ padding:.2em;
+ border-radius:.3em;
+ -moz-border-radius: .3em .3em .3em .3em;
+}
+div.comment_panel textarea{
+ width:100%;
+}
+
+div.comment_box{
+ float:left;
+ width:100%;
+ margin: 0.5em;
+ padding-top: 0.5em;
+ padding-bottom: 0.5em;
+ background: #F7F7F7;
+}
+div.comment_box .comment_actions{
+ float: left;
+ margin-top: 1em;
+ font-size: 0.8em;
+ color: #666666;
+}
+
+div.edit_photo_frame{
+ width: 95%;
+ float: left;
+ padding: 0.2em;
+ background: #F7F7F7;
+ border:thin solid #cccccc;
+ border-radius:.5em;
+ -moz-border-radius: .5em .5em .5em .5em;
+}
+div.edit_photo_box{
+ float: left;
+ border: 1px solid #D2D2D2;
+ background: white;
+ margin: 0.2em;
+ margin-bottom: 0.8em;
+ padding: 0.8em;
+ width: 94%;
+ border-radius:.3em;
+ -moz-border-radius: .3em .3em .3em .3em;
+}
+div.edit_photo_box .info{
+ float: left;
+ width: 60%;
+}
+
+.info textarea{
+ background-color: #eeeeee;
+ border:thin solid #cccccc;
+ border-radius:.3em;
+ -moz-border-radius: .3em .3em .3em .3em;
+ margin-top:.2em;
+}
+div.edit_photo_box .info textarea.alt_text{
+ height: 2.5em;
+}
+div.edit_photo_box .info textarea{
+ width: 100%;
+}
+div.edit_photo_box .action{
+ float: right;
+ background: #F7F7F7;
+ min-width: 140px;
+ padding:.2em;
+ border:thin solid #cccccc;
+ border-radius:.3em;
+ -moz-border-radius: .3em .3em .3em .3em;
+}
+
+
+/* FLUID Image Reorderer */
+.fl-imageReorderer-item {
+}
+.fl-reorderer-movable-hover a{
+ cursor: pointer;
+ background-color: #ECEECC;
+}
+.fl-reorderer-movable-dragging a{
+ background-color: #ECEECC;
+}
+.fl-reorderer-dropMarker {
+ border: 2px solid red;
+ min-height: 100px;
+ float: left;
+}
+.fl-reorderer-avatar {
+ opacity: 0.6;
+ filter:alpha(opacity=60);
+}
+
+
+/* FLUID Simple Inline Editor */
+.fl-inlineEdit-invitation {
+ background-color: #FFECB3 !important;
+ border: 1px solid #CCC !important;
+}
+.fl-inlineEdit-focus {
+ border: 2px solid #777777;
+}
+
+
+.pa_tool_link{
+
+text-decoration:none;
+}
+
+.pa_tool_image{
+vertical-align:middle;
+margin-right:.5em;
}
-
+ /*social networking box on admin page */
+ #social_networking{
+ padding: 1em;
+ margin: 0;
+ }
- */
+/* End Photo Album Styles
+ *
+ *
+ *
+ *
++ */
<?php require(AT_INCLUDE_PATH.'header.inc.php'); ?>
-
<div id="my_courses_container">
<table class="data" style="width:100%;">
<tr><th></th>
</td>
-
<td><?php echo '<a href="'.url_rewrite('bounce.php?course=' . $row['course_id']) . '"> '.htmlentities_utf8($row['title']).'</a>' ?>
<br /><small><?php echo _AT('category'); ?>: <?php echo get_category_name($row['cat_id']); ?></small>
</td>
- <td><small><?php echo '<a href="'.AT_BASE_HREF.'inbox/send_message.php?id='.$row['member_id'].'">'. get_display_name($row['member_id']).'<a/>'; ?></small></td>
+ <td><small><?php echo '<a href="'.AT_BASE_HREF.'inbox/send_message.php?id='.$row['member_id'].'">'. get_display_name($row['member_id']).'</a>'; ?></small></td>
<td><small>
<?php
</small></td>
<td>
- <small>
- <ul>
+<?php if($_config['allow_unenroll'] || $row['tests']){ ?>
+ <ul>
<?php if ($row['member_id'] != $_SESSION['member_id'] && $_config['allow_unenroll'] == 1): ?>
<li><a href="users/remove_course.php?course=<?php echo $row['course_id']; ?>"><?php echo _AT('unenroll_me'); ?></a></li>
- <?php endif; ?><br>
+ <?php endif; ?>
<?php if ($row['tests']): ?>
<?php foreach ($row['tests'] as $test): ?>
<li><a href="bounce.php?course=<?php echo $row['course_id'].SEP.'p='.urlencode('mods/_standard/tests/test_intro.php?tid='.$test['test_id']); ?>"><span title="<?php echo _AT('tests'); ?>:<?php echo $test['title']; ?>"><?php echo $test['title']; ?></span></a> </li>
<?php endforeach ;?>
<?php endif; ?>
- </ul> </small>
+ </ul>
+<?php } ?>
+
<?php if ($row['last_cid']): ?>
<div class="shortcuts" style="float:right;">
<a href="bounce.php?course=<?php echo $row['course_id'].SEP.'p='.urlencode('content.php?cid='.$row['last_cid']); ?>"><img src="<?php echo $_base_href; ?>themes/default/images/resume.png" border="" alt="<?php echo _AT('resume'); ?>" title="<?php echo _AT('resume'); ?>" class="img1616"/></a>
}
}
-if (!$switch_tab && isset($_POST['current_tab'])) {
- $current_tab = intval($_POST['current_tab']);
+if (!$switch_tab && isset($_REQUEST['current_tab'])) {
+ $current_tab = intval($_REQUEST['current_tab']);
}
if ($current_tab == 1)
echo ' <input type="hidden" name="show_guide" value="'.$_POST['show_guide'].'" />'."\n\r";
else if (isset($_SESSION['prefs']['PREF_SHOW_GUIDE']))
echo ' <input type="hidden" name="show_guide" value="'.$_SESSION['prefs']['PREF_SHOW_GUIDE'].'" />'."\n\r";
-
+
if (isset($_POST['content_editor']))
echo ' <input type="hidden" name="content_editor" value="'.$_POST['content_editor'].'" />'."\n\r";
else if (isset($_SESSION['prefs']['PREF_CONTENT_EDITOR']))
<?php
if($_SESSION['course_id'] == "-1"){
echo '</div>';
+
}
+
require(AT_INCLUDE_PATH.'footer.inc.php'); ?>
if (!defined('AT_INCLUDE_PATH')) { exit; }
global $_base_path;
- if ($this->banner): ?><?php echo $this->banner; ?><br /><?php endif;
+ if ($this->banner): ?>
+ <?php echo $this->banner; ?><br /><?php endif;
+ /** Icon View removed for mobile.
// positioning switch of home ONLY FOR INSTRUCTORS. two icons will be used for identification to distinguish the two different views of the home.
if(authenticate(AT_PRIV_ADMIN,AT_PRIV_RETURN) && count($this->home_links) > 0){
if($this->view_mode==0)
echo '<a href ="'.AT_BASE_HREF.'switch_view.php?swid='.$this->view_mode.'" ><img src="'.AT_BASE_HREF.'images/icon_view.png" title ="'._AT('icon_view').'" alt ="'._AT('icon_view').'" /></a><br />';
}
+
// Icon View, $this->view_mode = 0. course will be made changes to the icons to restore the classic icons.
if($this->view_mode==0){
?>
</div>
<?php
} // end of if
+ */
if ($this->announcements): ?>
<h2 class="page-title"><?php echo _AT('announcements'); ?></h2>
<?php foreach ($this->announcements as $item): ?>
<div class="news">
<h3><?php echo $item['title']; ?></h3>
- <p><span class="date"><?php echo $item['date'] .' '. _AT('by').' ' . $item['author']; ?></span></p> <?php echo $item['body']; ?>
+ <span class="date"><?php echo $item['date'] .' '. _AT('by').' ' . $item['author']; ?></span></p> <?php echo $item['body']; ?></span>
+
</div>
<?php endforeach; ?>
<div class="outside_box">
<?php if (authenticate(AT_PRIV_ADMIN,AT_PRIV_RETURN)) {?>
<div class="buttonbox">
- <a href="#" onclick="javascript: remove_module('<?php echo htmlentities(substr($link['url'], strlen($_base_path))); ?>'); return false;"><img src="<?php echo AT_BASE_HREF; ?>images/x.gif" border="0" alt="<?php echo _AT('close'); ?>"/></a>
+ <input type="image" onclick="javascript: remove_module('<?php echo htmlentities(substr($link['url'], strlen($_base_path))); ?>');" src="<?php echo AT_BASE_HREF; ?>images/x.gif" alt="<?php echo _AT('close'); ?>" value="<?php echo _AT('close'); ?>" class="img1616"/>
</div>
<?php }?>
<img src="<?php echo $link['img']; ?>" alt="" border="0" height="45" width="45"/>
</div>
</div>
-
-
-
-<!--
-<div class="details_ol">
- <div class="details_or">
- <div class="outside_box">
-<?php if (authenticate(AT_PRIV_ADMIN,AT_PRIV_RETURN)) {?>
- <div class="buttonbox">
- <a href="#" onclick="javascript: remove_module('<?php echo htmlentities(substr($link['url'], strlen($_base_path))); ?>'); return false;"><img src="<?php echo AT_BASE_HREF; ?>images/x.gif" border="0" alt="<?php echo _AT('close'); ?>"/></a>
- </div>
-<?php }?>
- <img src="<?php echo $link['img']; ?>" alt="" border="0" height="51" width="51"/>
- <span class="home-title"><a href="<?php echo $link['url']; ?>"><?php echo $link['title']; ?></a></span>
- <div class="inside_box">
- <div class="details_il"> </div>
- <div class="details_ir"></div>
-<?php
- // if $link['sub_file'] is defined, print the text array returned from sub_file, otherwise, print the text defined in $link['text']
- if($link['sub_file']!=""){
- //$array = require(AT_INCLUDE_PATH.'../'.$link['sub_file']);
- if(!is_array($array)){
-?>
- <div class="details-text">
- <i><?php echo _AT('none_found'); ?></i>
- </div>
-<?php } else { ?>
- <div class="details-text">
-<?php foreach($array as $sublink){ ?>
- <img src="<?php echo $link['icon']; ?>" border="0" alt="" />
-<?php if ($sublink <> '') echo $sublink."<br />"; } ?>
- </div>
-<?php
- } // end of else
- } else { ?>
- <div class="details_text"><?php echo $link['text']; ?></div>
-<?php } ?>
- </div>
- </div>
- </div>
-</div>
--->
<?php } ?>