From c37c71f29e7ed6124045971de278ed91c5f9d27e Mon Sep 17 00:00:00 2001 From: Milan Date: Mon, 27 Aug 2018 00:21:39 +0200 Subject: [PATCH] optimize imports --- lib/calcms/events.pm | 248 ++++++++-------- lib/calcms/time.pm | 4 + website/agenda/add_comment.cgi | 18 +- website/agenda/aggregate.cgi | 14 +- website/agenda/cal.cgi | 8 +- website/agenda/category.cgi | 16 +- website/agenda/comments.cgi | 17 +- website/agenda/css/calcms.css | 8 +- website/agenda/events.cgi | 17 +- website/agenda/planung/assign_series.cgi | 39 +-- website/agenda/planung/assignments.cgi | 37 +-- website/agenda/planung/audio_recordings.cgi | 30 +- website/agenda/planung/calendar.cgi | 94 ++++--- website/agenda/planung/comment.cgi | 42 ++- website/agenda/planung/create_events.cgi | 264 ++++-------------- website/agenda/planung/error_log.cgi | 20 +- website/agenda/planung/event.cgi | 52 ++-- website/agenda/planung/event_history.cgi | 43 ++- website/agenda/planung/help.cgi | 27 +- website/agenda/planung/image.cgi | 64 +++-- website/agenda/planung/imageUpload.cgi | 21 +- website/agenda/planung/js/calendar.js | 8 +- website/agenda/planung/localization.cgi | 18 +- website/agenda/planung/notify_events.cgi | 39 +-- website/agenda/planung/playout.cgi | 38 +-- website/agenda/planung/projects.cgi | 20 +- website/agenda/planung/requestPassword.cgi | 10 +- website/agenda/planung/roles.cgi | 19 +- website/agenda/planung/selectEvent.cgi | 27 +- website/agenda/planung/selectSeries.cgi | 16 +- website/agenda/planung/series.cgi | 42 +-- website/agenda/planung/showImage.cgi | 33 +-- website/agenda/planung/studio_timeslots.cgi | 33 +-- website/agenda/planung/studios.cgi | 20 +- .../planung/templates/create_events.html | 97 +++---- .../agenda/planung/templates/image_edit.html | 7 +- website/agenda/planung/user_settings.cgi | 22 +- website/agenda/planung/user_stats.cgi | 24 +- website/agenda/planung/users.cgi | 20 +- website/agenda/planung/work_time.cgi | 31 +- website/agenda/series.cgi | 24 +- website/agenda/series_names.cgi | 16 +- website/agenda/templates/event_details.html | 4 - website/agenda/upload_playout.cgi | 12 +- 44 files changed, 721 insertions(+), 942 deletions(-) mode change 100755 => 100644 website/agenda/planung/calendar.cgi mode change 100644 => 100755 website/agenda/series.cgi diff --git a/lib/calcms/events.pm b/lib/calcms/events.pm index ad8a10e..e03d6ea 100644 --- a/lib/calcms/events.pm +++ b/lib/calcms/events.pm @@ -183,6 +183,7 @@ sub modify_results { $result->{rerun} = '' unless defined $result->{rerun}; + $result->{title} = '' unless defined $result->{title}; if ( $result->{title} =~ /\#(\d+)([a-z])?\s*$/ ) { $result->{episode} = $1 unless defined $result->{episode}; $result->{rerun} = $2 || '' unless ( $result->{rerun} =~ /\d/ ); @@ -221,7 +222,7 @@ sub modify_results { $result->{event_uri} .= $result->{series_name}; $result->{event_uri} .= '-' if ( $result->{title} ne '' ); } - $result->{event_uri} .= $result->{title} if ( $result->{title} ne '' ); + $result->{event_uri} .= $result->{title} if $result->{title} ne ''; $result->{event_uri} =~ s/\#/Nr./g; $result->{event_uri} =~ s/\&/und/g; $result->{event_uri} =~ s/\//\%2f/g; @@ -611,11 +612,6 @@ sub add_recordings { return $events; } -sub getDateRange { - my $config = shift; - $config->{date}->{day_starting_hour}; -} - sub getDateQueryConditions { my $config = shift; my $params = shift; @@ -626,28 +622,76 @@ sub getDateQueryConditions { #date, today, tomorrow, yesterday my $date = ''; - $date = time::date_cond( $params->{date} ) if ( $params->{date} ne '' ); + $date = time::date_cond( $params->{date} ) if $params->{date} ne ''; my $from_date = ''; - $from_date = time::date_cond( $params->{from_date} ) - if ( $params->{from_date} ne '' ); + $from_date = time::date_cond( $params->{from_date} ) if $params->{from_date} ne ''; my $till_date = ''; - $till_date = time::date_cond( $params->{till_date} ) - if ( $params->{till_date} ne '' ); + $till_date = time::date_cond( $params->{till_date} ) if $params->{till_date} ne ''; my $from_time = ''; - $from_time = time::time_cond( $params->{from_time} ) - if ( $params->{from_time} ne '' ); + $from_time = time::time_cond( $params->{from_time} ) if $params->{from_time} ne ''; my $till_time = ''; - $till_time = time::time_cond( $params->{till_time} ) - if ( $params->{till_time} ne '' ); + $till_time = time::time_cond( $params->{till_time} ) if $params->{till_time} ne ''; + + my $time = $params->{time}; + $time = '' unless defined $time; my $date_range_include = $params->{date_range_include}; + my $day_starting_hour = $config->{date}->{day_starting_hour}; - #from_time is defined - if ( ( $params->{from_date} ne '' ) && ( $params->{from_time} ne '' ) ) { + if ( $date eq 'today' ) { + my $date = time::get_event_date($config); + push @$date_conds, ' ( start_date = ? ) '; + push @$bind_values, $date; + return $date_conds; + } + + # given date + my $start = time::datetime_cond( $date . 'T00:00:00' ); + if ( $start ne '' ) { + $start = time::add_hours_to_datetime( $start, $day_starting_hour ); + my $end = time::add_hours_to_datetime( $start, 24 ); + + if ( $date_range_include eq '1' ) { + push @$date_conds, ' end > ? '; + push @$bind_values, $start; + } else { + push @$date_conds, ' start >= ? '; + push @$bind_values, $start; + } + + push @$date_conds, ' start < ? '; + push @$bind_values, $end; + return $date_conds; + } + + if ( $time eq 'now' ) { + push @$date_conds, qq{ + ( + ( unix_timestamp(end) > unix_timestamp(now() ) ) + and + ( unix_timestamp(start) <= unix_timestamp(now() ) ) + ) + }; + return $date_conds; + } + + if ( $time eq 'future' ) { + push @$date_conds, qq{ + ( + ( unix_timestamp(end) > unix_timestamp(now() ) ) + and + ( unix_timestamp(end) - unix_timestamp(now() ) ) < 7*24*3600 + ) + }; + return $date_conds; + } + + #from_date and from_time is defined + if ( ( $from_date ne '' ) && ( $from_time ne '' ) ) { my $datetime = time::datetime_cond( $from_date . 'T' . $from_time ); if ( $datetime ne '' ) { if ( $date_range_include eq '1' ) { @@ -662,8 +706,8 @@ sub getDateQueryConditions { } } - #till_time is defined - if ( ( $params->{till_date} ne '' ) && ( $params->{till_time} ne '' ) ) { + #till_date and till_time is defined + if ( ( $till_date ne '' ) && ( $till_time ne '' ) ) { my $datetime = time::datetime_cond( $till_date . 'T' . $till_time ); if ( $datetime ne '' ) { push @$date_conds, ' start < ? '; @@ -672,119 +716,59 @@ sub getDateQueryConditions { } } - #time is defined - if ( ( defined $params->{time} ) - && ( $params->{time} ne '' ) - && ( $params->{time} ne 'now' ) - && ( $params->{time} ne 'future' ) ) - { - my $time = time::time_cond( $params->{time} ); - if ( $time ne '' ) { - push @$date_conds, ' time(start) = ? '; - push @$bind_values, $time; + # after start of daily broadcast + if ( ( $from_date ne '' ) && ( $from_time eq '' ) ) { + my $start = time::datetime_cond( $from_date . 'T00:00:00' ); + $start = time::add_hours_to_datetime( $start, $day_starting_hour ); + + if ( $date_range_include eq '1' ) { + + # end is after start + push @$date_conds, ' ( end >= ? )'; + push @$bind_values, $start; + } else { + push @$date_conds, ' ( start >= ? ) '; + push @$bind_values, $start; } - return $date_conds; } - #event is not over - elsif ( ( defined $params->{time} ) && ( $params->{time} eq 'now' ) ) { - push @$date_conds, qq{ - ( - ( unix_timestamp(end) > unix_timestamp(now() ) ) - and - ( unix_timestamp(start) <= unix_timestamp(now() ) ) - ) - }; - return $date_conds; - } elsif ( ( defined $params->{time} ) && ( $params->{time} eq 'future' ) ) { - push @$date_conds, qq{ - ( - ( unix_timestamp(end) > unix_timestamp(now() ) ) - and - ( unix_timestamp(end) - unix_timestamp(now() ) ) < 7*24*3600 - ) - }; - return $date_conds; - } elsif ( $date ne '' ) { - if ( $date eq 'today' ) { - my $date = time::get_event_date($config); - if ( $date ne '' ) { - push @$date_conds, ' ( start_date = ? ) '; - push @$bind_values, $date; - } + # before end of daily broadcast + if ( ( $till_date ne '' ) && ( $till_time eq '' ) ) { + my $end = time::datetime_cond( $till_date . 'T00:00:00' ); + $end = time::add_hours_to_datetime( $end, $day_starting_hour ); + if ( $date_range_include eq '1' ) { + # start is before end + push @$date_conds, ' ( start <= ? )'; + push @$bind_values, $end; } else { - - #push @$date_conds, ' ( start_date = ? ) '; - #push @$bind_values, $date; - my $start = time::datetime_cond( $date . 'T00:00:00' ); - if ( $start ne '' ) { - $start = time::add_hours_to_datetime( $start, $config->{date}->{day_starting_hour} ); - my $end = time::add_hours_to_datetime( $start, 24 ); - - if ( $date_range_include eq '1' ) { - push @$date_conds, ' end > ? '; - push @$bind_values, $start; - } else { - push @$date_conds, ' start >= ? '; - push @$bind_values, $start; - } - - if ( $end ne '' ) { - push @$date_conds, ' start < ? '; - push @$bind_values, $end; - } - } + push @$date_conds, ' ( end <= ? ) '; + push @$bind_values, $end; } - return $date_conds; - } else { - if ( $from_date ne '' ) { - if ( $date_range_include eq '1' ) { + } - # end is after start - push @$date_conds, ' ( end_date >= ? )'; - push @$bind_values, $from_date; - } else { - push @$date_conds, ' ( start_date >= ? ) '; - push @$bind_values, $from_date; - } + if ( $params->{weekday} ne '' ) { + my $weekday = $params->{weekday}; + $weekday += 1; + $weekday -= 7 if ( $weekday > 7 ); + push @$date_conds, ' (dayofweek(start)= ?) '; + push @$bind_values, $weekday; + } + + if ( $params->{archive} eq 'past' ) { + my $date = time::get_event_date($config); + if ( $date ne '' ) { + push @$date_conds, ' ( start < ? ) '; + push @$bind_values, $date; } - if ( $till_date ne '' ) { - if ( $date_range_include eq '1' ) { - - # start is before end - push @$date_conds, ' ( start_date <= ? )'; - push @$bind_values, $till_date; - } else { - push @$date_conds, ' ( end_date <= ? ) '; - push @$bind_values, $till_date; - } + } + if ( $params->{archive} eq 'future' ) { + my $date = time::get_event_date($config); + if ( $date ne '' ) { + push @$date_conds, ' ( end >= ? ) '; + push @$bind_values, $date; } - - if ( $params->{weekday} ne '' ) { - my $weekday = $params->{weekday}; - $weekday += 1; - $weekday -= 7 if ( $weekday > 7 ); - push @$date_conds, ' (dayofweek(start_date)= ?) '; - push @$bind_values, $weekday; - } - - if ( $params->{archive} eq 'past' ) { - my $date = time::get_event_date($config); - if ( $date ne '' ) { - push @$date_conds, ' ( start_date < ? ) '; - push @$bind_values, $date; - } - - } elsif ( $params->{archive} eq 'future' ) { - my $date = time::get_event_date($config); - if ( $date ne '' ) { - push @$date_conds, ' ( start_date >= ? ) '; - push @$bind_values, $date; - } - } - } return $date_conds; @@ -1430,21 +1414,33 @@ sub get_by_date_range { my $end_date = shift; my $options = shift; + my $day_starting_hour = $config->{date}->{day_starting_hour}; + + my $start = time::datetime_cond( $start_date . 'T00:00:00' ); + $start = time::add_hours_to_datetime( $start, $day_starting_hour ); + + my $end = time::datetime_cond( $end_date . 'T00:00:00' ); + $end = time::add_hours_to_datetime( $end, $day_starting_hour ); + my $conditions = []; - push @$conditions, 'start_date between ? and ?'; - my $bind_values = [ $start_date, $end_date ]; + push @$conditions, 'start between ? and ?'; + my $bind_values = [ $start, $end ]; setDefaultEventConditions( $config, $conditions, $bind_values, $options ); $conditions = join( ' and ', @$conditions ); + my $select = qq{distinct date(start) 'start_date'}; + $select = qq{distinct date(DATE_SUB(start, INTERVAL $day_starting_hour HOUR)) 'start_date'} if defined $day_starting_hour; + my $query = qq{ - select start_date + select $select from calcms_events where $conditions - group by start_date }; + #print STDERR Dumper($query); + my $events = db::get( $dbh, $query, $bind_values ); return $events; diff --git a/lib/calcms/time.pm b/lib/calcms/time.pm index cf79561..6b976f3 100644 --- a/lib/calcms/time.pm +++ b/lib/calcms/time.pm @@ -185,6 +185,7 @@ sub datetime_to_utc_datetime{ sub add_hours_to_datetime{ my $datetime=shift; my $hours=shift; + $hours=0 unless defined $hours; return time_to_datetime(datetime_to_time($datetime)+(3600*$hours)); }; @@ -192,6 +193,7 @@ sub add_hours_to_datetime{ sub add_minutes_to_datetime{ my $datetime=shift; my $minutes=shift; + $minutes=0 unless defined $minutes; return time_to_datetime(datetime_to_time($datetime)+(60*$minutes)); }; @@ -199,6 +201,7 @@ sub add_minutes_to_datetime{ sub add_days_to_datetime{ my $datetime=shift; my $days=shift; + $days=0 unless defined $days; my $time=datetime_to_array($datetime); #print STDERR Dumper($time); ($time->[0], $time->[1], $time->[2]) =Date::Calc::Add_Delta_Days($time->[0]+0, $time->[1]+0, $time->[2]+0, $days); @@ -208,6 +211,7 @@ sub add_days_to_datetime{ sub add_days_to_date{ my $datetime=shift; my $days=shift; + $days=0 unless defined $days; my $date=date_to_array($datetime); ($date->[0], $date->[1], $date->[2]) =Date::Calc::Add_Delta_Days($date->[0]+0, $date->[1]+0, $date->[2]+0, $days); return array_to_date($date); diff --git a/website/agenda/add_comment.cgi b/website/agenda/add_comment.cgi index ae773ca..6cc1285 100755 --- a/website/agenda/add_comment.cgi +++ b/website/agenda/add_comment.cgi @@ -8,15 +8,15 @@ use Data::Dumper; use CGI qw(header param Vars escapeHTML uploadInfo cgi_error); $CGI::POST_MAX=1024 * 100; -use params; -use config; -use db; -use markup; -use cache; -use comments; -use template; -use log; -use time; +use params(); +use config(); +use db(); +use markup(); +use cache(); +use comments(); +use template(); +use log(); +use time(); binmode STDOUT, ":utf8"; diff --git a/website/agenda/aggregate.cgi b/website/agenda/aggregate.cgi index 022471a..e91480f 100755 --- a/website/agenda/aggregate.cgi +++ b/website/agenda/aggregate.cgi @@ -12,13 +12,13 @@ use CGI qw(header param Vars); #use Benchmark; #use Devel::Profiler; -use db; -use events; -use time; -use aggregator; -use markup; -use log; -use config; +use db(); +use events(); +use time(); +use aggregator(); +use markup(); +use log(); +use config(); #use params; #my $r=shift; diff --git a/website/agenda/cal.cgi b/website/agenda/cal.cgi index 84b61b3..298e77c 100755 --- a/website/agenda/cal.cgi +++ b/website/agenda/cal.cgi @@ -9,10 +9,10 @@ $CGI::POST_MAX = 1000; $CGI::DISABLE_UPLOADS = 1; use Data::Dumper; -use params; -use config; -use log; -use calendar; +use params(); +use config(); +use log(); +use calendar(); my $r = shift; diff --git a/website/agenda/category.cgi b/website/agenda/category.cgi index 1cb2a18..2971875 100755 --- a/website/agenda/category.cgi +++ b/website/agenda/category.cgi @@ -8,14 +8,14 @@ use CGI qw(header param Vars); $CGI::POST_MAX = 1000; $CGI::DISABLE_UPLOADS = 1; -use params; -use db; -use markup; -use cache; -use log; -use config; -use template; -use project; +use params(); +use db(); +use markup(); +use cache(); +use log(); +use config(); +use template(); +use project(); binmode STDOUT, ":utf8"; diff --git a/website/agenda/comments.cgi b/website/agenda/comments.cgi index caeb58d..972dd4a 100755 --- a/website/agenda/comments.cgi +++ b/website/agenda/comments.cgi @@ -8,14 +8,15 @@ $CGI::POST_MAX = 1000; $CGI::DISABLE_UPLOADS = 1; use Data::Dumper; -use params; -use config; -use comments; -use db; -use markup; -use time; -use cache; -use log; + +use params(); +use config(); +use comments(); +use db(); +use markup(); +use time(); +use cache(); +use log(); my $r = shift; ( my $cgi, my $params, my $error ) = params::get($r); diff --git a/website/agenda/css/calcms.css b/website/agenda/css/calcms.css index 4ccb52a..29359e2 100644 --- a/website/agenda/css/calcms.css +++ b/website/agenda/css/calcms.css @@ -273,6 +273,10 @@ a{ #calcms_list .submitted{ } +#calcms_list h2{ + clear:none !important; +} + #calcms_list .content img{ border:0; } @@ -286,6 +290,7 @@ a{ #calcms_list .content figcaption{ font-size:12px; margin-left: 1em; + max-width:12em; } @@ -740,7 +745,7 @@ a#calcms_search_show_details #plus{ #player{ border:0; padding:0; - height:3rem; + height:5rem; } #player:hover{ opacity:0.9; @@ -842,6 +847,7 @@ div.update, div.update a{ } #listen_radio iframe{ margin-top:1em; + max-width:none; } #listen_radio td{ border:0; diff --git a/website/agenda/events.cgi b/website/agenda/events.cgi index bf717ea..d23bc57 100755 --- a/website/agenda/events.cgi +++ b/website/agenda/events.cgi @@ -1,10 +1,9 @@ #! /usr/bin/perl -w -use warnings "all"; - -#no warnings 'redefine'; -#use diagnostics; use strict; +use warnings; +no warnings 'redefine'; + use Data::Dumper; #use utf8; @@ -13,11 +12,11 @@ use CGI qw(header param Vars); $CGI::POST_MAX = 1000; $CGI::DISABLE_UPLOADS = 1; -use params; -use config; -use log; -use events; -use time; +use params(); +use config(); +use log(); +use events(); +use time(); #binmode STDOUT, ":utf8"; binmode STDOUT, ":encoding(UTF-8)"; diff --git a/website/agenda/planung/assign_series.cgi b/website/agenda/planung/assign_series.cgi index 08458f4..2d38276 100755 --- a/website/agenda/planung/assign_series.cgi +++ b/website/agenda/planung/assign_series.cgi @@ -2,26 +2,27 @@ use warnings "all"; use strict; -use Data::Dumper; -use params; -use config; -use log; -use template; -use auth; -use uac; -use roles; -use project; -use studios; -use events; -use series; -use series_schedule; -use series_events; -use series_dates; -use markup; -use URI::Escape; -use Encode; -use localization; +use Data::Dumper; +use URI::Escape(); +use Encode(); + +use params(); +use config(); +use log(); +use template(); +use auth(); +use uac(); +use roles(); +use project(); +use studios(); +use events(); +use series(); +use series_schedule(); +use series_events(); +use series_dates(); +use markup(); +use localization(); binmode STDOUT, ":utf8"; diff --git a/website/agenda/planung/assignments.cgi b/website/agenda/planung/assignments.cgi index 5bd1bb4..c75f687 100755 --- a/website/agenda/planung/assignments.cgi +++ b/website/agenda/planung/assignments.cgi @@ -4,24 +4,25 @@ use warnings "all"; use strict; use Data::Dumper; -use params; -use config; -use log; -use template; -use auth; -use uac; -use roles; -use project; -use studios; -use events; -use series; -use series_schedule; -use series_events; -use series_dates; -use markup; -use URI::Escape; -use Encode; -use localization; +use URI::Escape(); +use Encode(); + +use params(); +use config(); +use log(); +use template(); +use auth(); +use uac(); +use roles(); +use project(); +use studios(); +use events(); +use series(); +use series_schedule(); +use series_events(); +use series_dates(); +use markup(); +use localization(); binmode STDOUT, ":utf8"; diff --git a/website/agenda/planung/audio_recordings.cgi b/website/agenda/planung/audio_recordings.cgi index a51573a..8bf83cd 100755 --- a/website/agenda/planung/audio_recordings.cgi +++ b/website/agenda/planung/audio_recordings.cgi @@ -6,25 +6,23 @@ use warnings; use strict; use Data::Dumper; - use CGI::Simple (); use ModPerl::Util (); +use Date::Calc(); +use Time::Local(); +use File::Temp(); -use Date::Calc; -use Time::Local; -use File::Temp; - -use config; -use log; -use localization; -use auth; -use uac; -use studios; -use series; -use template; -use audio_recordings; -use events; -use time; +use config(); +use log(); +use localization(); +use auth(); +use uac(); +use studios(); +use series(); +use template(); +use audio_recordings(); +use events(); +use time(); #$|=1; binmode STDOUT, ":utf8"; diff --git a/website/agenda/planung/calendar.cgi b/website/agenda/planung/calendar.cgi old mode 100755 new mode 100644 index a68eeff..8509410 --- a/website/agenda/planung/calendar.cgi +++ b/website/agenda/planung/calendar.cgi @@ -3,32 +3,32 @@ use warnings "all"; use strict; use Data::Dumper; -use URI::Escape; -use Encode; -use utf8; +use URI::Escape(); +use Encode(); +use utf8(); -use params; -use config; -use log; -use template; -use calendar; -use auth; -use uac; -use roles; -use project; -use studios; -use events; -use series; -use markup; -use series_dates; -use studio_timeslot_dates; -use work_dates; -use playout; -use markup; -use user_settings; -use localization; -use DateTime; -use audio_recordings; +use params(); +use config(); +use log(); +use template(); +use calendar(); +use auth(); +use uac(); +use roles(); +use project(); +use studios(); +use events(); +use series(); +use markup(); +use series_dates(); +use studio_timeslot_dates(); +use work_dates(); +use playout(); +use markup(); +use user_settings(); +use localization(); +use DateTime(); +use audio_recordings(); binmode STDOUT, ":utf8"; @@ -404,7 +404,7 @@ sub showCalendar { #print STDERR Dumper($date) if $date->{file}=~/180503/; #$date->{title}.= 'rms_image: ' .($date->{rms_image}||'').'
' if defined $date->{rms_image}; - $date->{rms_image} = uri_unescape( $date->{rms_image} ) if defined $date->{rms_image}; + $date->{rms_image} = URI::Escape::uri_unescape( $date->{rms_image} ) if defined $date->{rms_image}; $date->{origStart} = $date->{start}; @@ -490,18 +490,17 @@ sub showCalendar { # calculate positions and find schedule errors (depending on position) for my $date ( sort ( keys %$events_by_day ) ) { - for my $events ( $events_by_day->{$date} ) { - calc_positions( $events, $cal_options ); - find_errors($events); - } + my $events = $events_by_day->{$date} ; + calc_positions( $events, $cal_options ); + find_errors($events); } for my $event (@$events){ next unless defined $event->{uploaded_at}; - print STDERR "uploadAt=$event->{uploaded_at}, playoutModified:$event->{playout_modified_at}, playoutUpdatedAt:$event->{playout_updated_at}\n"; + #print STDERR "uploadAt=$event->{uploaded_at}, playoutModified:$event->{playout_modified_at}, playoutUpdatedAt:$event->{playout_updated_at}\n"; next if (defined $event->{playout_updated_at}) && ( $event->{uploaded_at} lt $event->{playout_updated_at} ); #print STDERR Dumper($event); - $event->{upload} ='pending' ; + #$event->{upload} ='pending' ; #$event->{title}.='
pending'; } @@ -904,7 +903,7 @@ sub calcCalendarTable { project_id => $project_id, studio_id => $studio_id, class => 'time', - time => sprintf( '%02d', $hour % 24 ) + 'time' => sprintf( '%02d', $hour % 24 ) }; } @@ -927,7 +926,7 @@ sub calcCalendarTable { project_id => -1, studio_id => -1, class => 'time now', - time => $time, + 'time' => $time, }; calc_positions( $events_by_day->{0}, $cal_options ); @@ -1404,9 +1403,7 @@ sub print_event { $height = ''; } - my $date = $event->{origStart} || $event->{start} || ''; - $date = $event->{time} if defined $event->{time}; - $date = $event->{date} if defined $event->{date}; +# my $date = $event->{origStart} || $event->{start} || ''; my $content = $event->{content} || ''; if ( $class =~ /schedule/ ) { @@ -1428,14 +1425,18 @@ sub print_event { $content = '
' . $content . '
'; } - return - q{
$content
} . "\n"; + my $time=''; + $time= qq{ time="$event->{time}"} if $class=~m/time/; + + my $date=''; + $date= qq{ date="$event->{date}"} if $class=~m/date/; + + my $line= q{
$content
} ; + $line.= "\n"; + return $line; } sub getFrequency { @@ -1470,7 +1471,7 @@ sub calc_positions { my ( $end_hour, $end_min ) = getTime( $event->{end_time} ); $start_hour += 24 if $start_hour < $start_of_day; - $end_hour += 24 if $end_hour <= $start_of_day; + $end_hour += 24 if $end_hour < $start_of_day; $event->{ystart} = $start_hour * 60 + $start_min; $event->{yend} = $end_hour * 60 + $end_min; } @@ -1882,3 +1883,4 @@ sub check_params { return $checked; } + diff --git a/website/agenda/planung/comment.cgi b/website/agenda/planung/comment.cgi index 64af386..4c8c795 100755 --- a/website/agenda/planung/comment.cgi +++ b/website/agenda/planung/comment.cgi @@ -2,33 +2,27 @@ use warnings "all"; use strict; -use URI::Escape; -use Encode; + +use URI::Escape(); +use Encode(); use Data::Dumper; -use MIME::Base64; -use Encode::Locale; +use MIME::Base64(); +use Encode::Locale(); -use params; -use config; -use log; -use template; -use db; -use auth; -use uac; +use params(); +use config(); +use log(); +use template(); +use db(); +use auth(); +use uac(); -#use roles; -use time; -use markup; -use project; -use studios; -use comments; - -#use events; -#use series; -#use series_dates; -#use series_events; -#use user_stats; -use localization; +use time(); +use markup(); +use project(); +use studios(); +use comments(); +use localization(); binmode STDOUT, ":utf8"; diff --git a/website/agenda/planung/create_events.cgi b/website/agenda/planung/create_events.cgi index f1bf347..2d68254 100755 --- a/website/agenda/planung/create_events.cgi +++ b/website/agenda/planung/create_events.cgi @@ -4,29 +4,19 @@ use warnings "all"; use strict; use Data::Dumper; -use params; -use config; +use params(); +use config(); +use template(); -#use log; -#use template; -use auth; -use uac; -use time; +use auth(); +use uac(); +use time(); -#use roles; -#use project; -#use studios; -#use events; -use series; -use eventOps; +use series(); +use eventOps(); -#use series_schedule; -#use series_events; -use series_dates; -#use markup; -#use URI::Escape; -#use Encode; -use localization; +use series_dates(); +use localization(); binmode STDOUT, ":utf8"; @@ -85,14 +75,12 @@ unless ( $permissions->{create_event_from_schedule} == 1 ) { return; } -if ( defined $params->{action} ) { - - # assign_s ($config, $request) if ($params->{action} eq 'assign_series'); +if ( $params->{action} eq 'create_events') { + create_events( $config, $request ); +}else{ + show_events( $config, $request ); } -#print Dumper($params); -show_events( $config, $request ); - sub show_events{ my $config = shift; my $request = shift; @@ -103,25 +91,44 @@ sub show_events{ uac::permissions_denied('assign_series_events'); return; } + template::process( 'print', $params->{template}, $params ); + +} + +sub create_events{ + my $config = shift; + my $request = shift; + + my $params = $request->{params}->{checked}; + my $permissions = $request->{permissions}; + unless ( $permissions->{assign_series_events} == 1 ) { + uac::permissions_denied('assign_series_events'); + return; + } + + print STDERR "create events\n"; my $project_id = $params->{project_id}; my $studio_id = $params->{studio_id}; my $from_date = $params->{from_date}; my $till_date = $params->{till_date}; + my $duration = $params->{duration}; $from_date = time::time_to_datetime(); if ($from_date=~/(\d\d\d\d\-\d\d\-\d\d \d\d)/){ $from_date = $1.':00'; } - $till_date = time::add_days_to_datetime($from_date, 28); + $till_date = time::add_days_to_datetime($from_date, $duration); if ($from_date=~/(\d\d\d\d\-\d\d\-\d\d)/){ $from_date = $1; } if ($till_date=~/(\d\d\d\d\-\d\d\-\d\d)/){ $till_date = $1; } + $params->{from_date}=$from_date; + $params->{till_date}=$till_date; - print "update from $from_date to $till_date\n"; + print STDERR "create events from $from_date to $till_date\n"; my $dates = series_dates::getDatesWithoutEvent( $config, { @@ -131,12 +138,15 @@ sub show_events{ till => $till_date } ); - print "
found ".(scalar @$dates)." dates\n";
+    print STDERR "
found ".(scalar @$dates)." dates\n";
+    my $events=[];
     for my $date (@$dates){
-        print $date->{start}."\n";
-        createEvent($config, $request, $date);
-        #return;
+        #print STDERR $date->{start}."\n";
+        push @$events, createEvent($config, $request, $date);
     }
+    $params->{created_events} = $events;
+    $params->{created_total} = scalar(@$events);
+    template::process( 'print', $params->{template}, $params );
 }
 
 sub createEvent{
@@ -159,7 +169,9 @@ sub createEvent{
     return undef unless defined $event;
 
     $event->{start_date} = $event->{start};
-    return eventOps::createEvent($request, $event, 'create_event_from_schedule');
+    eventOps::createEvent($request, $event, 'create_event_from_schedule');
+    print STDERR Dumper($date);
+    return $event;
 
 }
 
@@ -184,7 +196,8 @@ sub check_params {
 
 	#numeric values
 	$checked->{exclude} = 0;
-	for my $param ( 'id', 'project_id', 'studio_id', 'series_id' ) {
+	$checked->{duration} = 28;
+	for my $param ( 'id', 'project_id', 'studio_id', 'duration' ) {
 		if ( ( defined $params->{$param} ) && ( $params->{$param} =~ /^\d+$/ ) ) {
 			$checked->{$param} = $params->{$param};
 		}
@@ -196,192 +209,9 @@ sub check_params {
 		$checked->{studio_id} = -1;
 	}
 
-	for my $param ( 'date', 'from_date', 'till_date' ) {
-		$checked->{$param} = time::check_date( $params->{$param} );
-	}
-
 	$checked->{template} = template::check( $params->{template}, 'create_events' );
 
 	return $checked;
 }
 
-__DATA__
-
-https://piradio.de/agenda/planung/create_events.cgi?project_id=1&studio_id=1&from_date=2016-09-01&till_date=2016-10-01
-
-sub show_events2 {
-	my $config  = shift;
-	my $request = shift;
-
-	my $params      = $request->{params}->{checked};
-	my $permissions = $request->{permissions};
-	unless ( $permissions->{assign_series_events} == 1 ) {
-		uac::permissions_denied('assign_series_events');
-		return;
-	}
-
-	#print STDERR Dumper($params);
-	#print '
'.Dumper($eventsByStart);
-	#return;
-
-	my $scheduleDates = getScheduleDates( $config, $request );
-	my $schedulesByStart = getEventsByDate($scheduleDates);
-
-	my $events = getEvents( $config, $request );
-	my $eventsByStart = getEventsByDate($events);
-
-	print "
\n";
-	for my $date ( sort keys %$schedulesByStart ) {
-		my $schedules     = $schedulesByStart->{$date};
-		my $scheduleCount = scalar(@$schedules);
-		if ( $scheduleCount == 0 ) {
-			print "skip datetime $date, no schedule found\n";
-			next;
-		}
-		if ( $scheduleCount > 1 ) {
-			print "skip datetime $date, $scheduleCount schedules found\n";
-			next;
-		}
-		my $schedule = $schedules->[0];
-
-		if ( defined $eventsByStart->{$date} ) {
-			my $events     = $eventsByStart->{$date};
-			my $eventCount = scalar(@$events);
-			if ( $eventCount > 0 ) {
-				print "skip datetime $date, $eventCount events already exist\n";
-				next;
-			}
-		}
-		print "found schedule without event for $date" . " - " . $schedule->{series_name} . " - " . $schedule->{title} . "\n";
-
-		#createEvent($config, $request, $schedule);
-	}
-}
-
-# get a list of events with given start datetime
-sub getEventsByDate {
-	my $events = shift;
-
-	my $eventsByDate = {};
-	for my $event (@$events) {
-		my $startDate = $event->{start};
-		push @{ $eventsByDate->{$startDate} }, $event;
-	}
-	return $eventsByDate;
-}
-
-sub getScheduleDates {
-	my $config  = shift;
-	my $request = shift;
-
-	my $params      = $request->{params}->{checked};
-	my $permissions = $request->{permissions};
-
-	my $options = {};
-
-	my $from       = $params->{from_date};
-	my $till       = $params->{till_date};
-	my $project_id = $params->{project_id};
-	my $studio_id  = $params->{studio_id};
-
-	#build series filter
-	$options = {
-		project_id         => $project_id,
-		studio_id          => $studio_id,
-		from               => $from,
-		till               => $till,
-		date_range_include => 1,
-		exclude            => 0
-	};
-
-	#get all series dates
-	my $series_dates = series_dates::get_series( $config, $options );
-	return $series_dates;
-}
-
-sub getEvents {
-	my $config  = shift;
-	my $request = shift;
-
-	my $params      = $request->{params}->{checked};
-	my $permissions = $request->{permissions};
-
-	my $options = {};
-
-	my $from       = $params->{from_date};
-	my $till       = $params->{till_date};
-	my $project_id = $params->{project_id};
-	my $studio_id  = $params->{studio_id};
-
-	#build event filter
-	$options = {
-		project_id         => $project_id,
-		template           => 'no',
-		limit              => 600,
-		get                => 'no_content',
-		from_date          => $from,
-		till_date          => $till,
-		date_range_include => 1,
-		archive            => 'all',
-		#exclude_locations         => '1',
-	};
-
-	my $events = getSeriesEvents( $config, $request, $options, $params );
-	return $events;
-}
-
-sub getSeriesEvents {
-	my $config  = shift;
-	my $request = shift;
-	my $options = shift;
-	my $params  = shift;
-
-	#get events by series id
-	my $series_id = $request->{params}->{checked}->{series_id};
-	if ( defined $series_id ) {
-		my $events = series::get_events( $request->{config}, $options );
-		return $events;
-	}
-
-	#get events (directly from database to get the ones, not assigned, yet)
-	delete $options->{studio_id};
-	delete $options->{project_id};
-
-	my $request2 = {
-		params => {
-			checked => events::check_params( $config, $options )
-		},
-		config      => $request->{config},
-		permissions => $request->{permissions}
-	};
-	$request2->{params}->{checked}->{published} = 'all';
-
-    #$request2->{params}->{checked}->{exclude_locations} = 1;
-	#delete $request2->{params}->{checked}->{locations_to_exclude}
-	#  if ( ( $params->{studio_id} == -1 ) && ( defined $request2->{params}->{checked}->{locations_to_exclude} ) );
-
-	my $events = events::get( $config, $request2 );
-
-	#print STDERR Dumper($request2->{params}->{checked});
-	#print STDERR Dumper($events);
-	series::add_series_ids_to_events( $request->{config}, $events );
-
-	my $studios = studios::get(
-		$request->{config},
-		{
-			project_id => $options->{project_id}
-		}
-	);
-	my $studio_id_by_location = {};
-	for my $studio (@$studios) {
-		$studio_id_by_location->{ $studio->{location} } = $studio->{id};
-	}
-
-	for my $event (@$events) {
-		$event->{project_id} = $options->{project_id} unless defined $event->{project_id};
-		$event->{studio_id} = $studio_id_by_location->{ $event->{location} } unless defined $event->{studio_id};
-	}
-
-	return $events;
-}
 
diff --git a/website/agenda/planung/error_log.cgi b/website/agenda/planung/error_log.cgi
index 31a3de9..ea761cd 100755
--- a/website/agenda/planung/error_log.cgi
+++ b/website/agenda/planung/error_log.cgi
@@ -3,19 +3,17 @@
 use warnings "all";
 use strict;
 use Data::Dumper;
-use HTML::Template;
+use HTML::Template();
 
-#use URI::Escape;
-#use Encode;
+use config();
+use log();
+use template();
+use params();
+use config();
+use auth();
+use localization();
+use studios();
 
-use config;
-use log;
-use template;
-use params;
-use config;
-use auth;
-use localization;
-use studios;
 binmode STDOUT, ":utf8";
 my $r = shift;
 ( my $cgi, my $params, my $error ) = params::get($r);
diff --git a/website/agenda/planung/event.cgi b/website/agenda/planung/event.cgi
index be6cf6a..8268644 100755
--- a/website/agenda/planung/event.cgi
+++ b/website/agenda/planung/event.cgi
@@ -1,34 +1,36 @@
 #! /usr/bin/perl -w 
 
-use warnings "all";
 use strict;
-use URI::Escape;
-use Encode;
-use Data::Dumper;
-use MIME::Base64;
-use Encode::Locale;
+use warnings;
+no warnings 'redefine';
 
-use params;
-use config;
-use log;
-use template;
-use db;
-use auth;
-use uac;
+use URI::Escape();
+use Encode();
+use Data::Dumper;
+use MIME::Base64();
+use Encode::Locale();
+
+use params();
+use config();
+use log();
+use template();
+use db();
+use auth();
+use uac();
 
 #use roles;
-use time;
-use markup;
-use project;
-use studios;
-use events;
-use series;
-use series_dates;
-use series_events;
-use user_stats;
-use localization;
-use eventOps;
-use images;
+use time();
+use markup();
+use project();
+use studios();
+use events();
+use series();
+use series_dates();
+use series_events();
+use user_stats();
+use localization();
+use eventOps();
+use images();
 
 binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/event_history.cgi b/website/agenda/planung/event_history.cgi
index fb729df..1dcae56 100755
--- a/website/agenda/planung/event_history.cgi
+++ b/website/agenda/planung/event_history.cgi
@@ -2,33 +2,28 @@
 
 use warnings "all";
 use strict;
-use URI::Escape;
-use Encode;
+
+use URI::Escape();
+use Encode();
 use Data::Dumper;
-use MIME::Base64;
+use MIME::Base64();
+use Text::Diff::FormattedHTML();
 
-#use Text::Diff ();
-use Text::Diff::FormattedHTML;
+use params();
+use config();
+use log();
+use template();
+use db();
+use auth();
+use uac();
+use time();
+use markup();
+use studios();
+use event_history();
+use events();
+use series_events();
+use localization();
 
-use params;
-use config;
-use log;
-use template;
-use db;
-use auth;
-use uac;
-
-#use roles;
-use time;
-use markup;
-use studios;
-use event_history;
-use events;
-
-#use series;
-#use series_dates;
-use series_events;
-use localization;
 binmode STDOUT, ":utf8";
 
 my $r = shift;
diff --git a/website/agenda/planung/help.cgi b/website/agenda/planung/help.cgi
index 261efbe..5eedaba 100755
--- a/website/agenda/planung/help.cgi
+++ b/website/agenda/planung/help.cgi
@@ -2,20 +2,21 @@
 
 use warnings "all";
 use strict;
-use Data::Dumper;
 
-use params;
-use config;
-use log;
-use template;
-use auth;
-use uac;
-use roles;
-use studios;
-use markup;
-use URI::Escape;
-use Encode;
-use localization;
+use Data::Dumper;
+use URI::Escape();
+use Encode();
+
+use params();
+use config();
+use log();
+use template();
+use auth();
+use uac();
+use roles();
+use studios();
+use markup();
+use localization();
 
 #binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/image.cgi b/website/agenda/planung/image.cgi
index 0f83de0..4fc9709 100755
--- a/website/agenda/planung/image.cgi
+++ b/website/agenda/planung/image.cgi
@@ -1,29 +1,31 @@
 #! /usr/bin/perl -w
 
-use warnings "all";
 use strict;
+use warnings;
+no warnings 'redefine';
+
 use Data::Dumper;
 
-use File::stat;
-use Time::localtime;
+use File::stat();
+use Time::localtime();
 use CGI::Simple;# qw(header param Vars escapeHTML uploadInfo cgi_error);
-use URI::Escape;
+use URI::Escape();
 
-use time;
-use images;
-use params;
-use config;
-use log;
-use template;
-use db;
-use auth;
-use uac;
-use project;
-use time;
-use markup;
-use studios;
-use series;
-use localization;
+use time();
+use images();
+use params();
+use config();
+use log();
+use template();
+use db();
+use auth();
+use uac();
+use project();
+use time();
+use markup();
+use studios();
+use series();
+use localization();
 
 binmode STDOUT, ":utf8";
 
@@ -175,7 +177,7 @@ sub show_image {
 		# put selected image first
 		$selectedFilename = 'not-found';
 		if ( defined $selectedImage ) {
-			$finalResults = [ $selectedImage ];
+			push @$finalResults, $selectedImage;
 			$selectedFilename = $selectedImage->{filename};
 		}
 
@@ -186,13 +188,13 @@ sub show_image {
 		$results = $finalResults;
 	}
 
-	if ( $params->{template} =~ /edit/ ) {
-	    my $result = $results->[0];
-        $result->{missing_licence}=1 if (! defined $result->{licence} ) || ( $result->{licence}!~/\S/);
-		$results = [ $result ] ;
-	}
+	if ( scalar @$results !=0 ) {
+	    if ( $params->{template} =~ /edit/ ) {
+	        my $result = $results->[0];
+            $result->{missing_licence}=1 if (! defined $result->{licence} ) || ( $result->{licence}!~/\S/);
+		    $results = [ $result ] ;
+	    }
 
-	if ( defined $results ) {
 		$results = modify_results( $results, $permissions, $user, $local_media_url );
 	}
 
@@ -202,7 +204,7 @@ sub show_image {
 	my $template_params = {
 		'search'     => $search,
 		'images'     => $results,
-		'count'      => @$results . '',
+		'count'      => scalar @$results,
 		'projects'   => project::get_with_dates($config),
 		'project_id' => $params->{project_id},
 		'studio_id'  => $params->{studio_id},
@@ -211,8 +213,8 @@ sub show_image {
 
 	#    print STDERR
 	$template_params->{loc} = localization::get( $config, { user => $params->{presets}->{user}, file => 'image' } );
-	$template_params = uac::set_template_permissions( $permissions, $template_params );
-
+	$template_params= uac::set_template_permissions( $permissions, $template_params );
+    $template_params->{no_results}=1 if scalar @$results==0;
 	#set global values for update and delete, per image values are evaluated later
 	$template_params->{allow}->{update_image} =
 	  $template_params->{allow}->{update_image_own} || $template_params->{allow}->{seriesupdate_image_others};
@@ -266,7 +268,7 @@ sub save_image {
 	my $dbh = db::connect($config);
 
 	print STDERR "going to save\n";
-	print STDERR Dumper($image);
+	#print STDERR Dumper($image);
 
 	my $entries = images::get(
 		$config,
@@ -321,7 +323,7 @@ sub delete_image {
 		filename   => $params->{delete_image},
 	};
 	my $result = images::delete( $dbh, $image );
-	print STDERR "delete result=" . Dumper($result);
+	#print STDERR "delete result=" . Dumper($result);
 
 	return;
 	my $action_result = '';
diff --git a/website/agenda/planung/imageUpload.cgi b/website/agenda/planung/imageUpload.cgi
index e7a6236..c9dc52a 100755
--- a/website/agenda/planung/imageUpload.cgi
+++ b/website/agenda/planung/imageUpload.cgi
@@ -9,17 +9,18 @@ use Apache2::Upload;
 
 delete $INC{CGI};
 require 'CGI.pm';
-use Date::Calc;
-use Time::Local;
-use Image::Magick;
-use Image::Magick::Square;
 
-use config;
-use auth;
-use uac;
-use studios;
-use template;
-use images;
+use Date::Calc();
+use Time::Local();
+use Image::Magick();
+use Image::Magick::Square();
+
+use config();
+use auth();
+use uac();
+use studios();
+use template();
+use images();
 
 binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/js/calendar.js b/website/agenda/planung/js/calendar.js
index b5ccfd2..f59fcf4 100644
--- a/website/agenda/planung/js/calendar.js
+++ b/website/agenda/planung/js/calendar.js
@@ -320,7 +320,7 @@ function getNearestDatetime(){
             var distance=Math.abs(delta);
             if (distance0 ) return;
-        handleSchedule($(this).attr("id"), $(this).attr("date"), event);
+        handleSchedule($(this).attr("id"), $(this).attr("start"), event);
     });
 
     //create schedule within studio timeslots
@@ -1031,7 +1031,7 @@ function handleWorktime(id, event){
     if (project_id<0)   return;
     if (studio_id<0)    return;
     if (schedule_id<0)  return;
-    var start_date=$(this).attr("date");
+    var start_date=$(this).attr("start");
 
     var url="work_time.cgi?action=show_new_event_from_schedule&project_id="+project_id+"&studio_id="+studio_id+"&schedule_id="+schedule_id+"&start_date="+start_date;
     if(event.which==1){
diff --git a/website/agenda/planung/localization.cgi b/website/agenda/planung/localization.cgi
index 012b361..bd312c7 100755
--- a/website/agenda/planung/localization.cgi
+++ b/website/agenda/planung/localization.cgi
@@ -1,15 +1,17 @@
 #! /usr/bin/perl -w 
 
-use warnings "all";
 use strict;
-use Data::Dumper;
+use warnings;
+no warnings 'redefine';
 
-use config;
-use params;
-use log;
-use JSON;
-use auth;
-use localization;
+use Data::Dumper;
+use JSON();
+
+use config();
+use params();
+use log();
+use auth();
+use localization();
 
 binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/notify_events.cgi b/website/agenda/planung/notify_events.cgi
index a70fc31..9a2a187 100755
--- a/website/agenda/planung/notify_events.cgi
+++ b/website/agenda/planung/notify_events.cgi
@@ -2,33 +2,24 @@
 
 use warnings "all";
 use strict;
-use URI::Escape;
-use Encode;
+use URI::Escape();
+use Encode();
 use Data::Dumper;
+use MIME::Lite();
 
-#use Text::Diff::FormattedHTML;
-use MIME::Lite;
+use params();
+use config();
+use log();
+use template();
+use db();
+use auth();
+use uac();
+use time();
+use markup();
+use studios();
+use series();
+use localization();
 
-use params;
-use config;
-use log;
-use template;
-use db;
-use auth;
-use uac;
-
-#use roles;
-use time;
-use markup;
-use studios;
-
-#use event_history;
-#use events;
-use series;
-
-#use series_dates;
-#use series_events;
-use localization;
 binmode STDOUT, ":utf8";
 
 my $r = shift;
diff --git a/website/agenda/planung/playout.cgi b/website/agenda/planung/playout.cgi
index f441306..4b491a1 100644
--- a/website/agenda/planung/playout.cgi
+++ b/website/agenda/planung/playout.cgi
@@ -4,26 +4,26 @@ use warnings "all";
 use strict;
 use Data::Dumper;
 
-use URI::Escape;
-use Encode;
-use localization;
+use URI::Escape();
+use Encode();
+use localization();
 
-use params;
-use config;
-use log;
-use template;
-use auth;
-use uac;
-use roles;
-use project;
-use studios;
-use events;
-use series;
-use series_schedule;
-use series_events;
-use series_dates;
-use markup;
-use playout;
+use params();
+use config();
+use log();
+use template();
+use auth();
+use uac();
+use roles();
+use project();
+use studios();
+use events();
+use series();
+use series_schedule();
+use series_events();
+use series_dates();
+use markup();
+use playout();
 
 binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/projects.cgi b/website/agenda/planung/projects.cgi
index e35234d..71eefff 100755
--- a/website/agenda/planung/projects.cgi
+++ b/website/agenda/planung/projects.cgi
@@ -4,16 +4,16 @@ use warnings "all";
 use strict;
 use Data::Dumper;
 
-use config;
-use params;
-use log;
-use template;
-use auth;
-use roles;
-use uac;
-use studios;
-use series;
-use localization;
+use config();
+use params();
+use log();
+use template();
+use auth();
+use roles();
+use uac();
+use studios();
+use series();
+use localization();
 
 my $r = shift;
 ( my $cgi, my $params, my $error ) = params::get($r);
diff --git a/website/agenda/planung/requestPassword.cgi b/website/agenda/planung/requestPassword.cgi
index 3b99163..79debb6 100644
--- a/website/agenda/planung/requestPassword.cgi
+++ b/website/agenda/planung/requestPassword.cgi
@@ -5,11 +5,11 @@ use strict;
 
 use Data::Dumper;
 
-use params;
-use config;
-use db;
-use auth;
-use password_requests;
+use params();
+use config();
+use db();
+use auth();
+use password_requests();
 
 binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/roles.cgi b/website/agenda/planung/roles.cgi
index 71ee003..7c5b246 100755
--- a/website/agenda/planung/roles.cgi
+++ b/website/agenda/planung/roles.cgi
@@ -4,15 +4,16 @@ use warnings "all";
 use strict;
 use Data::Dumper;
 
-use config;
-use params;
-use log;
-use template;
-use auth;
-use roles;
-use uac;
-use studios;
-use localization;
+use config();
+use params();
+use log();
+use template();
+use auth();
+use roles();
+use uac();
+use studios();
+use localization();
+
 binmode STDOUT, ":utf8";
 
 my $r = shift;
diff --git a/website/agenda/planung/selectEvent.cgi b/website/agenda/planung/selectEvent.cgi
index e862750..0bed64c 100755
--- a/website/agenda/planung/selectEvent.cgi
+++ b/website/agenda/planung/selectEvent.cgi
@@ -4,26 +4,15 @@ use warnings "all";
 use strict;
 use Data::Dumper;
 
-use params;
-use config;
-use log;
-use template;
-use auth;
-use uac;
+use params();
+use config();
+use log();
+use template();
+use auth();
+use uac();
 
-#use roles;
-#use project;
-#use studios;
-#use events;
-use series;
-
-#use series_schedule;
-#use series_events;
-#use series_dates;
-#use markup;
-#use URI::Escape;
-#use Encode;
-use localization;
+use series();
+use localization();
 
 binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/selectSeries.cgi b/website/agenda/planung/selectSeries.cgi
index a027fac..df9fe2e 100755
--- a/website/agenda/planung/selectSeries.cgi
+++ b/website/agenda/planung/selectSeries.cgi
@@ -4,14 +4,14 @@ use warnings "all";
 use strict;
 use Data::Dumper;
 
-use params;
-use config;
-use log;
-use template;
-use auth;
-use uac;
-use series;
-use localization;
+use params();
+use config();
+use log();
+use template();
+use auth();
+use uac();
+use series();
+use localization();
 
 binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/series.cgi b/website/agenda/planung/series.cgi
index 17a32b4..ef103f6 100755
--- a/website/agenda/planung/series.cgi
+++ b/website/agenda/planung/series.cgi
@@ -1,28 +1,30 @@
 #! /usr/bin/perl -w 
 
-use warnings "all";
 use strict;
-use Data::Dumper;
+use warnings;
+no warnings 'redefine';
 
-use params;
-use config;
-use log;
-use template;
-use auth;
-use uac;
-use roles;
-use project;
-use studios;
-use events;
-use series;
-use series_schedule;
-use series_events;
-use series_dates;
-use user_stats;
-use markup;
+use Data::Dumper;
 use URI::Escape;
-use Encode;
-use localization;
+use Encode();
+
+use params();
+use config();
+use log();
+use template();
+use auth();
+use uac();
+use roles();
+use project();
+use studios();
+use events();
+use series();
+use series_schedule();
+use series_events();
+use series_dates();
+use user_stats();
+use markup();
+use localization();
 
 binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/showImage.cgi b/website/agenda/planung/showImage.cgi
index 2266cd3..e699f64 100644
--- a/website/agenda/planung/showImage.cgi
+++ b/website/agenda/planung/showImage.cgi
@@ -1,30 +1,19 @@
 #! /usr/bin/perl -w 
 
-use warnings "all";
 use strict;
+use warnings;
+no warnings 'redefine';
+
 use Data::Dumper;
 
-use params;
-use config;
-use log;
-use template;
-use auth;
-use uac;
-
-#use roles;
-#use project;
-#use studios;
-#use events;
-#use series;
-use images;
-
-#use series_schedule;
-#use series_events;
-#use series_dates;
-#use markup;
-#use URI::Escape;
-#use Encode;
-use localization;
+use params();
+use config();
+use log();
+use template();
+use auth();
+use uac();
+use images();
+use localization();
 
 binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/studio_timeslots.cgi b/website/agenda/planung/studio_timeslots.cgi
index bb5db68..501720d 100755
--- a/website/agenda/planung/studio_timeslots.cgi
+++ b/website/agenda/planung/studio_timeslots.cgi
@@ -2,23 +2,24 @@
 
 use warnings "all";
 use strict;
-use Data::Dumper;
 
-use params;
-use config;
-use log;
-use template;
-use auth;
-use uac;
-use roles;
-use project;
-use studios;
-use studio_timeslot_schedule;
-use studio_timeslot_dates;
-use markup;
-use URI::Escape;
-use Encode;
-use localization;
+use Data::Dumper;
+use URI::Escape();
+use Encode();
+
+use params();
+use config();
+use log();
+use template();
+use auth();
+use uac();
+use roles();
+use project();
+use studios();
+use studio_timeslot_schedule();
+use studio_timeslot_dates();
+use markup();
+use localization();
 
 binmode STDOUT, ":utf8";
 
diff --git a/website/agenda/planung/studios.cgi b/website/agenda/planung/studios.cgi
index 485d15a..581173f 100755
--- a/website/agenda/planung/studios.cgi
+++ b/website/agenda/planung/studios.cgi
@@ -4,16 +4,16 @@ use warnings "all";
 use strict;
 use Data::Dumper;
 
-use config;
-use params;
-use log;
-use template;
-use auth;
-use roles;
-use uac;
-use studios;
-use series;
-use localization;
+use config();
+use params();
+use log();
+use template();
+use auth();
+use roles();
+use uac();
+use studios();
+use series();
+use localization();
 
 my $r = shift;
 ( my $cgi, my $params, my $error ) = params::get($r);
diff --git a/website/agenda/planung/templates/create_events.html b/website/agenda/planung/templates/create_events.html
index 4784d38..1602aab 100644
--- a/website/agenda/planung/templates/create_events.html
+++ b/website/agenda/planung/templates/create_events.html
@@ -1,65 +1,54 @@
 
 
-    
+    );
+
 
-    
+function assign_series(project_id, studio_id){
+    if (project_id == '') return false;
+    if (studio_id  == '')  return false;
 
-    assign series to project  and studio 
+    var url="create_events.cgi?project_id="+project_id+'&studio_id='+studio_id+'&action=create_events';
+    $('#create_event_form').submit();
+    return false;
+}
+
 
-    
-    
-
-
Series
- +

create events from schedule

-
- - - - - -
-
-
+
+ + + - - - + duration + + + +
+ +
+created events from till
+ events created +
+
+ + + + + diff --git a/website/agenda/planung/templates/image_edit.html b/website/agenda/planung/templates/image_edit.html index ab0a747..433b3f0 100644 --- a/website/agenda/planung/templates/image_edit.html +++ b/website/agenda/planung/templates/image_edit.html @@ -1,8 +1,5 @@ - - - + +found no image + +
diff --git a/website/agenda/planung/user_settings.cgi b/website/agenda/planung/user_settings.cgi index e73da01..1939c7c 100755 --- a/website/agenda/planung/user_settings.cgi +++ b/website/agenda/planung/user_settings.cgi @@ -4,17 +4,17 @@ use warnings "all"; use strict; use Data::Dumper; -use config; -use log; -use template; -use auth; -use uac; -use roles; -use project; -use studios; -use params; -use user_settings; -use localization; +use config(); +use log(); +use template(); +use auth(); +use uac(); +use roles(); +use project(); +use studios(); +use params(); +use user_settings(); +use localization(); my $r = shift; ( my $cgi, my $params, my $error ) = params::get($r); diff --git a/website/agenda/planung/user_stats.cgi b/website/agenda/planung/user_stats.cgi index 27678b7..05a5bdf 100755 --- a/website/agenda/planung/user_stats.cgi +++ b/website/agenda/planung/user_stats.cgi @@ -4,18 +4,18 @@ use warnings "all"; use strict; use Data::Dumper; -use config; -use log; -use template; -use auth; -use uac; -use roles; -use project; -use studios; -use params; -use user_settings; -use user_stats; -use localization; +use config(); +use log(); +use template(); +use auth(); +use uac(); +use roles(); +use project(); +use studios(); +use params(); +use user_settings(); +use user_stats(); +use localization(); my $r = shift; ( my $cgi, my $params, my $error ) = params::get($r); diff --git a/website/agenda/planung/users.cgi b/website/agenda/planung/users.cgi index 42c026a..bc14783 100755 --- a/website/agenda/planung/users.cgi +++ b/website/agenda/planung/users.cgi @@ -4,16 +4,16 @@ use warnings "all"; use strict; use Data::Dumper; -use config; -use log; -use template; -use auth; -use uac; -use roles; -use studios; -use params; -use localization; -use password_requests; +use config(); +use log(); +use template(); +use auth(); +use uac(); +use roles(); +use studios(); +use params(); +use localization(); +use password_requests(); my $r = shift; ( my $cgi, my $params, my $error ) = params::get($r); diff --git a/website/agenda/planung/work_time.cgi b/website/agenda/planung/work_time.cgi index 4b45c22..e04305a 100755 --- a/website/agenda/planung/work_time.cgi +++ b/website/agenda/planung/work_time.cgi @@ -2,22 +2,23 @@ use warnings "all"; use strict; -use Data::Dumper; -use params; -use config; -use log; -use template; -use auth; -use uac; -use roles; -use project; -use studios; -use work_schedule; -use work_dates; -use URI::Escape; -use Encode; -use localization; +use Data::Dumper; +use URI::Escape(); +use Encode(); + +use params(); +use config(); +use log(); +use template(); +use auth(); +use uac(); +use roles(); +use project(); +use studios(); +use work_schedule(); +use work_dates(); +use localization(); binmode STDOUT, ":utf8"; diff --git a/website/agenda/series.cgi b/website/agenda/series.cgi old mode 100644 new mode 100755 index 763c272..3eadc5c --- a/website/agenda/series.cgi +++ b/website/agenda/series.cgi @@ -4,25 +4,11 @@ use warnings "all"; use strict; use Data::Dumper; -use params; -use config; -#use log; -use template; -#use auth; -#use uac; -#use roles; -#use project; -use studios; -#use events; -use series; -#use series_schedule; -#use series_events; -#use series_dates; -#use user_stats; -#use markup; -#use URI::Escape; -#use Encode; -#use localization; +use params(); +use config(); +use template(); +use studios(); +use series(); binmode STDOUT, ":utf8"; print "Content-Type: text/html; charset=utf-8\n\n"; diff --git a/website/agenda/series_names.cgi b/website/agenda/series_names.cgi index 90f8f12..ef50def 100755 --- a/website/agenda/series_names.cgi +++ b/website/agenda/series_names.cgi @@ -11,14 +11,14 @@ use CGI qw(header param Vars); $CGI::POST_MAX = 1000; $CGI::DISABLE_UPLOADS = 1; -use params; -use db; -use markup; -use cache; -use log; -use config; -use template; -use project; +use params(); +use db(); +use markup(); +use cache(); +use log(); +use config(); +use template(); +use project(); binmode STDOUT, ":utf8"; diff --git a/website/agenda/templates/event_details.html b/website/agenda/templates/event_details.html index a5bb161..df493ad 100644 --- a/website/agenda/templates/event_details.html +++ b/website/agenda/templates/event_details.html @@ -43,23 +43,19 @@ -
<TMPL_VAR series_name>
Bild:
-
-
<TMPL_VAR series_name>
Bild:
-
diff --git a/website/agenda/upload_playout.cgi b/website/agenda/upload_playout.cgi index de6b2c7..9bdbda8 100755 --- a/website/agenda/upload_playout.cgi +++ b/website/agenda/upload_playout.cgi @@ -11,11 +11,11 @@ $CGI::DISABLE_UPLOADS = 1; use Data::Dumper; #use Apache2::Request; -use JSON; -use params; -use config; -use log; -use playout; +use JSON(); +use params(); +use config(); +use log(); +use playout(); my $r = shift; @@ -39,7 +39,7 @@ if ( $0 =~ /upload_playout.*?\.cgi$/ ) { my $len = $r->headers_in()->get('Content-Length'); print "Content-type:text/plain\n\n"; - my $json = decode_json($content); + my $json = JSON::decode_json($content); $json->{project_id} = $params->{project_id} if defined $params->{project_id}; $json->{studio_id} = $params->{studio_id} if defined $params->{studio_id}; $config->{access}->{write} = 1;