diff --git a/luciexpress/htdocs/js/config.js b/luciexpress/htdocs/js/config.js index 9df7ee914..b2a4b41ed 100644 --- a/luciexpress/htdocs/js/config.js +++ b/luciexpress/htdocs/js/config.js @@ -50,7 +50,7 @@ angular.module("luci") "settings", "status", "internet", - "router", + //"router", "wifi" ], rpc: { diff --git a/luciexpress/htdocs/js/theme.js b/luciexpress/htdocs/js/theme.js index 495790169..56bada4f2 100644 --- a/luciexpress/htdocs/js/theme.js +++ b/luciexpress/htdocs/js/theme.js @@ -30,7 +30,7 @@ angular.module("luci") loadTheme: function(theme_id){ console.log("Loading theme "+theme_id); var deferred = $.Deferred(); - + var self = this; var themes = this.themes; if(!(theme_id in themes)) { var theme_root = "themes/"+theme_id; @@ -55,6 +55,7 @@ angular.module("luci") } }).error(function(){ console.log("Could not retreive theme config for theme: "+theme_id); + self.changeTheme("default"); }); } else { deferred.resolve(themes[theme_id]); diff --git a/luciexpress/htdocs/plugins/internet/internet.js b/luciexpress/htdocs/plugins/internet/internet.js index 4fd468aa8..9d5874d23 100644 --- a/luciexpress/htdocs/plugins/internet/internet.js +++ b/luciexpress/htdocs/plugins/internet/internet.js @@ -1,25 +1,3 @@ -/* - * juci - javascript universal client interface - * - * Project Author: Noël Wuyts - * - * Copyright (C) 2012-2013 Inteno Broadband Technology AB. All rights reserved. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * version 2 as published by the Free Software Foundation. - * - * 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, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - $juci.module("internet") .state("internet", { url: "/internet", diff --git a/luciexpress/htdocs/plugins/router/pages/internet.firewall.html b/luciexpress/htdocs/plugins/router/pages/internet.firewall.html deleted file mode 100644 index 3a90f79d5..000000000 --- a/luciexpress/htdocs/plugins/router/pages/internet.firewall.html +++ /dev/null @@ -1,23 +0,0 @@ - -
-

Firewall settings

-

Your EasyBox provides extensive firewall functionality which protects against common attacks. Vodafone recommends not to turn off firewall.

- - - - -
-
Enable firewall
-
-
- - - - -
-
{{rule.name.value | translate}}
-
-
- -
-
diff --git a/luciexpress/htdocs/plugins/router/pages/internet.firewall.js b/luciexpress/htdocs/plugins/router/pages/internet.firewall.js deleted file mode 100644 index 49ecc5a81..000000000 --- a/luciexpress/htdocs/plugins/router/pages/internet.firewall.js +++ /dev/null @@ -1,26 +0,0 @@ -$juci.module("router") -.controller("InternetFirewallPageCtrl", function($scope, $uci){ - $scope.firewallSwitchState = 0; - $uci.sync("firewall").done(function(){ - $scope.firewall = $uci.firewall; - $scope.firewallSwitchState = $uci.firewall["@rule"].filter(function(rule){ return rule.enabled.value == true; }).length > 0; - $scope.$apply(); - }); - $scope.onFirewallToggle = function(){ - if(!$scope.firewallSwitchState) { - $uci.firewall["@zone"].map(function(zone){ - if(zone.name.value == "wan"){ - zone.input.value = "ACCEPT"; - zone.forward.value = "ACCEPT"; - } - }); - } else { - $uci.firewall["@zone"].map(function(zone){ - if(zone.name.value == "wan"){ - zone.input.value = "REJECT"; - zone.forward.value = "REJECT"; - } - }); - } - } -}); diff --git a/luciexpress/htdocs/plugins/router/pages/internet.port_mapping.html b/luciexpress/htdocs/plugins/router/pages/internet.port_mapping.html deleted file mode 100644 index ebd427a58..000000000 --- a/luciexpress/htdocs/plugins/router/pages/internet.port_mapping.html +++ /dev/null @@ -1,29 +0,0 @@ - -
-

Port Mapping

-

Port mapping allows remote computers to connect to a specific device within your private network.

