152 lines
6.3 KiB
Plaintext
152 lines
6.3 KiB
Plaintext
:javascript
|
|
$(function(){
|
|
$(".chooser").click(function() {
|
|
var for_element = this.name.replace(/_chooser/,"");
|
|
$("#" + for_element).attr("disabled", (this.value !== "1"));
|
|
});
|
|
|
|
$(".cron").change(function() {
|
|
var minute, hour, day, month, weekday;
|
|
|
|
minute = getSelected('minute');
|
|
hour = getSelected('hour');
|
|
day = getSelected('day');
|
|
month = getSelected('month');
|
|
weekday = getSelected('weekday');
|
|
|
|
$("#cron").attr("value", minute + " " + hour + " " + day + " " + month + " " + weekday);
|
|
|
|
return false;
|
|
});
|
|
|
|
$("#product_use_cron").change(function(){
|
|
if ($("#product_use_cron:checked").length > 0) {
|
|
$("#cron").attr("disabled", false);
|
|
} else {
|
|
$("#cron").attr("disabled", true);
|
|
}
|
|
});
|
|
|
|
$("#genereator_btn a").click(function(){
|
|
$("#crontab_generator").slideToggle(function(){
|
|
|
|
if ($("#crontab_generator").css("display") == "none") {
|
|
$("#genereator_btn a").text("#{t("layout.products.cron_tab_generator.show")}");
|
|
} else {
|
|
$("#genereator_btn a").text("#{t("layout.products.cron_tab_generator.hide")}");
|
|
}
|
|
|
|
});
|
|
|
|
return false;
|
|
});
|
|
});
|
|
|
|
function getSelected(name) {
|
|
var chosen;
|
|
|
|
if ($("#" + name + "_chooser_every").attr("checked")) {
|
|
chosen = '*';
|
|
} else {
|
|
var all_selected = [];
|
|
|
|
$("#" + name + " option:selected").each(function(i, ele) { all_selected.push($(ele).attr("value")); });
|
|
|
|
if (all_selected.length) {
|
|
chosen = all_selected.join(",");
|
|
} else {
|
|
chosen = '*';
|
|
}
|
|
}
|
|
|
|
return chosen;
|
|
}
|
|
|
|
|
|
.leftlist= form.label :use_cron
|
|
.rightlist= form.check_box :use_cron
|
|
.both
|
|
|
|
#genereator_btn
|
|
%a{ :href => "#" }= t("layout.products.cron_tab_generator.show")
|
|
|
|
#crontab_generator{ :style => "display: none;" }
|
|
.leftlist
|
|
%h3.title= t("layout.products.cron_tab_generator.minutes")
|
|
.group
|
|
= label_tag :minute_chooser_every, t("layout.products.cron_tab_generator.every_minute"), :class => :label
|
|
= radio_button_tag :minute_chooser, 0, @product.cron_tab_minutes.blank?, :id => :minute_chooser_every, :class => "chooser cron"
|
|
|
|
= label_tag :minute_chooser_choose, t("layout.products.cron_tab_generator.choose"), :class => :label
|
|
= radio_button_tag :minute_chooser, 1, @product.cron_tab_minutes.present?, :id => :minute_chooser_choose, :class => "chooser cron"
|
|
|
|
.group
|
|
%select{ :name => :minute, :id => :minute, :multiple => true, :disabled => @product.cron_tab_minutes.blank?, :class => "cron" }
|
|
- (0..59).each do |min|
|
|
%option{ :value => min, :selected => @product.cron_tab_minutes.include?(min) }= min
|
|
|
|
.rightlist
|
|
%h3.title= t("layout.products.cron_tab_generator.hours")
|
|
.group
|
|
= label_tag :hour_chooser_every, t("layout.products.cron_tab_generator.every_hour"), :class => :label
|
|
= radio_button_tag :hour_chooser, 0, @product.cron_tab_hours.blank?, :id => :minute_chooser_every, :class => "chooser cron"
|
|
|
|
= label_tag :hour_chooser_choose, t("layout.products.cron_tab_generator.choose"), :class => :label
|
|
= radio_button_tag :hour_chooser, 1, @product.cron_tab_hours.present?, :id => :minute_chooser_choose, :class => "chooser cron"
|
|
|
|
.group
|
|
%select{ :name => :hour, :id => :hour, :multiple => true, :disabled => @product.cron_tab_hours.blank?, :class => "cron" }
|
|
- (0..23).each do |hour|
|
|
%option{ :value => hour, :selected => @product.cron_tab_hours.include?(hour) }= hour
|
|
.both
|
|
|
|
.leftlist
|
|
%h3.title= t("layout.products.cron_tab_generator.days")
|
|
.group
|
|
= label_tag :day_chooser_every, t("layout.products.cron_tab_generator.every_day"), :class => :label
|
|
= radio_button_tag :day_chooser, 0, @product.cron_tab_days.blank?, :id => :day_chooser_every, :class => "chooser cron"
|
|
|
|
= label_tag :day_chooser_choose, t("layout.products.cron_tab_generator.choose"), :class => :label
|
|
= radio_button_tag :day_chooser, 1, @product.cron_tab_days.present?, :id => :day_chooser_choose, :class => "chooser cron"
|
|
|
|
.group
|
|
%select{ :name => "day", :id => "day", :multiple => true, :disabled => @product.cron_tab_days.blank?, :class => "cron" }
|
|
- (1..31).each do |day|
|
|
%option{ :value => day, :selected => @product.cron_tab_days.include?(day) }= day
|
|
|
|
.rightlist
|
|
%h3.title= t("layout.products.cron_tab_generator.months")
|
|
.group
|
|
= label_tag :month_chooser_every, t("layout.products.cron_tab_generator.every_month"), :class => :label
|
|
= radio_button_tag :month_chooser, 0, @product.cron_tab_months.blank?, :id => :month_chooser_every, :class => "chooser cron"
|
|
|
|
= label_tag :month_chooser_choose, t("layout.products.cron_tab_generator.choose"), :class => :label
|
|
= radio_button_tag :month_chooser, 1, @product.cron_tab_months.present?, :id => :month_chooser_choose, :class => "chooser cron"
|
|
|
|
.group
|
|
%select{ :name => "month", :id => "month", :multiple => true, :disabled => @product.cron_tab_months.blank?, :class => "cron" }
|
|
- (1..12).each do |month|
|
|
%option{ :value => month, :selected => @product.cron_tab_months.include?(month) }= I18n.localize(Time.local(2000, month), :format => "%B")
|
|
.both
|
|
|
|
.leftlist
|
|
%h3.title= t("layout.products.cron_tab_generator.weekdays")
|
|
.group
|
|
= label_tag :weekday_chooser_every, t("layout.products.cron_tab_generator.every_weekday"), :class => :label
|
|
= radio_button_tag :weekday_chooser, 0, @product.cron_tab_weekdays.blank?, :id => :weekday_chooser_every, :class => "chooser cron"
|
|
|
|
= label_tag :weekday_chooser_choose, t("layout.products.cron_tab_generator.choose"), :class => :label
|
|
= radio_button_tag :weekday_chooser, 1, @product.cron_tab_weekdays.present?, :id => :weekday_chooser_choose, :class => "chooser cron"
|
|
|
|
.group
|
|
%select{ :name => "weekday", :id => "weekday", :multiple => true, :disabled => @product.cron_tab_weekdays.blank?, :class => "cron" }
|
|
- Date::DAYNAMES.each_with_index do |day, index|
|
|
%option{ :value => index, :selected => @product.cron_tab_weekdays.include?(index) }= t("layout.weekdays.#{day}")
|
|
.both
|
|
|
|
.both
|
|
.leftlist= form.label :cron_tab, :class => :label
|
|
.rightlist= form.text_field :cron_tab, :id => "cron", :class => "text_field", :style => "width: 40%", :disabled => !@product.use_cron, :value => @product.cron_tab
|
|
=# @product.cron_command
|
|
.both
|