Skip to content

Commit

Permalink
Use moodle's jquery and jquery-ui.
Browse files Browse the repository at this point in the history
Fixed some notices and modified whitespaces.
  • Loading branch information
jounisuo committed Sep 1, 2016
1 parent 37524d9 commit 0650e49
Show file tree
Hide file tree
Showing 4 changed files with 64 additions and 53 deletions.
49 changes: 32 additions & 17 deletions auth/saml/auth.php
Expand Up @@ -171,7 +171,7 @@ function config_form($config, $err, $user_fields) {
$dbman = $DB->get_manager();

$table_course_mapping = $this->get_course_mapping_xmldb();
$table_role_mapping = $this->get_role_mapping_xmldb();
$table_role_mapping = $this->get_role_mapping_xmldb();

if(isset($config->supportcourses) && $config->supportcourses == 'internal') {
if(!$dbman->table_exists($table_course_mapping)) {
Expand Down Expand Up @@ -211,9 +211,9 @@ function validate_form($form, &$err) {
}

if ($form->supportcourses == 'external') {
if ($form->externalcoursemappingdsn == '' || $form->externalcoursemappingsql == '' || $form->externalrolemappingdsn == '' || $form->externalrolemappingsql == '') {
if ($form->externalcoursemappingdsn == '' || $form->externalcoursemappingsql == '' || $form->externalrolemappingdsn == '' || $form->externalrolemappingsql == '') {
$err['samlexternal'] = get_string('auth_saml_errorsamlexternal', 'auth_saml', $form->samllib);
}
}
}
else if($form->supportcourses == 'internal') {

Expand All @@ -223,7 +223,7 @@ function validate_form($form, &$err) {
if (isset($form->update_courses_id)) {
foreach ($form->update_courses_id as $course_id) {
$course = $form->{'course_' . $course_id};
if (!empty($course[1]) && !empty($course[2])) {
if (!empty($course[1]) && !empty($course[2])) {
$lms_course_form_id[$course_id] = $course[0];
$saml_course_form_id[$course_id] = $course[1] . '_' . $course[2];
}
Expand All @@ -239,7 +239,7 @@ function validate_form($form, &$err) {
$lms_course_form_id[$i] = $new_course[0];
$saml_course_form_id[$i] = $new_course[1] . '_' . $new_course[2];
}
}
}
}
//Comment the next line if you want let duplicate lms mapping
$err['course_mapping']['lms'] = array_diff_key($lms_course_form_id, array_unique($lms_course_form_id));
Expand Down Expand Up @@ -360,8 +360,8 @@ function process_config($config) {
if (!isset ($config->samllogoinfo)) {
$config->samllogoinfo = 'SAML login';
}
if (!isset ($config->autologin)) {
$config->autologin = false;
if (!isset ($config->autologin)) {
$config->autologin = false;
}
if (!isset ($config->samllogfile)) {
$config->samllogfile = '';
Expand All @@ -376,16 +376,16 @@ function process_config($config) {
$config->ignoreinactivecourses = '';
}
if (!isset ($config->externalcoursemappingdsn)) {
$config->externalcoursemappingdsn = '';
$config->externalcoursemappingdsn = '';
}
if (!isset ($config->externalrolemappingdsn)) {
$config->externalrolemappingdsn = '';
$config->externalrolemappingdsn = '';
}
if (!isset ($config->externalcoursemappingsql)) {
$config->externalcoursemappingsql = '';
$config->externalcoursemappingsql = '';
}
if (!isset ($config->externalrolemappingsql)) {
$config->externalrolemappingsql = '';
$config->externalrolemappingsql = '';
}
if (!isset ($config->disablejit)) {
$config->disablejit = false;
Expand Down Expand Up @@ -493,13 +493,13 @@ function process_config($config) {
}
}
}
}
}
else {
//Updating roles
if (isset($config->update_roles_id) && empty($err['roles_mapping'])) {
foreach($config->update_roles_id as $role_id) {
$role = $config->{'role_' . $role_id};
$sql = "UPDATE ".$DB->get_prefix() ."role_mapping SET lms_role='" . $role[0] . "', saml_role='" . $role[1] . "' where saml_role='" . $role_id . "'";
$sql = "UPDATE ".$DB->get_prefix() ."role_mapping SET lms_role='" . $role[0] . "', saml_role='" . $role[1] . "' where saml_role='" . $role_id . "'";
try {
$DB->execute($sql);
}
Expand Down Expand Up @@ -528,12 +528,27 @@ function process_config($config) {
if(isset($err['role_mapping_db']) || isset($err['course_mapping_db'])) {
return false;
}

//END-COURSE MAPPINGS
}
return true;
}

/**
* Get the auth description (from core or own auth lang files)
*
* @return string The description
*/
function get_description() {
global $PAGE;
if ($PAGE->pagetype == 'admin-auth-saml') {
// Workaround require jquery and jquery-ui before auto_config.php $OUTPUT->header()
$PAGE->requires->jquery();
$PAGE->requires->jquery_plugin('ui');
}
return parent::get_description();
}

/**
* Cleans and returns first of potential many values (multi-valued attributes)
*
Expand Down Expand Up @@ -584,7 +599,7 @@ function create_role_mapping_db($DB, &$err) {
$dbman->create_table($table);
echo '<span class="notifysuccess">';
print_string("auth_saml_sucess_creating_role_mapping", "auth_saml");
echo '</span><br>';
echo '</span><br>';
}
catch (Exception $e) {
$err['role_mapping_db'][] = get_string("auth_saml_error_creating_role_mapping", "auth_saml");
Expand All @@ -594,7 +609,7 @@ function create_role_mapping_db($DB, &$err) {

function get_course_mapping_xmldb() {

$table = new xmldb_table('course_mapping');
$table = new xmldb_table('course_mapping');

$table->add_field('course_mapping_id', XMLDB_TYPE_INTEGER, '10', XMLDB_UNSIGNED, XMLDB_NOTNULL, XMLDB_SEQUENCE, null, null);
$table->add_field('saml_course_id', XMLDB_TYPE_CHAR, '100', null, XMLDB_NOTNULL, null, null, null);
Expand Down Expand Up @@ -642,5 +657,5 @@ function initialize_roles($DB, &$err) {
}
}
return $sucess;
}
}
}
34 changes: 15 additions & 19 deletions auth/saml/config.php
@@ -1,14 +1,10 @@
<script src="../auth/saml/resources/moodle_saml.js" type="text/javascript"></script>


<link rel="stylesheet" type="text/css" href="../auth/saml/resources/ui.theme.css" />
<link rel="stylesheet" type="text/css" href="../auth/saml/resources/ui.core.css" />
<link rel="stylesheet" type="text/css" href="../auth/saml/resources/ui.tabs.css" />
<link rel="stylesheet" type="text/css" href="../auth/saml/resources/moodle_saml.css" />

<script type="text/javascript" src="../auth/saml/resources/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="../auth/saml/resources/jquery-ui-1.7.2.custom.min.js"></script>


<?php
/**
* @author Erlend Strømsvik - Ny Media AS
Expand Down Expand Up @@ -103,17 +99,17 @@
if (!isset ($config->ignoreinactivecourses)) {
$config->ignoreinactivecourses = true;
}
if (!isset ($config->externalcoursemappingdsn)) {
$config->externalcoursemappingdsn = '';
if (!isset ($config->externalcoursemappingdsn)) {
$config->externalcoursemappingdsn = '';
}
if (!isset ($config->externalrolemappingdsn)) {
$config->externalrolemappingdsn = '';
if (!isset ($config->externalrolemappingdsn)) {
$config->externalrolemappingdsn = '';
}
if (!isset ($config->externalcoursemappingsql)) {
$config->externalcoursemappingsql = '';
if (!isset ($config->externalcoursemappingsql)) {
$config->externalcoursemappingsql = '';
}
if (!isset ($config->externalrolemappingsql)) {
$config->externalrolemappingsql = '';
if (!isset ($config->externalrolemappingsql)) {
$config->externalrolemappingsql = '';
}

if (!isset ($config->disablejit)) {
Expand Down Expand Up @@ -342,7 +338,7 @@

<div id="coursemapping">

<?php
<?php

if(isset($err['course_mapping_db']) && in_array("error_creating_course_mapping", $err['course_mapping_db'])) {
echo '<span class="error">';
Expand Down Expand Up @@ -401,29 +397,29 @@
<input name="externalcoursemappingdsn" type="text" size="55" value="<?php echo $config->externalcoursemappingdsn; ?>" />
</td>
</tr>
<tr class="required">
<tr class="required">
<td class="right" valign="top"><?php print_string("auth_saml_course_mapping_sql", "auth_saml"); ?>:</td>
<td>
<textarea name="externalcoursemappingsql" type="text" size="55" rows="3" cols="55"><?php echo $config->externalcoursemappingsql; ?></textarea>
<textarea name="externalcoursemappingsql" type="text" size="55" rows="3" cols="55"><?php echo $config->externalcoursemappingsql; ?></textarea>
</td>
</tr>
<tr valign="top">
<td colspan="2"></td>
</tr>
<tr class="required">
<tr class="required">
<td class="right"><?php print_string("auth_saml_role_mapping_dsn", "auth_saml"); ?>:</td>
<td>
<input name="externalrolemappingdsn" type="text" size="55" value="<?php echo $config->externalrolemappingdsn; ?>" />
</td>
</tr>
<tr class="required">
<tr class="required">
<td class="right" valign="top"><?php print_string("auth_saml_role_mapping_sql", "auth_saml"); ?>:</td>
<td>
<textarea name="externalrolemappingsql" type="text" size="55" rows="3" cols="55"><?php echo htmlspecialchars($config->externalrolemappingsql); ?></textarea>
</td>
</tr>
</table>
<p>DSN and SQL examples:</p>
<p>DSN and SQL examples:</p>
<?php
echo "<p>" . htmlspecialchars(get_string("auth_saml_mapping_dsn_examples", "auth_saml")) . "</p>";
echo "<p>" . htmlspecialchars(get_string("auth_saml_mapping_sql_examples", "auth_saml")) . "</p>";
Expand Down
24 changes: 12 additions & 12 deletions auth/saml/courses.php
Expand Up @@ -42,15 +42,15 @@ function get_course_mapping_for_sync(&$err, $config) {

$course_mapping = array();
if($config->supportcourses == 'external') {
require_once ("DBNewConnection.php");
require_once ("DBNewConnection.php");
$DB_mapping = DBNewConnection($config->externalcoursemappingdsn);
$rs = false;
if($DB_mapping) {
$DB_mapping->SetFetchMode(ADODB_FETCH_ASSOC);
$rs = $DB_mapping->Execute($config->externalcoursemappingsql);
if($rs !==false) {
$res_array = $rs->GetAll();
}
}
$DB_mapping->Disconnect();
}
}
Expand All @@ -76,9 +76,9 @@ function get_course_mapping_for_sync(&$err, $config) {
$err['course_mapping_db'][] = get_string('auth_saml_duplicated_saml_data', "auth_saml").' saml_course_id:'.$tuple['saml_course_id'].' saml_course_period:'.$tuple['saml_course_period'];
}
else {
$course_mapping[$tuple['saml_course_id']][$tuple['saml_course_period']] = $tuple['lms_course_id'];
$course_mapping[$tuple['saml_course_id']][$tuple['saml_course_period']] = $tuple['lms_course_id'];
}
}
}
}
unset($res_array);
unset($rs);
Expand All @@ -92,8 +92,8 @@ function print_course_mapping_options($course_mapping, $config, $err) {
if(isset($err['course_mapping_db'])) {
foreach ($err['course_maping_db'] as $value) {
echo '<tr><td colspan="4" style="color: red;text-align:center">';
echo $value;
echo '</td></tr>';
echo $value;
echo '</td></tr>';
}
}

Expand All @@ -104,7 +104,7 @@ function print_course_mapping_options($course_mapping, $config, $err) {
}
if (!empty($err['course_mapping']['lms'])) {
echo get_string("auth_saml_duplicated_lms_data", "auth_saml") . implode(', ', $err['course_mapping']['lms']);
}
}
echo '</td></tr>';
}
if (array_key_exists('missed_course_mapping', $err)) {
Expand Down Expand Up @@ -158,17 +158,17 @@ function print_course_mapping_options($course_mapping, $config, $err) {

$new_course_param = optional_param_array('new_course_' . $i, array(), PARAM_ALPHANUMEXT);

echo '<tr '.((empty($new_course_param[1]) && empty($new_course_param[2]))? 'style="display:none;"' : ((isset($err['course_mapping']['lms']) && in_array($new_course_param[0], $err['course_mapping']['lms']))
echo '<tr '.((empty($new_course_param[1]) && empty($new_course_param[2]))? 'style="display:none;"' : ((isset($err['course_mapping']['lms']) && in_array($new_course_param[0], $err['course_mapping']['lms']))
|| (isset($err['course_mapping']['saml']) && in_array($new_course_param[1].'_'.$new_course_param[2], $err['course_mapping']['saml'])) ? 'style="background:red;"' : '')) .' >';
echo '<td colspan="2" style="padding-left: 38px;"><select id="newcourse_select" name="new_course' . $i . '[]">';
foreach ($moodle_courses as $mcourse) {
$is_selected = $new_course_param[0] === $mcourse;
$is_selected = $new_course_param[0] === $mcourse;
echo '<option value="'. $mcourse .'" ' . ($is_selected ? 'selected="selected"' : '') . ' >'.$mcourse.'</option>';
}
echo '</select>';
echo '<input id="new_courses_total" type="hidden" name="new_courses_total" value="' . $i . '" /></td>';
echo '<td><input id="newcourse_saml_id" type="text" name="new_course' . $i . '[]" value="' . $new_course_param[1] . '" /></td>';
echo '<td><input id="newcourse_saml_period" type="text" name="new_course' . $i . '[]" value="'. $new_course_param[2] . '" /></td>';
echo '<td><input id="newcourse_saml_id" type="text" name="new_course' . $i . '[]" value="' . (!empty($new_course_param[1]) ? $new_course_param[1] : '') . '" /></td>';
echo '<td><input id="newcourse_saml_period" type="text" name="new_course' . $i . '[]" value="'. (!empty($new_course_param[2]) ? $new_course_param[2] : '') . '" /></td>';
echo '</tr>';
$i++;
}
Expand All @@ -181,6 +181,6 @@ function print_course_mapping_options($course_mapping, $config, $err) {
echo '</select>';
echo '<input id="new_courses_total" type="hidden" name="new_courses_total" value="' . $i . '" /></td>';
echo '<td><input id="newcourse_saml_id" type="text" name="new_course' . $i . '[]" value="" /></td>';
echo '<td><input id="newcourse_saml_period" type="text" name="new_course' . $i . '[]" value="" />';
echo '<td><input id="newcourse_saml_period" type="text" name="new_course' . $i . '[]" value="" />';
echo '<input type="button" name="new" value="+" onclick="addNewField(\'newcourses\',\'new_course\',\'course\')" /></td></tr>';
}
10 changes: 5 additions & 5 deletions auth/saml/roles.php
Expand Up @@ -30,7 +30,7 @@ function get_role_mapping_for_sync(&$err, $config) {

$role_mapping = array();
if($config->supportcourses == 'external') {
require_once ("DBNewConnection.php");
require_once ("DBNewConnection.php");
$DB_mapping = DBNewConnection($config->externalrolemappingdsn);
$rs = false;
if($DB_mapping) {
Expand Down Expand Up @@ -78,7 +78,7 @@ function get_role_mapping_for_sync(&$err, $config) {


function print_role_mapping_options($role_mapping, $config, $err) {

if(isset($err['role_mapping_db'])) {
foreach ($err['role_mapping_db'] as $value) {
echo '<tr><td colspan="4" style="color: red;text-align:center">';
Expand All @@ -94,7 +94,7 @@ function print_role_mapping_options($role_mapping, $config, $err) {
}
if (!empty($err['role_mapping']['lms'])) {
echo get_string("auth_saml_duplicated_lms_data", "auth_saml") . implode(', ', $err['role_mapping']['lms']);
}
}
echo '</td></tr>';
}

Expand Down Expand Up @@ -145,12 +145,12 @@ function print_role_mapping_options($role_mapping, $config, $err) {
echo '<tr '.(empty($new_role_param[1])? 'style="display:none;"': ((isset($err['role_mapping']['lms']) && in_array($new_role_param[0], $err['role_mapping']['lms'])) || (isset($err['role_mapping']['saml']) && in_array($new_role_param[1], $err['role_mapping']['saml'])) ? 'style="background:red;"' : '')) .'>';
echo '<td colspan="2" style="padding-left: 38px;"><select id="newrole_select" name="new_role' . $i . '[]">';
foreach ($moodle_roles as $mrole) {
$is_selected = $new_role_param[0] === $mrole;
$is_selected = $new_role_param[0] === $mrole;
echo '<option value="'. $mrole .'" ' . ($is_selected ? 'selected="selected"' : '') . ' >' . $mrole . '</option>';
}
echo '</select>';
echo '<input id="new_roles_total" type="hidden" name="new_roles_total" value="' . $i . '" /></td>';
echo '<td><input id="newrole_saml_id" type="text" name="new_role' . $i . '[]" value="' . $new_role_param[1] . '" /></td>';
echo '<td><input id="newrole_saml_id" type="text" name="new_role' . $i . '[]" value="' . (!empty($new_role_param[1]) ? $new_role_param[1] : '') . '" /></td>';
echo '<td></td>';
echo '</tr>';
$i++;
Expand Down

0 comments on commit 0650e49

Please sign in to comment.