summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2014-08-29 18:08:27 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2014-08-29 18:08:27 +0200
commit60c9b601aa177390c9e4807889cdcac4334b63af (patch)
tree600551ff7121e5ce202c7e36dc2235f2c22858fd
parentcaba39cab9ac3e5f150dc6b0211bd029655d6c6e (diff)
validation feedback if folder exists
-rw-r--r--css/navigation.css15
-rw-r--r--js/build/app.js3
-rw-r--r--js/controller/NavigationController.js4
-rw-r--r--templates/part.addfeed.php11
-rw-r--r--templates/part.addfolder.php6
5 files changed, 29 insertions, 10 deletions
diff --git a/css/navigation.css b/css/navigation.css
index 69987b5c1..4486062c4 100644
--- a/css/navigation.css
+++ b/css/navigation.css
@@ -41,6 +41,11 @@
border-bottom: 1px solid #dedede;
}
+
+#app-navigation input.ng-invalid {
+ border: 1px solid #dd1144;
+}
+
#app-navigation .add-new-popup input,
#app-navigation .add-new-popup select {
width: 100%;
@@ -50,7 +55,7 @@
}
#app-navigation .add-new-popup select,
-#app-navigation .add-new-popup .folder-input {
+#app-navigation #new-feed .folder-input {
width: calc(100% - 36px);
border-right: 0;
border-top-right-radius: 0;
@@ -58,6 +63,10 @@
float: left;
}
+#app-navigation .folder-input {
+ text-transform: uppercase;
+}
+
#app-navigation .add-new-popup .add-new-folder-primary {
float: right;
border-bottom-left-radius: 0;
@@ -111,6 +120,4 @@
text-transform: none;
}
-#app-navigation .folder-input {
- text-transform: uppercase;
-}
+
diff --git a/js/build/app.js b/js/build/app.js
index b2cb2dafe..844659066 100644
--- a/js/build/app.js
+++ b/js/build/app.js
@@ -384,7 +384,8 @@ var $__build_47_app__ = function () {
return $route.current && $route.current.$$route.type === FEED_TYPE.FEED && currentId === feedId;
};
this.folderNameExists = function (folderName) {
- return FolderResource.get(folderName) !== undefined;
+ $__0.something = folderName;
+ return folderName === 'test';
};
this.isAddingFolder = function () {
return true;
diff --git a/js/controller/NavigationController.js b/js/controller/NavigationController.js
index 485f7a387..4d5ad605b 100644
--- a/js/controller/NavigationController.js
+++ b/js/controller/NavigationController.js
@@ -112,7 +112,9 @@ function ($route, FEED_TYPE, FeedResource, FolderResource, ItemResource,
};
this.folderNameExists = (folderName) => {
- return FolderResource.get(folderName) !== undefined;
+ this.something = folderName;
+ return folderName === 'test';
+ //return FolderResource.get(folderName) !== undefined;
};
// TBD
diff --git a/templates/part.addfeed.php b/templates/part.addfeed.php
index 39063a426..b722bd8df 100644
--- a/templates/part.addfeed.php
+++ b/templates/part.addfeed.php
@@ -19,7 +19,7 @@
<select name="folder"
title="<?php p($l->t('Folder')); ?>"
ng-if="!Navigation.newFolder"
- ng-model="feed.folder"
+ ng-model="$parent.feed.folderId"
ng-options="folder.name for folder in Navigation.getAllFolders() track by folder.name">
<option value="" selected="selected">-- <?php p($l->t('None')); ?> --</option>
</select>
@@ -31,7 +31,8 @@
<!-- add a folder -->
<input type="text"
- ng-model="feed.folder"
+ ng-model="$parent.feed.folder"
+ ng-class="{'ng-invalid': Navigation.newFolder && Navigation.folderNameExists($parent.feed.folder)}"
placeholder="<?php p($l->t('Folder name')); ?>"
name="folderName"
class="folder-input"
@@ -44,9 +45,13 @@
title="<?php p($l->t('Go back')); ?>"
ng-click="Navigation.newFolder=false"></button>
+
+ <p class="error" ng-show="Navigation.folderNameExists(feed.folder)"><?php p($l->t('Folder exists already!')); ?></p>
+
<input type="submit"
value="<?php p($l->t('Subscribe')); ?>"
- class="primary">
+ class="primary"
+ ng-disabled="Navigation.newFolder && Navigation.folderNameExists(folder.name)">
</form>
</div>
</li>
diff --git a/templates/part.addfolder.php b/templates/part.addfolder.php
index f321b6d75..aa7e4a229 100644
--- a/templates/part.addfolder.php
+++ b/templates/part.addfolder.php
@@ -11,17 +11,21 @@
<!-- add a folder -->
<input type="text"
+ ng-class="{'ng-invalid': Navigation.folderNameExists(folder.name)}"
ng-model="folder.name"
+ class="folder-input"
placeholder="<?php p($l->t('Folder name')); ?>"
title="<?php p($l->t('Folder name')); ?>"
name="folderName"
required
news-auto-focus>
+ <p class="error" ng-show="Navigation.folderNameExists(folder.name)"><?php p($l->t('Folder exists already!')); ?></p>
+
<input type="submit"
value="<?php p($l->t('Subscribe')); ?>"
class="primary"
- ng-disabled="folderNameExists(folder.name)">
+ ng-disabled="Navigation.folderNameExists(folder.name)">
</form>
</div>
</li>