Rename servicealerts to local terminology "Real Time Passenger Information System"
[busui.git] / rtpis / servicealert_editor.php
blob:a/rtpis/servicealert_editor.php -> blob:b/rtpis/servicealert_editor.php
--- a/rtpis/servicealert_editor.php
+++ b/rtpis/servicealert_editor.php
@@ -1,1 +1,187 @@
+<?php
+/*
+ *    Copyright 2010,2011 Alexander Sadleir 
 
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+ */
+include ('../include/common.inc.php');
+auth();
+include_header("Service Alert Editor", "serviceAlertEditor");
+/**
+ * Currently support:
+ * network inform
+ * stop remove: route patch, stop remove
+ * - stop search
+ * street inform: route inform, stop inform
+ * - street search
+ */
+if (isset($_REQUEST['saveedit'])) {
+
+    if ($_REQUEST['saveedit'] != "") {
+        updateServiceAlert($_REQUEST['saveedit'], $_REQUEST);
+    } else {
+        addServiceAlert($_REQUEST);
+    }
+    echo "Saved " . $_REQUEST['saveedit'];
+    die();
+}
+if ($_REQUEST['delete']) {
+    $deleteParts = explode(";", $_REQUEST['delete']);
+    deleteInformedAlert($deleteParts[0], $deleteParts[1], $deleteParts[2]);
+    echo "Deleted network inform for {$deleteParts[0]} ({$deleteParts[1]},{$deleteParts[2]})<br>\n";
+    die();
+}
+if ($_REQUEST['networkinform']) {
+    addInformedAlert($_REQUEST['networkinform'], "agency", "0", "inform");
+    echo "Added network inform for" . $_REQUEST['networkinform'];
+    die();
+}
+if ($_REQUEST['stopsearch']) {
+    addInformedAlert($_REQUEST['stopsearch'], "stop", $_REQUEST['stopid'], "remove");
+    echo "Added stop remove for" . $_REQUEST['stopsearch'] . ", stop" . $_REQUEST['stopid'] . "<br>\n";
+
+    foreach ($service_periods as $sp) {
+        echo "Remove from $sp routes<br>\n";
+        foreach (getStopRoutes($_REQUEST['stopid'], $sp) as $route) {
+            addInformedAlert($_REQUEST['stopsearch'], "route", $route['route_id'], "patch");
+            echo "Added route patch for" . $_REQUEST['stopsearch'] . ", route" . $route['route_id'] . "<br>\n";
+        }
+    }
+    die();
+}
+if ($_REQUEST['streetsearch']) {
+
+    echo "Informing stops of street<br>\n";
+    foreach (getStopsByName($_REQUEST['street']) as $stop) {
+        addInformedAlert($_REQUEST['streetsearch'], "stop", $stop['stop_id'], "inform");
+        echo "Added stop inform for" . $_REQUEST['streetsearch'] . ", stop" . $stop['stop_id'] . " ". $stop['stop_name']."<br>\n";
+
+        foreach ($service_periods as $sp) {
+            echo "Informing $sp routes<br>\n";
+            foreach (getStopRoutes($stop['stop_id'], $sp) as $route) {
+                addInformedAlert($_REQUEST['streetsearch'], "route", $route['route_id'], "inform");
+                echo "Added route inform for stop" . $_REQUEST['streetsearch'] . ", route" . $route['route_id'] . "<br>\n";
+            }
+        }
+    }
+    
+        die();
+}
+?>
+Active and Future Alerts:
+<table>
+    <?php
+    foreach (getFutureAlerts() as $alert) {
+        echo "<tr><td>" . date("c", $alert['start']) . "</td><td>" . date("c", $alert['end']) . "</td><td>" . substr($alert['description'], 0, 999) . '</td><td><a href="?edit=' . $alert['id'] . '">edit</a></td></tr>';
+    }
+    ?>
+</table>
+<?php
+$alert = getServiceAlert($_REQUEST['edit']);
+?>
+<form action="<?php echo basename(__FILE__);
+?>" method="get">
+
+    <div data-role="fieldcontain">
+        <label for="startdate"> Start Date</label>
+        <input type="text" name="startdate" id="startdate" value="<?php
+      if ($alert['start'])
+          echo date("c", $alert['start']);
+      else
+          echo date("c", strtotime("0:00"));
+?>"  />
+    </div>
+    <div data-role="fieldcontain">
+        <label for="enddate"> End Date </label>
+        <input type="text" name="enddate" id="enddate" value="<?php
+               if ($alert['end'])
+                   echo date("c", $alert['end']);
+               else
+                   echo date("c", strtotime("23:59"));
+?>"  />
+    </div>
+    <div data-role="fieldcontain">
+        <label for="header">Header</label>
+        <input type="text" name="header" id="header" value="<?php echo $alert['header']; ?>"  />
+    </div>
+    <div data-role="fieldcontain">
+        <label for="description">Description</label>
+        <textarea name="description">
+            <?php echo $alert['description']; ?></textarea>
+    </div>
+    <div data-role="fieldcontain">
+        <label for="url">URL</label>
+        <input type="text" name="url" id="url" value="<?php echo $alert['url']; ?>"  />
+    </div>
+    <div data-role="fieldcontain">
+        <label for="cause"> Cause:  </label>
+        <select name="cause" id="cause">
+            
+            <?php
+            foreach ($serviceAlertCause as $key => $value) {
+                echo "<option value=\"$key\"" . ($key === $alert['cause'] ? " SELECTED" : "") . '>' . $value . '</option>';
+            }
+            ?>
+        </select></div>
+    <div data-role="fieldcontain">
+        <label for="effect"> Effect:  </label>
+        <select name="effect" id="effect">
+            <?php
+            foreach ($serviceAlertEffect as $key => $value) {
+                echo "<option value=\"$key\"" . ($key === $alert['effect'] ? " SELECTED" : "") . '>' . $value . '</option>';
+            }
+            ?>
+        </select></div>
+    <input type="hidden" name="saveedit" value="<?php echo $_REQUEST['edit']; ?>"/>
+    <input type="submit" value="Save"/>
+</div></form>
+
+<?php
+if ($_REQUEST['edit']) {
+    echo "Informed Entities for ID {$_REQUEST['edit']}:";
+    echo '<table>';
+    foreach (getInformedAlerts($_REQUEST['edit'], "", "") as $informed) {
+        echo "<tr><td>{$informed['informed_class']}</td><td>{$informed['informed_id']}</td><td>{$informed['informed_action']}" . '</td><td><a href="?delete=' . $_REQUEST['edit'] . ';' . $informed['informed_class'] . ';' . $informed['informed_id'] . '">delete</a></td></tr>';
+    }
+    echo '</table>';
+    ?>
+    <form action="<?php echo basename(__FILE__);
+    ?>" method="get">
+        <input type="hidden" name="networkinform" value="<?php echo $_REQUEST['edit'];
+    ?>"/>
+        <input type="submit" value="Add Network Inform"/>
+    </form>
+    <form action="<?php echo basename(__FILE__);
+    ?>" method="get">
+        <div data-role="fieldcontain">
+            <label for="stopid">StopID to remove</label>
+            <input type="text" name="stopid" />
+        </div>
+        <input type="hidden" name="stopsearch" value="<?php echo $_REQUEST['edit'];
+    ?>"/>
+        <input type="submit" value="Stop Search"/>
+    </form>
+    <form action="<?php echo basename(__FILE__);
+    ?>" method="get">
+        <div data-role="fieldcontain">
+            <label for="street">Street to inform</label>
+            <input type="text" name="street" />
+        </div>
+        <input type="hidden" name="streetsearch" value="<?php echo $_REQUEST['edit'];
+    ?>"/>
+        <input type="submit" value="Street Search"/>
+    </form>
+    <?php
+}
+include_footer();
+?>