2 //////////////////////////////////////////////////////////////////////
3 // ------------------ DO NOT MODIFY VIEW.PHP !!! ---------------------
4 // View.php is an exact duplicate of new.php. If you wish to make
5 // any changes, then change new.php and either (recommended) make
6 // view.php a symbolic link to new.php, or copy new.php to view.php.
8 // And if you check in a change to either module, be sure to check
9 // in the other (identical) module also.
11 // This nonsense will go away if we ever move to subversion.
12 //////////////////////////////////////////////////////////////////////
14 // Copyright (C) 2006 Rod Roark <rod@sunsetsystems.com>
16 // This program is free software; you can redistribute it and/or
17 // modify it under the terms of the GNU General Public License
18 // as published by the Free Software Foundation; either version 2
19 // of the License, or (at your option) any later version.
21 require_once("../../globals.php");
22 require_once("$srcdir/api.inc");
23 require_once("$srcdir/forms.inc");
25 $scale_file_name = '/tmp/tanita_scale.txt';
29 if (! $encounter) { // comes from globals.php
30 die("Internal error: we do not seem to be in an encounter!");
33 function rbvalue($rbname)
35 $tmp = $_POST[$rbname];
43 function rbinput($name, $value, $desc, $colname)
46 $ret = "<input type='radio' name='" . attr($name) . "' value='" . attr($value) . "'";
47 if ($row[$colname] == $value) {
50 $ret .= " />" . text($desc);
54 $formid = $_GET['id'];
56 // If Save was clicked, save the info.
58 if ($_POST['bn_save']) {
59 if (!verifyCsrfToken($_POST["csrf_token_form"])) {
60 die(xlt('Authentication Error'));
63 // If updating an existing form...
66 $query = "UPDATE form_body_composition SET
67 body_type = ?, height = ?, weight = ?, bmi = ?, bmr = ?, impedance = ?,
68 fat_pct = ?, fat_mass = ?, ffm = ?, tbw = ?, other = ? WHERE id = ?";
70 sqlStatement($query, array(rbvalue('form_body_type'), trim($_POST['form_height']), trim($_POST['form_weight']), trim($_POST['form_bmi']),
71 trim($_POST['form_bmr']), trim($_POST['form_impedance']), trim($_POST['form_fat_pct']), trim($_POST['form_fat_mass']), trim($_POST['form_ffm']),
72 trim($_POST['form_tbw']), trim($_POST['form_other']), $formid ));
74 } // If adding a new form...
77 $query = 'INSERT INTO form_body_composition (
78 body_type, height, weight, bmi, bmr, impedance, fat_pct, fat_mass, ffm, tbw, other
79 ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
81 $newid = sqlInsert($query, array(rbvalue('form_body_type'), trim($_POST['form_height']), trim($_POST['form_weight']), trim($_POST['form_bmi']),
82 trim($_POST['form_bmr']), trim($_POST['form_impedance']), trim($_POST['form_fat_pct']), trim($_POST['form_fat_mass']),
83 trim($_POST['form_ffm']), trim($_POST['form_tbw']), trim($_POST['form_other'])));
85 addForm($encounter, "Body Composition", $newid, "body_composition", $pid, $userauthorized);
88 formHeader("Redirecting....");
95 $row = sqlQuery("SELECT * FROM form_body_composition WHERE " .
96 "id = ? AND activity = '1'", array($formid));
98 // Get the most recent scale reading.
99 $items = explode(',', trim(file_get_contents($scale_file_name)));
100 if ($items && count($items) > 11) {
101 $scale_file_age = round((time() - filemtime($scale_file_name)) / 60);
102 $row['body_type'] = $items[0] ?
'Athletic' : 'Standard';
103 $row['height'] = $items[2];
104 $row['weight'] = $items[3];
105 $row['bmi'] = $items[10];
106 $row['bmr'] = $items[11];
107 $row['impedance'] = $items[4];
108 $row['fat_pct'] = $items[5];
109 $row['fat_mass'] = $items[6];
110 $row['ffm'] = $items[7];
111 $row['tbw'] = $items[8];
117 <?php
html_header_show();?
>
118 <link rel
=stylesheet href
="<?php echo $css_header;?>" type
="text/css">
119 <script language
="JavaScript">
123 <body
<?php
echo $top_bg_line;?
> topmargin
="0" rightmargin
="0" leftmargin
="2" bottommargin
="0" marginwidth
="2" marginheight
="0">
124 <form method
="post" action
="<?php echo $rootdir ?>/forms/body_composition/new.php?id=<?php echo attr($formid) ?>"
125 onsubmit
="return top.restoreSession()">
126 <input type
="hidden" name
="csrf_token_form" value
="<?php echo attr($_SESSION['csrf_token']); ?>" />
131 <table border
='0' width
='95%'>
133 <tr bgcolor
='#dddddd'>
134 <td colspan
='3' align
='center'><b
>Body Composition
</b
></td
>
138 <td width
='5%' nowrap
>Body Type
</td
>
139 <td colspan
='2' nowrap
>
140 <?php
echo rbinput('form_body_type', 'Standard', 'Standard', 'body_type') ?
> 
;
141 <?php
echo rbinput('form_body_type', 'Athletic', 'Athletic', 'body_type') ?
> 
;
146 <td nowrap
>Height in inches
</td
>
148 <input type
='text' name
='form_height' size
='6'
149 value
='<?php echo attr($row['height
']) ?>' />  
;
157 <td nowrap
>Weight in pounds
</td
>
159 <input type
='text' name
='form_weight' size
='6'
160 value
='<?php echo attr($row['weight
']) ?>' />  
;
162 <td align
='center' nowrap
>
164 if ($scale_file_age >= 0) {
165 echo "<font color='blue'>This reading was taken " . text($scale_file_age) . " minutes ago.</font>\n";
176 <input type
='text' name
='form_bmi' size
='6'
177 value
='<?php echo attr($row['bmi
']) ?>' />  
;
185 <td nowrap
>BMR in kj
</td
>
187 <input type
='text' name
='form_bmr' size
='6'
188 value
='<?php echo attr($row['bmr
']) ?>' />  
;
196 <td nowrap
>Impedance in ohms
</td
>
198 <input type
='text' name
='form_impedance' size
='6'
199 value
='<?php echo attr($row['impedance
']) ?>' />  
;
207 <td nowrap
>Fat %
</td
>
209 <input type
='text' name
='form_fat_pct' size
='6'
210 value
='<?php echo attr($row['fat_pct
']) ?>' />  
;
218 <td nowrap
>Fat Mass in pounds
</td
>
220 <input type
='text' name
='form_fat_mass' size
='6'
221 value
='<?php echo attr($row['fat_mass
']) ?>' />  
;
229 <td nowrap
>FFM in pounds
</td
>
231 <input type
='text' name
='form_ffm' size
='6'
232 value
='<?php echo attr($row['ffm
']) ?>' />  
;
240 <td nowrap
>TBW in pounds
</td
>
242 <input type
='text' name
='form_tbw' size
='6'
243 value
='<?php echo attr($row['tbw
']) ?>' />  
;
251 <td nowrap
>Notes
</td
>
252 <td colspan
='2' nowrap
>
253 <textarea name
='form_other' rows
='8' style
='width:100%'><?php
echo text($row['other']) ?
></textarea
>
260 <input type
='submit' name
='bn_save' value
='Save' />
262 <input type
='button' value
='Cancel' onclick
="parent.closeTab(window.name, false)" />