@@ -45,16 +45,20 @@ public function watch() {
4545
4646 // iterate over the patterns & related data and regenerate the entire site if they've changed
4747 $ patternObjects = new RecursiveIteratorIterator (new RecursiveDirectoryIterator (__DIR__ ."/../../source/_patterns/ " ), RecursiveIteratorIterator::SELF_FIRST );
48+
49+ // make sure dots are skipped
50+ $ patternObjects ->setFlags (FilesystemIterator::SKIP_DOTS );
51+
4852 foreach ($ patternObjects as $ name => $ object ) {
4953
5054 // clean-up the file name and make sure it's not one of the pattern lab files or to be ignored
51- $ fileName = str_replace (__DIR__ ."/../../source/_patterns/ " ,"" ,$ name );
52- $ fileNameClean = str_replace (" / _ " ," / " ,$ fileName );
55+ $ fileName = str_replace (__DIR__ ."/../../source/_patterns " . DIRECTORY_SEPARATOR ,"" ,$ name );
56+ $ fileNameClean = str_replace (DIRECTORY_SEPARATOR . " _ " ,DIRECTORY_SEPARATOR ,$ fileName );
5357
5458 if ($ object ->isFile () && (($ object ->getExtension () == "mustache " ) || ($ object ->getExtension () == "json " ))) {
5559
5660 // make sure this isn't a hidden pattern
57- $ patternParts = explode (" / " ,$ fileName );
61+ $ patternParts = explode (DIRECTORY_SEPARATOR ,$ fileName );
5862 $ pattern = isset ($ patternParts [2 ]) ? $ patternParts [2 ] : $ patternParts [1 ];
5963 if ($ pattern [0 ] != "_ " ) {
6064
@@ -92,7 +96,7 @@ public function watch() {
9296 } elseif (isset ($ o ->patterns ->$ fileNameClean )) {
9397
9498 // the file was hidden so remove references to the item
95- $ patternParts = explode (" / " ,$ fileNameClean );
99+ $ patternParts = explode (DIRECTORY_SEPARATOR ,$ fileNameClean );
96100 $ pattern = isset ($ patternParts [2 ]) ? $ patternParts [2 ] : $ patternParts [1 ];
97101
98102 unset($ o ->patterns ->$ fileNameClean );
@@ -113,7 +117,7 @@ public function watch() {
113117 foreach ($ cp as $ fileName => $ mt ) {
114118
115119 unset($ o ->patterns ->$ fileName );
116- $ patternParts = explode (" / " ,$ fileName );
120+ $ patternParts = explode (DIRECTORY_SEPARATOR ,$ fileName );
117121 $ pattern = isset ($ patternParts [2 ]) ? $ patternParts [2 ] : $ patternParts [1 ];
118122
119123 unset($ this ->patternPaths [$ patternParts [0 ]][$ pattern ]);
@@ -125,9 +129,13 @@ public function watch() {
125129
126130 // iterate over the data files and regenerate the entire site if they've changed
127131 $ objects = new RecursiveIteratorIterator (new RecursiveDirectoryIterator (__DIR__ ."/../../source/_data/ " ), RecursiveIteratorIterator::SELF_FIRST );
132+
133+ // make sure dots are skipped
134+ $ objects ->setFlags (FilesystemIterator::SKIP_DOTS );
135+
128136 foreach ($ objects as $ name => $ object ) {
129137
130- $ fileName = str_replace (__DIR__ ."/../../source/_data/ " ,"" ,$ name );
138+ $ fileName = str_replace (__DIR__ ."/../../source/_data " . DIRECTORY_SEPARATOR ,"" ,$ name );
131139 $ mt = $ object ->getMTime ();
132140
133141 if (!isset ($ o ->$ fileName )) {
@@ -141,10 +149,14 @@ public function watch() {
141149
142150 // iterate over all of the other files in the source directory and move them if their modified time has changed
143151 $ objects = new RecursiveIteratorIterator (new RecursiveDirectoryIterator (__DIR__ ."/../../source/ " ), RecursiveIteratorIterator::SELF_FIRST );
152+
153+ // make sure dots are skipped
154+ $ objects ->setFlags (FilesystemIterator::SKIP_DOTS );
155+
144156 foreach ($ objects as $ name => $ object ) {
145157
146158 // clean-up the file name and make sure it's not one of the pattern lab files or to be ignored
147- $ fileName = str_replace (__DIR__ ."/../../source/ " ,"" ,$ name );
159+ $ fileName = str_replace (__DIR__ ."/../../source " . DIRECTORY_SEPARATOR ,"" ,$ name );
148160 if (($ fileName [0 ] != "_ " ) && (!in_array ($ object ->getExtension (),$ this ->ie )) && (!in_array ($ object ->getFilename (),$ this ->id ))) {
149161
150162 // catch directories that have the ignored dir in their path
@@ -199,6 +211,7 @@ public function watch() {
199211 */
200212 private function updateSite ($ fileName ,$ message ) {
201213 $ this ->gatherData ();
214+ $ this ->gatherPatternPaths ();
202215 $ this ->gatherNavItems ();
203216 $ this ->generatePatterns ();
204217 $ this ->generateViewAllPages ();
0 commit comments