You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

253 lines
11 KiB

$(function(){
if ($('#myModal1').length == 0) {
CKEDITOR.replace('homework_text', {
language: 'ru',
toolbarGroups: [
{name: 'tools'},
{name: 'links'},
{name: 'basicstyles', groups: ['basicstyles', 'cleanup']},
{name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ]},
{name: 'styles'},
{name: 'others'}
]
});
}
});
function send_comment(form, root){
// Проверить комментарий
// Отправить
if (CKEDITOR.instances.homework_text.getData()){
$('[name=homework_text]').val(CKEDITOR.instances.homework_text.getData());
$.ajax({
type: 'POST',
url: '/courses/sent_homework_comment',
data: $('[name='+form+']').serialize(),
success: function(data){
if(data['code'] == '1'){
document.forms[form].reset();
CKEDITOR.instances.homework_text.setData('');
$('[name='+$('#'+root).attr('sketch_place')+']').html('');
if (!$('[name=try_'+data['data']['try']['id']+']').html()){
$('[name=comment_list_place]').after('<h3 style="margin-bottom: 25px;margin-left: 20px;' +
'font-weight: bold;border-bottom: 1px dotted #ccc;padding-bottom: 5px;">' +
'<i class="glyphicon glyphicon-briefcase"></i>&nbsp;Попыток: (<span name="comments_length">1</span>)</h3>');
$('[name=sent_comment_progress]').before(new_try(data['data']['try']));
}
$('[name=try_comments_'+data['data']['try']['id']+']').append('<div name="comment_'+data['data']['comment']['id']+'"></div>');
write_comment($('[name=comment_'+data['data']['comment']['id']+']'), data['data']['comment']);
console.log(data['data'])
}
}
});
} else {
show_system_message('Введите текст сообщения')
}
}
function send_homework_down_teacher(form, root){
// Проверить комментарий
// Отправить
if (CKEDITOR.instances.homework_text.getData()){
$('[name=homework_text]').val(CKEDITOR.instances.homework_text.getData());
$.ajax({
type: 'POST',
url: '/courses/sent_homework_down_teacher',
data: $('[name='+form+']').serialize(),
success: function(data){
if(data['code'] == '1'){
window.close();
} else {
show_system_message(data['response'])
}
}
});
} else {
show_system_message('Введите текст сообщения')
}
}
function show_popup(){
popup = document.getElementById('teacher_popup')
popup.classList.toggle('hidden')
popup.onclick = function(e){
popup.classList.add('hidden')
}
}
function send_homework_up_teacher(form, root){
// Проверить комментарий
// Отправить
document.getElementById('teacher_popup').classList.add('hidden')
if (CKEDITOR.instances.homework_text.getData()){
$('[name=homework_text]').val(CKEDITOR.instances.homework_text.getData());
$.ajax({
type: 'POST',
url: '/courses/sent_homework_up_teacher',
data: $('[name='+form+']').serialize(),
success: function(data){
if(data['code'] == '1'){
window.close();
} else {
show_system_message(data['response'])
}
}
});
} else {
show_system_message('Введите текст сообщения')
}
}
function new_try(data){
if (!window.last_try){
window.last_try = 0
}
return '<div class="m-b b-l m-l-md streamline" name="try_comments_'+data['id']+'"><div name="try_'+data['id']+'">' +
'<span class="pull-left thumb-sm avatar m-l-n-md">' +
'<img src="/static/img/mini_logo.png" class="img-circle"></span>' +
'<div class="m-l-lg panel b-a" style="background:#CCFFFF;">' +
'<div class="panel-heading pos-rlt b-b b-light">' +
'<span class="arrow left" style="display: none;"></span>' +
'<b>LMS: ~# </b>' +
'<span class="arrow left" style="border-right-color:#CCFFFF;"></span>' +
'<span style="font-size: 16px;color: #666;font-weight: bold;">Попытка №'+(window.last_try+1)+'</span>' +
'<span class="text-muted m-l-sm pull-right" style="margin-top: -6px;">' +
'<span class="label font-normal text-white bg-success" style="margin-left: 10px;text-shadow: 0 0 0;font-size: 16px">' +
'<span class="hidden-xs hidden-sm">'+data['teacher']['full']+'</span>' +
'<span class="hidden-md hidden-lg">'+data['teacher']['short']+'</span>' +
'<span class="thumb-sm avatar" style="margin-left: 10px;top: -3px;position: relative;">' +
'<img src="'+data['teacher']['ava']+'" class="img-circle">' +
'</span>' +
'</span>' +
'<span class="label font-normal text-white bg-'+data['status']['color']+'" style="margin-left: 10px;font-size: 19px;font-weight: bold;'+data['status']['styles']+'">' +
'<span class="hidden-sm hidden-xs hidden-md">'+data['status']['title']+'</span><i class="'+data['status']['icon']+'" style="top: 3px; margin: 0 15px;"></i>' +
'</span>' +
'</span>' +
'</div>' +
'</div>' +
'</div>' +
'</div>'
}
function write_comment(block, data){
var message;
var user_status;
var reply;
if (NotEmpty(data)) {
if (!NotEmpty(data['replies'])) {
reply = ''
} else {
reply = '<img src="/static/img/1442036154_reply-circle-blue.png" style="margin-left: 30px;">' +
'<Br>' +
'<div class="m-b b-l m-l-md streamline" parent_id="' + data['id'] + '" style="margin-left: 75px;margin-top: -25px;"></div>';
}
if (NotEmpty(data['files']) && !data['closed']) {
message = '<div name="message_files" message_id="' + data['id'] + '"></div>'
} else {
message = '';
}
var comment_id = '';
if ($('[name=REQUEST_USER_ROLE]').val() == 'A'){
comment_id = '<a href="'+location.protocol + '//'+ location.host + '/admin/management/comment/'+data['id']+'" target="_blank" style="font-weight: bold;border-bottom: 1px dotted;margin-left: 10px;">ID:'+data['id']+'</a>';
}
user_status = '<label style="'+data['owner_type']['style'] + '" class="label ' + data['owner_type']['background'] + ' m-l-xs">' + data['owner_type']['title'] + '</label>' + comment_id;
var background;
if (data['owner_type']['flag'] == 'A') {
background = "#f5fce5;"
} else {
background = ''
}
var avatar;
if (data['closed']) {
avatar = '<span class="pull-left thumb-sm avatar m-l-n-md"><img src="/static/img/1442473207_delete.png"></span>'
} else {
avatar = '<span class="pull-left thumb-sm avatar m-l-n-md">' +
'<img src="' + data['owner_avatar'] + '" class="img-circle">' +
'</span>'
}
var head;
if (data['closed']) {
head = '<div class="panel-heading pos-rlt b-b b-light" style="background: #f1f1f1; color: #ccc;">' +
'<span class="arrow left" style="display: none;"></span>' +
'КОММЕНТАРИЙ УДАЛЕН' +
'<span class="text-muted m-l-sm pull-right">' +
'</span></div>'
} else {
head = '<div class="panel-heading pos-rlt b-b b-light">' +
'<span class="arrow left" style="display: none;"></span>' +
'<b style="margin-right: 5px;">' + data['owner'] + '</b>' +
'<span class="arrow left" style="border-right-color: ' + background + '"></span>' + user_status +
'<span class="text-muted m-l-sm pull-right">' +
//'<button class="btn like_button" title="Мне нравится"><i class="glyphicon glyphicon-heart"></i><span name="like_count" class="like_count">1</span> <span class="visible-lg-inline">Мне нравится</span></button>' +
//'<button class="btn complain_button" title="Пожаловаться"><i class="glyphicon glyphicon-fire"></i> <span class="visible-lg-inline">Пожаловаться</span></button><i class="fa fa-clock-o" title="Дата записи: ' + data['date'] + '"></i><span class="hidden-xs"></span>' +
'</span></div>'
}
var reply_button;
var text;
reply_button = '';
if (data['closed']) {
text = '<div class="panel-body" style="display: none;">'
} else {
text = '<div class="panel-body" readable_comment="'+data['id']+'">' +
'<div class="m-b-xs">' + data['text'] + '</div>'
}
$(block).html(avatar +
'<div class="m-l-lg panel b-a" style="background: ' + background + '">' +
head +
text +
message +
'<div class="m-t-sm">'
+ reply_button +
'</div>' +
'</div>' +
'</div>' + reply);
for (var r = 0; r < data['replies'].length; r++) {
write_comment($('[parent_id=' + data['id'] + ']'), data['replies'][r])
}
var file_block = $('[name=message_files][message_id=' + data['id'] + ']');
for (var n = 0; n < data['files'].length; n++) {
var file_id = '';
var target = '';
var context = '';
if (data['files'][n]['format'] == 'I') {
file_id = 'single_image';
target = '__blank';
context = '<img src="' + data['files'][n]['url'] + '" style="display: none;">';
}
var m = '<div class="panel m-b-none"' +
' style="box-shadow: none; border: 1px solid rgba(0, 0, 0, 0.05); padding: 4px; margin-bottom: 3px !important;">' +
'<a href="' + data['files'][n]['url'] + '" target="' + target + '" id="' + file_id + '">' + context +
'<i class="' + data['files'][n]['icon'] + ' text-primary"></i> &nbsp;' +
data['files'][n]['name']+'</a></div>';
file_block.append(m);
}
$("a#single_image").fancybox();
}
}
function delete_comment(id){
$.ajax({
type: 'POST',
url: '/courses/delete_comment',
data: {'comment': id},
success: function(data){
if (data['code'] == '1'){
location.hash='comment_list_place';
} else {
show_system_message(data['response'])
}
}
});
}
$(function(){
$('.go_to_textarea').on('click', function(e){
$('html,body').stop().animate({ scrollTop: $('#go_to_textarea').offset().top }, 1000);
e.preventDefault();
});
});