branch develop updated (6de71e0 -> 010bc96)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository coselmar. See http://git.codelutin.com/coselmar.git from 6de71e0 [jgitflow-maven-plugin]Updating develop poms back to pre merge state new 9509ebd Add phone number on user Add comment on document new 010bc96 Merge branch 'develop' of https://git.codelutin.com/coselmar into develop The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 010bc96fa05f31b8335c375decec2b6efe0b9095 Merge: 9509ebd 6de71e0 Author: Yannick Martel <martel@©odelutin.com> Date: Mon Dec 15 11:43:48 2014 +0100 Merge branch 'develop' of https://git.codelutin.com/coselmar into develop commit 9509ebd5bf231c32e15797d93ff0b49d4d2f171c Author: Yannick Martel <martel@©odelutin.com> Date: Mon Dec 15 11:43:19 2014 +0100 Add phone number on user Add comment on document Summary of changes: .../src/main/xmi/coselmar-model.properties | 2 ++ .../src/main/xmi/coselmar-model.zargo | Bin 10090 -> 10252 bytes .../fr/ifremer/coselmar/beans/DocumentBean.java | 24 ++++++++++------ .../java/fr/ifremer/coselmar/beans/UserBean.java | 14 +++++++++- .../fr/ifremer/coselmar/beans/UserSearchBean.java | 4 +-- .../coselmar/converter/BeanEntityConverter.java | 5 +++- .../coselmar/services/v1/DocumentsWebService.java | 4 ++- .../coselmar/services/v1/UsersWebService.java | 31 +++++++++++++++------ .../src/main/webapp/views/documents/document.html | 6 +++- .../webapp/views/documents/modalDocumentEdit.html | 15 +++++++++- .../main/webapp/views/documents/newdocument.html | 18 +++++++++--- .../src/main/webapp/views/users/edituser.html | 10 +++++++ coselmar-ui/src/main/webapp/views/users/user.html | 4 +++ 13 files changed, 109 insertions(+), 28 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository coselmar. See http://git.codelutin.com/coselmar.git commit 9509ebd5bf231c32e15797d93ff0b49d4d2f171c Author: Yannick Martel <martel@©odelutin.com> Date: Mon Dec 15 11:43:19 2014 +0100 Add phone number on user Add comment on document --- .../src/main/xmi/coselmar-model.properties | 2 ++ .../src/main/xmi/coselmar-model.zargo | Bin 10090 -> 10252 bytes .../fr/ifremer/coselmar/beans/DocumentBean.java | 24 ++++++++++------ .../java/fr/ifremer/coselmar/beans/UserBean.java | 14 +++++++++- .../fr/ifremer/coselmar/beans/UserSearchBean.java | 4 +-- .../coselmar/converter/BeanEntityConverter.java | 5 +++- .../coselmar/services/v1/DocumentsWebService.java | 4 ++- .../coselmar/services/v1/UsersWebService.java | 31 +++++++++++++++------ .../src/main/webapp/views/documents/document.html | 6 +++- .../webapp/views/documents/modalDocumentEdit.html | 15 +++++++++- .../main/webapp/views/documents/newdocument.html | 18 +++++++++--- .../src/main/webapp/views/users/edituser.html | 10 +++++++ coselmar-ui/src/main/webapp/views/users/user.html | 4 +++ 13 files changed, 109 insertions(+), 28 deletions(-) diff --git a/coselmar-persistence/src/main/xmi/coselmar-model.properties b/coselmar-persistence/src/main/xmi/coselmar-model.properties index 1d2db03..3a95bfc 100644 --- a/coselmar-persistence/src/main/xmi/coselmar-model.properties +++ b/coselmar-persistence/src/main/xmi/coselmar-model.properties @@ -28,5 +28,7 @@ model.tagvalue.useEnumerationName=true # Text fr.ifremer.coselmar.persistence.entity.Document.attribute.summary.tagValue.hibernateAttributeType=text +fr.ifremer.coselmar.persistence.entity.Document.attribute.comment.tagValue.hibernateAttributeType=text + fr.ifremer.coselmar.persistence.entity.Question.attribute.summary.tagValue.hibernateAttributeType=text fr.ifremer.coselmar.persistence.entity.Question.attribute.conclusion.tagValue.hibernateAttributeType=text \ No newline at end of file diff --git a/coselmar-persistence/src/main/xmi/coselmar-model.zargo b/coselmar-persistence/src/main/xmi/coselmar-model.zargo index a776669..4b0c5f1 100644 Binary files a/coselmar-persistence/src/main/xmi/coselmar-model.zargo and b/coselmar-persistence/src/main/xmi/coselmar-model.zargo differ diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentBean.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentBean.java index 6984fff..51e778d 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentBean.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentBean.java @@ -49,6 +49,7 @@ public class DocumentBean implements Serializable { protected String language; protected String summary; protected Date publicationDate; + protected String comment; // Document could be internal file or external link protected boolean withFile; @@ -59,7 +60,8 @@ public class DocumentBean implements Serializable { Date depositDate, Collection<String> keywords, String type, String summary, String language, Date publicationDate, String authors, String license, String copyright, - boolean withFile, String mimeType, String externalUrl) { + boolean withFile, String mimeType, String externalUrl, + String comment) { this.id = id; this.name = name; this.ownerName = ownerName; @@ -81,13 +83,11 @@ public class DocumentBean implements Serializable { this.license = license; this.copyright = copyright; - if (withFile) { - this.withFile = true; - this.mimeType = mimeType; - } else { - this.withFile = false; - this.externalUrl = externalUrl; - } + this.withFile = withFile; + this.mimeType = mimeType; + this.externalUrl = externalUrl; + + this.comment = comment; } public String getId() { @@ -228,4 +228,12 @@ public class DocumentBean implements Serializable { public void setMimeType(String mimeType) { this.mimeType = mimeType; } + + public String getComment() { + return comment; + } + + public void setComment(String comment) { + this.comment = comment; + } } diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/UserBean.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/UserBean.java index df5331e..7024c36 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/UserBean.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/UserBean.java @@ -40,9 +40,12 @@ public class UserBean implements Serializable { protected String organization; protected String password; protected String newPassword; + protected String phoneNumber; protected boolean active; - public UserBean(String id, String firstName, String name, String mail, String role, String qualification, String organization, boolean active) { + public UserBean(String id, String firstName, String name, + String mail, String phoneNumber, String role, + String qualification, String organization, boolean active) { this.id = id; this.firstName = firstName; this.name = name; @@ -50,6 +53,7 @@ public class UserBean implements Serializable { this.role = role; this.qualification = qualification; this.organization = organization; + this.phoneNumber = phoneNumber; this.active = active; } @@ -132,4 +136,12 @@ public class UserBean implements Serializable { public void setActive(boolean active) { this.active = active; } + + public String getPhoneNumber() { + return phoneNumber; + } + + public void setPhoneNumber(String phoneNumber) { + this.phoneNumber = phoneNumber; + } } diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/UserSearchBean.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/UserSearchBean.java index 2604033..0c5026d 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/UserSearchBean.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/UserSearchBean.java @@ -38,8 +38,8 @@ public class UserSearchBean extends UserBean { protected List<String> fullTextSearch; protected boolean onlyActive; - public UserSearchBean(String id, String firstName, String name, String mail, String role, String qualification, String organization, boolean active) { - super(id, firstName, name, mail, role, qualification, organization, active); + public UserSearchBean(String id, String firstName, String name, String mail, String phoneNumber, String role, String qualification, String organization, boolean active) { + super(id, firstName, name, mail, phoneNumber, role, qualification, organization, active); } public Integer getLimit() { diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/converter/BeanEntityConverter.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/converter/BeanEntityConverter.java index faa27c8..7c6848b 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/converter/BeanEntityConverter.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/converter/BeanEntityConverter.java @@ -76,7 +76,8 @@ public class BeanEntityConverter { document.isWithFile(), document.getMimeType(), - document.getExternalUrl() + document.getExternalUrl(), + document.getComment() ); } @@ -85,6 +86,7 @@ public class BeanEntityConverter { user.getFirstname(), user.getName(), user.getMail(), + user.getPhoneNumber(), user.getRole().name(), user.getQualification(), user.getOrganization(), @@ -101,6 +103,7 @@ public class BeanEntityConverter { user.setQualification(userBean.getQualification()); user.setOrganization(userBean.getOrganization()); user.setActive(userBean.isActive()); + user.setPhoneNumber(userBean.getPhoneNumber()); return user; } diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/v1/DocumentsWebService.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/v1/DocumentsWebService.java index 0ad800c..b7cafe9 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/v1/DocumentsWebService.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/v1/DocumentsWebService.java @@ -212,8 +212,10 @@ public class DocumentsWebService extends CoselmarWebServiceSupport { documentEntity.setMimeType(contentType); } else { documentEntity.setWithFile(false); - documentEntity.setExternalUrl(document.getExternalUrl()); } + documentEntity.setExternalUrl(document.getExternalUrl()); + + documentEntity.setComment(document.getComment()); commit(); String lightId = getPersistenceContext().getTopiaIdFactory().getRandomPart(documentEntity.getTopiaId()); diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/v1/UsersWebService.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/v1/UsersWebService.java index d9f9f98..a2adbca 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/v1/UsersWebService.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/v1/UsersWebService.java @@ -139,9 +139,13 @@ public class UsersWebService extends CoselmarWebServiceSupport { userEntity.setFirstname(user.getFirstName()); userEntity.setName(user.getName()); + String mail = getCleanMail(user.getMail()); - checkMailUnicity(mail, null); - userEntity.setMail(mail); + if (StringUtils.isNotBlank(mail)) { + checkMailUniqueness(mail, null); + userEntity.setMail(mail); + } + userEntity.setRole(CoselmarUserRole.valueOf(user.getRole().toUpperCase())); userEntity.setQualification(user.getQualification()); userEntity.setOrganization(user.getOrganization()); @@ -161,12 +165,14 @@ public class UsersWebService extends CoselmarWebServiceSupport { commit(); // send mail to user with password - UserAccountCreatedMail userAccountCreatedMail = new UserAccountCreatedMail(getServicesContext().getLocale()); - userAccountCreatedMail.setUser(user); - userAccountCreatedMail.setPassword(password); - userAccountCreatedMail.setTo(user.getMail()); + if (StringUtils.isNotBlank(mail)) { + UserAccountCreatedMail userAccountCreatedMail = new UserAccountCreatedMail(getServicesContext().getLocale()); + userAccountCreatedMail.setUser(user); + userAccountCreatedMail.setPassword(password); + userAccountCreatedMail.setTo(user.getMail()); - sendMail(userAccountCreatedMail); + sendMail(userAccountCreatedMail); + } } public void modifyUser(UserBean user) throws InvalidCredentialException, UnauthorizedException, InvalidParameterException, TopiaNoResultException { @@ -211,8 +217,10 @@ public class UsersWebService extends CoselmarWebServiceSupport { // start with mail : should be unique String mail = user.getMail(); if (StringUtils.isNotBlank(mail)) { - checkMailUnicity(mail, fullId); + checkMailUniqueness(mail, fullId); coselmarUser.setMail(mail); + } else { + coselmarUser.setMail(null); } String firstName = user.getFirstName(); @@ -245,6 +253,11 @@ public class UsersWebService extends CoselmarWebServiceSupport { coselmarUser.setQualification(qualification); } + String phoneNumber = user.getPhoneNumber(); + if (StringUtils.isNotBlank(phoneNumber)) { + coselmarUser.setPhoneNumber(phoneNumber); + } + String newPassword = user.getNewPassword(); if (StringUtils.isNotBlank(newPassword)) { String salt = getServicesContext().generateSalt(); @@ -325,7 +338,7 @@ public class UsersWebService extends CoselmarWebServiceSupport { * @param userId : the current user#id : this parameter is needed to exclude from the search this user, cause it could already have this mail * @throws InvalidParameterException if the mail is already used. */ - protected void checkMailUnicity(String mail, String userId) throws InvalidParameterException { + protected void checkMailUniqueness(String mail, String userId) throws InvalidParameterException { boolean mailAlreadyUsed; if (StringUtils.isNotBlank(userId)) { diff --git a/coselmar-ui/src/main/webapp/views/documents/document.html b/coselmar-ui/src/main/webapp/views/documents/document.html index c4f4ffd..1ee46da 100644 --- a/coselmar-ui/src/main/webapp/views/documents/document.html +++ b/coselmar-ui/src/main/webapp/views/documents/document.html @@ -83,10 +83,14 @@ <td ng-if="document.withFile">{{document.mimeType}}</td> <td ng-if="!document.withFile">External Link</td> </tr> + <tr> + <td>Comment</td> + <td>{{document.comment}}</td> + </tr> </table> <div class="float-right"> <a href="{{container.baseUrl}}/documents/{{document.id}}/file" class="btn btn-primary" ng-if="document.withFile">Download</a> - <a href="{{document.externalUrl}}" target="_blank" class="btn btn-primary" ng-if="!document.withFile">Open Link</a> + <a href="{{document.externalUrl}}" target="_blank" class="btn btn-primary" ng-if="document.externalUrl">Open Link</a> <a class="btn btn-danger" ng-click="deleteDocument(document.id)">Delete</a> </div> </div> diff --git a/coselmar-ui/src/main/webapp/views/documents/modalDocumentEdit.html b/coselmar-ui/src/main/webapp/views/documents/modalDocumentEdit.html index 80644ba..7db4b43 100644 --- a/coselmar-ui/src/main/webapp/views/documents/modalDocumentEdit.html +++ b/coselmar-ui/src/main/webapp/views/documents/modalDocumentEdit.html @@ -195,7 +195,7 @@ </div> <!-- End Line with Copyright and Licence --> - <!-- End Line with Summary --> + <!-- Line with Summary --> <div class="form-group" ng-class="{'has-error' : documentForm.summary.$invalid && !documentForm.summary.$pristine}"> <label class="col-md-2 control-label">Summary *</label> @@ -208,6 +208,19 @@ class="help-block">A summary is required.</p> </div> </div> + <!-- End Line with Summary --> + + <!-- Line with Comment --> + <div class="form-group" > + <label class="col-md-2 control-label">Comment</label> + + <div class="col-md-10"> + <textarea type="text" class="form-control" name="comment" rows="5" + ng-model="document.comment" /> + + </div> + </div> + <!-- End Line with Comment --> </div> diff --git a/coselmar-ui/src/main/webapp/views/documents/newdocument.html b/coselmar-ui/src/main/webapp/views/documents/newdocument.html index c87c2e0..39a4f0d 100644 --- a/coselmar-ui/src/main/webapp/views/documents/newdocument.html +++ b/coselmar-ui/src/main/webapp/views/documents/newdocument.html @@ -104,7 +104,7 @@ <div class="form-group" ng-class="{'has-error' : documentForm.keywords.$invalid && !documentForm.keywords.$pristine}"> - <label class="col-md-4 control-label">keywords</label> + <label class="col-md-4 control-label">keywords *</label> <div class="col-md-5"> <input type="text" class="form-control" name="keywords" @@ -150,7 +150,7 @@ <div class="form-group" ng-class="{'has-error' : documentForm.authors.$invalid && !documentForm.authors.$pristine}"> - <label class="col-md-4 control-label">Authors</label> + <label class="col-md-4 control-label">Authors *</label> <div class="col-md-5"> <input type="text" class="form-control" name="authors" @@ -163,7 +163,7 @@ <div class="form-group" ng-class="{'has-error' : documentForm.copyright.$invalid && !documentForm.copyright.$pristine}"> - <label class="col-md-4 control-label">Copyright</label> + <label class="col-md-4 control-label">Copyright *</label> <div class="col-md-5"> <input type="text" class="form-control" name="copyright" @@ -194,7 +194,7 @@ <div class="form-group" ng-class="{'has-error' : documentForm.summary.$invalid && !documentForm.summary.$pristine}"> - <label class="col-md-4 control-label">Summary</label> + <label class="col-md-4 control-label">Summary *</label> <div class="col-md-5"> <textarea type="text" class="form-control" name="summary" @@ -205,6 +205,16 @@ </div> </div> + <div class="form-group" > + <label class="col-md-4 control-label">Comment</label> + + <div class="col-md-5"> + <textarea type="text" class="form-control" name="comment" + ng-model="document.comment" /> + + </div> + </div> + <div class="form-group"> <div class="float-right col-md-4"> <input type="submit" value="Submit" class="btn btn-primary" diff --git a/coselmar-ui/src/main/webapp/views/users/edituser.html b/coselmar-ui/src/main/webapp/views/users/edituser.html index 52e49f5..0d66e5a 100644 --- a/coselmar-ui/src/main/webapp/views/users/edituser.html +++ b/coselmar-ui/src/main/webapp/views/users/edituser.html @@ -71,6 +71,16 @@ </div> + <div class="form-group" > + <label class="col-md-4 control-label">Phone Number</label> + + <div class="col-md-5"> + <input type="text" class="form-control" name="phoneNumber" + ng-model="user.phoneNumber" required/> + </div> + + </div> + <div class="form-group"> <label class="col-md-4 control-label">Organization</label> diff --git a/coselmar-ui/src/main/webapp/views/users/user.html b/coselmar-ui/src/main/webapp/views/users/user.html index 8df8457..eaa17f9 100644 --- a/coselmar-ui/src/main/webapp/views/users/user.html +++ b/coselmar-ui/src/main/webapp/views/users/user.html @@ -34,6 +34,10 @@ <td>{{user.mail}}</td> </tr> <tr> + <td>Phone Number</td> + <td>{{user.phoneNumber}}</td> + </tr> + <tr> <td>Qualification</td> <td>{{user.qualification}}</td> </tr> -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository coselmar. See http://git.codelutin.com/coselmar.git commit 010bc96fa05f31b8335c375decec2b6efe0b9095 Merge: 9509ebd 6de71e0 Author: Yannick Martel <martel@©odelutin.com> Date: Mon Dec 15 11:43:48 2014 +0100 Merge branch 'develop' of https://git.codelutin.com/coselmar into develop -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm