diff options
Diffstat (limited to 'modules/drupal-site.module')
-rw-r--r-- | modules/drupal-site.module | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/modules/drupal-site.module b/modules/drupal-site.module new file mode 100644 index 000000000..8a50cb952 --- /dev/null +++ b/modules/drupal-site.module @@ -0,0 +1,94 @@ +<? + +$module = array("block" => "drupal_block", + "admin" => "drupal_admin"); + +function drupal_block() { + global $site_url; + + $result = db_query("SELECT * FROM drupals ORDER BY name"); + + $content .= "<SCRIPT>\n"; + $content .= " <!--//\n"; + $content .= " function gotosite(site) {\n"; + $content .= " if (site != \"\") {\n"; + $content .= " parent.location = site\n"; + $content .= " }\n"; + $content .= " }\n"; + $content .= " //-->\n"; + $content .= "</SCRIPT>\n"; + + $content .= "<CENTER>\n"; + $content .= "<FORM ACTION=\"\" METHOD=\"post\">\n"; + $content .= " <SELECT NAME=\"drupal\" ONCHANGE=\"gotosite(this.options[this.selectedIndex].value)\">\n"; + $content .= " <OPTION VALUE=\"$site_url\">select a site</OPTION>\n"; + while ($drupal = db_fetch_object($result)) { + $content .= " <OPTION VALUE=\"$drupal->link\">$drupal->name</OPTION>\n"; + } + + $content .= " </SELECT>\n"; + $content .= "</FORM>\n"; + $content .= "</CENTER>\n"; + + $blocks[0]["subject"] = "Drupal sites"; + $blocks[0]["content"] = $content; + $blocks[0]["info"] = "Drupal sites (selection)"; + + unset($content); + + $result = db_query("SELECT * FROM drupals ORDER BY name"); + while ($drupal = db_fetch_object($result)) { + $content .= "<LI><A HREF=\"$drupal->link\">$drupal->name</A></LI>\n"; + } + + $blocks[1]["subject"] = "Drupal sites"; + $blocks[1]["content"] = $content; + $blocks[1]["info"] = "Drupal sites (sequential)"; + + return $blocks; +} + +function drupal_admin_add($name, $link, $contact) { + db_query("INSERT INTO drupals (name, link, contact) VALUES ('". check_input($name) ."', '". check_input($link) ."', '". check_input($contact) ."')"); +} + +function drupal_admin_del($id) { + db_query("DELETE FROM drupals WHERE id = '$id'"); +} + +function drupal_admin_display() { + $result = db_query("SELECT * FROM drupals ORDER BY name"); + + $output .= "<FORM ACTION=\"admin.php?mod=drupal\" METHOD=\"post\">\n"; + $output .= "<TABLE BORDER=\"1\" CELLPADDING=\"2\" CELLSPACING=\"2\">\n"; + $output .= " <TR><TH>name</TH><TH>link</TH><TH>contact</TH><TH>operations</TH></TR>\n"; + + while ($drupal = db_fetch_object($result)) { + $output .= " <TR><TD>$drupal->name</TD><TD>". format_url($drupal->link) ."</TD><TD>". format_email($drupal->contact) ."</TD><TD ALIGN=\"center\"><A HREF=\"admin.php?mod=drupal&op=delete&id=$drupal->id\">delete</A></TD></TR>\n"; + } + + $output .= " <TR><TD><INPUT TYPE=\"text\" NAME=\"name\"></TD><TD><INPUT TYPE=\"text\" NAME=\"link\"></TD><TD><INPUT TYPE=\"text\" NAME=\"contact\"></TD><TD><INPUT NAME=\"op\" TYPE=\"submit\" VALUE=\"Add drupal\"></TD></TR>\n"; + $output .= "</TABLE>\n"; + $output .= "</FORM>\n"; + + print $output; +} + +function drupal_admin() { + global $op, $id, $name, $link, $contact; + + switch($op) { + case "Add drupal": + drupal_admin_add($name, $link, $contact); + drupal_admin_display(); + break; + case "delete": + drupal_admin_del($id); + drupal_admin_display(); + break; + default: + drupal_admin_display(); + } +} + +?>
\ No newline at end of file |