You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by vd...@apache.org on 2014/03/27 10:11:22 UTC
svn commit: r1582225 - in
/openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web:
common/FormatHelper.java user/calendar/AppointmentDialog.html
user/calendar/AppointmentDialog.java util/UserChoiceProvider.java
Author: vdegtyarev
Date: Thu Mar 27 09:11:21 2014
New Revision: 1582225
URL: http://svn.apache.org/r1582225
Log:
Merge OPENMEETINGS-961 to trunk. Organizer is visible for guests. Calendar event can't be canceled by guest.
Added:
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/common/FormatHelper.java
- copied unchanged from r1582224, openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/FormatHelper.java
Modified:
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.html
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/util/UserChoiceProvider.java
Modified: openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.html
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.html?rev=1582225&r1=1582224&r2=1582225&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.html (original)
+++ openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.html Thu Mar 27 09:11:21 2014
@@ -61,6 +61,10 @@
<td colspan="2" style="font-size: smaller;"><wicket:ommessage key="1445" /></td>
</tr>
<tr>
+ <td><wicket:ommessage key="1156" /></td>
+ <td><span wicket:id="owner"></span></td>
+ </tr>
+ <tr>
<td><wicket:ommessage key="803" /></td>
<td wicket:ommessage="title:1588"><input class="appointment attendees" type="hidden" wicket:id="attendees"/></td>
</tr>
Modified: openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java?rev=1582225&r1=1582224&r2=1582225&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java (original)
+++ openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java Thu Mar 27 09:11:21 2014
@@ -45,6 +45,7 @@ import org.apache.openmeetings.db.entity
import org.apache.openmeetings.db.entity.user.Organisation_Users;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.web.app.WebSession;
+import org.apache.openmeetings.web.common.FormatHelper;
import org.apache.openmeetings.web.pages.MainPage;
import org.apache.openmeetings.web.user.rooms.RoomEnterBehavior;
import org.apache.openmeetings.web.util.RoomTypeDropDown;
@@ -53,6 +54,7 @@ import org.apache.wicket.ajax.AjaxReques
import org.apache.wicket.ajax.markup.html.form.AjaxCheckBox;
import org.apache.wicket.behavior.AttributeAppender;
import org.apache.wicket.extensions.yui.calendar.DateTimeField;
+import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.form.ChoiceRenderer;
import org.apache.wicket.markup.html.form.DropDownChoice;
import org.apache.wicket.markup.html.form.Form;
@@ -103,12 +105,13 @@ public class AppointmentDialog extends A
form.setEnabled(object.getOwner() == null || getUserId() == object.getOwner().getUser_id());
log.debug(" -- setModelObjectWithAjaxTarget -- Current model " + object);
if (object.getId() != null) {
- delete.setVisible(true, target);
+ delete.setVisible(isOwner(object), target);
enterRoom.setVisible(object.getRoom() != null, target);
} else {
delete.setVisible(false, target);
enterRoom.setVisible(false, target);
}
+ save.setVisible(isOwner(object), target);
super.setModelObject(object);
}
@@ -211,12 +214,17 @@ public class AppointmentDialog extends A
calendar.refresh(target);
}
+ private boolean isOwner(Appointment object) {
+ return object.getOwner() != null && getUserId() == object.getOwner().getUser_id();
+ }
+
private class AppointmentForm extends Form<Appointment> {
private static final long serialVersionUID = 1L;
private boolean createRoom = true;
private DateTimeField start;
private DateTimeField end;
private final PasswordTextField pwd = new PasswordTextField("password");
+ private final Label owner = new Label("owner");
@Override
protected void onModelChanged() {
@@ -255,6 +263,9 @@ public class AppointmentDialog extends A
}
}
pwd.setEnabled(a.isPasswordProtected());
+ owner.setOutputMarkupId(true);
+ owner.setDefaultModel(Model.of(FormatHelper.formatUser(a.getOwner(), false)));
+ owner.setVisible(!isOwner(a));
}
public AppointmentForm(String id, IModel<Appointment> model) {
@@ -312,6 +323,9 @@ public class AppointmentDialog extends A
}
});
add(new UserMultiChoice("attendees", attendeesModel));
+
+ add(owner);
+
}
private List<AppointmentReminderTyps> getRemindTypes() {
Modified: openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/util/UserChoiceProvider.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/util/UserChoiceProvider.java?rev=1582225&r1=1582224&r2=1582225&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/util/UserChoiceProvider.java (original)
+++ openmeetings/trunk/singlewebapp/src/web/java/org/apache/openmeetings/web/util/UserChoiceProvider.java Thu Mar 27 09:11:21 2014
@@ -18,7 +18,6 @@
*/
package org.apache.openmeetings.web.util;
-import static org.apache.commons.lang3.StringEscapeUtils.escapeHtml4;
import static org.apache.openmeetings.web.app.Application.getBean;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
@@ -30,6 +29,7 @@ import java.util.Map;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.db.entity.user.User.Type;
+import org.apache.openmeetings.web.common.FormatHelper;
import org.apache.wicket.extensions.validation.validator.RfcCompliantEmailAddressValidator;
import org.apache.wicket.validation.Validatable;
import org.json.JSONException;
@@ -76,11 +76,6 @@ public class UserChoiceProvider extends
}
return u;
}
-
- protected String getDisplayText(User u) {
- // TODO check RIGHTS here (email might need to be hidden)
- return u == null ? "" : escapeHtml4(String.format("\"%s %s\" <%s>", u.getFirstname(), u.getLastname(), u.getAdresses().getEmail()));
- }
protected Object getId(User u) {
String id = "" + u.getUser_id();
@@ -119,7 +114,7 @@ public class UserChoiceProvider extends
public void toJson(User choice, JSONWriter writer) throws JSONException {
writer
.key("id").value(getId(choice))
- .key("text").value(getDisplayText(choice))
+ .key("text").value(FormatHelper.formatUser(choice, true))
.key("contact").value(choice.getType() == Type.contact);
};
}