checking if module is in the php modules or sass init file
authoranthony <astalarico@gmail.com>
Thu, 14 Jun 2018 01:57:00 +0000 (21:57 -0400)
committeranthony <astalarico@gmail.com>
Thu, 14 Jun 2018 01:57:00 +0000 (21:57 -0400)
setup/index.html
setup/moduleLib.js
setup/renderer.js

index 6cd61ee..82184cc 100644 (file)
@@ -10,6 +10,7 @@
 </head>
 <body>
     <h3>GLM Origin Theme Setup</h3>
+    <h5>some modules may not be displayed (header, footer, front page etc.)</h5>
     <div id="module-list-container">
     </div>
     <script src="renderer.js"></script>
index 641ea4e..3c267de 100644 (file)
@@ -1,8 +1,10 @@
 const modLib = (function() {
-    let appState    = {};
-    let fs          = require('fs');
-    let path        = require('path');
-    let reader      = require('readline');
+    let appState        = {};
+    let fs              = require('fs');
+    let path            = require('path');
+    let reader          = require('readline');
+    let acceptedToken   = ['//', '@import', 'require_once', 'include'];
+    let excludeMod      = ['defaults', 'footer', 'header', 'front-page'];
 
     return {
 
@@ -11,11 +13,17 @@ const modLib = (function() {
                 input: fs.createReadStream(filePath)
             });
         },
-
+        checkLine: function(line, mod){
+            for (var i = 0; i < acceptedToken.length; i++) {
+                if (line.startsWith(acceptedToken[i]) && (line.indexOf(`${mod.name}"`) > -1 || line.indexOf(`${mod.name}.php`) > -1) ){
+                    console.log(line)
+                    break;
+                }
+              }
+        },
         editFile: function(reader,mod){
             reader.on("line",function(line){
-                
-                console.log(line)
+                modLib.checkLine(line, mod)
             })
         },
 
@@ -73,15 +81,25 @@ const modLib = (function() {
             $(`<h2 id="${modType}-title">${modType} </h2>`).appendTo( $("#module-list-container"));
             $(`<ul class="module-list" id="${modType}-modules" />`).insertAfter( $(`#${modType}-title`));
             modLib.getModulesByType(modType).forEach(function(mod){
-                $('<li>', {
-                    text        : mod.name,
-                    class       : `module-item module-active-${mod.active}`,
-                    id          : `${mod.name}-module`,
-                    "data-type" : modType
-                }).appendTo( $(`#${modType}-modules`) );
+                if(!excludeMod.includes(mod.name)){
+                    $('<li>', {
+                        text        : mod.name,
+                        class       : `module-item module-active-${mod.active}`,
+                        id          : `${mod.name}-module`,
+                        "data-type" : modType
+                    }).appendTo( $(`#${modType}-modules`) );
+                }
             })
         },
 
+        getDirSlash: function(){
+            if(process.platform === "win32"){
+                return  "\\";
+            }else{
+                return "/";
+            }
+        },
+
         buildList: function(modType){
             if(modType){
                 modLib.generateListItems(modType)
@@ -93,21 +111,22 @@ const modLib = (function() {
         },
 
         scanDevDir: function(){
+            var slash = modLib.getDirSlash();
             if(modLib.getModules() === null){
-                ['dev/core', 'dev/custom'].forEach(function(dirPath) {
-                    let modType = dirPath.stringFromToken('after', "/");
+                [`dev${slash}core`, `dev${slash}custom`].forEach(function(dirPath) {
+                    let modType = dirPath.stringFromToken('after', `${slash}`);
                     let fullPath = require('path').join(__dirname, `../${dirPath}`);
                     let mods = [];
                     fs.readdir(fullPath, function(err, item) {
                         item.forEach(function(modName){
-                            let reference = `${fullPath}/${modName}`.stringFromToken('after',"dev/", false, true);
+                            let reference = `${fullPath}${slash}${modName}`.stringFromToken('after',`dev${slash}`, false, true);
                             mods.push({
                                 name: modName, 
                                 modType: modType,
                                 active: true,
-                                path: `${fullPath}/${modName}`, 
-                                sass: {lineRef:`${reference}/${modName}`, sassFile: 'dev/app/scss'},
-                                functions: {lineRef: `${reference}/functions/${modName}.php`, functionsfile: 'dev/modules.php'},
+                                path: `${fullPath}${slash}${modName}`, 
+                                sass: {lineRef:` ${reference}${slash}${modName}`, sassFile: `dev${slash}app${slash}scss`},
+                                functions: {lineRef: `${reference}${slash}functions${slash}${modName}.php`, functionsfile: `dev${slash}modules.php`},
                                 reference:reference 
                             });
                         });
index 810c9c6..5fd7743 100644 (file)
@@ -37,6 +37,7 @@ $(document).on("click", '.module-item', function(){
         thisModule.active = true;
     }
     lib.updateModule(thisModule)
-    lib.editFile(lib.createFileStream('dev/app.scss'), thisModule)
+    lib.editFile(lib.createFileStream('dev/app.scss'), thisModule);
+    lib.editFile(lib.createFileStream('dev/modules.php'), thisModule);
 });
 lib.scanDevDir();
\ No newline at end of file