Skip to content
24 changes: 24 additions & 0 deletions appinfo/application.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,11 @@
use OCA\Maps\Controller\FavoritesController;
use OCA\Maps\Controller\FavoritesApiController;
use OCA\Maps\Controller\RoutingController;
use OCA\Maps\Controller\TracksController;
use OCA\Maps\Hook\FileHooks;
use OCA\Maps\Service\PhotofilesService;
use OCA\Maps\Service\FavoritesService;
use OCA\Maps\Service\TracksService;


class Application extends App {
Expand Down Expand Up @@ -103,6 +105,28 @@ public function __construct (array $urlParams=array()) {
}
);

$container->registerService(
'TracksController', function ($c) {
return new TracksController(
$c->query('AppName'),
$c->query('Request'),
$c->query('UserId'),
$c->query('ServerContainer')->getUserFolder($c->query('UserId')),
$c->query('ServerContainer')->getConfig(),
$c->getServer()->getShareManager(),
$c->getServer()->getAppManager(),
$c->getServer()->getUserManager(),
$c->getServer()->getGroupManager(),
$c->query('ServerContainer')->getL10N($c->query('AppName')),
$c->query('ServerContainer')->getLogger(),
new TracksService(
$c->query('ServerContainer')->getLogger(),
$c->query('ServerContainer')->getL10N($c->query('AppName'))
)
);
}
);

