Skip to content

Commit 08762bd

Browse files
committed
DigiVol 6.1.9 Release Notes
New feature: DG-29 User labels and Reporting Labels - Refactored labels/tags; Label, LabelCategory - Stored label colour - Added system level status (country, field and new user category), updated Bootstrap class - Fixed LandingPageAdmin bug with labels (#533/DG-60) - Updated Project settings to use new labels - Added new user admin with ability to add user label Reports - Added Report queue system (queue report, quartz job processes and runs behind the scenes) - Deprecated browser-run project summary report (migrated to report request) - Added new admin for reports - Quartz job to clean up old report files (with config in advanced settings) Other Updates - DG-130 Updated JSON Export API - Added new Observation Diary template view with Geo-mapping tool enabled.
2 parents ab39ddb + e277eb8 commit 08762bd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+3531
-479
lines changed

.travis.yml

+2-4
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ before_install:
3434
- cp travis/travis.properties local.properties
3535
- echo "org.gradle.jvmargs=-Xmx3072m" >> ~/.gradle/gradle.properties
3636
- export GRAILS_ENV=test
37+
install:
38+
- travis_wait 30 ./gradlew assemble
3739
after_success:
3840
# - '[ "${TRAVIS_PULL_REQUEST}" = "false" ] && travis_retry ./gradlew publish'
3941
- '[ "${TRAVIS_PULL_REQUEST}" = "false" ] && GRAILS_ENV=production travis_retry ./gradlew publish'
@@ -44,7 +46,3 @@ env:
4446
- secure: 2MEDHHQ3nxNwf+YGgtC/GXx6kb0y4ixYA7Ia50pZHaN8xMHYdQ8EymKZJ8F9SXw0Feg9FsDc5I90lBJB8URYZZ4hPZN9+uj9crOvnOFMByvJpPikrQ6Yw8IdUjmYxHO/zv+kmOkqVnu6zCtS42olSM7ljeZs0PzW484Ci9w5eM4=
4547
- secure: iR4/BuaBNTKIGQENUdQQjzqhUgefvJnfyC0aK0j9NNLVwcH6lE//TAqz22n7TuzTDPq7My+0clua8DEbJt2k7/kMrbrAohCEXtWvI2pBa43GmB+D5/qOW0+MZk46QJ0pR+hmjHZ3U9DjhuNuF3w7zlNsUnItk70FlzV+sRrYgwg=
4648
- secure: pOWY7dwZRDcgsrYcwscdXHNPfhsPOSGhKNrG0G7AA4mhxaRKd9+1D31i5lhiA9qvbA0/lqD7A8Fnzvsf99MkUC6CSCQOh5n104UalYyiRQ/vhwfc0l9HdlCH86hShYq4PKvXA0hK5iCcIdltzn8pSnM4uHQiVKlbEJiX/qYNx7E=
47-
notifications:
48-
hipchat:
49-
rooms:
50-
secure: GV/Ckk/00dAExEE4A2bb/6yuwIdTn6EQ63cdKOH0CSLYiUspolHbueuB/2bGVy1ErmL3+l6A/bwZidnGoiR6N3Id/SWRbXBnxn9s7VRFVPsoKLviJ1Xku2rMf/fFW+/PTm2FtEeGiGlvFcbzuIv+b6Vplm8ixIyosFdsEIB2mqc=

build.gradle

+4-5
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ buildscript {
88
}
99
dependencies {
1010
classpath "org.grails:grails-gradle-plugin:$grailsGradlePluginVersion"
11-
classpath "gradle.plugin.com.github.erdi.webdriver-binaries:webdriver-binaries-gradle-plugin:2.6"
1211
classpath "org.grails.plugins:hibernate5:7.3.0" // This is different to gorm version
1312
classpath "com.bertramlabs.plugins:asset-pipeline-gradle:$assetPipelineVersion"
1413
classpath "org.postgresql:postgresql:$postgresVersion" // for flyway
@@ -22,9 +21,10 @@ plugins {
2221
id "com.virgo47.ClasspathJar" version "1.0.0"
2322
id 'java'
2423
id "com.dorongold.task-tree" version "2.1.1"
24+
id "com.github.erdi.webdriver-binaries" version "3.2"
2525
}
2626

27-
version "6.1.8"
27+
version "6.1.9"
2828
group "au.org.ala"
2929
description "Digivol application"
3030

@@ -35,7 +35,6 @@ apply plugin:"eclipse"
3535
apply plugin:"idea"
3636
apply plugin:"war"
3737
apply plugin:"org.grails.grails-web"
38-
apply plugin:"com.github.erdi.webdriver-binaries"
3938
apply plugin:"com.bertramlabs.asset-pipeline"
4039
apply plugin:"org.grails.grails-gsp"
4140
apply plugin:"maven-publish"
@@ -285,10 +284,10 @@ tasks.withType(GroovyCompile) {
285284
webdriverBinaries {
286285
if (!System.getenv().containsKey('GITHUB_ACTIONS')) {
287286
chromedriver {
288-
version = '2.45.0'
287+
version = '122.0.6260.0'
289288
fallbackTo32Bit = true
290289
}
291-
geckodriver '0.30.0'
290+
geckodriver '0.33.0'
292291
}
293292
}
294293

grails-app/assets/stylesheets/digivol-custom.css

+37
Original file line numberDiff line numberDiff line change
@@ -496,3 +496,40 @@ a.fieldHelp {
496496
white-space: normal;
497497
}
498498

499+
/* Labels */
500+
501+
.label-base {
502+
background-color: #777;
503+
}
504+
505+
.label-green {
506+
background-color: #5cb85c;
507+
}
508+
509+
.label-red {
510+
background-color: #d9534f;
511+
}
512+
513+
.label-yellow {
514+
background-color: #f0ad4e;
515+
}
516+
517+
.label-blue {
518+
background-color: #337ab7;
519+
}
520+
521+
.label-lightblue {
522+
background-color: #3498db;
523+
}
524+
525+
.label-orange {
526+
background-color: #e67e22;
527+
}
528+
529+
.label-purple {
530+
background-color: #9b59b6;
531+
}
532+
533+
.label-darkgrey {
534+
background-color: #4b5359;
535+
}

grails-app/conf/application.yml

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
---
2+
23
grails:
34
profile: web
45
codegen:

grails-app/controllers/au/org/ala/volunteer/AdminController.groovy

+5
Original file line numberDiff line numberDiff line change
@@ -742,6 +742,11 @@ class AdminController {
742742
}
743743
}
744744

745+
/**
746+
* @deprecated
747+
* @see {@link ReportRequestService#projectSummaryReport()}
748+
* @return
749+
*/
745750
def projectSummaryReport() {
746751
if (!checkAdminAccess(true)) {
747752
render(view: '/notPermitted')

grails-app/controllers/au/org/ala/volunteer/AjaxController.groovy

+7
Original file line numberDiff line numberDiff line change
@@ -717,6 +717,8 @@ class AjaxController {
717717
fieldNames.addAll(fieldList.name.unique().sort() as List<String>)
718718
result.data = exportService.exportJson(taskList, fieldList)
719719
result.projectId = project.id
720+
result.name = project.name
721+
result.url = grailsLinkGenerator.link(absolute: true, controller: 'project', action: 'index', id: project.id)
720722
result.institutionId = project.institution.id
721723

722724
result.success = true
@@ -738,18 +740,23 @@ class AjaxController {
738740
def hasValidatorRole() {
739741
def project = Project.get(params.long('projectId'))
740742
def userId = params.userid as String
743+
log.info("Access to ws/hasValidatorRole().")
744+
log.info("Params: project: ${params.long('projectId')}, userId: ${params.userid}")
741745

742746
if (!StringUtils.isEmpty(userId) && project) {
743747
// Get user object from string userId
744748
def userList = User.findAllByUserId(userId)
745749
def user
746750
if (userList && userList.size() > 0) user = userList.first()
747751
if (user) {
752+
log.info("Info requested for ${user}")
753+
log.info("Result; userHasValidatorRole: ${userService.userHasValidatorRole(user as User, project.id, project.institution.id)}")
748754
render(["result": userService.userHasValidatorRole(user as User, project.id, project.institution.id)] as JSON)
749755
return
750756
}
751757
}
752758

759+
log.warn("hasValidatorRole(): User or project not found.")
753760
response.status = SC_NOT_FOUND
754761
render([message: "User or Project not found."] as JSON)
755762
}

0 commit comments

Comments
 (0)