<?php

require_once "lib/Wix.php";
require_once "lib/Logic.php";
$wix = new Wix();
$instance = $wix->getDecodedInstance();
// LOAD POSTS
$posts = new Posts();
$posts->loadList();
// LOAD SETTINGS
$widgetSettings = new WidgetSettings($instance ? $instance['instanceId'] : "sample-instance");
$widgetSettings->readSettings();
?>

<!-- POSTS LIST -->
<div style="width: <?php 
print getWixWidth();
?>
">
    <div style="padding: 10px">
        <?php 
foreach ($posts as $post) {
    ?>

        <ul>
            <li>
                <a href="<?php 
    echo $wix->getSectionUrl();
    ?>
/post.show.php?title=<?php 
    echo $post->getTitle();
        $table->setColAttributes(0, array('align' => 'left'));
        $table->setColAttributes(1, array('align' => 'left'));
        $table->setColAttributes(2, array('align' => 'left'));
        $table->setColAttributes(7, array('align' => 'right'));
        $table->setColAttributes(8, array('align' => 'center'));
        $table->setColAttributes(9, array('align' => 'center'));
        $table->display();
    } else {
        echo get_lang('NoUsersInCourseTracking');
    }
    $ScormService = cloud_getScormEngineService();
    $rptService = $ScormService->getReportingService();
    $reportageAuth = $rptService->GetReportageAuth('NONAV', false);
    $tagSettings = new TagSettings();
    $tagSettings->addTag("course", $_REQUEST['cidReq']);
    $sumWidgetSettings = new WidgetSettings(null, $tagSettings, null);
    $sumWidgetSettings->setShowTitle(true);
    $sumWidgetSettings->setScriptBased(false);
    $sumWidgetSettings->setEmbedded(true);
    $sumWidgetSettings->setIframe(true);
    echo '<div class="row"><div class="form_header">SCORM CLOUD Training Summary</div></div>';
    echo "<iframe id=\"allSummaryFrame\" style=\"width:100%;height:400px;\" src=\"" . $rptService->GetWidgetUrl($reportageAuth, 'allSummary', $sumWidgetSettings) . "\"  scrolling=\"no\" frameborder='0'></iframe>";
    // send the csv file if asked
    if ($export_csv) {
        $csv_content[] = array(get_lang('OfficialCode'), get_lang('LastName'), get_lang('FirstName'), get_lang('TrainingTime'), get_lang('CourseProgress'), get_lang('Score'), get_lang('Student_publication'), get_lang('Messages'), get_lang('FirstLogin'), get_lang('LatestLogin'));
        ob_end_clean();
        Export::export_table_csv($csv_content, 'reporting_student_list');
    }
}
?>
</table>
echo '<div class="row">
		<div class="form_header">Course Summary Report</div>
</div>';
$tagSettings = new TagSettings();
$tagSettings->addTag("course", $cidReq);
$sumWidgetSettings = new WidgetSettings(null, $tagSettings, null);
$sumWidgetSettings->setCourseId($cloud_courseId);
$sumWidgetSettings->setShowTitle(true);
$sumWidgetSettings->setScriptBased(false);
$sumWidgetSettings->setEmbedded(true);
$sumWidgetSettings->setIframe(true);
echo "<iframe id=\"UserSummaryFrame\" src=\"" . $rptService->GetWidgetUrl($reportageAuth, 'courseSummary', $sumWidgetSettings) . "\"  scrolling=\"no\" frameborder='0'></iframe>";
echo '<div class="detailsWrapper first">';
echo '<div class="row"><div class="form_header">Learners</div></div>';
echo '<div id="courseLearners" class="detailsDiv">Loading...</div>';
$widgetSettings = new WidgetSettings(null, $tagSettings, null);
$widgetSettings->setCourseId($cloud_courseId);
$widgetSettings->setShowTitle(false);
$widgetSettings->setScriptBased(true);
$widgetSettings->setEmbedded(true);
$widgetSettings->setDivname('courseLearners');
echo '<script type="text/javascript">
        loadScript("' . $rptService->GetWidgetUrl($reportageAuth, 'learnerRegistration', $widgetSettings) . '");
    </script>';
