Browse Source

Fixed link target in links edition and links list

Yannick Warnier 15 years ago
parent
commit
d8ae62531f
2 changed files with 27 additions and 18 deletions
  1. 12 6
      main/link/link.php
  2. 15 12
      main/link/linkfunctions.php

+ 12 - 6
main/link/link.php

@@ -16,6 +16,7 @@
  * @author René Haentjens, added CSV file import (October 2004)
  * @package chamilo.link
  * @todo improve organisation, tables should come from database library
+ * @todo Needs serious rewriting here. This doesn't make sense
  */
 
 /*	INIT SECTION */
@@ -81,6 +82,7 @@ $submit_link = isset($_REQUEST['submitLink']);
 $action = !empty($_REQUEST['action']) ? $_REQUEST['action'] : '';
 $category_title = !empty($_REQUEST['category_title']) ? $_REQUEST['category_title'] : '';
 $submit_category = isset($_POST['submitCategory']);
+$target_link = !empty($_REQUEST['target_link']) ? $_REQUEST['target_link'] : '_self';
 
 $nameTools = get_lang('Links');
 
@@ -275,12 +277,16 @@ if (api_is_allowed_to_edit(null, true) && isset($_GET['action'])) {
 						'.get_lang('AddTargetOfLinkOnHomepage').'
 					</div>
 					<div class="formw" >
-						<select  name="target_link" id="target_link">
-						<option value="_self">_self</option>
-						<option value="_blank">_blank</option>
-						<option value="_parent">_parent</option>
-						<option value="_top">_top</option>
-						</select>
+						<select  name="target_link" id="target_link">';
+        $targets = array('_self'=>get_lang('LinkOpenSelf'),'_blank'=>get_lang('LinkOpenBlank'),'_parent'=>get_lang('LinkOpenParent'),'_top'=>get_lang('LinkOpenTop'));
+		foreach ($targets as $target_id => $target) {
+			$selected = '';
+			if ($target_id == $target_link) { 
+				$selected = ' selected="selected"';
+			}
+			echo '    	<option value="'.$target_id.'"'.$selected.'>'.$target.'</option> ';
+		}
+		echo '        </select>
 					</div>
 				</div>';
 

+ 15 - 12
main/link/linkfunctions.php

@@ -293,6 +293,7 @@ function editlinkcategory($type) {
 	global $description;
 	global $category_title;
 	global $onhomepage;
+	global $target_link;
 
 	$tbl_link 		= Database :: get_course_table(TABLE_LINK);
 	$tbl_categories = Database :: get_course_table(TABLE_LINK_CATEGORY);
@@ -300,18 +301,20 @@ function editlinkcategory($type) {
 	if ($type == 'link') {
 
 		// This is used to populate the link-form with the info found in the database
-		$sql = "SELECT * FROM ".$tbl_link." WHERE id='".$_GET['id']."'";
-		$result = Database::query($sql);
-		if ($myrow = Database::fetch_array($result)) {
-			$urllink = $myrow['url'];
-			$title = $myrow['title'];
-			$description = $myrow['description'];
-			$category = $myrow['category_id'];
-			if ($myrow['on_homepage'] != 0) {
-				$onhomepage = 'checked';
+		if (!empty($_GET['id'])) {
+			$sql = "SELECT * FROM ".$tbl_link." WHERE id='".intval($_GET['id'])."'";
+			$result = Database::query($sql);
+			if ($myrow = Database::fetch_array($result)) {
+				$urllink = $myrow['url'];
+				$title = $myrow['title'];
+				$description = $myrow['description'];
+				$category = $myrow['category_id'];
+				if ($myrow['on_homepage'] != 0) {
+					$onhomepage = 'checked';
+				}
+				$target_link = $myrow['target'];
 			}
 		}
-
 		// This is used to put the modified info of the link-form into the database
 		if ($_POST['submitLink']) {
 
@@ -512,10 +515,10 @@ function showlinksofcategory($catid) {
 
 		$myrow[3] = text_filter($myrow[3]);
 		if ($myrow['visibility'] == '1') {
-			echo '<tr class="', $css_class, '"><td align="center" valign="middle" width="15"><a href="link_goto.php?', api_get_cidreq(), '&amp;link_id=', $myrow[0], '&amp;link_url=', urlencode($myrow[1]), '" target="_blank"><img src="../../main/img/file_html.gif" border="0" alt="', get_lang('Link'), '"/></a></td><td width="80%" valign="top"><a href="link_goto.php?', api_get_cidreq(), '&amp;link_id=', $myrow[0], '&amp;link_url=', urlencode($myrow[1]), '" target="_blank">', Security::remove_XSS($myrow[2]), '</a>', $session_img, '<br />', $myrow[3];
+			echo '<tr class="', $css_class, '"><td align="center" valign="middle" width="15"><a href="link_goto.php?', api_get_cidreq(), '&amp;link_id=', $myrow[0], '&amp;link_url=', urlencode($myrow[1]), '" target="_blank"><img src="../../main/img/file_html.gif" border="0" alt="', get_lang('Link'), '"/></a></td><td width="80%" valign="top"><a href="link_goto.php?', api_get_cidreq(), '&amp;link_id=', $myrow[0], '&amp;link_url=', urlencode($myrow[1]), '" target="',$myrow['target'],'">', Security::remove_XSS($myrow[2]), '</a>', $session_img, '<br />', $myrow[3];
 		} else {
 			if (api_is_allowed_to_edit(null, true)) {
-				echo '<tr class="', $css_class, '"><td align="center" valign="middle" width="15"><a href="link_goto.php?', api_get_cidreq(), '&amp;link_id=', $myrow[0], "&amp;link_url=", urlencode($myrow[1]), '" target="_blank" class="invisible">', Display::return_icon('file_html_na.gif', get_lang('Link')), '</a></td><td width="80%" valign="top"><a href="link_goto.php?', api_get_cidreq(), '&amp;link_id=', $myrow[0], '&amp;link_url=', urlencode($myrow[1]), '" target="_blank"  class="invisible">', Security::remove_XSS($myrow[2]), "</a>\n", $session_img, '<br />', $myrow[3];
+				echo '<tr class="', $css_class, '"><td align="center" valign="middle" width="15"><a href="link_goto.php?', api_get_cidreq(), '&amp;link_id=', $myrow[0], "&amp;link_url=", urlencode($myrow[1]), '" target="_blank" class="invisible">', Display::return_icon('file_html_na.gif', get_lang('Link')), '</a></td><td width="80%" valign="top"><a href="link_goto.php?', api_get_cidreq(), '&amp;link_id=', $myrow[0], '&amp;link_url=', urlencode($myrow[1]), '" target="',$myrow['target'],'"  class="invisible">', Security::remove_XSS($myrow[2]), "</a>\n", $session_img, '<br />', $myrow[3];
 			}
 		}