if ($var =~ /^([a-z]|[A-Z])/) {
@options = split(/\s*EQUALS\s*/, $var);
$options[1] =~ s/[\n|\r]//g;
- $options[1] =~ s/\";$//;
+ $options[1] =~ s/\";\s*$//;
$options[1] =~ s/;$//;
$options[1] =~ s/^"//;
$sub =~ s/\]\["NAME"\]//;
$sub =~ s/.*\[//;
$theme_name[$sub] = $options[1];
+ } elsif ($options[0] =~ /^plugins\[[0-9]+\]/) {
+ $sub = $options[0];
+ $sub =~ s/\]//;
+ $sub =~ s/^plugins\[//;
+ $plugins[$sub] = $options[1];
} elsif ($options[0] =~ /^ldap_server\[[0-9]+\]/) {
$sub = $options[0];
$sub =~ s/\]//;
print "5. Themes\n";
print "6. Address Books (LDAP)\n";
print "7. Message of the Day (MOTD)\n";
+ print "8. Plugins\n";
print "\n";
print "D. Set pre-defined settings for specific IMAP servers\n";
print "\n";
print "1 Edit the MOTD\n";
print "\n";
print "R Return to Main Menu\n";
+ } elsif ($menu == 8) {
+ print $WHT."Plugins\n".$NRM;
+ print "1 Change Plugins\n";
+ for ($count = 0; $count <= $#plugins; $count++) {
+ print " > $plugins[$count]\n";
+ }
+ print "\n";
+ print "R Return to Main Menu\n";
}
print "S Save data\n";
print "Q Quit\n";
} else {
$saved = 0;
if ($menu == 0) {
- if (($command > 0) && ($command < 8)) {
+ if (($command > 0) && ($command < 9)) {
$menu = $command;
}
} elsif ($menu == 1) {
elsif ($command == 2) { command62(); }
} elsif ($menu == 7) {
if ($command == 1) { $motd = command71(); }
+ } elsif ($menu == 8) {
+ if ($command == 1) { $motd = command81(); }
}
}
}
return $new_motd;
}
+################# PLUGINS ###################
+
+sub command81 {
+ print "\nThis is where you can define plugins. The plugin must already exist in the\n";
+ print "plugins/ directory in order to add them here. A plugin name is the name of the\n";
+ print "directory that it resides in. For example, if you have a plugin in the directory\n";
+ print "plugins/myplug, the name is \"myplug\".\n\n";
+ print "[plugins] command (?=help) > ";
+ $input = <STDIN>;
+ $input =~ s/[\r|\n]//g;
+ while ($input ne "d") {
+ if ($input =~ /^\s*l\s*/i) {
+ $count = 0;
+ while ($count <= $#plugins) {
+ print " $count. $plugins[$count]\n";
+ $count++;
+ }
+ print "\n";
+ } elsif ($input =~ /^\s*\+/) {
+ print "What is the name of this plugin: ";
+ $name = <STDIN>;
+ $name =~ s/[\r|\n]//g;
+
+ if (-e "../plugins/$name") {
+ $exists = 0;
+ for ($m=0; $m <= $#plugins; $m++) {
+ if ($plugins[$m] eq $name) {
+ $exists = 1;
+ }
+ }
+ if ($exists == 1) {
+ print "\nThat plugin already exists in the list!\n";
+ } else {
+ $plugins[$#plugins+1] = $name;
+ }
+ print "\n";
+ } else {
+ print "\nThat plugin does not exist in the plugins/ directory!\n\n";
+ }
+ } elsif ($input =~ /^\s*-\s*[0-9]?/) {
+ if ($input =~ /[0-9]+\s*$/) {
+ $rem_num = $input;
+ $rem_num =~ s/^\s*-\s*//g;
+ $rem_num =~ s/\s*$//;
+ } else {
+ $rem_num = $#plugins;
+ }
+
+ $count = 0;
+ @new_plugins = ();
+ while ($count <= $#plugins) {
+ if ($count != $rem_num) {
+ @new_plugins = (@new_plugins, $plugins[$count]);
+ }
+ $count++;
+ }
+ @plugins = @new_plugins;
+ } elsif ($input =~ /^\s*\?\s*/) {
+ print ".-------------------------.\n";
+ print "| + (add plugin) |\n";
+ print "| - N (remove plugin) |\n";
+ print "| l (list plugins) |\n";
+ print "| d (done) |\n";
+ print "`-------------------------'\n";
+ }
+ print "[plugins] command (?=help) > ";
+ $input = <STDIN>;
+ $input =~ s/[\r|\n]//g;
+ }
+}
+
################# FOLDERS ###################
# default_folder_prefix
print FILE "\n";
+ for ($count=0; $count <= $#plugins; $count++) {
+ print FILE "\t\$plugins[$count] = \"$plugins[$count]\";\n";
+ }
+
+ print FILE "\n";
+
for ($count=0; $count <= $#theme_name; $count++) {
print FILE "\t\$theme[$count][\"PATH\"] = \"$theme_path[$count]\";\n";
print FILE "\t\$theme[$count][\"NAME\"] = \"$theme_name[$count]\";\n";