]> lifelog.hopto.org Git - LifeLog.git/commitdiff
CGI module changes.
authorWill Budic <redacted>
Sat, 23 Sep 2023 01:09:50 +0000 (11:09 +1000)
committerWill Budic <redacted>
Sat, 23 Sep 2023 01:09:50 +0000 (11:09 +1000)
htdocs/cgi-bin/CNFServices.cgi
htdocs/cgi-bin/index.cnf
htdocs/cgi-bin/wsrc/feeds.js
htdocs/cgi-bin/wsrc/main_sun.css

index b6ab00eb99784a2fa8eba9b797cc0944689ffcf4..651e8aaf15591201d655d87fffac6869f29e1739 100755 (executable)
@@ -7,8 +7,9 @@ use strict;
 use warnings;
 use Exception::Class ('CNFHTMLServiceError');
 use Syntax::Keyword::Try;
-use CGI;
-use CGI::Session '-ip_match';
+use utf8;
+use CGI::Tiny;
+use Path::Tiny;
 no warnings qw(experimental::signatures);
 use feature qw(signatures);
 ##
@@ -17,15 +18,10 @@ use feature qw(signatures);
 ##
 use CGI::Carp qw(fatalsToBrowser set_message);
 
-BEGIN {
-   sub handle_errors {
-      my $err = shift;
-      say "<html><body><h2>Server Error</h2><code style='color:crimson; font-weight:bold'>$err<code></body></html>";
-   }
-   set_message(\&handle_errors);
-}
-
-use lib "system/modules";
+##
+# This is a entry point script (main).
+##
+use lib::relative "system/modules";
 require CNFParser;
 require CNFNode;
 
@@ -43,24 +39,44 @@ use constant LOG_Settings =>q(
 >>
 );
 
-exit &CNFHTMLService;
+cgi {
+  my $cgi = $_;
+     $cgi->set_error_handler(
+        sub {
+            my ($cgi, $error, $rendered) = @_;
+            chomp $error;
+            $cgi->render(text=>qq(<html><body><font style="color:crimson; font-weight:bold">You have unfortunately hit an cgi-bin::CNFHTMLServiceError</font>
+                                            <div class='content-debug_output'><pre style="background:transparent">$error</pre><br> </div>
+                                </body></html>
+                                )
+                    );
+        }
+     );
+  exit CNFHTMLService($cgi);
+};
+
 
 sub CNFHTMLService {
-    my ($cgi,$ptr)   = (CGI -> new(),undef);
+
+    my ($cgi,$ptr)   = (shift, undef);
     my  $cnf  = CNFParser -> new (undef,{ DO_ENABLED => 1, HAS_EXTENSIONS=>1, ANONS_ARE_PUBLIC => 1, CGI=>$cgi });
         $cnf->parse(undef,_getServiceScript($cgi));
         $ptr = $cnf->data();
         $ptr = $ptr->{'PAGE'};
-    say $$ptr if $ptr;
+    #say $$ptr if $ptr;
+    $cgi -> render(text=>$$ptr);
     return 0
 }
 
 sub _getServiceScript($cgi) {
-     my $service = $cgi->param('service'); $service = "undef" if not $service;
+     my $service = $cgi->param('service');
+     unless ($service){
+        $cgi->set_response_status(404);
+        CNFHTMLServiceError->throw(error=>'The Service parameter \'service\' is not set!', show_trace=>1);
+     }
      if($service eq 'feeds'){
         return _CNF_Script_For_Feeds();
      }
-     CNFHTMLServiceError->throw(error=>"UNKNOWN SERVICE -> $service", show_trace=>1)
 }
 
 sub _CNF_Script_For_Feeds {
index 655f5cac6ec2df2df720786655ebe20e940cf64f..9051ad3b80d957b7d7e2a2e1adda8826223c49a6 100644 (file)
@@ -33,7 +33,7 @@
 
     #header {
         border: 1px solid gray;
-        background: rgba(128,128,128,0.2);
+        background: rgba(0, 223, 246, 0.13);
         margin:5px;
     }
 
index 1e0ea9bf0b26d741ab78bb54e5606b9b726fcd65..d10a75900907155a5aeb3cc75af26a4aa26ac76d 100644 (file)
@@ -9,7 +9,10 @@ function fetchFeeds(id){
     pnl.css('visibility','visible');
     $(document).scrollTop( $("#rss_anchor").offset().top );
     $.post('CNFServices.cgi', {service:'feeds',action:'list'}, displayFeeds).fail(
-        function(response) {pnl.html("Service Error: "+response.status,response.responseText);pnl.fadeOut(10000);}
+        function(response) {
+            pnl.html(response.responseText);
+            pnl.fadeOut(10000);
+        }
     );
 }
 function fetchFeed(feed) {
@@ -21,7 +24,10 @@ function fetchFeed(feed) {
     pnl.show();
     pnl.css('visibility','visible');
     $.post('CNFServices.cgi', {service:'feeds', action:'read', feed:feed}, displayFeeds).fail(
-        function(response) {pnl.html("Service Error: "+response.status,response.responseText);pnl.fadeOut(10000);}
+        function(response) {
+            pnl.html(response.responseText);
+            pnl.fadeOut(20000);
+        }
     );
 }
 function displayFeeds(content){
index 26a76bc63031cdd6a302211f2c7c5ac7f59f3586..2f8b5efcead2bf454576c426834c7bf323b7e79f 100644 (file)
@@ -148,9 +148,10 @@ th,
 .login {
 
     vertical-align: middle; text-align:center; width: 60% !important;
-    background:#b2f8ef url('images/Sun-Rotating.gif');
-    background-repeat: repeat;
-    background2:#ffd9007a;
+    background:black url('images/Sun-Rotating.gif');
+    background-repeat: no-repeat;
+    background-repeat: space;
+    background-position-x: right;
 }
 div#rz {
     border: 1px solid black;