Selaa lähdekoodia

see #4874 tool announcement: sent to all message is not updated

Laurent Opprecht 12 vuotta sitten
vanhempi
commit
30bd27ac72

+ 3 - 3
main/announcements/announcements.inc.php

@@ -586,7 +586,7 @@ class AnnouncementManager  {
 		echo "</td>";
 		echo "<td>";
 
-		echo "<select name=\"selectedform[]\" size=5 style=\"width:200px\" multiple>";
+		echo "<select id=\"selectedform\" name=\"selectedform[]\" size=5 style=\"width:200px\" multiple>";
 		echo '</select>';
 
 		echo "</td>";
@@ -656,7 +656,7 @@ class AnnouncementManager  {
 		$ref_array_users	= self::get_course_users();
 
 		// we construct the form of the already selected groups / users
-		echo "<select name=\"selectedform[]\" size=\"5\" multiple style=\"width:200px\" width=\"200px\">";
+		echo "<select id=\"selectedform\" name=\"selectedform[]\" size=\"5\" multiple style=\"width:200px\" width=\"200px\">";
 		if (is_array($to_already_selected)) {
 			foreach($to_already_selected as $groupuser) {
 				list($type,$id)=explode(":",$groupuser);
@@ -843,7 +843,7 @@ class AnnouncementManager  {
             }
             $result = Javascript::tag($src);
 
-            $code = Javascript::get_lang('FieldRequired', 'Send2All', 'AddAnAttachment');
+            $code = Javascript::get_lang('FieldRequired', 'Send2All', 'AddAnAttachment', 'Everybody');
             $result .= Javascript::tag_code($code);
             return $result;
 	}

+ 4 - 12
main/announcements/announcements.php

@@ -126,14 +126,6 @@ if ((empty($originalresource) || ($originalresource!=='no')) and (!empty($action
 }
 
 $htmlHeadXtra[] = AnnouncementManager::to_javascript();
-$htmlHeadXtra[] = '<script type="text/javascript">
-function setFocus(){
-    $("#emailTitle").focus();
-}
-$(document).ready(function () {
-    setFocus();
-});
-</script>';
 
 /*	Filter user/group */
 
@@ -617,7 +609,7 @@ if ($display_form) {
 	if (empty($_SESSION['toolgroup'])) {
 		echo '	<div class="control-group">
 					<label class="control-label">'.
-						Display::return_icon('group.png', get_lang('ModifyRecipientList'), array ('align' => 'absmiddle'),ICON_SIZE_SMALL).'<a href="#" onclick="if(document.getElementById(\'recipient_list\').style.display==\'none\') document.getElementById(\'recipient_list\').style.display=\'block\'; else document.getElementById(\'recipient_list\').style.display=\'none\';">'.get_lang('SentTo').'</a>
+						Display::return_icon('group.png', get_lang('ModifyRecipientList'), array ('align' => 'absmiddle'),ICON_SIZE_SMALL).'<a href="#" onclick="toggle_sendto();">'.get_lang('SentTo').'</a>
 					</label>
 					<div class="controls">';
 		if (isset($_GET['id']) && is_array($to)) {
@@ -652,7 +644,7 @@ if ($display_form) {
 				$content_to_modify = get_lang('YourAccountIsActiveYouCanLoginAndCheckYourCourses');
 			}
 		} else {
-			echo get_lang('Everybody');
+			echo '<span id="recipient_overview">' . get_lang('Everybody') . '</span>';
 		}
 		AnnouncementManager::show_to_form($to);
 		echo '		</div>
@@ -678,8 +670,8 @@ if ($display_form) {
 			echo '<div class="control-group">
 				  <div class="controls">
 				  <input class="checkbox" type="checkbox" value="1" name="email_ann" '.$checked.'>
-				  '.get_lang('EmailOption').': '.get_lang('MyGroup').'&nbsp;&nbsp;
-				  <a href="#" onclick="if(document.getElementById(\'recipient_list\').style.display==\'none\') document.getElementById(\'recipient_list\').style.display=\'block\'; else document.getElementById(\'recipient_list\').style.display=\'none\';">'.get_lang('ModifyRecipientList').'</a>';
+				  '.get_lang('EmailOption').': <span id="recipient_overview">'.get_lang('MyGroup').'</span>
+				  <a href="#" onclick="toggle_sendto();">'.get_lang('ModifyRecipientList').'</a>';
 			      AnnouncementManager::show_to_form_group($_SESSION['toolgroup']);
 			echo '</div></div>';
 	}

+ 34 - 0
main/announcements/resources/js/main.js

@@ -1,3 +1,37 @@
+
+
+
+$(document).ready(function () {
+    $("#emailTitle").focus();
+});
+
+function toggle_sendto()
+{
+    var list = $('#recipient_list');
+    var overview = $('#recipient_overview');
+    list.toggle();
+    overview.toggle();
+    
+    var selected = $('#selectedform');
+    var content = list_box_content(selected[0])
+    content = (content == '') ? lang.Everybody : content;
+    overview.text(content);
+}
+
+function list_box_content(box)
+{
+    if(box.options.length == 0)
+    {
+        return '';
+    }
+    var values = [];
+    var i;
+    for (i = 0; i < box.options.length; i++) {
+        values[i] = box.options[i].text;
+    }
+    return values.join(', ');
+}
+
 // Begin javascript menu swapper
 
 function move(fbox, tbox) {