OSDN Git Service

改行コードをLFに統一。
[fswiki/fswiki.git] / plugin / admin / AdminPluginHandler.pm
index 0d35db3..18f06c6 100644 (file)
-###############################################################################\r
-#\r
-# ¥×¥é¥°¥¤¥ó¤ÎÀßÄê¤ò¹Ô¤¦¥¢¥¯¥·¥ç¥ó¥Ï¥ó¥É¥é\r
-#\r
-###############################################################################\r
-package plugin::admin::AdminPluginHandler;\r
-use strict;\r
-#==============================================================================\r
-# ¥³¥ó¥¹¥È¥é¥¯¥¿\r
-#==============================================================================\r
-sub new {\r
-       my $class = shift;\r
-       my $self = {};\r
-       return bless $self,$class;\r
-}\r
-\r
-#==============================================================================\r
-# ¥¢¥¯¥·¥ç¥ó¥Ï¥ó¥É¥é¥á¥½¥Ã¥É\r
-#==============================================================================\r
-sub do_action {\r
-       my $self  = shift;\r
-       my $wiki  = shift;\r
-       my $cgi   = $wiki->get_CGI;\r
-       \r
-       $wiki->set_title("¥×¥é¥°¥¤¥óÀßÄê");\r
-       \r
-       if($cgi->param("SAVE") ne ""){\r
-               return $self->save_plugin_config($wiki);\r
-       } else {\r
-               return $self->plugin_config_form($wiki);\r
-       }\r
-}\r
-\r
-sub plugin_config_form {\r
-       my $self = shift;\r
-       my $wiki = shift;\r
-       my $cgi  = $wiki->get_CGI;\r
-       \r
-       my @plugins = split(/\n/,&Util::load_config_text($wiki,$wiki->config('plugin_file')));\r
-       \r
-       my $buf = "<h2>¥×¥é¥°¥¤¥ó¤ÎÀßÄê</h2>\n".\r
-                 "<form action=\"".$wiki->create_url()."\" method=\"POST\">\n".\r
-                 "<table>\n".\r
-                 "<tr><th><br></th><th>¥×¥é¥°¥¤¥ó</th><th>ÀâÌÀ</th></tr>\n";\r
-                 \r
-       foreach(sort($self->list_plugins($wiki))){\r
-               $buf .= "<tr>";\r
-               $buf .= "<td><input type=\"checkbox\" name=\"plugin\" value=\"".Util::escapeHTML($_)."\"";\r
-               foreach my $plugin (@plugins){\r
-                       if($_ eq $plugin){ $buf .= " checked"; }\r
-               }\r
-               $buf .= "></td>";\r
-               \r
-               $buf .= "<td>".Util::escapeHTML($_)."</td>";\r
-               $buf .= "<td>".$self->get_decription($wiki,$_)."</td>";\r
-               $buf .= "</tr>";\r
-       }\r
-       \r
-       $buf .= "</table>\n".\r
-               "<input type=\"submit\" name=\"SAVE\" value=\" Êݠ¸ \">\n".\r
-               "<input type=\"reset\" value=\"¥ê¥»¥Ã¥È\">\n".\r
-               "<input type=\"hidden\" name=\"action\" value=\"ADMINPLUGIN\">\n".\r
-               "</form>\n";\r
-       \r
-       return $buf;\r
-}\r
-\r
-#==============================================================================\r
-# ÀßÄê¤òÊݸ\r
-#==============================================================================\r
-sub save_plugin_config {\r
-       my $self = shift;\r
-       my $wiki = shift;\r
-       my $cgi  = $wiki->get_CGI;\r
-       \r
-       my @plugins = $cgi->param("plugin");\r
-       \r
-       &Util::save_config_text($wiki,$wiki->config('plugin_file'),join("\n",@plugins));\r
-\r
-       return $wiki->redirectURL( $wiki->create_url({action=>"ADMINPLUGIN"}) );\r
-       #return "ÀßÄê¤òÊݸ¤·¤Þ¤·¤¿¡£";\r
-}\r
-\r
-#==============================================================================\r
-# ¥×¥é¥°¥¤¥ó¤Î°ìÍ÷¤ò¼èÆÀ¤¹¤ë´Ø¿ô\r
-#==============================================================================\r
-sub list_plugins {\r
-       my $self = shift;\r
-       my $wiki = shift;\r
-       my @list;\r
-       opendir(DIR,$wiki->config('plugin_dir')."/plugin") or die $!;\r
-       while(my $entry = readdir(DIR)){\r
-               my $path = $wiki->config('plugin_dir')."/plugin/$entry";\r
-               if(-d $path && $entry ne "." && $entry ne ".."){\r
-                       if(-e "$path/Install.pm"){\r
-                               push(@list,$entry);\r
-                       }\r
-               }\r
-       }\r
-       closedir(DIR);\r
-       \r
-       @list = sort(@list);\r
-       return @list;\r
-}\r
-\r
-#==============================================================================\r
-# Install.pm¤Î¥³¥á¥ó¥È¤ò¼èÆÀ\r
-#==============================================================================\r
-sub get_decription {\r
-       my $self = shift;\r
-       my $wiki = shift;\r
-       my $plugin = shift;\r
-       open(DATA,$wiki->config('plugin_dir')."/plugin/$plugin/Install.pm") or return "<br>";\r
-       my $flag    = 0;\r
-       my $comment = "";\r
-       while(<DATA>){\r
-               if(!/^#/ || /^##/){\r
-                       if($flag==0){ next; } else { last; }\r
-               }\r
-               $flag = 1;\r
-               s/\#+//;\r
-               s/\={2,}//;\r
-               s/^\s+//; s/\s+$//;\r
-               if($_ ne ""){\r
-                       $comment .= $_."\n";\r
-               }\r
-       }\r
-       close(DATA);\r
-       return $comment;\r
-}\r
-\r
-1;\r
+###############################################################################
+#
+# ¥×¥é¥°¥¤¥ó¤ÎÀßÄê¤ò¹Ô¤¦¥¢¥¯¥·¥ç¥ó¥Ï¥ó¥É¥é
+#
+###############################################################################
+package plugin::admin::AdminPluginHandler;
+use strict;
+#==============================================================================
+# ¥³¥ó¥¹¥È¥é¥¯¥¿
+#==============================================================================
+sub new {
+       my $class = shift;
+       my $self = {};
+       return bless $self,$class;
+}
+
+#==============================================================================
+# ¥¢¥¯¥·¥ç¥ó¥Ï¥ó¥É¥é¥á¥½¥Ã¥É
+#==============================================================================
+sub do_action {
+       my $self  = shift;
+       my $wiki  = shift;
+       my $cgi   = $wiki->get_CGI;
+       
+       $wiki->set_title("¥×¥é¥°¥¤¥óÀßÄê");
+       
+       if($cgi->param("SAVE") ne ""){
+               return $self->save_plugin_config($wiki);
+       } else {
+               return $self->plugin_config_form($wiki);
+       }
+}
+
+sub plugin_config_form {
+       my $self = shift;
+       my $wiki = shift;
+       my $cgi  = $wiki->get_CGI;
+       
+       my @plugins = split(/\n/,&Util::load_config_text($wiki,$wiki->config('plugin_file')));
+       
+       my $buf = "<h2>¥×¥é¥°¥¤¥ó¤ÎÀßÄê</h2>\n".
+                 "<form action=\"".$wiki->create_url()."\" method=\"POST\">\n".
+                 "<table>\n".
+                 "<tr><th><br></th><th>¥×¥é¥°¥¤¥ó</th><th>ÀâÌÀ</th></tr>\n";
+                 
+       foreach(sort($self->list_plugins($wiki))){
+               $buf .= "<tr>";
+               $buf .= "<td><input type=\"checkbox\" name=\"plugin\" value=\"".Util::escapeHTML($_)."\"";
+               foreach my $plugin (@plugins){
+                       if($_ eq $plugin){ $buf .= " checked"; }
+               }
+               $buf .= "></td>";
+               
+               $buf .= "<td>".Util::escapeHTML($_)."</td>";
+               $buf .= "<td>".$self->get_decription($wiki,$_)."</td>";
+               $buf .= "</tr>";
+       }
+       
+       $buf .= "</table>\n".
+               "<input type=\"submit\" name=\"SAVE\" value=\" Êݠ¸ \">\n".
+               "<input type=\"reset\" value=\"¥ê¥»¥Ã¥È\">\n".
+               "<input type=\"hidden\" name=\"action\" value=\"ADMINPLUGIN\">\n".
+               "</form>\n";
+       
+       return $buf;
+}
+
+#==============================================================================
+# ÀßÄê¤òÊݸ
+#==============================================================================
+sub save_plugin_config {
+       my $self = shift;
+       my $wiki = shift;
+       my $cgi  = $wiki->get_CGI;
+       
+       my @plugins = $cgi->param("plugin");
+       
+       &Util::save_config_text($wiki,$wiki->config('plugin_file'),join("\n",@plugins));
+
+       return $wiki->redirectURL( $wiki->create_url({action=>"ADMINPLUGIN"}) );
+       #return "ÀßÄê¤òÊݸ¤·¤Þ¤·¤¿¡£";
+}
+
+#==============================================================================
+# ¥×¥é¥°¥¤¥ó¤Î°ìÍ÷¤ò¼èÆÀ¤¹¤ë´Ø¿ô
+#==============================================================================
+sub list_plugins {
+       my $self = shift;
+       my $wiki = shift;
+       my @list;
+       opendir(DIR,$wiki->config('plugin_dir')."/plugin") or die $!;
+       while(my $entry = readdir(DIR)){
+               my $path = $wiki->config('plugin_dir')."/plugin/$entry";
+               if(-d $path && $entry ne "." && $entry ne ".."){
+                       if(-e "$path/Install.pm"){
+                               push(@list,$entry);
+                       }
+               }
+       }
+       closedir(DIR);
+       
+       @list = sort(@list);
+       return @list;
+}
+
+#==============================================================================
+# Install.pm¤Î¥³¥á¥ó¥È¤ò¼èÆÀ
+#==============================================================================
+sub get_decription {
+       my $self = shift;
+       my $wiki = shift;
+       my $plugin = shift;
+       open(DATA,$wiki->config('plugin_dir')."/plugin/$plugin/Install.pm") or return "<br>";
+       my $flag    = 0;
+       my $comment = "";
+       while(<DATA>){
+               if(!/^#/ || /^##/){
+                       if($flag==0){ next; } else { last; }
+               }
+               $flag = 1;
+               s/\#+//;
+               s/\={2,}//;
+               s/^\s+//; s/\s+$//;
+               if($_ ne ""){
+                       $comment .= $_."\n";
+               }
+       }
+       close(DATA);
+       return $comment;
+}
+
+1;