Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cleanup of leftover-sorting-code from quickaccess-feature #9714 #9720 #10320

Merged
merged 2 commits into from
Aug 8, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 0 additions & 50 deletions apps/files/appinfo/routes.php
Original file line number Diff line number Diff line change
Expand Up @@ -81,56 +81,6 @@
'url' => '/api/v1/toggleShowFolder/{key}',
'verb' => 'POST'
],
[
'name' => 'API#getShowQuickaccessSettings',
'url' => '/api/v1/quickaccess/showsettings',
'verb' => 'GET',
],
[
'name' => 'API#setShowQuickaccessSettings',
'url' => '/api/v1/quickaccess/set/showsettings',
'verb' => 'GET',
],
[
'name' => 'API#setSortingStrategy',
'url' => '/api/v1/quickaccess/set/SortingStrategy',
'verb' => 'GET',
],
[
'name' => 'API#setReverseQuickaccess',
'url' => '/api/v1/quickaccess/set/ReverseList',
'verb' => 'GET',
],
[
'name' => 'API#getSortingStrategy',
'url' => '/api/v1/quickaccess/get/SortingStrategy',
'verb' => 'GET',
],
[
'name' => 'API#getReverseQuickaccess',
'url' => '/api/v1/quickaccess/get/ReverseList',
'verb' => 'GET',
],
[
'name' => 'API#getFavoritesFolder',
'url' => '/api/v1/quickaccess/get/FavoriteFolders/',
'verb' => 'GET'
],
[
'name' => 'API#setSortingOrder',
'url' => '/api/v1/quickaccess/set/CustomSortingOrder',
'verb' => 'GET',
],
[
'name' => 'API#getSortingOrder',
'url' => '/api/v1/quickaccess/get/CustomSortingOrder',
'verb' => 'GET',
],
[
'name' => 'API#getNodeType',
'url' => '/api/v1/quickaccess/get/NodeType',
'verb' => 'GET',
],
]
]
);
Expand Down
95 changes: 5 additions & 90 deletions apps/files/js/navigation.js
Original file line number Diff line number Diff line change
Expand Up @@ -39,18 +39,6 @@
*/
$currentContent: null,

/**
* Strategy by which the quickaccesslist is sorted
*
* Possible Strategies:
* customorder
* datemodified
* date
* alphabet
*
*/
$sortingStrategy: 'alphabet',

/**
* Key for the quick-acces-list
*/
Expand All @@ -67,12 +55,7 @@
this.$currentContent = null;
this._setupEvents();

var scope=this;
$.get(OC.generateUrl("/apps/files/api/v1/quickaccess/get/SortingStrategy"), function (data, status) {
scope.$sortingStrategy=data;
scope.setInitialQuickaccessSettings();
});

this.setInitialQuickaccessSettings();
},

/**
Expand Down Expand Up @@ -198,56 +181,12 @@
* Sort initially as setup of sidebar for QuickAccess
*/
setInitialQuickaccessSettings: function () {

var quickAccesKey = this.$quickAccessListKey;
var list = document.getElementById(quickAccesKey).getElementsByTagName('li');

var sort = true;
var reverse = false;
if (this.$sortingStrategy === 'datemodified') {
sort = false;
reverse = false;

var scope = this;
$.get(OC.generateUrl("/apps/files/api/v1/quickaccess/get/FavoriteFolders/"), function (data, status) {
for (var i = 0; i < data.favoriteFolders.length; i++) {
for (var j = 0; j < list.length; j++) {
if (scope.getCompareValue(list, j, 'alphabet').toLowerCase() === data.favoriteFolders[i].name.toLowerCase()) {
list[j].setAttribute("mtime", data.favoriteFolders[i].mtime);
}
}
}
scope.QuickSort(list, 0, list.length - 1);
scope.reverse(list);
});

} else if (this.$sortingStrategy === 'alphabet') {
sort = true;
} else if (this.$sortingStrategy === 'date') {
sort = true;
} else if (this.$sortingStrategy === 'customorder') {
var scope = this;
$.get(OC.generateUrl("/apps/files/api/v1/quickaccess/get/CustomSortingOrder"), function (data, status) {
var ordering = JSON.parse(data);
for (var i = 0; i < ordering.length; i++) {
for (var j = 0; j < list.length; j++) {
if (scope.getCompareValue(list, j, 'alphabet').toLowerCase() === ordering[i].name.toLowerCase()) {
list[j].setAttribute("folderPosition", ordering[i].id);
}
}
}
scope.QuickSort(list, 0, list.length - 1);
});
sort = false;
}

if (sort) {
var quickAccessKey = this.$quickAccessListKey;
var quickAccessMenu = document.getElementById(quickAccessKey)
if (quickAccessMenu) {
var list = quickAccessMenu.getElementsByTagName('li');
this.QuickSort(list, 0, list.length - 1);
}
if (reverse) {
this.reverse(list);
}

},

/**
Expand Down Expand Up @@ -296,21 +235,7 @@
* This method allows easy access to the element which is sorted by.
*/
getCompareValue: function (nodes, int, strategy) {

if ((typeof strategy === 'undefined')) {
strategy = this.$sortingStrategy;
}

if (strategy === 'alphabet') {
return nodes[int].getElementsByTagName('a')[0].innerHTML.toLowerCase();
} else if (strategy === 'date') {
return nodes[int].getAttribute('folderPosition').toLowerCase();
} else if (strategy === 'datemodified') {
return nodes[int].getAttribute('mtime');
} else if (strategy === 'customorder') {
return nodes[int].getAttribute('folderPosition');
}
return nodes[int].getElementsByTagName('a')[0].innerHTML.toLowerCase();
},

/**
Expand All @@ -320,16 +245,6 @@
swap: function (list, j, i) {
list[i].before(list[j]);
list[j].before(list[i]);
},

/**
* Reverse QuickAccess-List
*/
reverse: function (list) {
var len = list.length - 1;
for (var i = 0; i < len / 2; i++) {
this.swap(list, i, len - i);
}
}

};
Expand Down
139 changes: 0 additions & 139 deletions apps/files/lib/Controller/ApiController.php
Original file line number Diff line number Diff line change
Expand Up @@ -199,30 +199,6 @@ public function getRecentFiles() {
return new DataResponse(['files' => $files]);
}

