Codeigniter-Frontend-Language-Files-Editor
Codeigniter-Frontend-Language-Files-Editor copied to clipboard
Exclude folder list
Configuration option to exclude some folders (.svn for exemple).
File application/models/model_language.php
--- model_language.php.old 2012-03-30 21:13:24.000000000 +0400
+++ model_language.php 2012-03-30 21:35:16.000000000 +0400
@@ -12,6 +12,49 @@
class Model_language extends CI_Model {
+
+ /**
+ * Constructor
+ *
+ * @return void
+ */
+ function __construct(){
+ $this->exclude_folders = array();
+ }
+
+ /**
+ * Add a list of folders.
+ *
+ * @param array
+ * @return void
+ */
+ function set_exclude_folder($flist = array()){
+ if(!empty($flist) && is_array($flist))
+ $this->exclude_folders = $flist;
+ }
+
+ /**
+ * Check if folder is valid and not exclude
+ *
+ * @param string Path
+ * @param string Folder name
+ * @return boolean
+ */
+ function get_folder_is_valid($path, $name){
+ if( empty($name) || $name == '.' || $name == '..' )
+ return false;
+
+ if( !is_dir($path.$name) )
+ return false;
+
+ foreach($this->exclude_folders as $folder){
+ if( $name == $folder )
+ return false;
+ }
+ return true;
+ }
+
+
/**
* Get list of languages based on /application_folder/languge/
* and number of php files in it
@@ -23,7 +66,7 @@
$dh = opendir($dir);
$i=0;
while (false !== ($filename = readdir($dh))) {
- if($filename!=='.' && $filename!=='..' && is_dir($dir.$filename)){
+ if($this->get_folder_is_valid($dir, $filename)){
$files[$i]['dir'] = $filename;
$files[$i]['count']=$this->get_count_lfiles($filename);
$i++;
File application/config/language_editor.php
--- language_editor.php.old 2012-03-30 21:36:51.000000000 +0400
+++ language_editor.php 2012-03-30 21:37:41.000000000 +0400
@@ -32,5 +32,11 @@
$config['language_pattern'] = 1;
$config['language_pattern_lang'] = 'french';
+/*
+* Exclude folders
+*
+*/
+$config['language_exclude_folders'] = array('.svn');
+
/* End of file language_editor.php */
/* Location: ./application/config/language_editor.php */
File application/controllers/language.php
--- language.php.old 2012-03-30 21:40:27.000000000 +0400
+++ language.php 2012-03-30 21:40:50.000000000 +0400
@@ -26,6 +26,7 @@
$this->load->database(); //load database if youre not doing it in autoload
$this->load->language('language','french'); //you can delete it if you have translation for you language
$this->config->load('language_editor');
+ $this->model_language->set_exclude_folder($this->config->item('language_exclude_folders'));
}
function index(){