getPhysician()) { $physician = $this_user->getPhysician(); } } // check if there is a valid date... if not, assign current date if (!checkdate(substr($for_date, 5, 2), substr($for_date, 8, 2), substr($for_date, 0, 4))) $for_date = $cur_date; // calculate previous and next dates for menubar $prev_date = freemed_get_date_prev ($for_date); for ($i=1; $i<=6; $i++) $prev_date = freemed_get_date_prev ($prev_date); $next_date = freemed_get_date_next ($for_date); for ($i=1; $i<=6; $i++) $next_date = freemed_get_date_next ($next_date); // Get week days unset($week); $week[] = $for_date; $n = $for_date; for ($i=1; $i<=6; $i++) { $n = freemed_get_date_next($n); $week[] = $n; } //----- Set page title $page_title = __("Physician Weekly View"); //----- Map key bindings freemed::key_binding(array( '37' => "$page_name?for_date=$prev_date&physician=$physician", '39' => "$page_name?for_date=$next_date&physician=$physician", '38' => "$page_name?for_date=$prev_date&physician=$physician", '40' => "$page_name?for_date=$next_date&physician=$physician" )); //----- Display previous/next bar $display_buffer .= "
< >

"; // Check for us being a physician $this_user = CreateObject('FreeMED.User'); if ($this_user->isPhysician() and ($physician < 1)) { $physician = $this_user->getPhysician(); } // check if there is a physician specified, and if so, display their // name, etc at the top... if ($physician<=0) { $display_buffer .= "
".__("No Physician Selected")."

"; } else { $phyinfo = freemed::get_link_rec ($physician, "physician"); $phylname = $phyinfo["phylname"]; $phyfname = $phyinfo["phyfname"]; $phymname = $phyinfo["phymname"]; $display_buffer .= "
".__("Physician").": $phylname, $phyfname $phymname

"; } //----- Create the maps $scheduler = CreateObject('FreeMED.Scheduler'); foreach ($week AS $this_date) { $map[$this_date] = $scheduler->multimap( "SELECT scheduler.*,atcolor FROM scheduler ". "LEFT OUTER JOIN appttemplate t ON t.id=scheduler.calappttemplate ". "WHERE ". "calphysician='".addslashes($physician)."' AND ". "caldateof='".addslashes($this_date)."'" ); if ($map[$this_date][0]['count'] !== 0) { $temp = $map[$this_date]; unset ($map[$this_date]); $map[$this_date][] = $temp; } if (count($map[$this_date]) == 0) { $map[$this_date][0] = $scheduler->map_init(); } } // and creating maps foreach $display_buffer .= "\n". "\n"; foreach ($week AS $this_date) { $display_buffer .= "\n"; } // end foreach week $display_buffer .= "\n"; // Loop through the day for ($c_hour=freemed::config_value('calshr'); $c_hour". "". $scheduler->display_hour($c_hour)."\n"; for ($c_min='00'; $c_min<60; $c_min+=5) { $idx = sprintf('%02s:%02s', $c_hour, $c_min); $display_buffer .= ( ($c_min>0) ? "" : "" ). "\n"; foreach ($week AS $day) { foreach ($map[$day] AS $map_key => $cur_map) { $event = false; if (($cur_map[$idx]['span']+0)==0) { $event = true; } elseif (($cur_map[$idx]['link']+0)!=0) { $event = true; $display_buffer .= "\n"; } else { $display_buffer .= "\n"; } } // foreach map } // end foreach week } // end looping minutes for $display_buffer .= "\n"; } // end looping hours for $display_buffer .= "
 ". "".$this_date."
".( ($c_min % 15 == 0 ) ? $c_min : "" )."". $scheduler->event_calendar_print( $cur_map[$idx]['link'], true )." 
\n"; //----- End and display everything template_display(); ?>