/// Directory to browse, inside repository. Starts on ''.
$directory = optional_param ('directory', '', PARAM_PATH);
+ $choose = optional_param('choose', 'id_reference_value', PARAM_FILE);
/// Get the language strings needed
$strdeployall = get_string('deployall','resource');
/// Prints the toolbar.
echo '<div id="ims_toolbar" style="padding:10px;">';
- ims_print_crumbtrail($directory);
+ ims_print_crumbtrail($directory, $choose);
/// If admin, add extra buttons - redeploy & help.
if (has_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM, SITEID))) {
- echo " | (<a href=\"repository_deploy.php?file=$directory&all=force\">$strdeployall</a>) ";
+ echo " | (<a href=\"repository_deploy.php?file=$directory&all=force\">$strdeployall</a>) ";
helpbutton("deploy", get_string("deployall", "resource"), "resource", true);
}
echo '</div>';
foreach ($items as $item) {
if ($item->type == 'deployed') {
- echo "<li><img src=\"images/ims.gif\" alt=\"IMS CP Package\" /> $item->name (<a href=\"javascript:
- opener.document.forms['form'].reference.value = '#$item->path';
- opener.document.forms['form'].name.value = '$item->name';
- window.close();
- \">$strchoose</a>) (<a href=\"preview.php?directory=$item->path\">$strpreview</a>)</li>\n";
+ ?>
+ <script type="text/javascript">
+ //<![CDATA[
+ function set_value(txt) {
+ opener.document.getElementById('<?php echo $choose ?>').value = txt;
+ window.close();
+ }
+ //]]>
+ </script>
+ <?php
+ echo "<li><img src=\"images/ims.gif\" alt=\"IMS CP Package\" /> $item->name" .
+ "(<a onclick=\"return set_value('#$item->path')\" href=\"#\">$strchoose</a>) " .
+ "(<a href=\"preview.php?directory=$item->path&choose=$choose\">$strpreview</a>)</li>\n";
}
else if ($item->type == 'not deployed') {
/// Only displays non-deployed IMS CP's if admin user.
}
}
else if ($item->type == 'directory') {
- echo "<li><img src=\"images/dir.gif\" alt=\"IMS CP Package\" /> <a href=\"?directory=$item->path\">$item->name</a></li>\n";
+ echo "<li><img src=\"images/dir.gif\" alt=\"IMS CP Package\" /> <a href=\"?directory=$item->path&choose=$choose\">$item->name</a></li>\n";
}
}
}
exit;
/// Generates the crumbtrial from $directory. Just splits up on '/'.
- function ims_print_crumbtrail($directory) {
+ function ims_print_crumbtrail($directory, $choose='') {
$strrepository = get_string('repository','resource');
$arr = explode('/', $directory);
return;
}
else {
- $output = "<a href=\"?directory=\">$strrepository</a> » ";
+ $output = "<a href=\"?directory=&choose=$choose\">$strrepository</a> » ";
}
$itemdir = '';
foreach ($arr as $item) {
if ($item == '') continue;
$itemdir .= '/'.$item;
- $output .= "<a href=\"?directory=$itemdir\">$item</a> » ";
+ $output .= "<a href=\"?directory=$itemdir&choose=$choose\">$item</a> » ";
}
$output .= $last;
echo $output;
require_once('repository_config.php');
$directory = required_param ('directory', PARAM_PATH);
+ $choose = optional_param ('choose', 'id_reference_value', PARAM_FILE);
$page = optional_param ('page', 0, PARAM_INT);
/// Calculate the path of the IMS CP to be displayed
/// content - this produces everything else
/// adds side navigation bar if needed. must also adjust width of iframe to accomodate
- echo "<div id=\"ims-menudiv\">"; preview_buttons($directory, $items['title']); echo preview_ims_generate_toc($items, $directory, 0, $page); echo "</div>";
+ echo "<div id=\"ims-menudiv\">";
+ preview_buttons($directory, $items['title'], $choose);
+ echo preview_ims_generate_toc($items, $directory, 0, $page); echo "</div>";
$fullurl = "$CFG->repositorywebroot/$directory/".$items[$page]->href;
/// prints iframe filled with $fullurl ;width:".$iframewidth." missing also height=\"420px\"
return $contents;
}
- function preview_buttons($directory, $name) {
+ function preview_buttons($directory, $name, $choose='') {
$strchoose = get_string('choose','resource');
$strback = get_string('back','resource');
$arr = explode('/', $directory);
array_pop($arr);
$directory = implode('/', $arr);
- echo "<div id=\"ims_preview_buttons\" style=\"padding:10px;\">
- (<a href='finder.php?directory=$directory'>$strback</a>)
- (<a href=\"javascript:
- opener.document.forms['form'].reference.value = '#$path';
- opener.document.forms['form'].name.value = '$name';
- window.close();
- \">$strchoose</a>)</div>";
+ ?>
+ <script type="text/javascript">
+ //<![CDATA[
+ function set_value(txt) {
+ opener.document.getElementById('<?php echo $choose ?>').value = txt;
+ window.close();
+ }
+ //]]>
+ </script>
+ <?php
+ echo "<div id=\"ims_preview_buttons\" style=\"padding:10px;\">".
+ "(<a href=\"finder.php?directory=$directory&choose=$choose\">$strback</a>) ".
+ "(<a onclick=\"return set_value('#$path')\" href=\"#\">$strchoose</a>)</div>";
}
?>