aboutsummaryrefslogtreecommitdiff
path: root/admin/adjutant
diff options
context:
space:
mode:
authorjhunkeler <jhunkeler@c5b2fb0a-d05d-0410-98c8-828840a80ff6>2010-01-03 23:54:14 -0500
committerjhunkeler <jhunkeler@c5b2fb0a-d05d-0410-98c8-828840a80ff6>2010-01-03 23:54:14 -0500
commit9d4fa2963b1059fed54aaeae583bf02a30c42239 (patch)
tree5bc96becffcda48318c932ece289ec358dc84691 /admin/adjutant
parentb63430eba1943d1732634df88884e8d7c4b2b1fb (diff)
downloadbayonetcms-9d4fa2963b1059fed54aaeae583bf02a30c42239.tar.gz
Fixed SVN maybe.
git-svn-id: http://svn.3rd-infantry-division.org/testing/branches/Bayonet CMS v2@448 c5b2fb0a-d05d-0410-98c8-828840a80ff6
Diffstat (limited to 'admin/adjutant')
-rw-r--r--admin/adjutant/functions.php154
-rw-r--r--admin/adjutant/index.php58
-rw-r--r--admin/adjutant/style.css13
3 files changed, 225 insertions, 0 deletions
diff --git a/admin/adjutant/functions.php b/admin/adjutant/functions.php
new file mode 100644
index 0000000..261c122
--- /dev/null
+++ b/admin/adjutant/functions.php
@@ -0,0 +1,154 @@
+<?php
+/**
+ * Bayonet Content Management System
+ * Copyright (C) 2008 Joseph Hunkeler & Evan O'Connell
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+ function EditPoints(){
+
+ global $db;
+
+ $result = $db->Query("SELECT * FROM `rudi_unit_members` JOIN `rudi_ranks` ON rudi_unit_members.rank_id=rudi_ranks.rank_id WHERE rudi_unit_members.status_id != 4 AND rudi_unit_members.status_id != 5 ORDER BY rudi_ranks.weight DESC , rudi_unit_members.date_promotion ASC , rudi_unit_members.date_enlisted ASC");
+ $row = $db->Fetch($result);
+
+ if(isset($_POST['processed'])){
+ echo "Updating data... Please wait.";
+ foreach($row as $soldier){
+ $mID = $soldier['member_id'];
+ $missed = $_POST[$mID.'missed'];
+ $points = $_POST[$mID.'points'];
+
+ if($missed !="" && $points != ""){
+ $db->Query("UPDATE `rudi_unit_members` SET `points` = $points, `drillcount` = $missed WHERE `member_id` = $mID LIMIT 1");
+ }else{
+ ReportError("Error updating points for soldier id# '$mID'. Please contact administrator.");
+ }
+ }
+ PageRedirect(1,"?op=adjutant&edit=points");
+ return;
+ }
+?>
+ <form method="POST" action="<?php $_SERVER['PHP_SELF']?>">
+ <table style="text-align:center;" width="100%">
+ <?php //OpenTable(); ?>
+ <tr><th>Rank</th><th>Soldier</th><th>Status</th><th>Points</th><th>Drills Missed</th></tr>
+<?php
+ foreach($row as $soldier){
+ $memberID = $soldier['member_id'];
+ if($soldier['status_id'] != 1)
+ echo "<tr class=\"inactive\">";
+ else
+ echo "<tr>";
+ echo "<td>{$soldier['shortname']}</td>
+ <td>{$soldier['first_name']} {$soldier['last_name']}</td>
+ <td>".getStatus($soldier['status_id'])."</td>
+ <td><input type=\"text\" class=\"lrg\" value=\"{$soldier['points']}\" name=\"{$memberID}points\" size=\"1\" maxlength=\"3\" />/100</td>
+ <td><input type=\"text\" class=\"lrg\" value=\"{$soldier['drillcount']}\" name=\"{$memberID}missed\" size=\"1\" maxlength=\"1\" />/3</td>";
+
+
+ echo "<input type=\"hidden\" value=\"{$memberID}\" name=\"{$memberID}id\" />\n";
+ }
+ CloseTable();
+ echo "<input type=\"submit\" name=\"processed\" value=\"Update Points\" /></form>";
+
+ }
+
+ function editLOAs($status_id = 1){
+
+ global $db;
+
+ $result = $db->Query("SELECT * FROM `rudi_unit_members` JOIN `rudi_ranks` ON rudi_unit_members.rank_id=rudi_ranks.rank_id WHERE rudi_unit_members.status_id = '$status_id' ORDER BY rudi_ranks.weight DESC , rudi_unit_members.date_promotion ASC , rudi_unit_members.date_enlisted ASC");
+ $row = $db->Fetch($result);
+?>
+ <script type="text/javascript">
+
+ function switchOption(id)
+ {
+ var op = document.getElementById(id).value;
+ location.href="?op=adjutant&edit=loas&id="+op+"";
+ }
+ </script>
+<?php
+
+ $opArr = Array();
+ $opArr[1] = "Active Soldiers";
+ $opArr[2] = "Soldiers on Leave";
+ $opArr[3] = "Soldiers on Extended Leave";
+
+ echo 'Viewing: <select id="option" name="option" onchange="switchOption(this.id)">';
+ for($x=1; $x<4; $x++){
+ if($status_id == $x)
+ echo '<option value="'.$x.'" selected>'.$opArr[$x].'</option>';
+ else
+ echo '<option value="'.$x.'">'.$opArr[$x].'</option>';
+ }
+ echo '</select>';
+
+?>
+ <table style="text-align:center;" width="100%">
+ <tr><th>Rank</th><th>Soldier</th><th>Status</th></tr>
+<?php
+$num = 1;
+ foreach($row as $member){
+ if($num %2 == 0)
+ echo "<tr style=\"background-color:#c6c6c6;\">";
+ else
+ echo "<tr>";
+ echo "<td>{$member['shortname']}</td><td>{$member['first_name']} {$member['last_name']}</td><td><a href=\"?op=adjutant&edit=loas&member={$member['member_id']}\">Edit</a></td></tr>";
+ $num++;
+ }
+ CloseTable();
+ }
+
+ function EditStatus($member_id){
+ global $db;
+
+ $form = new BayonetForm($_SERVER['PHP_SELF'], "POST");
+ if($form->VerifySubmit('processed')){
+
+ return;
+ }
+
+ $result = $db->Query("SELECT * FROM `rudi_unit_members` JOIN `rudi_ranks` ON rudi_unit_members.rank_id=rudi_ranks.rank_id WHERE `member_id` = '$member_id' LIMIT 1");
+ $row = $db->FetchRow($result);
+?>
+ <table width="100%" style="text-align:center;">
+ <tr><th>Rank</th><th>Soldier</th><th>Status</th></tr>
+ <tr>
+ <td><?php echo $row['shortname']; ?></td>
+ <td><?php echo $row['first_name']." ".$row['last_name']; ?></td>
+ <td style="text-align:left;">
+ <?php $form->radioButton('status', 1, true); ?>Active<br />
+ <?php $form->radioButton('status', 2); ?>On Leave<br />
+ <?php $form->radioButton('status', 3); ?>On Extended Leave
+ </td>
+ </tr>
+ </table>
+<?php
+ $form->__destruct();
+
+ }
+
+ function getStatus($sID){
+ global $db;
+ $gStatusName = "N/A";
+
+ $result = $db->Query("SELECT `name` FROM `rudi_statuses` WHERE `status_id` = $sID LIMIT 1");
+ $row = $db->FetchRow($result);
+
+ return $row['name'];
+ }
+ ?> \ No newline at end of file
diff --git a/admin/adjutant/index.php b/admin/adjutant/index.php
new file mode 100644
index 0000000..5149c28
--- /dev/null
+++ b/admin/adjutant/index.php
@@ -0,0 +1,58 @@
+<?php
+/**
+ * Bayonet Content Management System
+ * Copyright (C) 2008 Joseph Hunkeler & Evan O'Connell
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+ ?>
+ <link rel="stylesheet" type="text/css" href="adjutant/style.css" media="screen"/>
+ <div style="text-align:left;"><h2>- Adjutant Control Panel</h2></div>
+ <a href="?op=adjutant&edit=points">Edit Points</a>&nbsp;&nbsp;
+ <a href="?op=adjutant&edit=loas">Edit LOAs</a>
+ <table class="panel" width="100%">
+ <tr><td style="text-align:center; vertical-align:top;">
+ <?php
+ if(!defined("ADMIN_FILE"))
+ {
+ die("Access denied.");
+ }
+
+ include $basedir.'adjutant/functions.php';
+
+ //chek to see if the person is indeed an adjutant
+
+ if(isset($_GET['edit'])){
+ if($_GET['edit'] == "points"){
+ echo "<h3>Edit Points</h3>";
+ EditPoints();
+ }
+ if($_GET['edit'] == "loas"){
+ echo "<h3>Edit LOAs</h3>";
+ if(isset($_GET['member'])){
+ $member_id = $_GET['member'];
+ EditStatus($member_id);
+ }else{
+ if(isset($_GET['id']))
+ $status_id = $_GET['id'];
+ else
+ $status_id = 1;
+ EditLOAs($status_id);
+ }
+ }
+ }
+ ?>
+ </td></tr>
+ </table> \ No newline at end of file
diff --git a/admin/adjutant/style.css b/admin/adjutant/style.css
new file mode 100644
index 0000000..24a3eb8
--- /dev/null
+++ b/admin/adjutant/style.css
@@ -0,0 +1,13 @@
+ input.lrg {
+ font-size:14px;
+ font-weight:bold;
+ text-align:center;
+ font-family: Arial, Sans-Serif;
+ }
+
+ tr.inactive {
+ background-color:#dfdfdf;
+ }
+ tr.inactive td {
+ color:#a2a2a2;
+ } \ No newline at end of file