var PODLOVE = PODLOVE || {}; (function($) { PODLOVE.License = function(settings) { var podlove_license_cc_get_image = function (allow_modifications, commercial_use) { var banner_identifier_allowed_modification, banner_identifier_commercial_use; switch (allow_modifications) { case "yes" : banner_identifier_allowed_modification = 1; break; case "yesbutshare" : banner_identifier_allowed_modification = 10; break; case "no" : banner_identifier_allowed_modification = 0; break; default : banner_identifier_allowed_modification = 1; break; } banner_identifier_commercial_use = (commercial_use == "no") ? "0" : "1"; return banner_identifier_allowed_modification + "_" + banner_identifier_commercial_use; }; var podlove_change_url_preview_and_name_from_form = function(version_value, modification_value, commercial_use_value, jurisdiction_value) { if (!version_value || !modification_value || !commercial_use_value || !jurisdiction_value ) return; var $that = $(this); var data = { action: 'podlove-get-license-url', version: version_value, modification: modification_value, commercial_use: commercial_use_value, jurisdiction: jurisdiction_value }; $.ajax({ url: ajaxurl, data: data, dataType: 'json', success: function(result) { $(settings.license_url_field_id).val(result); $(".podlove-license-link").attr("href", result); } }); // Redifining the required AJAX action (for license name) data.action = 'podlove-get-license-name'; $.ajax({ url: ajaxurl, data: data, dataType: 'json', success: function(result) { $(settings.license_name_field_id).val(result); $(".podlove-license-link").html(result); $(".podlove-license-link").attr("alt", result); } }); $(".podlove_podcast_license_image").html(podlove_get_license_image(version_value, modification_value, commercial_use_value)); $(".row_podlove_podcast_license_preview").show(); }; var podlove_get_license_image = function(version_value, modification_value, commercial_use_value) { if (version_value == 'cc0') { return ''; } else if (version_value == 'pdmark') { return ''; } else { return ''; } }; var podlove_filter_license_selector = function(license_version) { switch(license_version) { case 'cc3': $("#license_cc_allow_modifications, #license_cc_allow_commercial_use, #license_cc_license_jurisdiction").closest('div').show(); break; case 'cc4': $("#license_cc_allow_modifications, #license_cc_allow_commercial_use").closest('div').show(); $("#license_cc_license_jurisdiction").closest('div').hide(); break; default: $("#license_cc_allow_modifications, #license_cc_allow_commercial_use, #license_cc_license_jurisdiction").closest('div').hide(); break; } }; var podlove_populate_license_form = function(version_value, modification_value, commercial_use_value, jurisdiction_value) { $("#license_cc_version").find('option[value=' + version_value + ']').attr('selected','selected'); $("#license_cc_allow_modifications").find('option[value=' + modification_value + ']').attr('selected','selected'); $("#license_cc_allow_commercial_use").find('option[value=' + commercial_use_value + ']').attr('selected','selected'); $("#license_cc_license_jurisdiction").find('option[value=' + jurisdiction_value + ']').attr('selected','selected'); podlove_filter_license_selector($("#license_cc_version").val()); $(".podlove_podcast_license_image").html(podlove_get_license_image(version_value, modification_value, commercial_use_value)); var data = { action: 'podlove-get-license-name', version: version_value, modification: modification_value, commercial_use: commercial_use_value, jurisdiction: jurisdiction_value }; $.ajax({ url: ajaxurl, data: data, dataType: 'json', success: function(result) { $(".podlove-license-link").html(result); $(".podlove-license-link").attr('href', $("#podlove_podcast_license_url").val()) } }); if( $(settings.license_name_field_id).val() == '' || $(settings.license_url_field_id).val() == '' ) $(".row_podlove_podcast_license_preview").hide(); }; $("#podlove_cc_license_selector_toggle").on( 'click', function() { $(this).find("._podlove_episode_list_triangle").toggle(); $(this).find("._podlove_episode_list_triangle_expanded").toggle(); $(".row_podlove_cc_license_selector").toggle(); }); $("#license_cc_version").on( 'change', function () { podlove_filter_license_selector($(this).val()); } ); $(settings.license_url_field_id).on( 'change', function() { if( $(this).val().indexOf('creativecommons.org') !== -1 ) { var data = { action: 'podlove-get-license-parameters-from-url', url: $(this).val() }; $.ajax({ url: ajaxurl, data: data, dataType: 'json', success: function(result) { podlove_populate_license_form( result.version, result.modification, result.commercial_use, result.jurisdiction ); } }); } else { $(".podlove_podcast_license_image").html(''); $(".podlove-license-link").html( $(settings.license_name_field_id).val() ); $(".podlove-license-link").attr("href", $(this).val() ); } $(".row_podlove_podcast_license_preview").show(); }); $(settings.license_name_field_id).on( 'change', function() { $(".podlove-license-link").html( $(this).val() ); $(".row_podlove_podcast_license_preview").show(); }); $("#license_cc_allow_modifications, #license_cc_allow_commercial_use, #license_cc_license_jurisdiction, #license_cc_version").on( 'change', function() { podlove_change_url_preview_and_name_from_form( $("#license_cc_version").val(), $("#license_cc_allow_modifications").val(), $("#license_cc_allow_commercial_use").val(), $("#license_cc_license_jurisdiction").val() ); }); $(document).ready(function() { if( $(settings.license_name_field_id).val() !== '' || $(settings.license_url_field_id).val() !== '' ) podlove_populate_license_form( settings.license.version, settings.license.modification, settings.license.commercial_use, settings.license.jurisdiction ); if( $(settings.license_name_field_id).val() == '' || $(settings.license_url_field_id).val() == '' ) $(".row_podlove_podcast_license_preview").hide(); }); } }(jQuery));