This repository has been archived on 2023-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
polynum-blackboard/polynum_blackboard/templates/document_copyrights.new_req...

176 lines
5.5 KiB
HTML

{% extends "base_document_copyrights.new_request.html" %}
{% load url from future %}
{% load sekizai_tags %}
{% load crispy_forms_tags %}
{% load editor %}
{% block extra_scripts %}
{{ block.super }}
{{ create_course_form.media.css }}
<style>
#create-course .miller-columns {
height: 10em;
}
#create-course label {
font-weight: bold;
}
.modal.large {
margin: -300px 0px 0px -380px;
width: 760px;
}
.modal.large .modal-body {
max-height: 600px;
}
option.unavailable {
color: #EEEEEE;
}
</style>
<script src="{{ STATIC_URL }}/jquery/js/jquery.form.js"></script>
{% endblock %}
{% block form %}
{{ block.super }}
{% addtoblock "endscripts" %}
{% include "_create_course.html" %}
{{ create_course_form.media.js }}
<script>
(function ($) {
$(function () {
var getJSON = function(url) {
var res;
$.ajax({
type: 'GET',
url: url,
dataType: 'json',
success: function(data) {
res = data;
},
async: false
});
return res;
};
$('.courses-selector').on('change', function (){
$('.courses-selector').not(this).val('');
$('#id_document_copyrights-course_name').val($(this).val());
});
$('#id_document_copyrights-ue').on('change', function () {
var value = $(this).val();
if (value) {
var url = '/entity/' + value + '/';
var json = getJSON(url);
var url = '../../course-list/';
url = url + '?ue=' + json.code + '#ue-course';
$('#create-course .miller-columns').millercolumns('setItem', value)
$('#id_entity').trigger('change');
} else {
var url = '../../course-list/';
url = url + '?ue=';
}
$.get(url, function (data) {
var $content = $(data);
$('#ue-course-container').html($('#ue-course', $content));
var val = $('#id_document_copyrights-course_name').val();
$('.courses-selector').val(val);
$('.courses-selector').on('change', function (){
$('.courses-selector').not(this).val('');
$('#id_document_copyrights-course_name').val($(this).val());
});
});
});
$('#create-course').on('shown', function () {
$('.miller-columns').millercolumns('refresh');
});
function toggle_mycourse_panel() {
var val = $('#id_document_copyrights-licence').val();
try {
val = parseInt(val);
} catch (err) {
val = -1;
}
if (licence_pks_with_mycourse_tag.indexOf(val) != -1) {
$('#mycourse-block').show('slow');
$('.miller-columns').millercolumns('refresh');
} else {
$('#mycourse-block').hide('slow');
}
}
function update_course_name() {
var entity_id = $('#id_entity').val();
var td_group = $('#id_td_group').val();
var $name = $('#id_course_label');
var delegate = $('#create-course .miller-columns').millercolumns('delegate');
var item = delegate.cache[entity_id];
var ue = item;
var $msg = $('#create-course .future-name');
while (item && item.type != 'version diplome') {
item = delegate.cache[item.parent_id];
}
var diploma = item;
if (item == undefined) {
$name.addClass('alert');
$name.text("La sélection n'est pas une unité d'enseignement.");
} else {
var sponsor_name = '{{ object.sponsor_name }}';
var scholar_year = '{{ course_year }}';
var diploma_name = diploma.name;
var group = '';
if (td_group) {
group = '_Gr' + td_group;
}
var course_code = ue.code.toUpperCase() + '_' + new Date().getFullYear() + group;
var course_name = diploma.name.toUpperCase() + '_' + scholar_year + '_' +
ue.description + group + '_' + sponsor_name;
$name.removeClass('alert');
content = "<span><label>Code</label>"+course_code+"</span>";
content += "<span><label>Nom</label>"+course_name+"</span>";
$name.html(content);
}
}
$('#id_document_copyrights-licence').on('change', function () {
toggle_mycourse_panel();
});
toggle_mycourse_panel();
function update_course() {
var val = $('#id_document_copyrights-course_name').val();
$('.courses-selector').val(val);
};
function install_form() {
$('#id_entity').on('change', update_course_name);
$('#id_td_group').on('keyup', update_course_name);
$('#id_subscription_policy').on('change', function() {
if ($(this).val() == 'password') {
$('#div_id_password').parent().show();
} else {
$('#div_id_password').parent().hide();
}
});
$('#create-course form').ajaxForm({
dataType: 'json',
success: function (content, statusText, xhr, form) {
if (content.success) {
alert('Cours ' + content.course_code + ' créé.');
$('#create-course').modal('hide');
$('#div_id_document_copyrights-ue .miller-columns').millercolumns(
'setItem', ''+content.entity_pk);
$('#id_document_copyrights-course_name').val(content.course_code);
$('#id_document_copyrights-ue').trigger('change');
} else {
var newform = $(content.html);
$('#create-course form').replaceWith($('form', newform));
window.install_django_miller_columns();
install_form();
}
}
});
update_course_name();
}
install_form();
update_course();
})
})(window.jQuery)
</script>
{% endaddtoblock %}
{% endblock %}