echo '<div class="row"><div class="form_header">Learner Comments</div></div>';
echo '<div id="courseComments" class="detailsDiv">Loading...</div>';
$widgetSettings->setDivname('courseComments');
echo '<script type="text/javascript">
        loadScript("' . $rptService->GetWidgetUrl($reportageAuth, 'courseComments', $widgetSettings) . '");
    </script>';
echo '</div>';
    _e("View Full Results Report", "scormcloud");
    ?>
</a></h3>
<div class='inside'><?php 
    echo "<script type='text/javascript' src='http://cloud.scorm.com/Reportage/scripts/reportage.combined.js'></script>";
    echo "<link rel='stylesheet' href='http://cloud.scorm.com/Reportage/css/reportage.combined.css' type='text/css' media='screen' />";
    //Check for some defaults to set the form up
    $rptService = $ScormService->getReportingService();
    $rptAuth = $rptService->GetReportageAuth('FREENAV', true);
    //  AppId Summary Report
    $dateRangeStart = '2009-01-01';
    $dateRangeEnd = date("Y-m-d");
    $dateOptions = new DateRangeSettings(null, $dateRangeStart, $dateRangeEnd, null);
    $tagSettings = new TagSettings();
    $tagSettings->addTag('registration', $inviteId);
    $sumWidgetSettings = new WidgetSettings($dateOptions, $tagSettings);
    $sumWidgetSettings->setShowTitle(true);
    $sumWidgetSettings->setScriptBased(true);
    $sumWidgetSettings->setEmbedded(true);
    $sumWidgetSettings->setVertical(false);
    $sumWidgetSettings->setDivname('TotalSummary');
    $dateRelavance = $rptService->GetReportageDate();
    $summaryUrl = $rptService->GetWidgetUrl($rptAuth, 'allSummary', $sumWidgetSettings);
    echo "<span class='dateRelevance'>" . __("Data current as of", "scormcloud") . " <span class='localizeRecentDate' utcdate='" . date("d M Y H:i:s", strtotime($dateRelavance)) . "'></span></span>";
    echo '<table class="reportageTable"><tr class="summary"><td colspan="2">';
    echo '<div id="TotalSummary">' . __("Loading Training Summary...", "scormcloud") . '</div>';
    echo '<br></td></tr></table>';
    ?>
 <script type="text/javascript">
	jQuery(document).ready(function(){
        loadScript("<?php 
 $dateOptions = new DateRangeSettings(null, $dateRangeStart, $dateRangeEnd, null);
 $tagSettings = new TagSettings();
 $tagSettings->addTag('registration', $GLOBALS['blog_id']);
 $sumWidgetSettings = new WidgetSettings($dateOptions, $tagSettings);
 $sumWidgetSettings->setShowTitle(true);
 $sumWidgetSettings->setScriptBased(true);
 $sumWidgetSettings->setEmbedded(true);
 $sumWidgetSettings->setVertical(false);
 $sumWidgetSettings->setDivname('TotalSummary');
 $coursesWidgetSettings = new WidgetSettings($dateOptions, $tagSettings);
 $coursesWidgetSettings->setShowTitle(true);
 $coursesWidgetSettings->setScriptBased(true);
 $coursesWidgetSettings->setEmbedded(true);
 $coursesWidgetSettings->setExpand(true);
 $coursesWidgetSettings->setDivname('CourseListDiv');
 $learnersWidgetSettings = new WidgetSettings($dateOptions, $tagSettings);
 $learnersWidgetSettings->setShowTitle(true);
 $learnersWidgetSettings->setScriptBased(true);
 $learnersWidgetSettings->setEmbedded(true);
 $learnersWidgetSettings->setExpand(true);
 $learnersWidgetSettings->setDivname('LearnersListDiv');
 $summaryUrl = $rptService->GetWidgetUrl($rptAuth, 'allSummary', $sumWidgetSettings);
 $coursesUrl = $rptService->GetWidgetUrl($rptAuth, 'courseRegistration', $coursesWidgetSettings);
 $learnersUrl = $rptService->GetWidgetUrl($rptAuth, 'learnerRegistration', $learnersWidgetSettings);
 $dateRelavance = $rptService->GetReportageDate();
 echo "<div class='meta-box-sortables'>";
 echo "<div class='reportageWrapper postbox'>";
 echo "<div title='" . __("Click to toggle", "scormcloud") . "' class='handlediv'><br></div><h3 class='hndle'>" . __("Overall Reportage Summary", "scormcloud");
 echo "</h3>";
 echo "<div class='inside'>";
 echo "<span class='dateRelevance'>" . __("Data current as of ", "scormcloud") . "<span class='localizeRecentDate' utcdate='" . date("d M Y H:i:s", strtotime($dateRelavance)) . "'></span></span>";
<?php

require_once "lib/Wix.php";
require_once "lib/Logic.php";
$wix = new Wix();
$instance = $wix->getDecodedInstance();
// LOAD SETTINGS
$instanceId = $instance ? $instance['instanceId'] : "sample-instance";
$settings = new Settings($instanceId);
$widgetSettings = new WidgetSettings($instanceId);
// READ SETTINGS
$settings->readSettings();
$widgetSettings->readSettings();
// CHECK IF POSTED CHANGES
if ($_SERVER['REQUEST_METHOD'] == "POST") {
    $postedSectionSettings = isset($_POST['section']) ? $_POST['section'] : array();
    $postedWidgetSettings = isset($_POST['widget']) ? $_POST['widget'] : array();
    // update function, this will update the settings for &$settings with $arr.
    $postedSettingsUpdate = function (array $arr, &$settings) {
        $postedSettingsCheckboxs = array("withImages", "withDescription", "withPostedBy");
        // the checkbox input name in the html
        foreach ($postedSettingsCheckboxs as $key) {
            $settings->setSetting($key, false);
            // clean checkboxs values
        }
        foreach ($arr as $key => $value) {
            if (in_array($key, $postedSettingsCheckboxs)) {
                // checkbox support
                if ($value == "on") {
                    $value = true;
                } else {
 /**
  * Show tracking
  */
 function showTrackingMain()
 {
     global $tpl, $ilias, $ScormCloudService;
     $userId = $ilias->account->getId();
     $pkgId = $this->object->getId();
     $regs = ilObjScormCloudReg::GetRegistrationsForPackageId($pkgId);
     if (!empty($_SERVER['HTTPS'])) {
         $currentUrl = "https://";
     } else {
         $currentUrl = "http://";
     }
     $currentUrl .= $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"];
     $trackingTable = '<table class="fullwidth">' . '<tr class="tbltitle">' . '<th class="std" colspan="8">Tracking Items</th>' . '</tr>' . '<tr class="tblheader">' . '<th class="tblheader,std" nowrap="nowrap">Name</th>' . '<th class="tblheader,std" nowrap="nowrap">Completion</th>' . '<th class="tblheader,std" nowrap="nowrap">Satisfaction</th>' . '<th class="tblheader,std" nowrap="nowrap">Total Time</th>' . '<th class="tblheader,std" nowrap="nowrap">Score</th>' . '<th class="tblheader,std" nowrap="nowrap">Last Access</th>' . '<th class="tblheader,std" nowrap="nowrap">Attempts</th>' . '<th class="tblheader,std" nowrap="nowrap">Version</th>' . '</tr>';
     foreach ($regs as $r) {
         $userObj = new ilObjUser($r->getUserId());
         $trackingTable .= '<tr class="tblrow1">' . '<td class="std"><a href="' . $currentUrl . '&regId=' . $r->getPK() . '">' . $userObj->getLastName() . ', ' . $userObj->getFirstName() . '</a></td>' . '<td class="std">' . ucfirst($r->getCompletion()) . '</td>' . '<td class="std">' . ucfirst($r->getSatisfaction()) . '</td>' . '<td class="std">' . $this->formatSeconds($r->getTotalTime()) . '</td>' . '<td class="std">' . ($r->getScore() == SCORE_UNKNOWN ? "Unknown" : ucfirst($r->getScore())) . '</td>' . '<td class="std">' . $r->getLastAccess() . '</td>' . '<td class="std">' . $r->getAttemptCount() . '</td>' . '<td class="std">' . $r->getVersion() . '</td>' . '</tr>';
     }
     $trackingTable .= '</table>';
     $tpl->addJavaScript("./Customizing/global/plugins/Services/Repository/RepositoryObject/ScormCloud/tracking/jquery.js");
     $tpl->addJavaScript("http://cloud.scorm.com/Reportage/scripts/reportage.combined.nojquery.js");
     // Reportage Report for all learners taking this course
     $rptService = $ScormCloudService->getReportingService();
     $rptAuth = $rptService->GetReportageAuth('FREENAV', true);
     $summaryWidgetSettings = new WidgetSettings();
     $summaryWidgetSettings->setShowTitle(true);
     $summaryWidgetSettings->setScriptBased(true);
     $summaryWidgetSettings->setEmbedded(true);
     $summaryWidgetSettings->setExpand(true);
     $summaryWidgetSettings->setDivname('summary');
     $summaryWidgetSettings->setCourseId($pkgId);
     $learnersWidgetSettings = new WidgetSettings();
     $learnersWidgetSettings->setShowTitle(true);
     $learnersWidgetSettings->setScriptBased(true);
     $learnersWidgetSettings->setEmbedded(true);
     $learnersWidgetSettings->setExpand(true);
     $learnersWidgetSettings->setDivname('learners');
     $learnersWidgetSettings->setCourseId($pkgId);
     $activitiesWidgetSettings = new WidgetSettings();
     $activitiesWidgetSettings->setShowTitle(true);
     $activitiesWidgetSettings->setScriptBased(true);
     $activitiesWidgetSettings->setEmbedded(true);
     $activitiesWidgetSettings->setExpand(true);
     $activitiesWidgetSettings->setDivname('activities');
     $activitiesWidgetSettings->setCourseId($pkgId);
     $commentsWidgetSettings = new WidgetSettings();
     $commentsWidgetSettings->setShowTitle(true);
     $commentsWidgetSettings->setScriptBased(true);
     $commentsWidgetSettings->setEmbedded(true);
     $commentsWidgetSettings->setExpand(true);
     $commentsWidgetSettings->setDivname('comments');
     $commentsWidgetSettings->setCourseId($pkgId);
     $interactionsWidgetSettings = new WidgetSettings();
     $interactionsWidgetSettings->setShowTitle(true);
     $interactionsWidgetSettings->setScriptBased(true);
     $interactionsWidgetSettings->setEmbedded(true);
     $interactionsWidgetSettings->setExpand(true);
     $interactionsWidgetSettings->setDivname('interactions');
     $interactionsWidgetSettings->setCourseId($pkgId);
     $summaryUrl = $rptService->GetWidgetUrl($rptAuth, 'courseSummary', $summaryWidgetSettings);
     $learnersUrl = $rptService->GetWidgetUrl($rptAuth, 'learnerRegistration', $learnersWidgetSettings);
     $activitiesUrl = $rptService->GetWidgetUrl($rptAuth, 'courseActivities', $activitiesWidgetSettings);
     $commentsUrl = $rptService->GetWidgetUrl($rptAuth, 'courseComments', $commentsWidgetSettings);
     $interactionsUrl = $rptService->GetWidgetUrl($rptAuth, 'courseInteractionsShort', $interactionsWidgetSettings);
     $reportageRpt = "<table cellspacing=0 cellpadding=0><tr><td colspan=2><div id='summary'>Loading...</div></td></tr>\n";
     $reportageRpt .= "<tr><td valign='top'><div id='learners'></div</td>\n";
     $reportageRpt .= "<td valign='top'><div id='activities'></div></td></tr>\n";
     $reportageRpt .= "<tr><td valign='top'><div id='comments'></div></td>\n";
     $reportageRpt .= "<td valign='top'><div id='interactions'></div></td></tr></table>\n";
     $reportageRpt .= '<script type="text/javascript">';
     $reportageRpt .= '$(document).ready(function(){';
     $reportageRpt .= '	loadScript("' . $summaryUrl . '");';
     $reportageRpt .= '	loadScript("' . $learnersUrl . '");';
     $reportageRpt .= '	loadScript("' . $activitiesUrl . '");';
     $reportageRpt .= '	loadScript("' . $commentsUrl . '");';
     $reportageRpt .= '	loadScript("' . $interactionsUrl . '");';
     $reportageRpt .= '});';
     $reportageRpt .= '</script>';
     $stylesheet = $baseUrl . "Customizing/global/plugins/Services/Repository/RepositoryObject/ScormCloud/tracking/reportage.css";
     $reportageRpt .= '<link rel="stylesheet" type="text/css" href="' . $stylesheet . '" />';
     $trackingTable .= $reportageRpt;
     $tpl->setContent($reportageRpt);
     //$tpl->setContent($trackingTable);
 }