';
function add_color_control() {
$('input[type=text][name="nice_color[]"]').wpColorPicker({
change: function(event, ui) {
change_color(event.target, ui.color.toString());
}
});
}
add_color_control();
$('#add-color').on( 'click', function( event ) {
event.preventDefault();
$('#acts-nice-color').append(html_color);
add_color_control();
var elem = $('#acts-nice-color').children().last('li').children('input[name="nice_color_key[]"]');
$(elem).selectize(get_selectize_options());
});
$(document).on( 'click', 'input[type=submit][name=delete_color]', function( event ) {
event.preventDefault();
var text = $(this).siblings('input').val();
if ( $('.acts-nice-custom-' + text).length ) {
$('.acts-nice-custom-' + text).css('background-color', '');
}
$(this).parent('li').remove();
});
}
if ($('#acts-nice-custom').length) {
$('.acts-nice-custom[col] input[type=text]').selectize(get_selectize_options());
var html_custom = '
';
html_custom += '
';
$('input[col]').on( 'click', function( event ) {
event.preventDefault();
var col = $(this).attr('col');
$('ul[col=' + col + ']').append(html_custom);
var elem = $('ul[col=' + col + ']').children().last('li').children('input[name="nice_custom[][]"]');
$(elem).attr('name', 'nice_custom[' + col + '][]' );
$(elem).selectize(get_selectize_options());
});
$(document).on( 'click', 'input[type=submit][name=delete_custom]', function( event ) {
event.preventDefault();
$(this).parent('li').remove();
});
}
var link = $('#acts-nice-user-link').attr('href');
$('.acts-user-quick-edit[uid]').click( function( event ) {
event.preventDefault();
var id = $(this).attr('uid');
if (!all_member_info.hasOwnProperty(id)) {
return;
}
$('#acts-nice-user-link').attr('href', link + '?user_id=' + id);
var user_info = all_member_info[id];
$('input[name=uid]').val(id);
for(var key in user_info) {
if (key == 'acts_full_name') {
continue;
}
else if (key == 'acts_user_avatar') {
$('#acts-user-avatar').attr('src', '');
$('.acts-quick-img-wrap .acts-nice-loader').show();
$('#acts-user-avatar').attr('src', user_info[key]);
imagesLoaded( document.querySelector('#acts-user-avatar'), function() {
$('.acts-quick-img-wrap .acts-nice-loader').hide();
});
}
else if ($('#acts-quick-' + key).length) {
if ($('#acts-quick-' + key).is('select') && $('#acts-quick-' + key).attr('class') === 'selectized') {
var sel = $('#acts-quick-' + key).eq(0).data('selectize');
if (sel) {
sel.setValue(user_info[key], true);
continue;
}
}
$('#acts-quick-' + key).val(user_info[key]);
}
}
var h = window.innerHeight * 0.90;
var w = window.innerWidth * 0.90;
if ( w > 650 ) {
w = 650;
}
tb_show(all_member_info[id].acts_full_name, "#TB_inline?height=" + h + "&width=" + w + "&inlineId=acts-quick-user-edit");
var wh = $('.acts-quick-edit-box').height() + 20;
if ( wh < h ) {
$('#TB_ajaxContent').height(wh);
}
});
$('.acts-quick-edit-box').on( 'submit', function( event ) {
event.preventDefault();
$.post( $(this).attr('action'), $(this).serialize(), function(response) {
if (response.success) {
var user_info = response.data;
var id = user_info['ID'];
delete user_info['ID'];
update_user_info(id, user_info);
write_member_info(id);
tb_remove();
}
else {
console.error('An error occured updating user.');
}
}, 'json' );
});
var id = parseInt($('#item-id').val());
var all_member_info = {};
function load_custom_fields() {
if ( $('ul[col]').length ) {
var custom_fields = [];
$('ul[col]').each( function( index, elem ) {
var col = $(elem).attr('col');
$(elem).find('input[name="nice_custom[' + col + '][]"]').each( function( text_index, text_elem ) {
custom_fields.push({
name: $(text_elem).val(),
col: col
});
});
});
return custom_fields;
}
else {
return {};
}
}
function disable_member_info_controls(disable) {
$('#acts-reload-members').attr('disabled', disable);
$('#time-slots').attr('disabled', disable);
$('input[type=radio][name=member_info]').attr('disabled', disable);
$('#add-custom').attr('disabled', disable);
$('input[type=text][name="nice_custom[]"]').attr('disabled', disable);
$('select[name="nice_custom_col[]"]').attr('disabled', disable);
$('input[type=submit][name=delete_custom]').attr('disabled', disable);
$('#add-color').attr('disabled', disable);
$('input[type=text][name="nice_color_key[]"]').attr('disabled', disable);
$('input[type=text][name="nice_color[]"]').attr('disabled', disable);
$('input[type=submit][name=delete_color]').attr('disabled', disable);
$('#acts-nice-settings .acts-nice-loader').toggle(disable);
}
function update_user_info(id, new_info) {
if (!all_member_info.hasOwnProperty(id)) {
all_member_info[id] = {};
}
for (var key in new_info) {
all_member_info[id][key] = new_info[key];
}
}
function load_member_info(write) {
disable_member_info_controls(true);
var info_type = $('input[name=member_info]:checked').val();
$.ajax({
url: ajaxurl,
type: 'POST',
data: {
action: 'acts_get_member_info',
item_id: id,
custom: load_custom_fields()
},
dataType: 'json',
success: function(member_info) {
if (!member_info.success) {
console.error('Could not load user info');
return;
}
for(var id in member_info.data) {
update_user_info(id, member_info.data[id]);
}
if ( write ) {
write_member_info(0);
}
update_sessions();
},
error: function(jqXHR, text, error) {
console.error(text);
},
complete: function() {
disable_member_info_controls(false);
}
});
}
load_member_info(false);
//Column 1
var prepared_keys_1 = {
wp: [],
bill: [
'billing_address_1',
'billing_address_2',
'billing_city',
'billing_postcode',
],
ship: [
'shipping_address_1',
'shipping_address_2',
'shipping_city',
'shipping_postcode'
]
};
//Column 2
var prepared_keys_2 = {
wp: [],
bill: [
'billing_phone'
],
ship: []
};
function write_prep_col(user_info, col, list) {
col.html('');
for(var i in list) {
var val = user_info[list[i]];
switch (list[i]) {
case 'billing_city':
case 'shipping_city':
break;
case 'billing_postcode':
case 'shipping_postcode':
val += ' ' + user_info[list[parseInt(i)-1]];
if (val.trim() != '') {
col.append('
' + val + '
');
}
break;
default:
col.append('
' + val + '
');
break;
}
}
}
function write_custom_col(user_info, col, custom_fields) {
col.html('');
for(var i in custom_fields) {
var list = custom_fields[i];
var display_list = [];
for(var r in list) {
var key = list[r].trim();
if (user_info.hasOwnProperty(key)) {
var val = user_info[key];
if (val != '') {
display_list.push('' + val + '');
}
}
}
if (display_list.length > 0) {
col.append('
' + display_list.join(' ') + '
');
}
}
}
function write_member_info(user) {
if (all_member_info.length == 0) {
return;
}
var type = $('input[name=member_info]:checked').val();
var custom_input = load_custom_fields();
var custom_fields = {
1: [],
2: []
}
for(var i in custom_input) {
if (custom_input.hasOwnProperty(i)) {
custom_fields[custom_input[i]['col']].push(custom_input[i]['name'].split(','));
}
}
for(var id in all_member_info) {
if (user != 0 && user != id) {
continue;
}
if (all_member_info.hasOwnProperty(id)) {
var col1 = $('#col1-id' + id);
var col2 = $('#col2-id' + id);
var user_info = all_member_info[id];
col1.find('span[key=acts_full_name]').html(user_info.acts_full_name);
col2.find('span[key=user_email]').html(user_info.user_email);
write_prep_col(user_info, col1.find('.acts-nice-prepared'), prepared_keys_1[type]);
write_prep_col(user_info, col2.find('.acts-nice-prepared'), prepared_keys_2[type]);
write_custom_col(user_info, col1.find('.acts-nice-custom-display'), custom_fields[1]);
write_custom_col(user_info, col2.find('.acts-nice-custom-display'), custom_fields[2]);
}
}
if ($('#acts-nice-color').length) {
reload_color();
}
}
$('input[type=radio][name=member_info]').on( 'change', function () {
var type = $('input[name=member_info]:checked').val();
if ( all_member_info[type] === undefined ) {
load_member_info(true);
}
else {
write_member_info(0);
}
});
$('#acts-reload-members').on( 'click', function (event) {
event.preventDefault();
load_member_info(true);
});
}
//Activity nice folder print
if ($('#folder_print').length) {
$('#folder_print').click( function(event) {
event.preventDefault();
$('.acts-nice-wrap').css('padding-left', '20mm');
window.print();
$('.acts-nice-wrap').css('padding-left', '7mm');
});
}
//Activity nice plans
if ($('#acts-nice-preview-plan').length) {
function expand_text(session, edit) {
var session_li = $('.acts-nice-session[session=' + session + ']');
if (edit) {
$(session_li).find('.acts-nice-session-text').toggleClass('acts-nice-session-hidden', false);
$(session_li).find('.acts-nice-session-expand .dashicons').toggleClass('dashicons-arrow-down', false);
$(session_li).find('.acts-nice-session-expand .dashicons').toggleClass('dashicons-arrow-up', true);
}
else {
$(session_li).find('.acts-nice-session-text').toggleClass('acts-nice-session-hidden');
$(session_li).find('.acts-nice-session-expand .dashicons').toggleClass('dashicons-arrow-down');
$(session_li).find('.acts-nice-session-expand .dashicons').toggleClass('dashicons-arrow-up');
}
}
$(document).on( 'click', '.acts-nice-session-expand', function() {
var height = $('html').height();
expand_text($(this).parent().attr('session'), false);
});
$(document).on( 'click', '.acts-nice-session-edit', function() {
var textfield = $(this).parent().find('.acts-nice-session-text');
if ($(textfield).find('.acts-nice-session-empty').length) {
$(textfield).find('.acts-nice-session-empty').remove();
}
var name = $(textfield).attr('name');
var text = $(textfield).html();
var css = $(textfield).attr('class');
$(textfield).replaceWith( function() {
return $('', {class: css, name: name}).append(text);
});
expand_text($(this).parent().attr('session'), true);
});
var plan_name = '';
if ($('.acts-nice-plan-name').length) {
plan_name = $('.acts-nice-plan-name').html();
}
$('input[name=plan_name]').on( 'input', function(event) {
if ($(event.target).val() == plan_name) {
$('#create_plan').val(acts_i18n_nice.update_plan);
}
else {
$('#create_plan').val(acts_i18n_nice.create_plan);
}
});
$('#create_plan').click( function(event) {
event.preventDefault();
var name = $('input[name=plan_name]').val();
if (name === '') {
return;
}
var sessions = 0;
var session_map = {};
$('.acts-nice-session[session]').each( function(index, elem) {
var session = $(elem).attr('session');
if($(elem).find('.acts-nice-session-text .acts-nice-session-empty').length) {
$(elem).find('.acts-nice-session-text .acts-nice-session-empty').remove();
}
var text = '';
if ($(elem).find('div.acts-nice-session-text').length) {
text = $(elem).find('div.acts-nice-session-text').html();
}
else {
text = $(elem).find('textarea.acts-nice-session-text').val();
}
session_map[session] = text;
sessions++;
});
$.ajax({
url: ajaxurl,
type: 'POST',
data: {
action: 'acts_create_plan',
item_id: $('input[name=plan_id]').val(),
name: name,
session_map: session_map,
sessions: sessions,
description: ''
},
dataType: 'json',
success: function(resp) {
$('.acts-nice-new-response').toggleClass('acts-response-success', resp.success);
$('.acts-nice-new-response').toggleClass('acts-response-error', !resp.success);
$('.acts-nice-new-response').html(resp.data);
},
error: function(jqXHR, text, error) {
console.error(text);
}
});
});
}
});
})(jQuery);