- - - - - - - - - - - - - - - - - - -
Local IPProtocolLocal portPublic Port
{{ r.dest_ip.value }}{{ r.proto.value }}{{ r.dest_port.value }}{{ r.src_dport.value }}
- - - - -
-
diff --git a/luciexpress/htdocs/plugins/router/pages/internet.port_mapping.js b/luciexpress/htdocs/plugins/router/pages/internet.port_mapping.js deleted file mode 100644 index 3910cfb6b..000000000 --- a/luciexpress/htdocs/plugins/router/pages/internet.port_mapping.js +++ /dev/null @@ -1,61 +0,0 @@ -$juci.module("router") -.controller("InternetPortMappingPageCtrl", function($scope, $uci, ModalService, $rpc){ - - function reload(){ - $uci.sync("firewall").done(function(firewall){ - $scope.redirects = $uci.firewall["@forwarding"]; - $scope.$apply(); - }); - } reload(); - - $scope.showModal = 0; - $scope.onAcceptModal = function(){ - var rule = $scope.rule; - //Object.keys($scope.redirects).map(function(idx) { var x = $scope.redirects[idx]; if(x[".name"] == rule[".name"]) $scope.redirects[idx] = rule; }); - console.log(JSON.stringify(rule)); - if(!rule[".name"]){ - // set up the rule in uci - rule[".type"] = "forwarding"; - $uci.firewall.create(rule).done(function(rule){ - $scope.rule_src = rule; - $scope.$apply(); - }); - } - Object.keys(rule).map(function(key){ - if($scope.rule_src && key in $scope.rule_src) $scope.rule_src[key].value = rule[key]; - }); - $scope.showModal = 0; - } - $scope.onDismissModal = function(){ - $scope.showModal = 0; - } - $scope.onAddRule = function(){ - $scope.rule = {}; - //$scope.redirects.push($scope.rule); - $scope.showModal = 1; - } - $scope.onEditRule = function(rule){ - $scope.rule_src = rule; - $scope.rule = { - ".name": rule[".name"], - dest_ip: rule.dest_ip.value, - proto: rule.proto.value, - dest_port: rule.dest_port.value, - src_dport: rule.src_dport.value - }; - $scope.modalTitle = "Edit port mapping ("+(rule['.name'] || 'new')+")"; - $scope.showModal = 1; - } - $scope.onDeleteRule = function(rule){ - rule.$delete().done(function(){ - $scope.$apply(); - }); - /*if(rule[".name"]){ - $uci.delete("firewall."+rule[".name"]).always(function(){ - removeFromList(); - }); - } else { - retmoveFromList(); - }*/ - } -}); diff --git a/luciexpress/htdocs/themes/vodafone/css/config.json b/luciexpress/htdocs/themes/vodafone/css/config.json new file mode 100644 index 000000000..fa4679a67 --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/css/config.json @@ -0,0 +1,430 @@ +{ + "vars": { + "@gray-base": "#000", + "@gray-darker": "lighten(@gray-base, 13.5%)", + "@gray-dark": "lighten(@gray-base, 20%)", + "@gray": "lighten(@gray-base, 33.5%)", + "@gray-light": "lighten(@gray-base, 46.7%)", + "@gray-lighter": "lighten(@gray-base, 93.5%)", + "@brand-primary": "darken(#428bca, 6.5%)", + "@brand-success": "#5cb85c", + "@brand-info": "#5bc0de", + "@brand-warning": "#f0ad4e", + "@brand-danger": "#d9534f", + "@body-bg": "#fff", + "@text-color": "@gray-dark", + "@link-color": "#bc56b8", + "@link-hover-color": "#8d388a", + "@link-hover-decoration": "underline", + "@font-family-sans-serif": "\"Helvetica Neue\", Helvetica, Arial, sans-serif", + "@font-family-serif": "Georgia, \"Times New Roman\", Times, serif", + "@font-family-monospace": "Menlo, Monaco, Consolas, \"Courier New\", monospace", + "@font-family-base": "@font-family-sans-serif", + "@font-size-base": "14px", + "@font-size-large": "ceil((@font-size-base * 1.25))", + "@font-size-small": "ceil((@font-size-base * 0.85))", + "@font-size-h1": "floor((@font-size-base * 2.6))", + "@font-size-h2": "floor((@font-size-base * 2.15))", + "@font-size-h3": "ceil((@font-size-base * 1.7))", + "@font-size-h4": "ceil((@font-size-base * 1.25))", + "@font-size-h5": "@font-size-base", + "@font-size-h6": "ceil((@font-size-base * 0.85))", + "@line-height-base": "1.428571429", + "@line-height-computed": "floor((@font-size-base * @line-height-base))", + "@headings-font-family": "inherit", + "@headings-font-weight": "500", + "@headings-line-height": "1.1", + "@headings-color": "inherit", + "@icon-font-path": "\"../fonts/\"", + "@icon-font-name": "\"glyphicons-halflings-regular\"", + "@icon-font-svg-id": "\"glyphicons_halflingsregular\"", + "@padding-base-vertical": "6px", + "@padding-base-horizontal": "12px", + "@padding-large-vertical": "10px", + "@padding-large-horizontal": "16px", + "@padding-small-vertical": "5px", + "@padding-small-horizontal": "10px", + "@padding-xs-vertical": "1px", + "@padding-xs-horizontal": "5px", + "@line-height-large": "1.3333333", + "@line-height-small": "1.5", + "@border-radius-base": "4px", + "@border-radius-large": "6px", + "@border-radius-small": "3px", + "@component-active-color": "#fff", + "@component-active-bg": "#bc56b8", + "@caret-width-base": "4px", + "@caret-width-large": "5px", + "@table-cell-padding": "8px", + "@table-condensed-cell-padding": "5px", + "@table-bg": "transparent", + "@table-bg-accent": "#f9f9f9", + "@table-bg-hover": "#f5f5f5", + "@table-bg-active": "@table-bg-hover", + "@table-border-color": "#ddd", + "@btn-font-weight": "normal", + "@btn-default-color": "#333", + "@btn-default-bg": "#fff", + "@btn-default-border": "#ccc", + "@btn-primary-color": "#fff", + "@btn-primary-bg": "#bc56b8", + "@btn-primary-border": "darken(@btn-primary-bg, 5%)", + "@btn-success-color": "#fff", + "@btn-success-bg": "@brand-success", + "@btn-success-border": "darken(@btn-success-bg, 5%)", + "@btn-info-color": "#fff", + "@btn-info-bg": "@brand-info", + "@btn-info-border": "darken(@btn-info-bg, 5%)", + "@btn-warning-color": "#fff", + "@btn-warning-bg": "@brand-warning", + "@btn-warning-border": "darken(@btn-warning-bg, 5%)", + "@btn-danger-color": "#fff", + "@btn-danger-bg": "@brand-danger", + "@btn-danger-border": "darken(@btn-danger-bg, 5%)", + "@btn-link-disabled-color": "@gray-light", + "@input-bg": "#fff", + "@input-bg-disabled": "@gray-lighter", + "@input-color": "@gray", + "@input-border": "#ccc", + "@input-border-radius": "@border-radius-base", + "@input-border-radius-large": "@border-radius-large", + "@input-border-radius-small": "@border-radius-small", + "@input-border-focus": "#66afe9", + "@input-color-placeholder": "#999", + "@input-height-base": "(@line-height-computed + (@padding-base-vertical * 2) + 2)", + "@input-height-large": "(ceil(@font-size-large * @line-height-large) + (@padding-large-vertical * 2) + 2)", + "@input-height-small": "(floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2)", + "@form-group-margin-bottom": "15px", + "@legend-color": "@gray-dark", + "@legend-border-color": "#e5e5e5", + "@input-group-addon-bg": "@gray-lighter", + "@input-group-addon-border-color": "@input-border", + "@cursor-disabled": "not-allowed", + "@dropdown-bg": "#fff", + "@dropdown-border": "rgba(0,0,0,.15)", + "@dropdown-fallback-border": "#ccc", + "@dropdown-divider-bg": "#e5e5e5", + "@dropdown-link-color": "@gray-dark", + "@dropdown-link-hover-color": "darken(@gray-dark, 5%)", + "@dropdown-link-hover-bg": "#f5f5f5", + "@dropdown-link-active-color": "@component-active-color", + "@dropdown-link-active-bg": "@component-active-bg", + "@dropdown-link-disabled-color": "@gray-light", + "@dropdown-header-color": "@gray-light", + "@dropdown-caret-color": "#000", + "@screen-xs": "480px", + "@screen-xs-min": "@screen-xs", + "@screen-phone": "@screen-xs-min", + "@screen-sm": "768px", + "@screen-sm-min": "@screen-sm", + "@screen-tablet": "@screen-sm-min", + "@screen-md": "992px", + "@screen-md-min": "@screen-md", + "@screen-desktop": "@screen-md-min", + "@screen-lg": "1200px", + "@screen-lg-min": "@screen-lg", + "@screen-lg-desktop": "@screen-lg-min", + "@screen-xs-max": "(@screen-sm-min - 1)", + "@screen-sm-max": "(@screen-md-min - 1)", + "@screen-md-max": "(@screen-lg-min - 1)", + "@grid-columns": "12", + "@grid-gutter-width": "30px", + "@grid-float-breakpoint": "@screen-sm-min", + "@grid-float-breakpoint-max": "(@grid-float-breakpoint - 1)", + "@container-tablet": "(720px + @grid-gutter-width)", + "@container-sm": "@container-tablet", + "@container-desktop": "(940px + @grid-gutter-width)", + "@container-md": "@container-desktop", + "@container-large-desktop": "(1140px + @grid-gutter-width)", + "@container-lg": "@container-large-desktop", + "@navbar-height": "50px", + "@navbar-margin-bottom": "@line-height-computed", + "@navbar-border-radius": "@border-radius-base", + "@navbar-padding-horizontal": "floor((@grid-gutter-width / 2))", + "@navbar-padding-vertical": "((@navbar-height - @line-height-computed) / 2)", + "@navbar-collapse-max-height": "340px", + "@navbar-default-color": "#fefefe", + "@navbar-default-bg": "#e60000", + "@navbar-default-border": "#e60000", + "@navbar-default-link-color": "#fefefe", + "@navbar-default-link-hover-color": "#333", + "@navbar-default-link-hover-bg": "#ececec", + "@navbar-default-link-active-color": "#fff", + "@navbar-default-link-active-bg": "#c50000", + "@navbar-default-link-disabled-color": "#ccc", + "@navbar-default-link-disabled-bg": "transparent", + "@navbar-default-brand-color": "@navbar-default-link-color", + "@navbar-default-brand-hover-color": "darken(@navbar-default-brand-color, 10%)", + "@navbar-default-brand-hover-bg": "transparent", + "@navbar-default-toggle-hover-bg": "#ddd", + "@navbar-default-toggle-icon-bar-bg": "#fff", + "@navbar-default-toggle-border-color": "#ddd", + "@navbar-inverse-color": "lighten(@gray-light, 15%)", + "@navbar-inverse-bg": "#222", + "@navbar-inverse-border": "darken(@navbar-inverse-bg, 10%)", + "@navbar-inverse-link-color": "lighten(@gray-light, 15%)", + "@navbar-inverse-link-hover-color": "#fff", + "@navbar-inverse-link-hover-bg": "transparent", + "@navbar-inverse-link-active-color": "@navbar-inverse-link-hover-color", + "@navbar-inverse-link-active-bg": "darken(@navbar-inverse-bg, 10%)", + "@navbar-inverse-link-disabled-color": "#444", + "@navbar-inverse-link-disabled-bg": "transparent", + "@navbar-inverse-brand-color": "@navbar-inverse-link-color", + "@navbar-inverse-brand-hover-color": "#fff", + "@navbar-inverse-brand-hover-bg": "transparent", + "@navbar-inverse-toggle-hover-bg": "#333", + "@navbar-inverse-toggle-icon-bar-bg": "#fff", + "@navbar-inverse-toggle-border-color": "#333", + "@nav-link-padding": "10px 15px", + "@nav-link-hover-bg": "@gray-lighter", + "@nav-disabled-link-color": "@gray-light", + "@nav-disabled-link-hover-color": "@gray-light", + "@nav-tabs-border-color": "#ddd", + "@nav-tabs-link-hover-border-color": "@gray-lighter", + "@nav-tabs-active-link-hover-bg": "@body-bg", + "@nav-tabs-active-link-hover-color": "@gray", + "@nav-tabs-active-link-hover-border-color": "#ddd", + "@nav-tabs-justified-link-border-color": "#ddd", + "@nav-tabs-justified-active-link-border-color": "@body-bg", + "@nav-pills-border-radius": "@border-radius-base", + "@nav-pills-active-link-hover-bg": "@component-active-bg", + "@nav-pills-active-link-hover-color": "@component-active-color", + "@pagination-color": "@link-color", + "@pagination-bg": "#fff", + "@pagination-border": "#ddd", + "@pagination-hover-color": "@link-hover-color", + "@pagination-hover-bg": "@gray-lighter", + "@pagination-hover-border": "#ddd", + "@pagination-active-color": "#fff", + "@pagination-active-bg": "#bc56b8", + "@pagination-active-border": "#bc56b8", + "@pagination-disabled-color": "@gray-light", + "@pagination-disabled-bg": "#fff", + "@pagination-disabled-border": "#ddd", + "@pager-bg": "@pagination-bg", + "@pager-border": "@pagination-border", + "@pager-border-radius": "15px", + "@pager-hover-bg": "@pagination-hover-bg", + "@pager-active-bg": "@pagination-active-bg", + "@pager-active-color": "@pagination-active-color", + "@pager-disabled-color": "@pagination-disabled-color", + "@jumbotron-padding": "30px", + "@jumbotron-color": "inherit", + "@jumbotron-bg": "@gray-lighter", + "@jumbotron-heading-color": "inherit", + "@jumbotron-font-size": "ceil((@font-size-base * 1.5))", + "@state-success-text": "#3c763d", + "@state-success-bg": "#dff0d8", + "@state-success-border": "darken(spin(@state-success-bg, -10), 5%)", + "@state-info-text": "#31708f", + "@state-info-bg": "#d9edf7", + "@state-info-border": "darken(spin(@state-info-bg, -10), 7%)", + "@state-warning-text": "#8a6d3b", + "@state-warning-bg": "#fcf8e3", + "@state-warning-border": "darken(spin(@state-warning-bg, -10), 5%)", + "@state-danger-text": "#a94442", + "@state-danger-bg": "#f2dede", + "@state-danger-border": "darken(spin(@state-danger-bg, -10), 5%)", + "@tooltip-max-width": "200px", + "@tooltip-color": "#fff", + "@tooltip-bg": "#000", + "@tooltip-opacity": ".9", + "@tooltip-arrow-width": "5px", + "@tooltip-arrow-color": "@tooltip-bg", + "@popover-bg": "#fff", + "@popover-max-width": "276px", + "@popover-border-color": "rgba(0,0,0,.2)", + "@popover-fallback-border-color": "#ccc", + "@popover-title-bg": "darken(@popover-bg, 3%)", + "@popover-arrow-width": "10px", + "@popover-arrow-color": "@popover-bg", + "@popover-arrow-outer-width": "(@popover-arrow-width + 1)", + "@popover-arrow-outer-color": "fadein(@popover-border-color, 5%)", + "@popover-arrow-outer-fallback-color": "darken(@popover-fallback-border-color, 20%)", + "@label-default-bg": "@gray-light", + "@label-primary-bg": "#bc56b8", + "@label-success-bg": "@brand-success", + "@label-info-bg": "@brand-info", + "@label-warning-bg": "@brand-warning", + "@label-danger-bg": "@brand-danger", + "@label-color": "#fff", + "@label-link-hover-color": "#fff", + "@modal-inner-padding": "15px", + "@modal-title-padding": "15px", + "@modal-title-line-height": "@line-height-base", + "@modal-content-bg": "#fff", + "@modal-content-border-color": "rgba(0,0,0,.2)", + "@modal-content-fallback-border-color": "#999", + "@modal-backdrop-bg": "#000", + "@modal-backdrop-opacity": ".5", + "@modal-header-border-color": "#e5e5e5", + "@modal-footer-border-color": "@modal-header-border-color", + "@modal-lg": "900px", + "@modal-md": "600px", + "@modal-sm": "300px", + "@alert-padding": "15px", + "@alert-border-radius": "@border-radius-base", + "@alert-link-font-weight": "bold", + "@alert-success-bg": "@state-success-bg", + "@alert-success-text": "@state-success-text", + "@alert-success-border": "@state-success-border", + "@alert-info-bg": "@state-info-bg", + "@alert-info-text": "@state-info-text", + "@alert-info-border": "@state-info-border", + "@alert-warning-bg": "@state-warning-bg", + "@alert-warning-text": "@state-warning-text", + "@alert-warning-border": "@state-warning-border", + "@alert-danger-bg": "@state-danger-bg", + "@alert-danger-text": "@state-danger-text", + "@alert-danger-border": "@state-danger-border", + "@progress-bg": "#f5f5f5", + "@progress-bar-color": "#fff", + "@progress-border-radius": "@border-radius-base", + "@progress-bar-bg": "@brand-primary", + "@progress-bar-success-bg": "@brand-success", + "@progress-bar-warning-bg": "@brand-warning", + "@progress-bar-danger-bg": "@brand-danger", + "@progress-bar-info-bg": "@brand-info", + "@list-group-bg": "#fff", + "@list-group-border": "#ddd", + "@list-group-border-radius": "@border-radius-base", + "@list-group-hover-bg": "#f5f5f5", + "@list-group-active-color": "@component-active-color", + "@list-group-active-bg": "@component-active-bg", + "@list-group-active-border": "@list-group-active-bg", + "@list-group-active-text-color": "lighten(@list-group-active-bg, 40%)", + "@list-group-disabled-color": "@gray-light", + "@list-group-disabled-bg": "@gray-lighter", + "@list-group-disabled-text-color": "@list-group-disabled-color", + "@list-group-link-color": "#555", + "@list-group-link-hover-color": "@list-group-link-color", + "@list-group-link-heading-color": "#333", + "@panel-bg": "#fff", + "@panel-body-padding": "15px", + "@panel-heading-padding": "10px 15px", + "@panel-footer-padding": "@panel-heading-padding", + "@panel-border-radius": "@border-radius-base", + "@panel-inner-border": "#ddd", + "@panel-footer-bg": "#f5f5f5", + "@panel-default-text": "@gray-dark", + "@panel-default-border": "#ddd", + "@panel-default-heading-bg": "#f5f5f5", + "@panel-primary-text": "#fff", + "@panel-primary-border": "#bc56b8", + "@panel-primary-heading-bg": "#bc56b8", + "@panel-success-text": "@state-success-text", + "@panel-success-border": "@state-success-border", + "@panel-success-heading-bg": "@state-success-bg", + "@panel-info-text": "@state-info-text", + "@panel-info-border": "@state-info-border", + "@panel-info-heading-bg": "@state-info-bg", + "@panel-warning-text": "@state-warning-text", + "@panel-warning-border": "@state-warning-border", + "@panel-warning-heading-bg": "@state-warning-bg", + "@panel-danger-text": "@state-danger-text", + "@panel-danger-border": "@state-danger-border", + "@panel-danger-heading-bg": "@state-danger-bg", + "@thumbnail-padding": "4px", + "@thumbnail-bg": "@body-bg", + "@thumbnail-border": "#ddd", + "@thumbnail-border-radius": "@border-radius-base", + "@thumbnail-caption-color": "@text-color", + "@thumbnail-caption-padding": "9px", + "@well-bg": "#f5f5f5", + "@well-border": "darken(@well-bg, 7%)", + "@badge-color": "#fff", + "@badge-link-hover-color": "#fff", + "@badge-bg": "@gray-light", + "@badge-active-color": "@link-color", + "@badge-active-bg": "#fff", + "@badge-font-weight": "bold", + "@badge-line-height": "1", + "@badge-border-radius": "10px", + "@breadcrumb-padding-vertical": "8px", + "@breadcrumb-padding-horizontal": "15px", + "@breadcrumb-bg": "#f5f5f5", + "@breadcrumb-color": "#ccc", + "@breadcrumb-active-color": "@gray-light", + "@breadcrumb-separator": "\"/\"", + "@carousel-text-shadow": "0 1px 2px rgba(0,0,0,.6)", + "@carousel-control-color": "#fff", + "@carousel-control-width": "15%", + "@carousel-control-opacity": ".5", + "@carousel-control-font-size": "20px", + "@carousel-indicator-active-bg": "#fff", + "@carousel-indicator-border-color": "#fff", + "@carousel-caption-color": "#fff", + "@close-font-weight": "bold", + "@close-color": "#000", + "@close-text-shadow": "0 1px 0 #fff", + "@code-color": "#c7254e", + "@code-bg": "#f9f2f4", + "@kbd-color": "#fff", + "@kbd-bg": "#333", + "@pre-bg": "#f5f5f5", + "@pre-color": "@gray-dark", + "@pre-border-color": "#ccc", + "@pre-scrollable-max-height": "340px", + "@component-offset-horizontal": "180px", + "@text-muted": "@gray-light", + "@abbr-border-color": "@gray-light", + "@headings-small-color": "@gray-light", + "@blockquote-small-color": "@gray-light", + "@blockquote-font-size": "(@font-size-base * 1.25)", + "@blockquote-border-color": "@gray-lighter", + "@page-header-border-color": "@gray-lighter", + "@dl-horizontal-offset": "@component-offset-horizontal", + "@hr-border": "@gray-lighter" + }, + "css": [ + "print.less", + "type.less", + "code.less", + "grid.less", + "tables.less", + "forms.less", + "buttons.less", + "responsive-utilities.less", + "glyphicons.less", + "button-groups.less", + "input-groups.less", + "navs.less", + "navbar.less", + "breadcrumbs.less", + "pagination.less", + "pager.less", + "labels.less", + "badges.less", + "jumbotron.less", + "thumbnails.less", + "alerts.less", + "progress-bars.less", + "media.less", + "list-group.less", + "panels.less", + "responsive-embed.less", + "wells.less", + "close.less", + "component-animations.less", + "dropdowns.less", + "tooltip.less", + "popovers.less", + "modals.less", + "carousel.less" + ], + "js": [ + "alert.js", + "button.js", + "carousel.js", + "dropdown.js", + "modal.js", + "tooltip.js", + "popover.js", + "tab.js", + "affix.js", + "collapse.js", + "scrollspy.js", + "transition.js" + ], + "customizerUrl": "http://getbootstrap.com/customize/?id=70e8cb63d5e549ebbd25" +} \ No newline at end of file diff --git a/luciexpress/htdocs/themes/vodafone/css/theme.css b/luciexpress/htdocs/themes/vodafone/css/theme.css new file mode 100644 index 000000000..2fd730470 --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/css/theme.css @@ -0,0 +1,123 @@ +body { + font-size: 16px; +} + +.top-bar { + margin-bottom: 20px; + background-color: #EBEBEB; + border-bottom: 1px solid #ccc; + padding-bottom: 10px; +} + +.top-bar { + margin-bottom: 20px; + background-color: #EBEBEB; + border-bottom: 1px solid #ccc; + padding-bottom: 10px; +} + +.navbar-default { + box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6); +} + +.navbar-brand { + padding: 9px !important; +} + +div.logo { + background-image: url('../img/vf-logo.png'); + background-size: 100%; + height: 32px; + width: 32px; +} + +#rhombus-wrap { + float: left; + margin-left: -80px; + margin-right: 20px; + margin-top: -35px; + position: relative; + width: 60px; + z-index: 10; +} +#logo { + background: scroll; + background-color: transparent; + background-image: url("../img/vf-logo.png"); + background-origin: padding-box; + background-position: 0 30px; + background-repeat: no-repeat; + background-size: auto auto; + display: block; + height: 90px; + position: absolute; + width: 60px; + z-index: 5; +} +#rhombus { + background-color: #e60000; + height: 40px; + left: -9969px; + position: absolute; + top: 41px; + width: 9999px; + z-index: -1; +} +#rhombus:before { + border-color: transparent transparent #e60000 transparent; + border-style: none inset solid none; + border-width: medium 9999px 9999px medium; + content: " "; + height: 0; + left: 25px; + overflow: hidden; + position: absolute; + top: -9996px; + width: 0; +} +#rhombus:after { + border-right: 9999px inset transparent; + border-top: 9999px solid #e60000; + content: " "; + height: 0; + left: 24px; + overflow: hidden; + position: absolute; + top: 36px; + width: 0; + z-index: 1; +} + +.luci-nav a { + color: #444; +} +.nav > li.open > a { + color: #ee0000 !important; +} +.navbar .nav > li.open > a { + color: #fff !important; +} + +h1, h2 { + color: #e00 !important; +} + +.animate-show { + line-height: 20px; + opacity: 1; + padding: 10px; + border: 1px solid black; + background: white; +} + +.animate-show.ng-hide-add.ng-hide-add-active, +.animate-show.ng-hide-remove.ng-hide-remove-active { + -webkit-transition: all linear 0.5s; + transition: all linear 0.5s; +} + +.animate-show.ng-hide { + line-height: 0; + opacity: 0; + padding: 0 10px; +} diff --git a/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.eot b/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.eot new file mode 100644 index 000000000..b93a4953f Binary files /dev/null and b/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.eot differ diff --git a/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.svg b/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.svg new file mode 100644 index 000000000..94fb5490a --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.svg @@ -0,0 +1,288 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.ttf b/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.ttf new file mode 100644 index 000000000..1413fc609 Binary files /dev/null and b/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.ttf differ diff --git a/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.woff b/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.woff new file mode 100644 index 000000000..9e612858f Binary files /dev/null and b/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.woff differ diff --git a/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.woff2 b/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.woff2 new file mode 100644 index 000000000..64539b54c Binary files /dev/null and b/luciexpress/htdocs/themes/vodafone/fonts/glyphicons-halflings-regular.woff2 differ diff --git a/luciexpress/htdocs/themes/vodafone/vodaphone.js b/luciexpress/htdocs/themes/vodafone/vodaphone.js new file mode 100644 index 000000000..52cf1ae2e --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/vodaphone.js @@ -0,0 +1,18 @@ +(function(){ + var overrides = { + "luciFooterDirective": "/widgets/luci.footer.html", + "luciLayoutNakedDirective": "/widgets/luci.layout.naked.html", + "luciLayoutSingleColumnDirective": "/widgets/luci.layout.single_column.html", + "luciLayoutWithSidebarDirective": "/widgets/luci.layout.with_sidebar.html", + "luciNavDirective": "/widgets/luci.nav.html", + "luciNavbarDirective": "/widgets/luci.navbar.html", + "luciTopBarDirective": "/widgets/luci.top_bar.html" + }; + Object.keys(overrides).map(function(k){ + $juci.decorator(k, function($delegate){ + var plugin_root = $juci.module("vodafone").plugin_root; + $delegate[1].templateUrl = plugin_root + overrides[k]; + return $delegate; + }); + }); +})(); diff --git a/luciexpress/htdocs/themes/vodafone/widgets/luci.footer.html b/luciexpress/htdocs/themes/vodafone/widgets/luci.footer.html new file mode 100644 index 000000000..36058b77d --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/widgets/luci.footer.html @@ -0,0 +1,23 @@ +
+
+
+
+
+
+ + {{lang.title}}{{$last ? '' : ' | '}} + +
+
+ WAN IP Address: {{wanip}} | Firmware version: {{firmware}} +
+
+
+
+ +
+
+
+
+
+
diff --git a/luciexpress/htdocs/themes/vodafone/widgets/luci.layout.naked.html b/luciexpress/htdocs/themes/vodafone/widgets/luci.layout.naked.html new file mode 100644 index 000000000..6e172a7a2 --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/widgets/luci.layout.naked.html @@ -0,0 +1,12 @@ + +
+
+ +
+ +
+
+ +
+
+
diff --git a/luciexpress/htdocs/themes/vodafone/widgets/luci.layout.single_column.html b/luciexpress/htdocs/themes/vodafone/widgets/luci.layout.single_column.html new file mode 100644 index 000000000..e2fc1abf4 --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/widgets/luci.layout.single_column.html @@ -0,0 +1,30 @@ + +
+
+
+
+
+
+ +
+
+
+ +
+
+
+ +
+
+
+
+
+
+
+
+
+ +
+
+
+
diff --git a/luciexpress/htdocs/themes/vodafone/widgets/luci.layout.with_sidebar.html b/luciexpress/htdocs/themes/vodafone/widgets/luci.layout.with_sidebar.html new file mode 100644 index 000000000..8c92ce17c --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/widgets/luci.layout.with_sidebar.html @@ -0,0 +1,46 @@ + +
+
+
+
+
+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+
+
+ +
+
+
+
+ +
+
+
+
diff --git a/luciexpress/htdocs/themes/vodafone/widgets/luci.nav.html b/luciexpress/htdocs/themes/vodafone/widgets/luci.nav.html new file mode 100644 index 000000000..a6258b422 --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/widgets/luci.nav.html @@ -0,0 +1,12 @@ + diff --git a/luciexpress/htdocs/themes/vodafone/widgets/luci.navbar.html b/luciexpress/htdocs/themes/vodafone/widgets/luci.navbar.html new file mode 100644 index 000000000..93b09dfd1 --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/widgets/luci.navbar.html @@ -0,0 +1,21 @@ + diff --git a/luciexpress/htdocs/themes/vodafone/widgets/luci.top_bar.html b/luciexpress/htdocs/themes/vodafone/widgets/luci.top_bar.html new file mode 100644 index 000000000..e5a777758 --- /dev/null +++ b/luciexpress/htdocs/themes/vodafone/widgets/luci.top_bar.html @@ -0,0 +1,26 @@ +
+
+
+
+
+
+ + {{$select.selected.label}} + +
{{mode.label}}
+
+
+
+
{{ model }}
+ +
+
+
+
+