mahara-contributors team mailing list archive
-
mahara-contributors team
-
Mailing list archive
-
Message #03596
[Bug 628113] Re: Using javascript for Back link
so the back button is used in the following:
view/view.php
view/artefact.php
user/view.php
all three only display it for logged in users, and only when
microheaders is ON
The looping will happen if it came from ANY of those three pages.
I do find it a useful feature for the microview.
If the owner is the logged on user, they instead get an edit this page
button
I would make following suggestions:
- As it is a useful feature, fix it up so it doesn't loop
- also find other places where it could be useful and add it in (maybe seperate bug/feature for this)
- remove constraint of having a logged in user (ie public nonlogged in will still get back button)
- When page is editable, show both edit button and back button
Also seperate bug, will file. When a non logged in user accesses a public site page the "edit this page" is present, but when they access a public user-owned page, it doesn't appear.
Ideas? comments?
--
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
https://bugs.launchpad.net/bugs/628113
Title:
Using javascript for Back link
Status in Mahara ePortfolio:
Confirmed
Bug description:
Now we are using $_SERVER['HTTP_REFERER'] to get a previous view page.
But for example the following 2nd case, we can not go back to the Top Page.
1. Top Page > Links and Resources > Site view 001 > Back > Top Page
2. Top Page > Links and Resources > Site view 001 > Public view by user001 > Back > Site view 001 > Back > public view by user001 > Back > Site view 001
So how about changing view/view.php as below?
File: view/view.php
Line: 179
[ Before ]
if ($USER->is_logged_in() && !empty($_SERVER['HTTP_REFERER'])) {
$page = get_config('wwwroot') . 'view/view.php?id=' . $viewid . ($new ? '&new=1' : '');
if ($_SERVER['HTTP_REFERER'] != $page) {
$smarty->assign('backurl', $_SERVER['HTTP_REFERER']);
}
}
[ After ]
if ($USER->is_logged_in() && !empty($_SERVER['HTTP_REFERER'])) {
$page = get_config('wwwroot') . 'view/view.php?id=' . $viewid . ($new ? '&new=1' : '');
if ($_SERVER['HTTP_REFERER'] != $page) {
$smarty->assign('backurl', 'javascript:history.back()');
}
}
References