2 /************************************************************************/
4 /************************************************************************/
5 /* Copyright (c) 2002-2008 by Greg Gay, Joel Kronenberg & Heidi Hazelton*/
6 /* Adaptive Technology Resource Centre / University of Toronto */
9 /* This program is free software. You can redistribute it and/or */
10 /* modify it under the terms of the GNU General Public License */
11 /* as published by the Free Software Foundation. */
12 /************************************************************************/
13 // $Id: header.tmpl.php 3825 2005-03-11 15:35:51 joel $
14 if (!defined('AT_INCLUDE_PATH')) { exit; }
15 /* available header.tmpl.php variables:
16 * $this->lang_code the ISO language code
17 * SITE_NAME the site name from the config file
18 * $this->page_title the name of this page to use in the <title>
19 * $this->lang_charset the ISO language character set
20 * $this->content_base_href the <base href> to use for this page
21 * $this->base_path the absolute path to this atutor installation
22 * $this->rtl_css if set, the path to the RTL style sheet
23 * $this->icon the path to a course icon
24 * $this->banner_style -deprecated-
25 * $this->theme the directory name of the current theme
26 * $this->base_href the full url to this atutor installation
27 * $this->onload javascript onload() calls
28 * $this->img the absolute path to this theme's images/ directory
29 * $this->sequence_links associative array of 'previous', 'next', and/or 'resume' links
30 * $this->path associative array of path to this page: aka bread crumbs
31 * $this->rel_url the relative url from the installation root to this page
32 * $this->nav_courses associative array of this user's enrolled courses
33 * $this->section_title the title of this section (course, public, admin, my start page)
34 * $this->current_top_level_page the full path to the current top level page with file name
35 * $this->sub_level_pages associate array of sub level navigation
36 * $this->back_to_page if set, the path and file name to the part of this page (if parent is not a top level nav)
37 * $this->current_sub_level_page the full path to the current sub level page with file name
38 * $this->guide the full path and file name to the guide page
39 * ======================================
40 * top_level_pages array(array('url', 'title')) the top level pages. ATutor default creates tabs.
41 * section_title string the name of the current section. either name of the course, administration, my start page, etc.
42 * page_title string the title of the current page.
43 * path array(array('url', 'title')) the path to the current page.
44 * back_to_page array('url', 'title') the link back to the part of the current page, if needed.
45 * current_top_level_page string full url to the current top level page in "top_leve_pages"
46 * current_sub_level_page string full url to the current sub level page in the "sub_level_pages"
47 * sub_level_pages array(array('url', 'title')) the sub level pages.
48 * is_mobile_device true or false the request is from a mobile device or a desktop device
49 * mobile_device_type One of the constants: IPOD_DEVICE, BLACKBERRY_DEVICE, ANDROID_DEVICE, UNKNOWN_DEVICE (@see include/lib/constants.inc.php)
52 // will have to be moved to the header.inc.php
53 global $system_courses, $_custom_css, $db, $_base_path, $contentManager;
55 // 1. any click on the page closes the content menu but the link "content_link" itself
56 // 2. the click on link "content_link" opens the content menu
59 require ('TeraWurflRemoteClient.php');
60 $wurflObj = new TeraWurflRemoteClient('http://wurfl.thesedays.com/webservice.php');
61 $capabilities = array("product_info");
62 $data_format = TeraWurflRemoteClient::$FORMAT_JSON;
63 $wurflObj->getCapabilitiesFromAgent(null, $capabilities, $data_format);
65 // open/close content menu
67 jQuery('#content_link').click(function(e) {
70 jQuery('#content').slideToggle();";
75 // open/close header navigational menu
78 jQuery(document).click(function () {
79 jQuery('#topnavlist').slideUp(600);});
80 jQuery('#topnavlist-link').click(function(e) {
82 jQuery('#topnavlist').slideToggle();
86 //hide and show results on Browse Courses page
88 jQuery('#results-hide-show-link').click(function(e) {
90 jQuery('#results-display').slideToggle();
97 //hide and show results everywhere else (uses classes)
100 jQuery('.results-hide-show-link').click(function(e) {
102 jQuery(this).parent().next('.results-display').slideToggle();
106 $this->onload .= "});
110 // Hide the addressbar
112 setTimeout(function() { window.scrollTo(0, 1) }, 100);
119 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
121 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="<?php echo $this->lang_code; ?>">
124 <title><?php echo SITE_NAME; ?> : <?php echo $this->page_title; ?></title>
125 <meta http-equiv="Content-Type" content="text/html; charset=<?php echo $this->lang_charset; ?>" />
126 <meta name="Generator" content="ATutor - Copyright 2005 by http://atutor.ca" />
127 <base href="<?php echo $this->content_base_href; ?>" />
128 <link rel="shortcut icon" href="<?php echo $this->base_path; ?>favicon.ico" type="image/x-icon" />
129 <link rel="stylesheet" href="<?php echo $this->base_path.'themes/'.$this->theme; ?>/print.css" type="text/css" media="print" />
131 <link rel="stylesheet" href="<?php echo $this->base_path; ?>jscripts/infusion/framework/fss/css/fss-mobile-layout.css" type="text/css"/>
132 <link rel="stylesheet" href="<?php echo $this->base_path; ?>jscripts/infusion/framework/fss/css/fss-mobile-theme-iphone.css" type="text/css"/>
134 <?php if ($this->is_mobile_device == true): ?>
135 <?php if ($this->mobile_device_type == ANDROID_DEVICE): ?>
136 <link rel="stylesheet" href="<?php echo $this->base_path.'themes/'.$this->theme; ?>/android.css" type="text/css"/>
137 <meta name="viewport" content="user-scalable=no, width=device-width" />
139 <?php if ($this->mobile_device_type == IPOD_DEVICE || $this->mobile_device_type == IPHONE_DEVICE): ?>
140 <link rel="stylesheet" href="<?php echo $this->base_path.'themes/'.$this->theme; ?>/iphone.css" type="text/css"/>
141 <meta name="viewport" content="user-scalable=no, width=device-width" />
143 <!-- Armin 25.08.2010: Detect BLACKBERRY_DEVICE and use blackberry.css-->
144 <?php if ($this->mobile_device_type == BLACKBERRY_DEVICE): ?>
145 <link rel="stylesheet" href="<?php echo $this->base_path.'themes/'.$this->theme; ?>/blackberry.css" type="text/css"/>
146 <meta name="viewport" content="user-scalable=no, width=device-width" />
148 <?php if ($this->mobile_device_type == IPAD_DEVICE): ?>
149 <link rel="stylesheet" href="<?php echo $this->base_path.'themes/'.$this->theme; ?>/tablet.css" type="text/css"/>
150 <meta name="viewport" content="width=768px, minimum-scale=1.0, maximum-scale=1.0" />
155 <link rel="stylesheet" href="<?php echo $this->base_path.'themes/'.$this->theme; ?>/forms.css" type="text/css" />
157 <!-- Fluid Infusion -->
158 <script src="<?php echo $this->base_path; ?>jscripts/infusion/InfusionAll.js" type="text/javascript"></script>
159 <script src="<?php echo $this->base_path;?>jscripts/jQueryMobile/jquery.mobile-1.0b1.min.js" type="text/javascript"></script>
160 <script language="javascript" type="text/javascript">
166 <script src="<?php echo $this->base_path; ?>jscripts/ATutor.js" type="text/javascript"></script>
169 <?php echo $this->rtl_css; ?>
170 <?php if (isset($this->course_id) && $system_courses[$this->course_id]['rss']): ?>
171 <link rel="alternate" type="application/rss+xml" title="<?php echo SITE_NAME; ?> - RSS 2.0" href="<?php echo $this->base_href; ?>get_rss.php?<?php echo $this->course_id; ?>-2" />
172 <link rel="alternate" type="application/rss+xml" title="<?php echo SITE_NAME; ?> - RSS 1.0" href="<?php echo $this->base_href; ?>get_rss.php?<?php echo $this->course_id; ?>-1" />
176 <?php echo $this->custom_css; ?>
180 <?php if ($this->mobile_device_type != IPAD_DEVICE): ?><!-- smartphone theme only -->
182 <body onload="<?php echo $this->onload; ?>" class="fl-theme-iphone ui-mobile-viewport">
188 <a href="<?php echo htmlspecialchars($_SERVER['REQUEST_URI'], ENT_QUOTES); ?>#content">
189 <img src="<?php echo $this->base_path; ?>images/clr.gif" height="1" width="1" border="0" alt="<?php echo _AT('goto_content'); ?> ALT+c" /></a>
191 <div id="header-section-title">
192 <!-- <?php if (isset($_SESSION['valid_user']) && $_SESSION['valid_user']):
193 echo '<div id="site-name">'.stripslashes(SITE_NAME).'</div>';
195 <h1 id="section-title"><?php echo $this->section_title; ?>
196 <?php if ((isset($this->course_id) && $this->course_id > 0) && ($_SESSION['enroll'] == AT_ENROLL_NO)) : ?>
197 <!-- <small><a href="<?php echo $this->base_path; ?>enroll.php?course=<?php echo $this->course_id; ?>"><?php echo _AT('enroll_me'); ?></a></small>-->
201 </div> <!-- END HEADER -->
204 <div id="contentwrapper">
206 <!-- Note: ARIA roles cause XHTML validation errors because the XHTML DTD does not yet support ARIA. Use ARIA anyway -->
208 <div id="navigation-contentwrapper">
209 <div id="navigation-bar">
210 <!-- this should be a button on its own -->
211 <?php if ($this->current_sub_level_page): ?>
212 <div id="topnavlistcontainer" role="menu" aria-live="assertive" class="topnavlistcontainer" >
213 <a class="navigation-bar-button" id="topnavlist-link" href="javascript:void(0);" tabindex="1"><?php echo _AT('navigation'); ?></a>
214 <ul id="topnavlist" class="fl-list-menu">
215 <?php $accesscounter = 0; //initialize ?>
216 <?php foreach ($this->top_level_pages as $page): ?>
217 <?php ++$accesscounter; $accesscounter = ($accesscounter == 10 ? 0 : $accesscounter); ?>
218 <?php $accesskey_text = ($accesscounter < 10 ? 'accesskey="'.$accesscounter.'"' : ''); ?>
219 <?php $accesskey_title = ($accesscounter < 10 ? ' Alt+'.$accesscounter : ''); ?>
220 <?php if ($page['url'] == $this->current_top_level_page): ?>
221 <li role="menuitem"><a href="<?php echo $page['url']; ?>" <?php echo $accesskey_text; ?> title="<?php echo $page['title'];?>"><?php echo $page['title']; ?></a> </li>
223 <li role="menuitem"><a href="<?php echo $page['url']; ?>" <?php echo $accesskey_text; ?> title="<?php echo $page['title']; ?>"><?php echo $page['title']; ?></a></li>
226 <?php $accesscounter = ($accesscounter == 0 ? 11 : $accesscounter); ?>
229 <?php if(!$this->just_social): ?>
230 <li role="menuitem"><a href="<?php echo $this->base_path; ?>search.php"><?php echo _AT('search'); ?></a> </li>
239 <ul class="fl-tabs" id="home-guide">
240 <!-- CHECK TO SEE IF USER IS A STUDENT -->
241 <?php if($_SESSION['is_admin'] == 0 && $_SESSION['privileges'] == 0 ):?>
242 <li><a class="hover-fl-tabs" href="<?php echo $this->base_path; ?>users/index.php"><?php echo _AT("home"); ?></a></li>
244 <!-- CHECK TO SEE IF USER IS AN ADMINISTRATOR -->
245 <?php //if($_SESSION['is_admin'] == 0 && $_SESSION['privileges'] == 1):
246 if($_SESSION['is_admin'] == 0 && $_SESSION['privileges'] == AT_ADMIN_PRIV_ADMIN):?>
247 <li><a href="<?php echo $this->base_path; ?>admin/index.php"><?php echo _AT("home"); ?></a></li>
249 <!-- CHECK TO SEE IF USER IS AN INSTRUCTOR -->
250 <?php if($_SESSION['is_admin'] == 1): ?>
251 <li><a href="<?php echo $this->base_path; ?>users/index.php"><?php echo _AT("home"); ?></a></li>
254 <?php if (isset($this->guide) && isset($_SESSION["course_id"]) && $this->guide && ($_SESSION["prefs"]["PREF_SHOW_GUIDE"] || $_SESSION["course_id"] == "-1")) : ?>
257 <!-- <a href="<?php echo $this->guide; ?>" id="guide" onclick="ATutor.poptastic('<?php echo $this->guide; ?>'); return false;" target="_new"><img src="<?php echo $this->img; ?>guide-icon.png" width="30" height="30" title="guide: <?php echo $this->page_title; ?>"alt="guide: <?php echo $this->page_title; ?>"></img></a> -->
259 <a href="<?php echo $this->guide; ?>" id="guide" onclick="ATutor.poptastic('<?php echo $this->guide; ?>'); return false;" target="_new"><?php echo _AT("guide"); ?></a>
264 </div><!-- END navigation-contentwrapper -->
265 <!-- ENSURE "content_link" DOESN'T APPEAR IF NOT LOGGED IN -->
268 <?php if(isset($_SESSION['course_id']) && $_SESSION['course_id'] > 0): ?>
269 <div id="content-link-container" role="navigation" aria-live="assertive" class="flc-screenNavigator-navbar ">
270 <a id="content_link" href="javascript:void(0);"><?php echo "Course Content Navigation";//_AT("content_navigation"); ?></a>
271 <div id="content" style=" display: none; position: relative; z-index: 1;">
272 <?php $contentManager->printMainMenu(); ?>
273 <script language="javascript" type="text/javascript"></script>
278 <div id="inner-contentwrapper" class="fl-container" >
280 <?php if ((isset($this->course_id) && $this->course_id <= 0)): ?>
281 <!-- style="margin-left:0.5em;width:99%;" -->
283 <?php if (isset($this->course_id) && $this->course_id > 0): ?>
284 <div class="sequence-links">
285 <?php if ($_SESSION["prefs"]["PREF_SHOW_NEXT_PREVIOUS_BUTTONS"]) { ?>
286 <?php if ($this->sequence_links['resume']): ?>
287 <a href="<?php echo $this->sequence_links['resume']['url']; ?>" class="previous-next" title="<?php echo _AT('resume').': '.$this->sequence_links['resume']['title']; ?>"><?php echo _AT('resume').': '.$this->sequence_links['resume']['title']; ?></a>
289 if ($this->sequence_links['previous']): ?>
290 <a href="<?php echo $this->sequence_links['previous']['url']; ?>" class="previous-next" title="<?php echo _AT('previous_topic').': '. $this->sequence_links['previous']['title']; ?>"> <?php echo _AT('previous_topic').': '. $this->sequence_links['previous']['title']; ?> </a>
292 if ($this->sequence_links['next']): ?>
293 <a href="<?php echo $this->sequence_links['next']['url']; ?>" class="previous-next" title="<?php echo _AT('next_topic').': '.$this->sequence_links['next']['title']; ?>"> <?php echo _AT('next_topic').': '.$this->sequence_links['next']['title']; ?></a>
298 </div> <!-- end sequence-links -->
302 <div id="contentcolumn">
305 <!-- the page title -->
306 <a name="content" title="<?php echo _AT('content'); ?>"></a>
307 <h2 class="page-title"><?php echo $this->page_title; ?></h2>
309 <?php global $msg; $msg->printAll(); $_base_href;?>
311 <!-- the sub navigation -->
312 <?php if (count($this->sub_level_pages) > 0): ?>
313 <div id="subnavlistcontainer">
314 <div id="subnavbacktopage">
315 <?php if (isset($this->back_to_page)): ?>
316 <a href="<?php echo $this->back_to_page['url']; ?>">
317 <img border="0" width="10" height="11" alt="<?php echo _AT('back_to').' '.$this->back_to_page['title']; ?>" src="<?php echo $this->base_href; ?>images/arrowicon.gif" style="float:left;"/></a>
322 <?php $num_pages = count($this->sub_level_pages); ?>
323 <?php for ($i=0; $i<$num_pages; $i++): ?>
324 <?php if ($this->sub_level_pages[$i]['url'] == $this->current_sub_level_page): ?>
325 <li id="test" ><?php echo $this->sub_level_pages[$i]['title']; ?></li>
327 <li><a href="<?php echo $this->sub_level_pages[$i]['url']; ?>"><?php echo $this->sub_level_pages[$i]['title']; ?></a></li>
329 <?php if ($i < $num_pages-1):
334 </div> <!-- end subnavlistcontainer -->
339 <!-- end header template for iphone, android, blackberry -->
340 <?php if ($this->mobile_device_type == IPAD_DEVICE): ?><!-- start header template for ipad/tablets -->
341 <body onload="<?php echo $this->onload; ?>" class="fl-theme-iphone ui-mobile-viewport">
345 <div id="header" role="header">
347 <a href="<?php echo htmlspecialchars($_SERVER['REQUEST_URI'], ENT_QUOTES); ?>#content">
348 <img src="<?php echo $this->base_path; ?>images/clr.gif" height="1" width="1" border="0" alt="<?php echo _AT('goto_content'); ?> ALT+c" /></a>
353 <!-- Note: ARIA roles cause XHTML validation errors because the XHTML DTD does not yet support ARIA. Use ARIA anyway -->
355 <div id="navigation-contentwrapper">
356 <h1 id="section-title"><?php echo $this->section_title; ?>
357 <?php if ((isset($this->course_id) && $this->course_id > 0) && ($_SESSION['enroll'] == AT_ENROLL_NO)) : ?>
358 <!-- <small><a href="<?php echo $this->base_path; ?>enroll.php?course=<?php echo $this->course_id; ?>"><?php echo _AT('enroll_me'); ?></a></small>-->
362 <ul class="fl-tabs" id="home-guide">
363 <!-- CHECK TO SEE IF USER IS A STUDENT -->
364 <?php if($_SESSION['is_admin'] == 0 && $_SESSION['privileges'] == 0 ):?>
365 <li><a class="hover-fl-tabs" href="<?php echo $this->base_path; ?>users/index.php"><?php echo _AT("home"); ?></a></li>
367 <!-- CHECK TO SEE IF USER IS AN ADMINISTRATOR -->
368 <?php //if($_SESSION['is_admin'] == 0 && $_SESSION['privileges'] == 1):
369 if($_SESSION['is_admin'] == 0 && $_SESSION['privileges'] == AT_ADMIN_PRIV_ADMIN):?>
370 <li><a href="<?php echo $this->base_path; ?>admin/index.php"><?php echo _AT("home"); ?></a></li>
372 <!-- CHECK TO SEE IF USER IS AN INSTRUCTOR -->
373 <?php if($_SESSION['is_admin'] == 1): ?>
374 <li><a href="<?php echo $this->base_path; ?>users/index.php"><?php echo _AT("home"); ?></a></li>
377 <?php if (isset($this->guide) && isset($_SESSION["course_id"]) && $this->guide && ($_SESSION["prefs"]["PREF_SHOW_GUIDE"] || $_SESSION["course_id"] == "-1")) : ?>
380 <!-- <a href="<?php echo $this->guide; ?>" id="guide" onclick="ATutor.poptastic('<?php echo $this->guide; ?>'); return false;" target="_new"><img src="<?php echo $this->img; ?>guide-icon.png" width="30" height="30" title="guide: <?php echo $this->page_title; ?>"alt="guide: <?php echo $this->page_title; ?>"></img></a> -->
382 <a href="<?php echo $this->guide; ?>" id="guide" onclick="ATutor.poptastic('<?php echo $this->guide; ?>'); return false;" target="_new"><?php echo _AT("guide"); ?></a>
388 </div><!-- END navigation-contentwrapper -->
390 </div> <!-- END HEADER -->
393 <div id="contentwrapper" class="fl-container" >
397 <div id="inner-contentwrapper" >
401 <div id="navigation-column" >
402 <!-- requires ARIA roles review -->
403 <!-- this should be a button on its own -->
404 <?php if ($this->current_sub_level_page): ?>
405 <ul id="topnavlist-tablet" class="fl-list-menu" role="menu">
406 <?php $accesscounter = 0; //initialize ?>
407 <?php foreach ($this->top_level_pages as $page): ?>
408 <?php ++$accesscounter; $accesscounter = ($accesscounter == 10 ? 0 : $accesscounter); ?>
409 <?php $accesskey_text = ($accesscounter < 10 ? 'accesskey="'.$accesscounter.'"' : ''); ?>
410 <?php $accesskey_title = ($accesscounter < 10 ? ' Alt+'.$accesscounter : ''); ?>
411 <?php if ($page['url'] == $this->current_top_level_page): ?>
412 <!-- note bug http://issues.fluidproject.org/browse/FLUID-4313 makes class "flc-screenNavigator-backButton fl-link-hilight" not work -->
413 <li role="menuitem"><a href="<?php echo $page['url']; ?>" <?php echo $accesskey_text; ?> class="flc-screenNavigator-backButton fl-link-hilight" title="<?php echo $page['title'];?>"><?php echo $page['title']; ?></a> </li>
415 <li role="menuitem"><a href="<?php echo $page['url']; ?>" <?php echo $accesskey_text; ?> title="<?php echo $page['title']; ?>"><?php echo $page['title']; ?></a></li>
418 <?php $accesscounter = ($accesscounter == 0 ? 11 : $accesscounter); ?>
427 <?php if ((isset($this->course_id) && $this->course_id <= 0)): ?>
428 <!-- style="margin-left:0.5em;width:99%;" -->
430 <?php if (isset($this->course_id) && $this->course_id > 0): ?>
431 <div class="sequence-links">
432 <?php if ($_SESSION["prefs"]["PREF_SHOW_NEXT_PREVIOUS_BUTTONS"]) { ?>
433 <?php if ($this->sequence_links['resume']): ?>
434 <a href="<?php echo $this->sequence_links['resume']['url']; ?>" class="previous-next" title="<?php echo _AT('resume').': '.$this->sequence_links['resume']['title']; ?>"><?php echo _AT('resume').': '.$this->sequence_links['resume']['title']; ?></a>
436 if ($this->sequence_links['previous']): ?>
437 <a href="<?php echo $this->sequence_links['previous']['url']; ?>" class="previous-next" title="<?php echo _AT('previous_topic').': '. $this->sequence_links['previous']['title']; ?>"> <?php echo _AT('previous_topic').': '. $this->sequence_links['previous']['title']; ?> </a>
439 if ($this->sequence_links['next']): ?>
440 <a href="<?php echo $this->sequence_links['next']['url']; ?>" class="previous-next" title="<?php echo _AT('next_topic').': '.$this->sequence_links['next']['title']; ?>"> <?php echo _AT('next_topic').': '.$this->sequence_links['next']['title']; ?></a>
445 </div> <!-- end sequence-links -->
449 <?php if(isset($_SESSION['course_id']) && $_SESSION['course_id'] > 0): ?>
450 <div id="hide-show-container">
451 <a id="content_link" href="javascript:void(0);"><?php echo "Course Content Navigation";//_AT("content_navigation"); ?></a>
454 <div id="results-hide-show" >
456 <div id="content-link-container" role="navigation" aria-live="assertive" class="flc-screenNavigator-navbar ">
458 <div id="content" style=" display: none; position: relative; z-index: 1;">
459 <?php $contentManager->printMainMenu(); ?>
460 <script language="javascript" type="text/javascript"></script>
466 <!-- end side menus -->
468 <div id="contentcolumn" >
471 <!-- the page title -->
472 <a name="content" title="<?php echo _AT('content'); ?>"></a>
473 <h2 class="page-title"><?php echo $this->page_title; ?></h2>
475 <?php global $msg; $msg->printAll(); $_base_href;?>
477 <!-- the sub navigation -->
478 <?php if (count($this->sub_level_pages) > 0): ?>
479 <div id="subnavlistcontainer">
480 <div id="subnavbacktopage">
481 <?php if (isset($this->back_to_page)): ?>
482 <a href="<?php echo $this->back_to_page['url']; ?>">
483 <img border="0" width="10" height="11" alt="<?php echo _AT('back_to').' '.$this->back_to_page['title']; ?>" src="<?php echo $this->base_href; ?>images/arrowicon.gif" style="float:left;"/></a>
488 <?php $num_pages = count($this->sub_level_pages); ?>
489 <?php for ($i=0; $i<$num_pages; $i++): ?>
491 <li><a href="<?php echo $this->sub_level_pages[$i]['url']; ?>"><?php echo $this->sub_level_pages[$i]['title']; ?></a></li>
493 <?php if ($i < $num_pages-1):
502 </div> <!-- end subnavlistcontainer -->
506 <?php endif; ?><!-- end header template for ipad/tablets -->