Commit c3af8dfc29253aa989838446bcf8794feb7baee7

Authored by Victor Costa
1 parent b07589aa
Exists in master and in 1 other branch dev-fixes

Allow themes to define its own styles

@@ -6,7 +6,9 @@ @@ -6,7 +6,9 @@
6 * of the tasks 6 * of the tasks
7 */ 7 */
8 8
  9 +var argv = require('minimist')(process.argv.slice(2));
9 var gutil = require('gulp-util'); 10 var gutil = require('gulp-util');
  11 +var path = require('path');
10 12
11 /** 13 /**
12 * The main paths of your project handle these with care 14 * The main paths of your project handle these with care
@@ -16,8 +18,13 @@ exports.paths = { @@ -16,8 +18,13 @@ exports.paths = {
16 dist: 'dist', 18 dist: 'dist',
17 tmp: '.tmp', 19 tmp: '.tmp',
18 e2e: 'e2e', 20 e2e: 'e2e',
19 - docs: 'docs' 21 + docs: 'docs',
  22 + theme: argv.theme ? path.join('themes', argv.theme) : null
20 }; 23 };
  24 +exports.paths.allSources = [exports.paths.src];
  25 +if(exports.paths.theme) {
  26 + exports.paths.allSources.push(exports.paths.theme);
  27 +}
21 28
22 /** 29 /**
23 * Wiredep is the lib which inject bower dependencies in your project 30 * Wiredep is the lib which inject bower dependencies in your project
gulp/styles.js
@@ -25,11 +25,14 @@ var buildStyles = function() { @@ -25,11 +25,14 @@ var buildStyles = function() {
25 style: 'expanded' 25 style: 'expanded'
26 }; 26 };
27 27
28 - var injectFiles = gulp.src([  
29 - path.join(conf.paths.src, '/app/**/*.scss'), 28 + var srcPaths = [
30 path.join('!' + conf.paths.src, '/app/index.scss'), 29 path.join('!' + conf.paths.src, '/app/index.scss'),
31 path.join('!' + conf.paths.src, '/app/layout/scss/*.scss') 30 path.join('!' + conf.paths.src, '/app/layout/scss/*.scss')
32 - ], { read: false }); 31 + ];
  32 + conf.paths.allSources.forEach(function(src) {
  33 + srcPaths.push(path.join(src, '/app/**/*.scss'));
  34 + });
  35 + var injectFiles = gulp.src(srcPaths, { read: false });
33 36
34 var injectOptions = { 37 var injectOptions = {
35 transform: function(filePath) { 38 transform: function(filePath) {
@@ -8,7 +8,7 @@ @@ -8,7 +8,7 @@
8 "ng-forward": "0.0.1-alpha.12" 8 "ng-forward": "0.0.1-alpha.12"
9 }, 9 },
10 "scripts": { 10 "scripts": {
11 - "build": "webpack; gulp clean && gulp build", 11 + "build": "webpack; gulp clean && gulp --theme=$npm_package_config_theme build",
12 "webpack": "webpack", 12 "webpack": "webpack",
13 "karma": "concurrently \"webpack -w\" \"karma start\"", 13 "karma": "concurrently \"webpack -w\" \"karma start\"",
14 "docs": "gulp ngdocs; static-server docs", 14 "docs": "gulp ngdocs; static-server docs",
@@ -19,7 +19,7 @@ @@ -19,7 +19,7 @@
19 "test": "webpack -w --test", 19 "test": "webpack -w --test",
20 "jenkins": "webpack && karma start --single-run", 20 "jenkins": "webpack && karma start --single-run",
21 "postinstall": "bower install; typings install; cd dev-scripts; typings install; cd ../; npm run fix-jqlite", 21 "postinstall": "bower install; typings install; cd dev-scripts; typings install; cd ../; npm run fix-jqlite",
22 - "start": "concurrently \"webpack -w\" \"gulp serve\"", 22 + "start": "concurrently \"webpack -w\" \"gulp --theme=$npm_package_config_theme serve\"",
23 "generate-indexes": "ts-node --project ./dev-scripts ./dev-scripts/generate-index-modules.ts", 23 "generate-indexes": "ts-node --project ./dev-scripts ./dev-scripts/generate-index-modules.ts",
24 "fix-jqlite": "ts-node --project ./dev-scripts dev-scripts/fix-jqlite.ts" 24 "fix-jqlite": "ts-node --project ./dev-scripts dev-scripts/fix-jqlite.ts"
25 }, 25 },
src/app/layout/navbar/redebrasil.scss
@@ -1,16 +0,0 @@ @@ -1,16 +0,0 @@
1 -.navbar {  
2 - min-height: 123px;  
3 - background:url("../assets/images/redebrasil/bg-header.png") repeat-x;  
4 -  
5 - .container-fluid {  
6 - .navbar-brand {  
7 - .noosfero-logo {  
8 - background:url("../assets/images/redebrasil/header-home.png") no-repeat;  
9 - padding: 0px 257px 63px 15px;  
10 - }  
11 - .noosfero-name {  
12 - display: none;  
13 - }  
14 - }  
15 - }  
16 -}  
src/app/redebrasil.scss
@@ -1,8 +0,0 @@ @@ -1,8 +0,0 @@
1 -body > .ng-scope {  
2 - background:url("../assets/images/redebrasil/fundo-portal.jpg") center top #59666E no-repeat ;  
3 - min-height: 100%;  
4 -}  
5 -  
6 -html, body {  
7 - height:100%;  
8 -}  
themes/rede-brasil/app/navbar.scss 0 → 100644
@@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
  1 +.navbar {
  2 + min-height: 123px;
  3 + background:url("../assets/images/redebrasil/bg-header.png") repeat-x;
  4 +
  5 + .container-fluid {
  6 + .navbar-brand {
  7 + .noosfero-logo {
  8 + background:url("../assets/images/redebrasil/header-home.png") no-repeat;
  9 + padding: 0px 257px 63px 15px;
  10 + }
  11 + .noosfero-name {
  12 + display: none;
  13 + }
  14 + }
  15 + }
  16 +}
themes/rede-brasil/app/redebrasil.scss 0 → 100644
@@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
  1 +body > .ng-scope {
  2 + background:url("../assets/images/redebrasil/fundo-portal.jpg") center top #59666E no-repeat ;
  3 + min-height: 100%;
  4 +}
  5 +
  6 +html, body {
  7 + height:100%;
  8 +}