[jboss-svn-commits] JBL Code SVN: r5420 - in labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme: . gwt/client services

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Aug 2 17:58:33 EDT 2006


Author: szimano
Date: 2006-08-02 17:58:31 -0400 (Wed, 02 Aug 2006)
New Revision: 5420

Modified:
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/TagMeServlet.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/AddTagsClickListener.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/AddTagsPanel.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeShowPopupListener.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingService.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingServiceAsync.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/ShotokuTaggingService.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/TagMeTagger.java
Log:
tagme mockup integration


Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/TagMeServlet.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/TagMeServlet.java	2006-08-02 20:41:14 UTC (rev 5419)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/TagMeServlet.java	2006-08-02 21:58:31 UTC (rev 5420)
@@ -145,14 +145,14 @@
 		return vect;
 	}
 
-	public Vector getAllTags(String resourceId, String clas) {
+	public Vector getAllTags(String user, String resourceId, String clas) {
 		Vector vect = null;
 
 		try {
 			TagMeTagger tagger = (TagMeTagger) Class.forName(clas)
 					.newInstance();
 
-			vect = tagger.getAllTags(resourceId);
+			vect = tagger.getAllTags(user, resourceId);
 		} catch (InstantiationException e) {
 			// TODO Auto-generated catch block
 			e.printStackTrace();

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/AddTagsClickListener.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/AddTagsClickListener.java	2006-08-02 20:41:14 UTC (rev 5419)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/AddTagsClickListener.java	2006-08-02 21:58:31 UTC (rev 5420)
@@ -89,7 +89,7 @@
 
 		AsyncCallback callback = new AsyncCallback() {
 			public void onSuccess(Object result) {
-				button.setEnabled(true);
+				enableButton(button);
 				parent.refreshTags();
 
 				for (int i = 0; i < textBoxes.size(); i++) {
@@ -101,12 +101,13 @@
 
 			public void onFailure(Throwable caught) {
 				Window
-						.alert("Please fill in at least one tag or check at least one suggestion (if available)");
+						.alert("ERROR. You are trying to add existing tag or you haven't entered/selected any.");
+				enableButton(button);
 				parent.stopProgressAnim("Error while adding tags");
 			}
 		};
 
-		button.setEnabled(false);
+		disableButton(button);
 
 		String tags = "";
 		String descs = "";
@@ -163,4 +164,14 @@
 
 	}
 
+	public static void enableButton(Button b) {
+		b.setEnabled(true);
+		b.setStyleName("button");
+	}
+	
+	public static void disableButton(Button b) {
+		b.setEnabled(false);
+		b.setStyleName("buttonNotEnabled");
+	}
+
 }

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/AddTagsPanel.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/AddTagsPanel.java	2006-08-02 20:41:14 UTC (rev 5419)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/AddTagsPanel.java	2006-08-02 21:58:31 UTC (rev 5420)
@@ -23,7 +23,7 @@
 import com.google.gwt.user.client.ui.Widget;
 
 public class AddTagsPanel extends VerticalPanel {
-	
+
 	private static final int ADD_TAG_BOXES_NUMBER = 1;
 
 	private String path;
@@ -105,7 +105,8 @@
 
 		FlexTable boxesAndDesc = new FlexTable();
 
-		boxesAndDesc.setWidget(0, 0, new Label("All tags for this page"));
+		boxesAndDesc.setWidget(0, 0, new Label(
+				"All tags for this page (excluding yours)"));
 		boxesAndDesc.setWidget(1, 0, allTagsBox);
 		boxesAndDesc.setWidget(0, 1, new Label(
 				"Suggested tags from similar content"));
@@ -140,9 +141,10 @@
 						descBoxes, info, suggBox, allTagsBox, parent, website));
 		saveBtn.setStyleName("button");
 		customs.add(saveBtn);
-		
-		customs.setCellVerticalAlignment(saveBtn, HasVerticalAlignment.ALIGN_BOTTOM);
 
+		customs.setCellVerticalAlignment(saveBtn,
+				HasVerticalAlignment.ALIGN_BOTTOM);
+
 		LabsSimplePanel outlinePanel = new LabsSimplePanel();
 
 		outlinePanel.add(panel);
@@ -155,7 +157,7 @@
 
 	public void clearMyTags() {
 		myTagsTable.clear();
-		currentRow  = 1;
+		currentRow = 1;
 
 		myTagsTable.setWidget(0, 0, new Label("Tag Name"));
 		myTagsTable.getCellFormatter().setStyleName(0, 0, "tagmetable-header");
@@ -173,6 +175,9 @@
 		im.addClickListener(new DeleteTagClickListener(user, tagName, path,
 				parent, clas));
 
+		DOM.setAttribute(im.getElement(), "alt", "Delete");
+		DOM.setAttribute(im.getElement(), "title", "Delete tag: " + tagName);
+		
 		int row = currentRow;
 
 		myTagsTable.setWidget(row, 0, new Label(tagName));
@@ -199,8 +204,8 @@
 						row,
 						((row % 2 == 0) ? "tagmetable-rowgrey"
 								: "tagmetable-rowwhite"));
-		
-		currentRow ++;
+
+		currentRow++;
 	}
 
 	public void refreshSugestions() {
@@ -271,7 +276,7 @@
 		};
 
 		// call AJAX methos, after that callback is going to be executed
-		tagging.getAllTags(path, clas, callback);
+		tagging.getAllTags(user, path, clas, callback);
 	}
 
 	public void refreshTags() {

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeShowPopupListener.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeShowPopupListener.java	2006-08-02 20:41:14 UTC (rev 5419)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeShowPopupListener.java	2006-08-02 21:58:31 UTC (rev 5420)
@@ -161,9 +161,12 @@
 
 		tabs.selectTab(0);
 
-		dialog.add(tabs);
+		LabsSimplePanel mainPanel = new LabsSimplePanel();
+		
+		mainPanel.add(tabs);
+		dialog.add(mainPanel);
 
-		dialog.setStyleName(TAGME_STYLE);
+		mainPanel.setStyleName(TAGME_STYLE);
 
 		if (closeDialogButton == null) {
 			closeDialogButton = new Image("/tagme-servlet/images/closebutton.gif");
@@ -186,7 +189,10 @@
 				DOM.getAbsoluteTop(parentButton.getElement()));
 
 		dialog.show();
-
+		
+		DOM.setAttribute(closeDialogButton.getElement(), "alt", "Close");
+		DOM.setAttribute(closeDialogButton.getElement(), "title", "Close TagMe window");
+		
 		new DivPanel(DOM.getElementById("controlsdiv")).add(closeDialogButton);
 		refreshTags();
 

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingService.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingService.java	2006-08-02 20:41:14 UTC (rev 5419)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingService.java	2006-08-02 21:58:31 UTC (rev 5420)
@@ -47,7 +47,7 @@
 	
 	public Vector getSugestions(String path, String clas);
 	
-	public Vector getAllTags(String resourceId, String clas);
+	public Vector getAllTags(String user, String resourceId, String clas);
 	
 	public Vector search(String tags, String author, String keyword, String clas);
 	

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingServiceAsync.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingServiceAsync.java	2006-08-02 20:41:14 UTC (rev 5419)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingServiceAsync.java	2006-08-02 21:58:31 UTC (rev 5420)
@@ -41,7 +41,7 @@
 
 	public void getSugestions(String path, String clas, AsyncCallback callback);
 	
-	public void getAllTags(String resourceId, String clas, AsyncCallback callback);
+	public void getAllTags(String user, String resourceId, String clas, AsyncCallback callback);
 
 	public void search(String tags, String author, String keyword, String clas, AsyncCallback callback);
 	

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/ShotokuTaggingService.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/ShotokuTaggingService.java	2006-08-02 20:41:14 UTC (rev 5419)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/ShotokuTaggingService.java	2006-08-02 21:58:31 UTC (rev 5420)
@@ -25,7 +25,9 @@
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.Date;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Set;
 import java.util.Vector;
 
 import org.jboss.labs.tagme.gwt.client.AddTagsClickListener;
@@ -142,7 +144,22 @@
 	public void addTag(String user, String path, String tag, String desc,
 			boolean website) {
 		log.debug("Adding tag: " + tag + " for node: " + path);
+
 		try {
+			List<Tag> currentTags = service.getTags(tag, user);
+
+			for (Tag currentTag : currentTags) {
+				if (currentTag.getResourceId().equals(path)) {
+					// that tag already exists - throw exception
+					throw new RuntimeException("Tag: " + tag + " for user: "
+							+ user + " already exists on this content");
+				}
+			}
+		} catch (TagGetException e1) {
+			throw new RuntimeException("Problems with shotoku backservice");
+		}
+
+		try {
 			if (website) {
 				service
 						.addTag(new WebsiteTag(tag, user, path, desc,
@@ -153,7 +170,7 @@
 								new Date()));
 			}
 		} catch (TagAddException e) {
-			throw new RuntimeException(e);
+			throw new RuntimeException("Problems with shotoku backservice");
 		}
 
 	}
@@ -179,13 +196,24 @@
 		}
 	}
 
