sub c_u_d_GetNewWordlets { local(%new_wordlets, %new_wordlets_cp, %new_wordlets_err, %new_wordlets_img, %new_wordlets_date); &RequireCode("$vars_config{CGIPath}/cp_new_wordlets.cgi"); &c_n_w_GetNewWordlets; my %update; foreach my $thisk (sort keys %new_wordlets) { $update{'primary'}->{$thisk} = { 'name' => $new_wordlets{$thisk}->{'name'}, 'wordlet' => $new_wordlets{$thisk}->{'new'}, 'version' => $new_wordlets{$thisk}->{'version'}, 'humanversion' => $new_wordlets{$thisk}->{'humanversion'}, }; } #endforeach foreach my $thisk (sort keys %new_wordlets_cp) { $update{'cp'}->{$thisk} = { 'name' => $new_wordlets_cp{$thisk}->{'name'}, 'wordlet' => $new_wordlets_cp{$thisk}->{'new'}, 'version' => $new_wordlets_cp{$thisk}->{'version'}, 'humanversion' => $new_wordlets_cp{$thisk}->{'humanversion'}, }; } #endforeach foreach my $thisk (sort keys %new_wordlets_date) { $update{'date'}->{$thisk} = { 'name' => $new_wordlets_date{$thisk}->{'name'}, 'wordlet' => $new_wordlets_date{$thisk}->{'new'}, 'version' => $new_wordlets_date{$thisk}->{'version'}, 'humanversion' => $new_wordlets_date{$thisk}->{'humanversion'}, }; } #endforeach foreach my $thisk (sort keys %new_wordlets_err) { $update{'err'}->{$thisk} = { 'name' => $new_wordlets_err{$thisk}->{'name'}, 'wordlet' => $new_wordlets_err{$thisk}->{'new'}, 'version' => $new_wordlets_err{$thisk}->{'version'}, 'humanversion' => $new_wordlets_err{$thisk}->{'humanversion'}, }; } #endforeach foreach my $thisk (sort keys %new_wordlets_img) { $update{'img'}->{$thisk} = { 'name' => $new_wordlets_img{$thisk}->{'name'}, 'wordlet' => $new_wordlets_img{$thisk}->{'new'}, 'version' => $new_wordlets_img{$thisk}->{'version'}, 'humanversion' => $new_wordlets_img{$thisk}->{'humanversion'}, }; } #endforeach #also changed in 6.1.0 - vars_wordlets -> reg_notify_admin's HTML version return (\%update); } #endsub c_u_d_GetNewWordlets sub c_u_d_6090_ForumSanityCheck { my %blank = (); my @foru = &OpenForumsFile; foreach $one (@foru) { my $forum = (split(/\|\^\|/, $one))[8]; $exact_path = &SetExactPath($forum); if(!-e "$vars_config{NonCGIPath}/$exact_path/forum_$forum.threads") { &WriteHashToFile("$vars_config{NonCGIPath}/$exact_path/forum_$forum.threads", "forum_topics", \%blank); } if(!-d "$vars_config{NonCGIPath}/cache-$vars_config{cache_pw}/backups") { mkdir("$vars_config{NonCGIPath}/cache-$vars_config{cache_pw}/backups", 0777); } if(!-d "$vars_config{NonCGIPath}/cache-$vars_config{cache_pw}/backups/Forum$forum") { mkdir("$vars_config{NonCGIPath}/cache-$vars_config{cache_pw}/backups/Forum$forum", 0777); } } #end } #end sub c_u_d_6090_PrepareCustomGraemlins { &RequireVars("$vars_config{VariablesPath}/vars_wordlets_img.cgi"); if (-e "$vars_config{VariablesPath}/vars_graemlins.cgi") { &RequireVars("$vars_config{VariablesPath}/vars_graemlins.cgi"); } if ((!$vars_graemlins) || (($vars_graemlins{custgraems} == 0) && (exists $vars_wordlets_img{graemlin_smile}))) { $vars_graemlins = { 'origs' => { '01_smile' => { 'trigger' => ':)', 'image' => 'smile.gif', 'text' => $vars_wordlets_img{graemlin_smile}, }, '02_frown' => { 'trigger' => ':(', 'image' => 'frown.gif', 'text' => $vars_wordlets_img{graemlin_frown}, }, '03_redface' => { 'trigger' => ':o', 'image' => 'redface.gif', 'text' => $vars_wordlets_img{graemlin_embarrassed}, }, '04_biggrin' => { 'trigger' => ':D', 'image' => 'biggrin.gif', 'text' => $vars_wordlets_img{graemlin_big_grin}, }, '05_wink' => { 'trigger' => ';)', 'image' => 'wink.gif', 'text' => $vars_wordlets_img{graemlin_wink}, }, '06_tongue' => { 'trigger' => ':p', 'image' => 'tongue.gif', 'text' => $vars_wordlets_img{graemlin_razz}, }, '07_cool' => { 'trigger' => ':cool:', 'image' => 'cool.gif', 'text' => $vars_wordlets_img{graemlin_cool}, }, '08_rolleyes' => { 'trigger' => ':rolleyes:', 'image' => 'rolleyes.gif', 'text' => $vars_wordlets_img{graemlin_roll_eyes}, }, '09_mad' => { 'trigger' => ':mad:', 'image' => 'mad.gif', 'text' => $vars_wordlets_img{graemlin_mad}, }, '10_eek' => { 'trigger' => ':eek:', 'image' => 'eek.gif', 'text' => $vars_wordlets_img{graemlin_eek}, }, '11_confused' => { 'trigger' => ':confused:', 'image' => 'confused.gif', 'text' => $vars_wordlets_img{graemlin_confused}, }, }, 'custgraems' => '0', 'graems' => {}, }; foreach my $one (qw(graemlin_big_grin graemlin_confused graemlin_cool graemlin_eek graemlin_embarrassed graemlin_frown graemlin_mad graemlin_razz graemlin_roll_eyes graemlin_smile graemlin_wink)) { delete $vars_wordlets_img{$one}; } &WriteHashToFile("$vars_config{VariablesPath}/vars_wordlets_img.cgi", "vars_wordlets_img", \%vars_wordlets_img); &RequireCode("$vars_config{CGIPath}/cp_graemlins.cgi"); &c_g_WriteVarsGraemlins; } #endif return; } #endsub c_u_d_6100_PrepareCustomGraemlins sub c_u_d_AdditionalTasks { #will contain additional upgrade tasks and checks in the future &c_u_d_6090_PrepareCustomGraemlins; &c_u_d_6090_ForumSanityCheck; return; } #endsub c_u_d_AdditionalTasks 1; # must retutn 'true' for Perl - leave this line alone!