% if ($ARGS{is_admin} && $ARGS{id}){ % my $cwd = $m->base_comp->source_dir; % use YAML; <%perl> my $valid_input = 1; $ARGS{starttime} =~ s/\s+//go; if($ARGS{starttime} && $ARGS{length}){ if($ARGS{starttime} !~ /\d\d:\d\d/o || $ARGS{length} !~ /^\d+$/o || (length $ARGS{day} && $ARGS{day} !~ /[0-6]/o) ){ print ""; print "Input invalid\n"; $valid_input = 0; } }

SCHEDULE of <% $ARGS{id} %>

<%perl> my $source = YAML::LoadFile("$cwd/../config/stream_source") or print "Cannot open source file"; my $sch = YAML::LoadFile("$cwd/../config/stream_schedule") or print "Cannot oepn schedule file?"; if($ARGS{o} eq 'd' && defined $ARGS{item}){ undef $sch->{$ARGS{id}}->[$ARGS{item}]; @{$sch->{$ARGS{id}}} = grep{ ref } @{$sch->{$ARGS{id}}}; YAML::DumpFile("$cwd/../config/stream_schedule", $sch); print ""; } if($ARGS{starttime} && $ARGS{length} && $valid_input){ push @{$sch->{$ARGS{id}}}, [ $ARGS{starttime}, $ARGS{length}, $ARGS{day} ]; YAML::DumpFile("$cwd/../config/stream_schedule", $sch); print ""; } my $id = $ARGS{id}; my $s = $source->{$id}; % my $cnt = 0; % my @day = qw(Sun Mon Tue Wed Thr Fri Sat); % foreach (@{$sch->{$id}}){
delete >> <% $_->[0] %> ( <% $_->[1] %> secs ) <% length($_->[2]) ? ('@ ', join q/,/, map{$day[$_]} split /,/o, $_->[2]) : ' every day' %> % $cnt++; % }

CURRENT TIME

<% scalar localtime %>

ADD NEW SCHEDULE

START TIME ( e.g. "00:00", "12:30" )
LENGTH (secs)
DAY OF WEEK ( e.g. 0 => Sunday, "1,2" => Monday and Tuesday ) ( blank is for all week )
% }