/**
* Returns a list of favorites modifed folder.
*
* @NoAdminRequired
*
* @return DataResponse
*/
public function getFavoritesFolder() {
$nodes = $this->userFolder->searchByTag('_$!<Favorite>!$_', $this->userSession->getUser()->getUID());

$favorites = [];
$i = 0;
foreach ($nodes as &$node) {

$favorites[$i]['id'] = $node->getId();
$favorites[$i]['name'] = $node->getName();
$favorites[$i]['path'] = $node->getInternalPath();
$favorites[$i]['mtime'] = $node->getMTime();
$i++;
}

return new DataResponse(['favoriteFolders' => $favorites]);
}

/**
* Return a list of share types for outgoing shares
*
Expand Down Expand Up @@ -315,120 +291,5 @@ public function toggleShowFolder(int $show, string $key) {
return $response;
}

/**
* quickaccess-sorting-strategy
*
* @NoAdminRequired
*
* @param string $strategy
* @return Response
*/
public function setSortingStrategy($strategy) {
$this->config->setUserValue($this->userSession->getUser()->getUID(), 'files', 'quickaccess_sorting_strategy', (String)$strategy);
return new Response();
}

/**
* Get reverse-state for quickaccess-list
*
* @NoAdminRequired
*
* @return String
*/
public function getSortingStrategy() {
return $this->config->getUserValue($this->userSession->getUser()->getUID(), 'files', 'quickaccess_sorting_strategy', 'alphabet');
}

/**
* Toggle for reverse quickaccess-list
*
* @NoAdminRequired
*
* @param bool $reverse
* @return Response
*/
public function setReverseQuickaccess($reverse) {
$this->config->setUserValue($this->userSession->getUser()->getUID(), 'files', 'quickaccess_reverse_list', (int)$reverse);
return new Response();
}

/**
* Get reverse-state for quickaccess-list
*
* @NoAdminRequired
*
* @return bool
*/
public function getReverseQuickaccess() {
if ($this->config->getUserValue($this->userSession->getUser()->getUID(), 'files', 'quickaccess_reverse_list', false)) {
return true;
}
return false;
}

/**
* Set state for show sorting menu
*
* @NoAdminRequired
*
* @param bool $show
* @return Response
*/
public function setShowQuickaccessSettings($show) {
$this->config->setUserValue($this->userSession->getUser()->getUID(), 'files', 'quickaccess_show_settings', (int)$show);
return new Response();
}

/**
* Get state for show sorting menu
*
* @NoAdminRequired
*
* @return bool
*/
public function getShowQuickaccessSettings() {
if ($this->config->getUserValue($this->userSession->getUser()->getUID(), 'files', 'quickaccess_show_settings', false)) {
return true;
}
return false;
}

/**
* Set sorting-order for custom sorting
*
* @NoAdminRequired
*
* @param String $order
* @return Response
*/
public function setSortingOrder($order) {
$this->config->setUserValue($this->userSession->getUser()->getUID(), 'files', 'quickaccess_custom_sorting_order', (String)$order);
return new Response();
}

/**
* Get sorting-order for custom sorting
*
* @NoAdminRequired
*
* @return String
*/
public function getSortingOrder() {
return $this->config->getUserValue($this->userSession->getUser()->getUID(), 'files', 'quickaccess_custom_sorting_order', "");
}

/**
* Get sorting-order for custom sorting
*
* @NoAdminRequired
*
* @param String
* @return String
*/
public function getNodeType($folderpath) {
$node = $this->userFolder->get($folderpath);
return $node->getType();
}


}