Author: jonathan
Date: Tue Feb 17 20:48:39 2009
New Revision: 31012
URL: http://wso2.org/svn/browse/wso2?view=rev&revision=31012

Log:
MASHUP-1111 fix.  Includes a few other minor improvements.

Modified:
   branches/mashup/java/1.5/java/modules/www/js/services.js
   branches/mashup/java/1.5/java/modules/www/search.jsp

Modified: branches/mashup/java/1.5/java/modules/www/js/services.js
URL: 
http://wso2.org/svn/browse/wso2/branches/mashup/java/1.5/java/modules/www/js/services.js?rev=31012&r1=31011&r2=31012&view=diff
==============================================================================
--- branches/mashup/java/1.5/java/modules/www/js/services.js    (original)
+++ branches/mashup/java/1.5/java/modules/www/js/services.js    Tue Feb 17 
20:48:39 2009
@@ -572,6 +572,22 @@
 };
 
 /**
+ * @description Gets a list of users registered on this server.
+ * @param {namePrefix} namePrefix to filter list of user names.
+ * @param {callback} callback User-defined callback function or object.
+ */
+wso2.mashup.services.suggestSearchPhrases = function (searchPrefix, 
searchType, callback) {
+    var callURL = mashupServerURL + "/" + "ServiceMetaDataLister" + "/" ;
+
+    var body_xml = '<req:suggestSearchPhrases 
xmlns:req="http://servicemetadatalister.coreservices.mashup.wso2.org/xsd";>\n' +
+                   ' <req:searchPrefix>' + searchPrefix + 
'</req:searchPrefix>\n' +
+                   ' <req:type>' + searchType + '</req:type>\n' +
+                   ' </req:suggestSearchPhrases>\n';
+
+    new wso2.wsf.WSRequest(callURL, "suggestSearchPhrases", body_xml, 
callback, "", wso2.mashup.services.defaultErrHandler);
+};
+
+/**
  * @description Method used to download a mashup from a remote server
  * @method downloadService
  * @public

Modified: branches/mashup/java/1.5/java/modules/www/search.jsp
URL: 
http://wso2.org/svn/browse/wso2/branches/mashup/java/1.5/java/modules/www/search.jsp?rev=31012&r1=31011&r2=31012&view=diff
==============================================================================
--- branches/mashup/java/1.5/java/modules/www/search.jsp        (original)
+++ branches/mashup/java/1.5/java/modules/www/search.jsp        Tue Feb 17 
20:48:39 2009
@@ -36,7 +36,7 @@
 <%@ page import="java.util.List" %>
 <%@ page import="java.util.ResourceBundle" %>
 
-<!--Required to keep a user logged in if 'Remember Me' option is selected-->
+<%--Required to keep a user logged in if 'Remember Me' option is selected--%>
 <%@ include file="validate_login.jsp" %>
 
 <%
@@ -342,13 +342,15 @@
                 }
                 if (results.getResultsType().equals("activity")) {
                     String action = result.getAction();
-                                        entryDescription = "";
+                    entryDescription = "";
                     entryTitle =
-                            RegistryUtils.getFullName(request, 
result.getAuthor()) + " " + action + " " +
-                            (action.equals("commented") ? "on " : "") + 
(action.equals("deleted") && result.getName().indexOf(";comments") >=0 ? "a 
comment on " : "") +
-                            mashupAuthor + "'s \"" + mashupName + "\"service";
+                            RegistryUtils.getFullName(request, 
result.getAuthor()) + " " +
+                            action + " " +
+                            (action.equals("commented") ? "on " : "") +
+                            (action.equals("deleted") && 
result.getName().indexOf(";comments") >=0 ? "a comment on " : "") +
+                            mashupAuthor + "'s \"" + mashupName + "\" service";
                     if (action.equals("rated")) {
-                        entryDescription += " <strong>" + 
result.getContentString() + "</strong> stars.";
+                        entryTitle += " " + result.getContentString() + " 
stars.";
                     } else if (action.equals("tagged")) {
                         entryTitle += " with " + result.getContentString();
                     } else if (action.equals("commented")) {
@@ -356,7 +358,7 @@
                     }
                 } else if (results.getResultsType().equals("comment")) {
                     entryTitle = RegistryUtils.getFullName(request, 
result.getAuthor()) + " commented on " +
-                            mashupAuthor + "'s " + mashupName + "service.";
+                            mashupAuthor + "'s " + mashupName + " service.";
                     entryDescription = result.getContentString();
                 } else {
                     entryTitle = mashupName + " by " + 
RegistryUtils.getFullName(request, result.getAuthor());
@@ -487,6 +489,9 @@
 
             if (namePrefix.length > 0) {
                 wso2.mashup.services.getUserNames(namePrefix, 
getUserNamesCallback);
+            } else {
+                var nameList = document.getElementById(autoSuggestField + 
"-nameList");
+                nameList.style.display = 'none';
             }
         }
 
@@ -527,6 +532,48 @@
             $(autoSuggestField + "-nameList").style.display = 'none';
         }
 
+        function suggestSearchPhrases(targetField) {
+            autoSuggestField = targetField;
+            $(targetField + '-option').value = $(targetField).value
+            var namePrefix = $(targetField).value;
+
+            if (namePrefix.length > 0) {
+                wso2.mashup.services.suggestSearchPhrases(namePrefix, 1, 
suggestSearchPhrasesCallback);
+            } else {
+                var nameList = document.getElementById(autoSuggestField + 
"-nameList");
+                nameList.style.display = 'none';
+            }
+        }
+
+        function suggestSearchPhrasesCallback() {
+            var mashupNameElement = 3;
+            var mashupAuthorElement = 1;
+            var mashupAuthorFullnameElement = 0;
+
+            var returnElementList = 
this.req.responseXML.getElementsByTagName("ns:return");
+            // Older browsers might not recognize namespaces (e.g. FF2)
+            if (returnElementList.length == 0)
+                returnElementList = 
this.req.responseXML.getElementsByTagName("return");
+            var returnElement = returnElementList[0];
+
+            var xmlBodyContent = returnElement;
+
+            var nameList = document.getElementById(autoSuggestField + 
"-nameList");
+            nameList.innerHTML = "";
+
+            var node = xmlBodyContent;
+            while (node != null) {
+                var mashupName = 
node.childNodes[mashupNameElement].firstChild.nodeValue;
+                var mashupPath = "/mashups/" + 
node.childNodes[mashupAuthorElement].firstChild.nodeValue + "/" + mashupName;
+                var mashupNameQualified = mashupName + " by " + 
node.childNodes[mashupAuthorFullnameElement].firstChild.nodeValue;
+                nameList.innerHTML += "<a href=\"javascript:assignSelected('" 
+ mashupPath + "');\">" + mashupNameQualified
+                        + "</a><br/>";
+                node = node.nextSibling;
+            }
+            nameList.innerHTML += "<img src='images/w_top_close.gif' 
alt='Close Auto Suggest' onClick='closeAutoSuggest()'/><br/>";
+            nameList.style.display = 'block';
+        }
+
         function moveToPage(pageNum) {
             $("pageNumber").value = pageNum;
             document.paginator.submit();
@@ -797,12 +844,12 @@
                 <tr>
                     <td>
                         <select id="mashup-activity" name="onmashup"
-                                onchange="if 
($('mashup-activity-option').selected) $('mashup-name').show(); else 
$('mashup-name').hide();">
+                                onchange="if 
($('mashup-name-option').selected) $('mashup-name').show(); else 
$('mashup-name').hide();">
                             <option value=""
                                     <% if (onMashup == null || 
onMashup.equals("")) { %>selected="selected"<% } %>>
                                 All Mashups
                             </option>
-                            <option id="mashup-activity-option" value="<% if 
(onMashup != null) {%><%=onMashup%><% } %>"
+                            <option id="mashup-name-option" value="<% if 
(onMashup != null) {%><%=onMashup%><% } %>"
                                     <% if (onMashup != null && 
!onMashup.equals("")) { %>selected="selected"<% } %>>
                                 Specific Mashup
                             </option>
@@ -811,11 +858,13 @@
                 </tr>
                 <tr>
                     <td>
-                        <input type="text" id="mashup-name"
-                               onkeyup="$('mashup-activity-option').value = 
$('mashup-name').value"
+                        <input type="text" id="mashup-name" autocomplete="off"
+                               onkeyup="suggestSearchPhrases('mashup-name')"
                                <% if (onMashup == null || onMashup.equals("")) 
{ %>style="display:none"
                                <% } else { %>value="<%=onMashup%>"<% } %>
-                                />
+                               />
+                        <div align="left" id="mashup-name-nameList" 
class="autosuggest"></div>
+
                     </td>
                 </tr>
             </table>
@@ -1014,7 +1063,8 @@
                 <%
             } else {
                 %>
-                    <%  }
+            <%=result.getName()%>
+        <%  }
             } else { %>
             <a 
href="mashup.jsp?author=<%=result.getAuthor()%>&mashup=<%=result.getName()%>"><%=result.getName()%></a>
         <% }

_______________________________________________
Mashup-dev mailing list
[email protected]
https://wso2.org/cgi-bin/mailman/listinfo/mashup-dev

Reply via email to