aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--admin/header.php12
-rw-r--r--admin/index.php8
-rw-r--r--admin/rudi/functions.php71
-rw-r--r--admin/rudi/includes/functions.awards.php20
-rw-r--r--admin/rudi/includes/functions.members.php262
-rw-r--r--admin/rudi/index.php58
-rw-r--r--admin/rudi/views/view.awards.edit.php24
-rw-r--r--admin/rudi/views/view.awards.php34
-rw-r--r--admin/rudi/views/view.members.award.php19
-rw-r--r--admin/rudi/views/view.members.php49
-rw-r--r--admin/rudi/views/view.members.profile.php195
-rw-r--r--admin/rudi/views/view.members.service.php19
-rw-r--r--admin/rudi/views/view.units.php0
13 files changed, 761 insertions, 10 deletions
diff --git a/admin/header.php b/admin/header.php
index 3f84d17..61c19fa 100644
--- a/admin/header.php
+++ b/admin/header.php
@@ -32,17 +32,17 @@ $starttime = $starttime[1] + $starttime[0];
<!-- jQuery 1.3.2 -->
<script type="text/javascript" src="scripts/jquery-1.3.2.min.js"></script>
-<!-- PASSWORD CHECK -->
-<script type="text/javascript" src="../functions.js"></script>
+<!-- PASSWORD CHECK
+<script type="text/javascript" src="../functions.js"></script> -->
<!-- markItUp! -->
-<script type="text/javascript" src="../markitup/markitup/jquery.markitup.pack.js"></script>
+<script type="text/javascript" src="scripts/markitup/markitup/jquery.markitup.pack.js"></script>
<!-- markItUp! toolbar settings -->
-<script type="text/javascript" src="../markitup/markitup/sets/bbcode/set.js"></script>
+<script type="text/javascript" src="scripts/markitup/markitup/sets/bbcode/set.js"></script>
<!-- markItUp! skin -->
-<link rel="stylesheet" type="text/css" href="../markitup/markitup/skins/markitup/style.css" />
+<link rel="stylesheet" type="text/css" href="scripts/markitup/markitup/skins/markitup/style.css" />
<!-- markItUp! toolbar skin -->
-<link rel="stylesheet" type="text/css" href="../markitup/markitup/sets/bbcode/style.css" />
+<link rel="stylesheet" type="text/css" href="scripts/markitup/markitup/sets/bbcode/style.css" />
<script type="text/javascript">
<!--
$(document).ready(function() {
diff --git a/admin/index.php b/admin/index.php
index 8801978..da8e92d 100644
--- a/admin/index.php
+++ b/admin/index.php
@@ -19,10 +19,10 @@
session_start();
-include '../includes/debug.php';
-include '../includes/config.php';
-include '../includes/sql.class.php';
-include '../includes/functions.php';
+include '../include/debug.php';
+include '../include/config.php';
+include '../include/sql.class.php';
+include '../include/functions.php';
$db = new Bayonet_SQL();
$db->Connect(
diff --git a/admin/rudi/functions.php b/admin/rudi/functions.php
new file mode 100644
index 0000000..b22468b
--- /dev/null
+++ b/admin/rudi/functions.php
@@ -0,0 +1,71 @@
+<?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/>.
+ */
+ /*
+ include $basedir.'rudi/functions.php';
+
+ //chek to see if the person is indeed an quartermaster
+
+ if(isset($_GET['edit'])){
+
+ if($_GET['edit'] == "profile"){
+ $member_id = $_GET['id'];
+ EditProfile($member_id);
+ return;
+ }
+ if($_GET['edit'] == "service"){
+ if(isset($_GET['var'])){
+ if($_GET['var'] == "add"){
+ $member_id = $_GET['id'];
+ AddServiceRecord($member_id);
+ }
+ if($_GET['var'] == "edit"){
+ $record_id = $_GET['id'];
+ EditServiceRecord($record_id);
+ }
+ if($_GET['var'] == "delete"){
+ $record_id = $_GET['id'];
+ }
+ }else{
+ $member_id = $_GET['id'];
+ ListServiceRecord($member_id);
+ }
+ return;
+ }
+ if($_GET['edit'] == "medals"){
+ if(isset($_GET['var'])){
+ if($_GET['var'] == "add"){
+
+ }
+ if($_GET['var'] == "edit"){
+
+ }
+ if($_GET['var'] == "delete"){
+
+ }
+ }else{
+ $member_id = $_GET['id'];
+ ListMedalRecord($member_id);
+ }
+
+ return;
+ }
+ }
+
+ ListMembers(); */
+ ?> \ No newline at end of file
diff --git a/admin/rudi/includes/functions.awards.php b/admin/rudi/includes/functions.awards.php
new file mode 100644
index 0000000..439f0e1
--- /dev/null
+++ b/admin/rudi/includes/functions.awards.php
@@ -0,0 +1,20 @@
+<?php
+
+ function getAwardClasses(){
+ global $db;
+ $result = $db->Query("SELECT `name`, `class_id` FROM `rudi_award_classes`");
+ return $db->Fetch($result);
+ }
+
+ function getAwardsByClass($class_id){
+ global $db;
+ $result = $db->Query("SELECT `award_id`, `name`, `image`, `description` FROM `rudi_awards` WHERE `class_id` = '$class_id' ORDER BY `name`");
+ return $db->Fetch($result);
+ }
+
+ function getAward($award_id){
+ global $db;
+ $result = $db->Query("SELECT `award_id`, `name`, `image`, `description`, `class_id` FROM `rudi_awards` WHERE `award_id` = '$award_id' LIMIT 1");
+ return $db->FetchRow($result);
+ }
+?> \ No newline at end of file
diff --git a/admin/rudi/includes/functions.members.php b/admin/rudi/includes/functions.members.php
new file mode 100644
index 0000000..6a4970e
--- /dev/null
+++ b/admin/rudi/includes/functions.members.php
@@ -0,0 +1,262 @@
+<?php
+ function selectUnits($previous_unit, $indent, $members_unit){
+ global $db;
+
+ $indent++;
+ $formatting = str_repeat("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;", $indent);
+
+ $result = $db->Query("SELECT `unit_id`, `name` FROM `rudi_combat_units` WHERE `detachment` = '$previous_unit'");
+ $row = $db->Fetch($result);
+ foreach($row as $unit){
+ $unit_id = $unit['unit_id'];
+ $unit_name = $unit['name'];
+ if($members_unit==$unit_id)
+ echo '<option value="'.$unit_id.'" selected>'.$formatting.$unit_name.'</option>';
+ else
+ echo '<option value="'.$unit_id.'">'.$formatting.$unit_name.'</option>';
+
+ selectUnits($unit_id, $indent, $members_unit);
+ }
+ }
+
+ function GetMember($member_id){
+
+ global $db;
+ $result = $db->Query("SELECT * FROM `rudi_unit_members` WHERE `member_id` = '$member_id' LIMIT 1");
+ $row = $db->FetchRow($result);
+ return $row;
+ }
+
+ function GetWeapons(){
+ global $db;
+ $result = $db->Query("SELECT * FROM `rudi_weapons` ORDER BY `model` DESC");
+ $row = $db->Fetch($result);
+ return $row;
+ }
+
+ function GetMembersRoles($member_id){
+ global $db;
+ $row = NULL;
+ $query = sprintf("SELECT r.role_id, r.name AS role_name FROM rudi_roles AS r LEFT OUTER JOIN rudi_roles_container AS rl USING(role_id) INNER JOIN rudi_unit_members AS rm USING(member_id) WHERE rm.member_id = %d AND r.name IS NOT NULL ORDER BY r.role_id ASC",
+ (int)$member_id);
+
+ $result = $db->Query($query);
+ $row = $db->Fetch($result);
+
+ return $row;
+ }
+
+ function GetRoles(){
+ global $db;
+ $result = $db->Query("SELECT * FROM `rudi_roles`");
+ $row = $db->Fetch($result);
+ return $row;
+ }
+
+ function GetCountry(){
+ global $db;
+ $result = $db->Query("SELECT `country_id`, `name` FROM `rudi_countries` ORDER BY `name`");
+ $row = $db->Fetch($result);
+ return $row;
+ }
+
+ function GetRanks(){
+ global $db;
+ $result = $db->Query("SELECT * FROM `rudi_ranks` ORDER BY `weight` DESC");
+ $row = $db->Fetch($result);
+ return $row;
+ }
+
+ function GetStatuses(){
+ global $db;
+ $result = $db->Query("SELECT * FROM `rudi_statuses`");
+ $row = $db->Fetch($result);
+ return $row;
+ }
+
+ function GetServiceRecord($member_id){
+ global $db;
+ $result = $db->Query("SELECT `record_id`, `date_added`, `record_note`, `added_by` FROM `rudi_service_record` WHERE `member_id` = '$member_id'");
+ $row = $db->Fetch($result);
+ return $row;
+ }
+
+ function ListServiceRecord($member_id){
+ global $db;
+
+ echo "<a href=\"?op=rudi&show=members&service={$member_id}&add=true\">Add New Record</a>";
+
+ $records = GetServiceRecord($member_id);
+ echo "<table width=\"100%\" style=\"text-align:center;\" >";
+ echo "<tr><th>Record Date</th><th>Record Details</th></tr>";
+ foreach($records as $record){
+ echo "<tr><td>".date("M j Y", strtotime($record['date_added']))." <a href=\"?op=rudi&show=members&service={$member_id}&edit={$record['record_id']}\">Edit</a>&nbsp;<a href=\"?op=rudi&show=members&service={$row['member_id']}&delete={$record['record_id']}\">Delete</a></td><td>{$record['record_note']}</td></tr>";
+ }
+ CloseTable();
+ }
+
+ function EditServiceRecord($record_id){
+ global $db;
+ $result = $db->Query("SELECT `date_added`, `record_note`, `member_id` FROM `rudi_service_record` WHERE `record_id` = '$record_id' LIMIT 1");
+ $row = $db->FetchRow($result);
+
+ $form = new BayonetForm("", "POST");
+ if($form->verifySubmit('processed')){
+ $date = $form->request['date'];
+ $details = $form->request['details'];
+
+ $db->Query("UPDATE `rudi_service_record` SET `date_added` = '$date', `record_note` = '$details' WHERE `record_id` = '$record_id' LIMIT 1");
+ PageRedirect(1, "?op=rudi&show=members&service={$row['member_id']}&edit=".$record_id);
+ return;
+ }
+
+ echo "<a href=\"?op=rudi&show=members&service={$row['member_id']}\">Cancel</a>";
+ OpenTable();
+?>
+ <tr><td>Date:</td><td><?php $form->textField('date', date('Y-m-d', strtotime($row['date_added']))); ?></td></tr>
+ <tr><td>Details:</td><td><?php $form->textArea('details', 10, 30, $row['record_note']); ?></td></tr>
+ <tr><td colspan="2"><?php $form->submitButton('processed', 'Update'); ?></td></tr>
+<?php
+ CloseTable();
+ $form->__destruct();
+
+ }
+
+ function AddServiceRecord($member_id){
+ global $db;
+
+ $form = new BayonetForm("", "POST");
+ if($form->verifySubmit('processed')){
+ $date = $form->request['date'];
+ $details = $form->request['details'];
+ decho($form->request);
+ $db->Query("INSERT INTO `rudi_service_record` SET `member_id` = '$member_id', `date_added` = '$date', `record_note` = '$details', `added_by` = 1");
+ PageRedirect(1, "?op=rudi&show=members&service={$member_id}");
+ return;
+ }
+
+ $result = $db->Query("SELECT `date_added`, `record_note`, `member_id` FROM `rudi_service_record` WHERE `record_id` = '$record_id' LIMIT 1");
+ $row = $db->FetchRow($result);
+ echo "<a href=\"?op=rudi&show=members&service={$member_id}\">Cancel</a>";
+ OpenTable();
+?>
+ <tr><td>Date:</td><td><?php $form->textField('date'); ?></td></tr>
+ <tr><td>Details:</td><td><?php $form->textArea('details', 10, 30); ?></td></tr>
+ <tr><td colspan="2"><?php $form->submitButton('processed', 'Add'); ?></td></tr>
+<?php
+ CloseTable();
+ $form->__destruct();
+ }
+
+ function GetAwardRecord($member_id){
+ global $db;
+ $result = $db->Query("SELECT r.record_id, r.date_added, r.record_note, r.added_by, a.name FROM rudi_award_record AS r LEFT OUTER JOIN rudi_awards AS a ON a.award_id = r.award_id WHERE r.member_id = '$member_id'");
+ $row = $db->Fetch($result);
+ return $row;
+ }
+
+ function GetAllAwards(){
+ global $db;
+ $result = $db->Query("SELECT `award_id`, `name` FROM `rudi_awards` ORDER BY `name`");
+ $row = $db->Fetch($result);
+ return $row;
+ }
+
+ function ListAwardRecord($member_id){
+ global $db;
+
+ echo "<a href=\"?op=rudi&show=members&award={$member_id}&add=true\">Add New Record</a>";
+
+ $records = GetAwardRecord($member_id);
+ echo "<table width=\"100%\" style=\"text-align:center;\" >";
+ echo "<tr><th>Award Name</th><th>Record Date</th><th>Record Details</th><td></td><td></td></tr>";
+ foreach($records as $record){
+?>
+ <tr>
+ <td><?php echo $record['name']; ?></td>
+ <td><?php echo date("M j Y", strtotime($record['date_added'])); ?></td>
+ <td><?php echo $record['record_note']; ?></td>
+ <td><a href="?op=rudi&show=members&award=<?php echo $member_id; ?>&edit=<?php echo $record['record_id']; ?>">Edit</a></td>
+ <td><a href="?op=rudi&show=members&award=<?php echo $row['member_id']; ?>&delete=<?php echo $record['record_id']; ?>">Delete</a></td>
+ </tr>
+<?php
+ }
+ CloseTable();
+ }
+
+ function EditAwardRecord($record_id){
+ global $db;
+ $result = $db->Query("SELECT `award_id`, `date_added`, `record_note`, `member_id` FROM `rudi_award_record` WHERE `record_id` = '$record_id' LIMIT 1");
+ $row = $db->FetchRow($result);
+
+ $form = new BayonetForm("", "POST");
+ if($form->verifySubmit('processed')){
+ $date = $form->request['date'];
+ $details = $form->request['details'];
+ $award_id = $_POST['award'];
+
+ $db->Query("UPDATE `rudi_award_record` SET `date_added` = '$date', `award_id` = '$award_id', `record_note` = '$details' WHERE `record_id` = '$record_id' LIMIT 1");
+ PageRedirect(1, "?op=rudi&show=members&award={$row['member_id']}&edit=".$record_id);
+ return;
+ }
+
+ echo "<a href=\"?op=rudi&show=members&award={$row['member_id']}\">Cancel</a>";
+ OpenTable();
+?>
+ <tr><td>Award:</td><td>
+ <select name="award">
+<?php $awards = GetAllAwards();
+ foreach($awards as $award){
+ if($award['award_id'] == $row['award_id'])
+ echo "<option value=\"{$award['award_id']}\" selected>{$award['name']}</option>";
+ else
+ echo "<option value=\"{$award['award_id']}\">{$award['name']}</option>";
+ }
+?>
+ </select>
+ </td></tr>
+ <tr><td>Date:</td><td><?php $form->textField('date', date('Y-m-d', strtotime($row['date_added']))); ?></td></tr>
+ <tr><td>Details:</td><td><?php $form->textArea('details', 10, 30, $row['record_note']); ?></td></tr>
+ <tr><td colspan="2"><?php $form->submitButton('processed', 'Update'); ?></td></tr>
+<?php
+ CloseTable();
+ $form->__destruct();
+
+ }
+
+ function AddAwardRecord($member_id){
+ global $db;
+
+ $form = new BayonetForm("", "POST");
+ if($form->verifySubmit('processed')){
+ $date = $form->request['date'];
+ $details = $form->request['details'];
+ $award_id = $_POST['award'];
+ decho($form->request);
+ $db->Query("INSERT INTO `rudi_award_record` SET `member_id` = '$member_id', `award_id` = '$award_id', `date_added` = '$date', `record_note` = '$details', `added_by` = 1");
+ PageRedirect(1, "?op=rudi&show=members&award={$member_id}");
+ return;
+ }
+
+ $result = $db->Query("SELECT `date_added`, `record_note`, `member_id` FROM `rudi_service_record` WHERE `record_id` = '$record_id' LIMIT 1");
+ $row = $db->FetchRow($result);
+ echo "<a href=\"?op=rudi&show=members&award={$member_id}\">Cancel</a>";
+ OpenTable();
+?>
+ <tr><td>Award:</td><td>
+ <select name="award">
+<?php $awards = GetAllAwards();
+ foreach($awards as $award){
+ echo "<option value=\"{$award['award_id']}\">{$award['name']}</option>";
+ }
+?>
+ </select>
+ </td></tr>
+ <tr><td>Date:</td><td><?php $form->textField('date'); ?></td></tr>
+ <tr><td>Details:</td><td><?php $form->textArea('details', 10, 30); ?></td></tr>
+ <tr><td colspan="2"><?php $form->submitButton('processed', 'Add'); ?></td></tr>
+<?php
+ CloseTable();
+ $form->__destruct();
+ }
+?> \ No newline at end of file
diff --git a/admin/rudi/index.php b/admin/rudi/index.php
new file mode 100644
index 0000000..3d93bf0
--- /dev/null
+++ b/admin/rudi/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="rudi/style.css" media="screen"/>
+ <div style="text-align:left;"><h2>- RUDI/Quartermaster Control Panel</h2></div>
+ <?php
+ if(!defined("ADMIN_FILE"))
+ {
+ die("Access denied.");
+ }
+
+ if(isset($_GET['show'])){
+
+ switch($_GET['show']){
+ case 'members':
+ include $basedir.'rudi/views/view.members.php';
+ break;
+ case 'units':
+ include $basedir.'rudi/views/view.units.php';
+ break;
+ case 'awards':
+ include $basedir.'rudi/views/view.awards.php';
+ break;
+ case 'ranks':
+ include $basedir.'rudi/views/view.ranks.php';
+ break;
+ case 'drills':
+ include $basedir.'rudi/views/view.drills.php';
+ break;
+ }
+ }else{
+ $th = array('Rudi Options','');
+ $td = array(
+ LinkInternal('Roster','?op=rudi&show=members'),
+ LinkInternal('Awards', '?op=rudi&show=awards')
+ );
+
+ //render administration table
+ CompileAdmin($th,$td);
+ }
+ ?> \ No newline at end of file
diff --git a/admin/rudi/views/view.awards.edit.php b/admin/rudi/views/view.awards.edit.php
new file mode 100644
index 0000000..09f041c
--- /dev/null
+++ b/admin/rudi/views/view.awards.edit.php
@@ -0,0 +1,24 @@
+<?php
+ $award = getAward($award_id);
+ $form = new BayonetForm("", "POST");
+ if($form->verifySubmit('processed'))
+ {
+ echo "Key states<br/>\n";
+ $keydump = print_r($form->getKeyStates($form->request), true);
+ echo "<pre>{$keydump}</pre>\n";
+
+ echo "<p>Transaction processed</p>\n";
+
+ }
+ OpenTable();
+?>
+
+<tr><th>Name:</th><td><?php $form->textField('name', $award['name'], false, "50"); ?></td><tr>
+<tr><th>Image:</th><td><?php ?></td></tr>
+<tr><th>Text:</th><td><?php $form->textArea('text',10,30,$award['description']); ?></td></tr>
+
+<?php
+ CloseTable();
+ $form->__destruct();
+?>
+
diff --git a/admin/rudi/views/view.awards.php b/admin/rudi/views/view.awards.php
new file mode 100644
index 0000000..2455018
--- /dev/null
+++ b/admin/rudi/views/view.awards.php
@@ -0,0 +1,34 @@
+<?php
+ include $basedir.'rudi/includes/functions.awards.php';
+ if(isset($_GET['award'])){
+ $award_id = $_GET['award'];
+ include 'view.awards.edit.php';
+ }else{
+ echo "<h3>Award Classes</h3>";
+ $classes = getAwardClasses();
+ OpenTable();
+ echo "<tr style=\"text-align:center\">";
+ foreach($classes as $class){
+ echo "<td>".LinkInternal($class['name'],'?op=rudi&show=awards&cid='.$class['class_id'])."</td>";
+ }
+ echo "</tr>";
+ CloseTable();
+
+ if(isset($_GET['cid'])){
+ $class_id = $_GET['cid'];
+ $awards = getAwardsByClass($class_id);
+ echo "<h3>Awards</h3>";
+ OpenTable();
+ foreach($awards as $award){
+ echo "<tr><td>".$award['name']."</td>
+ <td><a href=\"?op=rudi&show=awards&award={$award['award_id']}\">Edit</a></td>
+ <td><a href=\"?op=rudi&show=awards&delete={$award['award_id']}\">Delete</a></td></tr>";
+ }
+ CloseTable();
+ //include 'view.members.profile.php';
+ }else if(isset($_GET['aid'])){
+ $award_id = $_GET['aid'];
+ //include 'view.members.service.php';
+ }
+ }
+?> \ No newline at end of file
diff --git a/admin/rudi/views/view.members.award.php b/admin/rudi/views/view.members.award.php
new file mode 100644
index 0000000..cda8595
--- /dev/null
+++ b/admin/rudi/views/view.members.award.php
@@ -0,0 +1,19 @@
+<?php
+ global $db;
+ $result = $db->Query("SELECT `first_name`, `last_name` FROM `rudi_unit_members` WHERE `member_id` = '$member_id' LIMIT 1");
+ $member = $db->FetchRow($result);
+ echo "<h3>Award Record of {$member['first_name']} {$member['last_name']}</h3>";
+
+ if(isset($_GET['edit'])){
+ $record_id = $_GET['edit'];
+ EditAwardRecord($record_id);
+ }else if(isset($_GET['add'])){
+ if($_GET['add']){
+ AddAwardRecord($_GET['award']);
+ }
+ }else{
+
+ echo "<div style=\"text-align:left;\">".LinkInternal('Back to Roster', '?op=rudi&show=members')."</div>";
+ ListAwardRecord($_GET['award']);
+ }
+?> \ No newline at end of file
diff --git a/admin/rudi/views/view.members.php b/admin/rudi/views/view.members.php
new file mode 100644
index 0000000..659ef2b
--- /dev/null
+++ b/admin/rudi/views/view.members.php
@@ -0,0 +1,49 @@
+<?php
+ include $basedir.'rudi/includes/functions.members.php';
+ if(isset($_GET['profile'])){
+ $member_id = $_GET['profile'];
+ include 'view.members.profile.php';
+ }else if(isset($_GET['service'])){
+ $member_id = $_GET['service'];
+ include 'view.members.service.php';
+ }else if(isset($_GET['award'])){
+ $member_id = $_GET['award'];
+ include 'view.members.award.php';
+ }else{
+
+ global $db;
+
+ echo "<h3>Current Members</h3>";
+ echo "<table width=\"100%\" style=\"text-align:center;\">";
+ echo "<tr><th>Rank</th><th>Soldier</th><th>Main Info</th><th>Service Record</th><th>Medal Record</th></tr>";
+ $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);
+
+ foreach($row as $member){
+ echo "<tr>";
+ echo "<td>{$member['shortname']}</td><td class=\"center\">{$member['first_name']} {$member['last_name']}</td>";
+ echo "<td>".LinkInternal('Edit','?op=rudi&show=members&profile='.$member['member_id'])."</td>";
+ echo "<td>".LinkInternal('Edit','?op=rudi&show=members&service='.$member['member_id'])."</td>";
+ echo "<td>".LinkInternal('Edit','?op=rudi&show=members&award='.$member['member_id'])."</td>";
+ echo "<tr>";
+ }
+ CloseTable();
+
+ echo "<h3>Previous Members</h3>";
+ echo "<table width=\"100%\" style=\"text-align:center;\">";
+ echo "<tr><th>Rank</th><th>Soldier</th><th>Main Info</th><th>Service Record</th><th>Medal Record</th></tr>";
+ $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 OR 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);
+
+ foreach($row as $member){
+ echo "<tr>";
+ echo "<td>{$member['shortname']}</td><td class=\"center\">{$member['first_name']} {$member['last_name']}</td>";
+ echo "<td>".LinkInternal('Edit','?op=rudi&show=members&profile='.$member['member_id'])."</td>";
+ echo "<td>".LinkInternal('Edit','?op=rudi&show=members&service='.$member['member_id'])."</td>";
+ echo "<td>".LinkInternal('Edit','?op=rudi&show=members&award='.$member['member_id'])."</td>";
+ echo "<tr>";
+ }
+ CloseTable();
+ }
+
+?> \ No newline at end of file
diff --git a/admin/rudi/views/view.members.profile.php b/admin/rudi/views/view.members.profile.php
new file mode 100644
index 0000000..fedabdd
--- /dev/null
+++ b/admin/rudi/views/view.members.profile.php
@@ -0,0 +1,195 @@
+<?php
+ global $db;
+
+ if(isset($_POST['processed'])){
+
+ echo "Please wait while the information is processed...";
+
+ $rank_id = $_POST['rank'];
+ $country_id = $_POST['country'];
+ $status_id = $_POST['status'];
+ $role_id = $_POST['role'];
+ $unit_id = $_POST['unit'];
+ $weapon_id = $_POST['weapon'];
+ $first_name = addslashes($_POST['first']);
+ $last_name = addslashes($_POST['last']);
+ $username = addslashes($_POST['username']);
+ $city = addslashes($_POST['city']);
+ $province = addslashes($_POST['province']);
+ $primary_mos = addslashes($_POST['primmos']);
+ $enlisted = addslashes($_POST['enlist']);
+ $promoted = addslashes($_POST['promote']);
+ $discharged = addslashes($_POST['discharge']);
+ $xfire = addslashes($_POST['xfire']);
+ $email = addslashes($_POST['email']);
+ $bio = addslashes($_POST['bio']);
+
+ //$discharged = empty($discharged) ? NULL : "'{$discharged}'";
+
+ $query = "UPDATE `rudi_unit_members` SET"
+ ." `rank_id` = '$rank_id',"
+ ." `country_id` = '$country_id',"
+ ." `status_id` = '$status_id',"
+ ." `cunit_id` = '$unit_id',"
+ ." `weapon_id` = '$weapon_id',"
+ ." `username` = '$username',"
+ ." `email` = '$email',"
+ ." `xfire` = '$xfire',"
+ ." `first_name` = '$first_name',"
+ ." `last_name` = '$last_name',"
+ ." `location_city` = '$city',"
+ ." `location_province` = '$province',"
+ ." `bio` = '$bio',"
+ ." `date_enlisted` = '$enlisted',"
+ ." `date_promotion` = '$promoted',"
+ ." `primary_mos` = '$primary_mos',";
+ if(empty($discharged))
+ $query = $query." `date_discharged` = null";
+ else
+ $query = $query." `date_discharged` = '$discharged'";
+ $query = $query." WHERE `member_id` = '$member_id' LIMIT 1";
+ decho($query);
+ $db->Query($query);
+
+ /* do the role query as well */
+ PageRedirect(1, "?op=rudi&show=members&profile={$member_id}");
+ return;
+ }
+ $member = GetMember($member_id);
+?>
+ <a href="?op=rudi&show=members">Cancel</a><br />
+ <form method="POST" action="">
+ <table width="100%" style="text-align:center;">
+ <tr><th colspan="2" style="background-color:#c4c4c4;">Personnel File of <?php echo $member['first_name']." ".$member['last_name']; ?></th></tr>
+ <tr><td class="right" width="50%">Rank:</td><td class="left">
+ <select name="rank">
+<?php $ranks = GetRanks();
+ foreach($ranks as $rank){
+ if($rank['rank_id'] == $member['rank_id'])
+ echo "<option value=\"{$rank['rank_id']}\" selected>{$rank['longname']}</option>";
+ else
+ echo "<option value=\"{$rank['rank_id']}\">{$rank['longname']}</option>";
+ }
+?>
+ </select>
+ </td></tr>
+ <tr><td class="right">Country:</td><td class="left">
+ <select name="country">
+<?php $countries = GetCountry();
+ foreach($countries as $country){
+ if($country['country_id'] == $member['country_id'])
+ echo "<option value=\"{$country['country_id']}\" selected>{$country['name']}</option>";
+ else
+ echo "<option value=\"{$country['country_id']}\">{$country['name']}</option>";
+ }
+?>
+ </select>
+ </td></tr>
+ </table>
+ <table width="100%" style="text-align:center;">
+ <tr><th colspan="2" style="background-color:#c4c4c4;">Vital Statistics</th></tr>
+ <tr>
+ <td class="right" width="50%">First:</td>
+ <td class="left"><input type="text" name="first" value="<?php echo $member['first_name']; ?>" /></td>
+ </tr>
+ <tr>
+ <td class="right">Last:</td>
+ <td class="left"><input type="text" name="last" value="<?php echo $member['last_name']; ?>" /></td>
+ </tr>
+ <tr><td class="right">Username:</td><td class="left"><input type="text" name="username" value="<?php echo $member['username']; ?>" /></td></tr>
+ <tr><td class="right">City:</td><td class="left"><input type="text" name="city" value="<?php echo $member['location_city']; ?>"/></td></tr>
+ <tr><td class="right">Province:</td><td class="left"><input type="text" name="province" value="<?php echo $member['location_province']; ?>" /></td></tr>
+ <tr><td class="right">Status:</td><td class="left">
+ <select name="status">
+<?php $statuses = GetStatuses();
+ foreach($statuses as $status){
+ if($status['status_id'] == $member['status_id'])
+ echo "<option value=\"{$status['status_id']}\" selected>{$status['name']}</option>";
+ else
+ echo "<option value=\"{$status['status_id']}\">{$status['name']}</option>";
+ }
+?>
+ </select>
+ </td></tr>
+ <tr><td class="right">Primary MOS:</td><td class="left"><input type="text" name="primmos" value="<?php echo $member['primary_mos']; ?>" /></td></tr>
+ <tr>
+ <td class="right">Role:</td>
+ <td class="left">
+ <select name="role">
+<?php
+ $member_roles = GetMembersRoles($member['member_id']);
+ $roles = GetRoles();
+ foreach($member_roles as $member_role){}
+ foreach($roles as $role){
+ if($role['role_id']==$member_role['role_id'])
+ echo "<option value=\"{$role['role_id']}\" selected>{$role['name']}</option>";
+ else
+ echo "<option value=\"{$role['role_id']}\">{$role['name']}</option>";
+ }
+?>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td class="right" style="font-weight:bold;">Unit:</td>
+ <td class="left">
+ <select name="unit">
+ <option value="0">N/A</option>
+<?php
+ $result = $db->Query("SELECT `unit_id`, `name` FROM `rudi_combat_units` WHERE `detachment` = 0 ");
+ $row = $db->Fetch($result);
+ foreach($row as $unit){
+ $unit_name = $unit['name'];
+ $unit_id = $unit['unit_id'];
+ if($member['cunit_id']==$unit_id)
+ echo '<option value="'.$unit_id.'" selected>'.$unit_name.'</option>';
+ else
+ echo '<option value="'.$unit_id.'">'.$unit_name.'</option>';
+ selectUnits($unit_id, 0, $member['cunit_id']);
+ }
+?>
+ </select>
+ </td>
+ </tr>
+ <tr><td class="right">Weapons:</td><td class="left">
+ <select name="weapon">
+<?php $weapons = GetWeapons();
+ foreach($weapons as $weapon){
+ if($weapon['weapon_id'] == $member['weapon_id'])
+ echo "<option value=\"{$weapon['weapon_id']}\" selected>{$weapon['model']}</option>";
+ else
+ echo "<option value=\"{$weapon['weapon_id']}\">{$weapon['model']}</option>";
+ }
+?>
+ </select>
+ </td></tr>
+ <tr>
+ <td class="right">Enlisted Date:</td>
+ <td class="left"><input type="text" name="enlist" value="<?php echo !empty($member['date_enlisted']) ? date('Y-m-d', strtotime($member['date_enlisted'])) : ""; ?>" /></td>
+ </tr>
+ <tr>
+ <td class="right">Promotion Date:</td>
+ <td class="left">
+ <input type="text" name="promote" value="<?php echo !empty($member['date_promotion']) ? date('Y-m-d', strtotime($member['date_promotion'])) : ""; ?>" />
+ </td>
+ </tr>
+ <tr>
+ <td class="right">Discharge Date:</td>
+ <td class="left"><input type="text" name="discharge" value="<?php echo !empty($member['date_discharged']) ? date('Y-m-d', strtotime($member['date_discharged'])) : ""; ?>" /></td>
+ </tr>
+ <tr>
+ <td class="right">Xfire:</td>
+ <td class="left"><input type="text" name="xfire" value="<?php echo $member['xfire']; ?>"/></td>
+ </tr>
+ <tr>
+ <td class="right">E-Mail:</td>
+ <td class="left"><input type="text" name="email" value="<?php echo $member['email']; ?>"/></td>
+ </tr>
+ </table>
+ <br />
+ <table width="100%" style="text-align:center;">
+ <tr><th colspan="2" style="background-color:#c4c4c4;">Personal Bio</th></tr>
+ <tr><td><textarea rows="7" name="bio" cols="60"><?php echo $member['bio'];?></textarea></td></tr>
+ <tr><td colspan="2"><input type="submit" value="Submit" name="processed" /></td>
+ </table>
+ </form> \ No newline at end of file
diff --git a/admin/rudi/views/view.members.service.php b/admin/rudi/views/view.members.service.php
new file mode 100644
index 0000000..eaf2233
--- /dev/null
+++ b/admin/rudi/views/view.members.service.php
@@ -0,0 +1,19 @@
+<?php
+ global $db;
+ $result = $db->Query("SELECT `first_name`, `last_name` FROM `rudi_unit_members` WHERE `member_id` = '$member_id' LIMIT 1");
+ $member = $db->FetchRow($result);
+ echo "<h3>Service Record of {$member['first_name']} {$member['last_name']}</h3>";
+
+ if(isset($_GET['edit'])){
+ $record_id = $_GET['edit'];
+ EditServiceRecord($record_id);
+ }else if(isset($_GET['add'])){
+ if($_GET['add']){
+ AddServiceRecord($_GET['service']);
+ }
+ }else{
+
+ echo "<div style=\"text-align:left;\">".LinkInternal('Back to Roster', '?op=rudi&show=members')."</div>";
+ ListServiceRecord($_GET['service']);
+ }
+?> \ No newline at end of file
diff --git a/admin/rudi/views/view.units.php b/admin/rudi/views/view.units.php
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/admin/rudi/views/view.units.php