]> source.dussan.org Git - nextcloud-server.git/commitdiff
fix response for tags and show error message
authorMorris Jobke <hey@morrisjobke.de>
Mon, 26 Jan 2015 10:27:51 +0000 (11:27 +0100)
committerJoas Schilling <nickvergessen@gmx.de>
Mon, 2 Feb 2015 10:17:54 +0000 (11:17 +0100)
apps/files/controller/apicontroller.php
apps/files/js/tagsplugin.js

index a8bea27e4bbfae906729e2fde68b5a0ea8808552..1bb07010a274157903180895c80aa8c2d6e8bfbb 100644 (file)
@@ -76,11 +76,11 @@ class ApiController extends Controller {
                        try {
                                $this->tagService->updateFileTags($path, $tags);
                        } catch (\OCP\Files\NotFoundException $e) {
-                               return new DataResponse($e->getMessage(), Http::STATUS_NOT_FOUND);
+                               return new DataResponse(['message' => $e->getMessage()], Http::STATUS_NOT_FOUND);
                        } catch (\OCP\Files\StorageNotAvailableException $e) {
-                               return new DataResponse($e->getMessage(), Http::STATUS_SERVICE_UNAVAILABLE);
+                               return new DataResponse(['message' => $e->getMessage()], Http::STATUS_SERVICE_UNAVAILABLE);
                        } catch (\Exception $e) {
-                               return new DataResponse($e->getMessage(), Http::STATUS_NOT_FOUND);
+                               return new DataResponse(['message' => $e->getMessage()], Http::STATUS_NOT_FOUND);
                        }
                        $result['tags'] = $tags;
                }
index b00aacfba57c6b7d0444b52d578a502c11a55995..b81f1ec575618e49f6eaf712e05bd549fc6799b0 100644 (file)
                                        } else {
                                                tags.push(OC.TAG_FAVORITE);
                                        }
+                                       toggleStar($actionEl, !isFavorite);
 
                                        self.applyFileTags(
                                                dir + '/' + fileName,
                                                tags
                                        ).then(function(result) {
-                                               toggleStar($actionEl, !isFavorite);
                                                // response from server should contain updated tags
                                                var newTags = result.tags;
                                                if (_.isUndefined(newTags)) {
                                }),
                                dataType: 'json',
                                type: 'POST'
-                       }).fail(function() {
-                               OC.Notification.showTemporary(t('files', 'An error occurred while trying to update the tags'));
+                       }).fail(function(response) {
+                               var message = '';
+                               // show message if it is available
+                               if(response.responseJSON && response.responseJSON.message) {
+                                       message = ': ' + response.responseJSON.message;
+                               }
+                               OC.Notification.showTemporary(t('files', 'An error occurred while trying to update the tags') + message);
                        });
                }
        };