Merge remote-tracking branch 'server/master'

This commit is contained in:
Axel Uhl committed 2016-04-01 14:58:08 +02:00
commit c949e1c805
9 files changed
+29 -9

No files matched your search

+1 -1
View File
@@ -6,7 +6,7 @@ buildscript {
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.0-alpha1'
classpath 'com.android.tools.build:gradle:2.1.0-alpha4'
}
}
@@ -35,13 +35,13 @@ public class EventsResource extends AbstractSailingServerResource {
@GET
@Produces("application/json;charset=UTF-8")
public Response getEvents() {
// TODO bug2589, bug3504: the following will require EVENT:READ permission; it requires cross-server links to be authentication aware...
public Response getEvents(@QueryParam("showNonPublic") String showNonPublic) {
// TODO bug2589, bug3504: the following will require EVENT:READ permission; it requires cross-server links to be authentication aware...
// SecurityUtils.getSubject().checkPermission(Permission.EVENT.getStringPermission(Permission.Mode.READ));
JsonSerializer<EventBase> eventSerializer = new EventBaseJsonSerializer(new VenueJsonSerializer(new CourseAreaJsonSerializer()), new LeaderboardGroupBaseJsonSerializer());
JSONArray result = new JSONArray();
for (EventBase event : getService().getAllEvents()) {
if (event.isPublic()) {
if ((showNonPublic != null && Boolean.valueOf(showNonPublic)) || event.isPublic()) {
result.add(eventSerializer.serialize(event));
}
}
@@ -1 +1 @@
${git.branch}-${git.commit.id.abbrev} (${git.commit.time})
ubilabs--rcapp--bug-3450-8c0c286 (Fri Apr 01 10:45:04 CEST 2016)
@@ -482,4 +482,7 @@
<string name="preference_heading_with_declination_subtracted_summary_is_disabled">Missweisend</string>
<string name="preference_heading_with_declination_subtracted_enabled">Kursanzeige</string>
</resources>
<string name="preference_non_public_events_header">Zeige nicht öffentliche Events</string>
<string name="preference_non_public_events_summary">Lade alle Events, auch die nicht öffentlichen.</string>
</resources>
@@ -108,4 +108,7 @@
<item>Dark</item>
<item>Light</item>
</string-array>
<string name="preference_non_public_events_key" translatable="false">show_non_public_events</string>
<bool name="preference_non_public_events_default" translatable="false">false</bool>
</resources>
@@ -509,4 +509,6 @@
<string name="preference_heading_with_declination_subtracted_summary_is_disabled">North-based</string>
<string name="preference_heading_with_declination_subtracted_enabled">Heading</string>
</resources>
<string name="preference_non_public_events_header">Show Non Public Events</string>
<string name="preference_non_public_events_summary">Load all events including the no public one.</string>
</resources>
@@ -60,6 +60,12 @@
android:key="@string/preference_mail_key"
android:title="@string/settings_advanced_mail_header"/>
<CheckBoxPreference
android:defaultValue="@bool/preference_non_public_events_default"
android:key="@string/preference_non_public_events_key"
android:summary="@string/preference_non_public_events_summary"
android:title="@string/preference_non_public_events_header"/>
<CheckBoxPreference
android:defaultValue="@bool/preference_allow_demo_default"
android:key="@string/preference_allow_demo_key"
@@ -462,4 +462,9 @@ public class AppPreferences {
return preferences.getBoolean(context.getString(R.string.preference_heading_with_declination_subtracted_key),
context.getResources().getBoolean(R.bool.preference_heading_with_declination_subtracted_default));
}
public String showNonPublic() {
return preferences.getBoolean(context.getString(R.string.preference_non_public_events_key),
context.getResources().getBoolean(R.bool.preference_non_public_events_default)) ? "true" : "false";
}
}
@@ -120,8 +120,9 @@ public class OnlineDataManager extends DataManager {
DataHandler<Collection<EventBase>> handler = new EventsDataHandler(OnlineDataManager.this);
// ExLog.i(context, TAG, "getEventsLoader created new loader...");
URL url = UrlHelper.generateUrl(preferences.getServerBaseURL(), "/sailingserver/api/v1/events", null);
List<Util.Pair<String, Object>> params = new ArrayList<>();
params.add(new Util.Pair<String, Object>("showNonPublic", AppPreferences.on(context).showNonPublic()));
URL url = UrlHelper.generateUrl(preferences.getServerBaseURL(), "/sailingserver/api/v1/events", params);
return new OnlineDataLoader<Collection<EventBase>>(context,
url, parser, handler);
}