$container->registerService(
'UtilsController', function ($c) {
return new UtilsController(
Expand Down
31 changes: 31 additions & 0 deletions appinfo/database.xml
Original file line number Diff line number Diff line change
Expand Up @@ -141,5 +141,36 @@
</index>
</declaration>
</table>
<table>
<name>*dbprefix*maps_tracks</name>
<declaration>
<field>
<name>id</name>
<type>integer</type>
<default>0</default>
<notnull>true</notnull>
<autoincrement>1</autoincrement>
<length>41</length>
</field>
<field>
<name>user_id</name>
<type>text</type>
<notnull>true</notnull>
<length>64</length>
</field>
<field>
<name>file_id</name>
<type>integer</type>
<notnull>true</notnull>
<length>10</length>
</field>
<field>
<name>color</name>
<type>text</type>
<notnull>false</notnull>
<length>7</length>
</field>
</declaration>
</table>

</database>
2 changes: 1 addition & 1 deletion appinfo/info.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<description><![CDATA[Simple maps app to display a leaflet map.]]></description>
<licence>agpl</licence>
<author mail="vinzenz.rosenkranz@gmail.com" >Vinzenz Rosenkranz</author>
<version>0.0.4</version>
<version>0.0.5</version>
<namespace>Maps</namespace>
<category>multimedia</category>
<bugs>https://github.com/nextcloud/maps/issues</bugs>
Expand Down
9 changes: 9 additions & 0 deletions appinfo/routes.php
Original file line number Diff line number Diff line change
Expand Up @@ -51,5 +51,14 @@
['name' => 'favorites#exportAllFavorites', 'url' => '/export/favorites', 'verb' => 'GET'],
['name' => 'favorites#exportFavorites', 'url' => '/export/favorites', 'verb' => 'POST'],
['name' => 'favorites#importFavorites', 'url' => '/import/favorites', 'verb' => 'POST'],

// tracks
['name' => 'tracks#getTracks', 'url' => '/tracks', 'verb' => 'GET'],
['name' => 'tracks#getTrackFileContent', 'url' => '/tracks/{id}', 'verb' => 'GET'],
['name' => 'tracks#addTracks', 'url' => '/tracks', 'verb' => 'POST'],
['name' => 'tracks#addTrackDirectory', 'url' => '/tracks-directory', 'verb' => 'POST'],
['name' => 'tracks#editTrack', 'url' => '/tracks/{id}', 'verb' => 'PUT'],
['name' => 'tracks#deleteTrack', 'url' => '/tracks/{id}', 'verb' => 'DELETE'],
['name' => 'tracks#deleteTracks', 'url' => '/tracks', 'verb' => 'DELETE'],
]
];
2 changes: 2 additions & 0 deletions css/images/marker-icon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
32 changes: 31 additions & 1 deletion css/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -329,6 +329,14 @@ tr.selected td {
mask: url('images/star-circle.svg') no-repeat 50% 50%;
mask-size: 15px;
}
.trackWaypoint {
height: 25px !important;
width: 25px !important;
-webkit-mask: url('images/marker-icon.svg') no-repeat 50% 50%;
-webkit-mask-size: 25px;
mask: url('images/marker-icon.svg') no-repeat 50% 50%;
mask-size: 25px;
}
.line-enabled {
background: var(--color-background-dark);
}
Expand Down Expand Up @@ -356,13 +364,17 @@ table.editFavorite input[type=text] {
#togglePhotosButton button,
#toggleContactsButton button,
#toggleFavoritesButton button,
#toggleTracksButton button,
.toggleTrackButton button,
.toggleCategoryButton button {
opacity: 1 !important;
}
#navigation-routing > a,
#navigation-favorites > a,
#navigation-photos > a,
#navigation-contacts > a,
#navigation-tracks > a,
.track-line > a,
.category-line > a {
opacity: 1 !important;
}
Expand All @@ -373,7 +385,16 @@ table.editFavorite input[type=text] {
font-weight: 900;
text-decoration: inherit;
position: absolute;
left: 18px;
left: 16px;
}
#navigation-tracks > a::before {
content: "\f201";
font-family: 'Font Awesome\ 5 Free';
font-style: normal;
font-weight: 900;
text-decoration: inherit;
position: absolute;
left: 16px;
}
.ui-autocomplete {
z-index: 10000 !important;
Expand Down Expand Up @@ -415,3 +436,12 @@ table.editFavorite input[type=text] {
.app-navigation-entry-menu {
z-index: 10001;
}
#colorinput {
opacity: 0;
width: 0px;
height: 0px;
min-height: 0px;
padding: 0px;
margin: 0px;
border: 0px;
}
24 changes: 24 additions & 0 deletions js/script.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@
mapController.map.photosController = photosController;
contactsController.initLayer(mapController.map);
mapController.map.contactsController = contactsController;
tracksController.initController(mapController.map);
tracksController.getTracks();

// once controllers have been set/initialized, we can restore option values from server
optionsController.restoreOptions();
Expand Down Expand Up @@ -67,6 +69,7 @@
var optionsController = {
optionValues: {},
enabledFavoriteCategories: [],
enabledTracks: [],
saveOptionValues: function (optionValues) {
var req = {
options: optionValues
Expand Down Expand Up @@ -131,6 +134,23 @@
if (optionsValues.hasOwnProperty('routingEnabled') && optionsValues.routingEnabled === 'true') {
routingController.toggleRouting();
}
if (!optionsValues.hasOwnProperty('tracksEnabled') || optionsValues.tracksEnabled === 'true') {
tracksController.toggleTracks();
}
if (!optionsValues.hasOwnProperty('trackListShow') || optionsValues.trackListShow === 'true') {
tracksController.toggleTrackList();
}
if (optionsValues.hasOwnProperty('enabledTracks')
&& optionsValues.enabledTracks
&& optionsValues.enabledTracks !== '')
{
that.enabledTracks = optionsValues.enabledTracks.split('|').map(function (x) {
return parseInt(x);
});
if (tracksController.trackListLoaded) {
tracksController.restoreTracksState(that.enabledTracks);
}
}

// save tile layer when changed
// do it after restore, otherwise restoring triggers save
Expand Down Expand Up @@ -486,6 +506,7 @@
contactsController.updateTimeFilterEnd(that.valueEnd);
}
favoritesController.updateFilterDisplay();
tracksController.updateFilterDisplay();

that.onUpdateCallbackBlock = false;
if (unencoded[0] < that.min || unencoded[1] > that.max || positions[1] - positions[0] < 10) {
Expand Down Expand Up @@ -547,11 +568,13 @@
var maxs = [];
var rawMins = [
favoritesController.firstDate,
tracksController.firstDate,
photosController.photoMarkersOldest,
contactsController.contactMarkersOldest
];
var rawMaxs = [
favoritesController.lastDate,
tracksController.lastDate,
photosController.photoMarkersNewest,
contactsController.contactMarkersNewest
];
Expand Down Expand Up @@ -598,6 +621,7 @@
var photosController = new PhotosController(optionsController, timeFilterController);
var contactsController = new ContactsController(optionsController, timeFilterController);
var favoritesController = new FavoritesController(optionsController, timeFilterController);
var tracksController = new TracksController(optionsController, timeFilterController);

timeFilterController.connect();

Expand Down
Loading