-	public Vector getAllTags(String resourceId) {
+	public Vector getAllTags(String user, String resourceId) {
 		Vector<String> ret = new Vector<String>();
 		try {
 			List<String> tags = service.getAllTagsNames(resourceId);
 
+			List<Tag> allTags = service.getTags(resourceId);
+			Set<String> myTagsForResource = new HashSet<String>();
+
+			for (Tag tag : allTags) {
+				if (tag.getAuthor().equals(user)) {
+					myTagsForResource.add(tag.getName());
+				}
+			}
+
 			for (String tag : tags) {
-				ret.add(tag);
+				if (!myTagsForResource.contains(tag)) {
+					ret.add(tag);
+				}
 			}
 		} catch (TagGetException e) {
 			// TODO Auto-generated catch block
@@ -231,8 +259,10 @@
 					result.add(service.getFeedLink(FeedType.TAGS,
 							tag.getName(), "rss2"));
 					result.add(TagMeTools.getFullName(tag.getAuthor()));
-					result.add(service.getFeedLink(FeedType.AUTHOR_UNIQUE, tag.getAuthor(), "rss2"));
-					result.add(service.getFeedLink(FeedType.AUTHOR_ALL, tag.getAuthor(), "rss2"));
+					result.add(service.getFeedLink(FeedType.AUTHOR_UNIQUE, tag
+							.getAuthor(), "rss2"));
+					result.add(service.getFeedLink(FeedType.AUTHOR_ALL, tag
+							.getAuthor(), "rss2"));
 					lastTag = tag.getName();
 				}
 			}

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/TagMeTagger.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/TagMeTagger.java	2006-08-02 20:41:14 UTC (rev 5419)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/TagMeTagger.java	2006-08-02 21:58:31 UTC (rev 5420)
@@ -32,7 +32,7 @@
 	
 	public Vector getSuggestions(String path);
 
-	public Vector getAllTags(String resourceId);
+	public Vector getAllTags(String user, String resourceId);
 
 	public Vector search(String tags, String author, String keyword);
 }




More information about the jboss-svn-commits mailing list