A few bug fixes.
[openemr.git] / library / calendar.inc
blob1c21b8e606d7691f7d8dfbe906708030d8876ddc
1 <?
2 //function returns the next most recent appointment given a pid
3 function getNextAppointment ($pid) {
4 $query = "select * from calendar where pid=$pid and time>now() order by time limit 1";
5 $rez = sqlStatement($query);
6 echo "<!-- getNextAppointment $pid -$query- -->";
7         return sqlFetchArray($rez);
11 //this function returns calendar data given date and provider
12 function getCalendarDay($datetime,$owner,$groupname) {
13         $query = "select * from calendar where time like '$datetime%' and owner like '$owner' and groupname like '$groupname' order by time";
14         $rez = sqlStatement($query);
15         for($iter=0; $row=sqlFetchArray($rez); $iter++)
16                 $returnval[$iter]=$row;
18 echo "<!-- getCalendarDay -$query- $datetime $owner $groupname -->";
19         return $returnval;
22 //toggle the status of a noshow calendar entry
23 function toggleNoShow( $cid) {
24         $rez = sqlStatement("select noshow from calendar where id=$cid");
25         $row=sqlFetchArray($rez);
26         $oldnoshowval = $row{noshow};
27         $newnoshowval = !($oldnoshowval);
28         $query = "update calendar set noshow='$newnoshowval' where id=$cid";
29         sqlStatement($query);
33 //return array of provider usernames
34 function getProviderUsernames() {
35         $rez = sqlStatement("select distinct username, lname, fname from users " .
36                 "where authorized = 1 and username != ''");
37         for($iter=0; $row=sqlFetchArray($rez); $iter++)
38                 $returnval[$iter]=$row;
40         return $returnval;
44 function getIDfromUser($name) {
45         $query = "select id from users where username=\"" . mysql_real_escape_string($name) . "\" limit 1";
46         $rez = sqlStatement($query);
47         $row = sqlFetchArray($rez);
48         if (!is_numeric($row['id']))
49                 return -1;
50         else
51                 return $row['id'];
53 function getAuthorizedIDs() {
54         $query = "select id, username from users where authorized=1 and username != ''";
55         $rez = sqlStatement($query);
56         for($iter=0; $row=sqlFetchArray($rez); $iter++)
57                 $returnval[$iter]=$row;
58         return $returnval;
62 function getUserInfo() {
63         $rez = sqlStatement("select distinct id, username, lname, fname, authorized, " .
64                 "info, facility from users where username != ''");
65         for($iter=0; $row=sqlFetchArray($rez); $iter++)
66                 $returnval[$iter]=$row;
68         return $returnval;
70 function getUsername($uID) {
71         $pi = getProviderInfo($uID,false);
72         if (strlen($pi["username"]) > 0) {
73                 return $pi['username'];
74         }
76         return "";
79 //retrieve the name based on the username
80 function getNamefromUsername($username) {
81         $query = "select * from users where username like '$username' and username != ''";
82         $res = sqlQuery($query);
83         return $res;
87 //retrieve calendar information from calendar id
88 function getCalendarfromID ($calid) {
89         
90         //this table is deprecated and has been removed from new versions
91         //return sqlQuery("select * from calendar where id='$calid'");
95 //get calendar dates in a range of dates
96 function getCalendarRanges ($fromdate, $todate, $username) {
97         $rez = sqlStatement("select * from calendar where time>='$fromdate' and time<'$todate' and owner like '$username' order by time");
98         for($iter=0; $row=sqlFetchArray($rez); $iter++)
99                 $returnval[$iter]=$row;
101         return $returnval;
102         
106 //get calendar dates in a range of dates
107 function getCalendarbyTimeandRange ($time, $fromdate, $todate, $username) {
108         $query = "select * from calendar where time like '% $time%' and time>='$fromdate' and time<'$todate' and owner like '$username' order by time";
109         $rez = sqlStatement($query);
110         for($iter=0; $row=sqlFetchArray($rez); $iter++)
111                 $returnval[$iter]=$row;
112 echo "<!-- getcalendarbytimeandrange -$query- -->";
113         return $returnval;
114         
118 //add new calendar entry item
119 function newCalendarItem (
120 $pid,
121 $time,
122 $reason,
123 $owner,
124 $groupname
127 ) {
128         
129         sqlQuery("insert into calendar set pid=$pid,time='$time',reason='$reason',owner='$owner',groupname='$groupname',date=now()");
132 //delete a calendar entry item
133 function deleteCalendarItem( $calid,$pid) {
134         sqlQuery("delete from calendar where id='$calid' and pid='$pid'");
135         
139 //save an edited calendar entry item
140 function saveCalendarUpdate (
141 $calid,
142 $pid,
143 $time,
144 $reason,
145 $owner,
146 $groupname
149 ) {
150         
151         sqlQuery("update calendar set pid=$pid,time='$time',reason='$reason',owner='$owner',groupname='$groupname',date=now() where id='$calid'");
155 //replicated functionality of postcalendar_getDate
156 function pc_getDate($format='%Y%m%d')  {
157 //    list($Date,$jumpday,$jumpmonth,$jumpyear) = pnVarCleanFromInput('Date','jumpday','jumpmonth','jumpyear');
158         if(!isset($Date)) {
159         // if we still don't have a date then calculate it
160         $time = time();
161                 // check the jump menu
162         if(!isset($jumpday))   $jumpday = strftime('%d',$time);
163         if(!isset($jumpmonth)) $jumpmonth = strftime('%m',$time);
164         if(!isset($jumpyear))  $jumpyear = strftime('%Y',$time);
165                 // create the correct date string
166         $Date = (int) "$jumpyear$jumpmonth$jumpday";
167     }
168         $y = substr($Date,0,4);
169         $m = substr($Date,4,2);
170         $d = substr($Date,6,2);
171     return strftime($format,mktime(0,0,0,$m,$d,$y));