diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2017-05-04 13:59:00 +0200 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2018-10-15 18:21:42 +0200 |
commit | e3d26a820db76f006ec364c90dc54a689446d998 (patch) | |
tree | ae7a80f266445fd6a3bb29abb25ac231d18e7516 /templates/hybrid-html5/app/Frontend/widgets/Navigation/LinkButton.js | |
parent | 02075924e861edb74935266cc722d362af87a9f0 (diff) |
Rename to more meaningful name directories
Change-Id: Ib3990308c1f2358b3e330cd0068719098c4dab56
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'templates/hybrid-html5/app/Frontend/widgets/Navigation/LinkButton.js')
-rw-r--r-- | templates/hybrid-html5/app/Frontend/widgets/Navigation/LinkButton.js | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/templates/hybrid-html5/app/Frontend/widgets/Navigation/LinkButton.js b/templates/hybrid-html5/app/Frontend/widgets/Navigation/LinkButton.js new file mode 100644 index 0000000..3e83425 --- /dev/null +++ b/templates/hybrid-html5/app/Frontend/widgets/Navigation/LinkButton.js @@ -0,0 +1,57 @@ +/* + * Copyright (C) 2015 "IoT.bzh" + * Author "Fulup Ar Foll" + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * Bugs: Input with Callback SHOULD BE get 'required' class + */ + +(function () { + 'use strict'; + + var tmpl = '<span title="Goto: {{href}}" ng-click="clicked()">' + + '<i class="{{icon}}"></i>' + + '<span>{{label}}</span>' + + '</span>'; + + + angular.module('LinkButton', []) + .directive('linkButton', function ($location) { + + function mymethods(scope, elem, attrs) { + + scope.clicked = function () { + + if (!attrs.query) $location.path(attrs.href); + else $location.path(attrs.href).search(attrs.query); + }; + + // ajust icon or use default + scope.icon = attrs.icon || 'fi-link'; + scope.label = attrs.label || 'Jump'; + scope.href = attrs.href || '/home'; + + // add label as class + elem.addClass (scope.label.toLowerCase()); + } + + return { + restrict: 'E', + template: tmpl, + link: mymethods, + scope: {} + }; + }); +})(); |