Ticket #203: lc_strings_report.php

File lc_strings_report.php, 2.1 KB (added by kim@…, 14 years ago)

lc_strings_report.php

Line 
1<?php
2/* Quick system for analyzing the files for _lc occurencies.
3   All pluginfolders are scanned for .js files, and the .js 
4   files are then parsed for _lc() occurencies and listed.   
5                                                             
6   Credits : Kim Steinhaug, kim@steinhaug.com               
7   Version v1.0                                             
8                                                           */
9
10function retrieveDirs($rootdirpath,$eregi_match='') {
11 if ($dir = @opendir($rootdirpath)) {
12   $array = array();
13   while (($file = readdir($dir)) !== false) {
14     if (is_dir($rootdirpath."/".$file) && $file != "." && $file != "..") {
15       if(!$eregi_match){
16             $array[] = $file;
17           } else {
18         if(eregi($eregi_match,$file))
19                 $array[] = $file;
20           }
21    } else if($eregi_match && $file != "." && $file != ".."){
22      if(eregi($eregi_match,$file))
23      $array[] = $file;
24        }
25   }
26   closedir($dir);
27 }
28 return $array;
29}
30
31function get_lc_array($data){
32  $temp = explode('_lc(',$data);
33  $return = array();
34  foreach ($temp AS $value){
35    if(substr($value,0,6)=='string'){
36        } else if(substr($value,0,1)=='"'){
37      $temp2 = explode('")',$value);
38      $var = substr($temp2[0],1);
39      if(ereg('"',$var)){
40            $temp3 = explode('"',$var);
41        $var = $temp3[0];
42      } else {
43          }
44          array_push($return,$var);
45        }
46  }
47  return $return;
48}
49
50echo '<em>Brief explernation, scans through all folders and parses all .js files for _lc(...) entries and lists them.</em>';
51
52$path = str_replace('lc_strings_report.php','',$_SERVER["SCRIPT_FILENAME"]);
53$dirs = retrieveDirs($path);
54foreach ($dirs AS $dir){
55  echo '<h3>' . $dir . '</h3>';
56  $jsfiles = retrieveDirs($path . '/' . $dir . '/','js');
57  if(is_array($jsfiles) && count($jsfiles)){
58    foreach ($jsfiles AS $filename){
59      $data = file_get_contents($path . '/' . $dir . '/' . $filename);
60      $lc = get_lc_array($data);
61      foreach ($lc AS $lc_var){
62        echo '&nbsp; &nbsp; &quot;' . $lc_var . '&quot;' . "<br>\r\n";
63      }
64    }
65  }
66}
67
68?>