saeedsq/django-fancy-cronfield

View on GitHub
fancy_cronfield/static/fancy_cronfield/js/cronfield.min.js

Summary

Maintainability
A
0 mins
Test Coverage
/*
 * jQuery plugin for Django Fancy Cronfield
 * https://github.com/saeedsq/django-fancy-cronfield
 *
 * Copyright (c) 2015, Saeed Salehian.
 * Licensed under BSD 3-clause "New" or "Revised" license.
 */
(function(b){window.cron_objs={};b.fn.exists=function(){return 0<this.length};b.fn.cron_field=function(a){var c=this.attr("id")+"-cron";if(b("#"+c).exists()){if(void 0!==window.cron_objs[c])return window.cron_objs[c]}else{var d=b("<div>",{id:c,"class":"cronfield"});this.before(d)}b(".field-"+this.attr("name")).removeClass("hidden");var e=this,d={initial:e.val()||"0 0 1 1 *",allowMultiple_all:!0,allowMultiple_dom:!0,allowMultiple_month:!0,allowMultiple_dow:!0,allowMultiple_hour:!0,allowMultiple_minute:!0,
useGentleSelect:!0,onChange:function(){e.val(b(this).cron("value"))}};a=a?a:{};a=b.extend({},d,a);window.cron_objs[c]=b("#"+c).cron(a);return window.cron_objs[c]};var e={allowMultiple_all:"data-allow_multiple_all",allowMultiple_dom:"data-allow_multiple_dom",allowMultiple_month:"data-allow_multiple_month",allowMultiple_dow:"data-allow_multiple_dow",allowMultiple_hour:"data-allow_multiple_minute",allowMultiple_minute:"data-allow_multiple_minute",useGentleSelect:"data-use_gentle_select"};b.fn.setup_cron_fields=
function(){this.each(function(){var a=b(this).attr("id");void 0===a&&(a=Math.floor(1E6*Math.random()+1),b(this).attr("id",a));if(-1===a.indexOf("__prefix__")){var a={},c;for(c in e)if(e.hasOwnProperty(c)){var d=e[c];a[c]=void 0!==b(this).attr(d);a[c]=a[c]&&"0"!==b(this).attr(d)}b(this).cron_field(a)}})};b(document).ready(function(a){setTimeout(function(){a("input[data-fancy=cron]").setup_cron_fields();a(".empty-form input[data-fancy=cron]").exists()&&a("tr.add-row a").click(function(){a(this).parents("table").find("input[data-fancy=cron]").setup_cron_fields()})},
500)})})(jQuery_1_4_1);