continued code reorganization, getting rid of globals, a=chris

Chris Pollett [2015-07-05 06:Jul:th]
continued code reorganization, getting rid of globals, a=chris
Filename
.htaccess
error.php
index.php
blog.php
bot.php
configs/Config.php
configs/ConfigureTool.php
configs/Createdb.php
configs/ExportPublicHelpDb.php
configs/PublicHelpPages.php
configs/TokenTool.php
configs/default_crawl.ini
controllers/AdminController.php
controllers/ApiController.php
controllers/ArchiveController.php
controllers/ClassifierController.php
controllers/Controller.php
controllers/CrawlController.php
controllers/FetchController.php
controllers/GroupController.php
controllers/MachineController.php
controllers/RegisterController.php
controllers/ResourceController.php
controllers/SearchController.php
controllers/SettingsController.php
controllers/StaticController.php
controllers/StatisticsController.php
controllers/components/AccountaccessComponent.php
controllers/components/AdvertisementComponent.php
controllers/components/Component.php
controllers/components/CrawlComponent.php
controllers/components/SocialComponent.php
controllers/components/SystemComponent.php
css/editor.css
css/search.css
css/slidy.css
data/default.db
src/error.php
examples/0-Archive1421025145.zip
examples/IndexData1421025145.zip
examples/SearchApi.php
executables/ArcTool.php
executables/ClassifierTool.php
executables/ClassifierTrainer.php
executables/CodeTool.php
executables/Fetcher.php
executables/MediaUpdater.php
executables/Mirror.php
executables/QueryTool.php
executables/QueueServer.php
favicon.ico
src/index.php
library/AnalyticsManager.php
library/BTree.php
library/BloomFilterBundle.php
library/BloomFilterFile.php
library/BrowserRunner.php
library/Bzip2BlockIterator.php
library/CrawlConstants.php
library/CrawlDaemon.php
library/FetchGitRepositoryUrls.php
library/FetchUrl.php
library/FileCache.php
library/HashTable.php
library/IndexArchiveBundle.php
library/IndexDictionary.php
library/IndexManager.php
library/IndexShard.php
library/JavascriptUnitTest.php
library/Join.php
library/LocaleFunctions.php
library/MailServer.php
library/MediaConstants.php
library/NWordGrams.php
library/Notifier.php
library/PageRuleParser.php
library/PartialZipArchive.php
library/PersistentStructure.php
library/PhraseParser.php
library/PriorityQueue.php
library/StringArray.php
library/SuffixTree.php
library/Thesaurus.php
library/Trie.php
library/UnitTest.php
library/UpgradeFunctions.php
library/UrlParser.php
library/Utility.php
library/WebArchive.php
library/WebArchiveBundle.php
library/WebQueueBundle.php
library/WikiParser.php
library/archive_bundle_iterators/ArcArchiveBundleIterator.php
library/archive_bundle_iterators/ArchiveBundleIterator.php
library/archive_bundle_iterators/DatabaseBundleIterator.php
library/archive_bundle_iterators/MediaWikiArchiveBundleIterator.php
library/archive_bundle_iterators/MixArchiveBundleIterator.php
library/archive_bundle_iterators/OdpRdfArchiveBundleIterator.php
library/archive_bundle_iterators/TextArchiveBundleIterator.php
library/archive_bundle_iterators/WarcArchiveBundleIterator.php
library/archive_bundle_iterators/WebArchiveBundleIterator.php
library/classifiers/BinaryFeatures.php
library/classifiers/ChiSquaredFeatureSelection.php
library/classifiers/Classifier.php
library/classifiers/ClassifierAlgorithm.php
library/classifiers/FeatureSelection.php
library/classifiers/Features.php
library/classifiers/LassoRegression.php
library/classifiers/NaiveBayes.php
library/classifiers/SparseMatrix.php
library/classifiers/WeightedFeatures.php
library/compressors/Compressor.php
library/compressors/GzipCompressor.php
library/compressors/NonCompressor.php
library/index_bundle_iterators/DisjointIterator.php
library/index_bundle_iterators/DocIterator.php
library/index_bundle_iterators/GroupIterator.php
library/index_bundle_iterators/IndexBundleIterator.php
library/index_bundle_iterators/IntersectIterator.php
library/index_bundle_iterators/NegationIterator.php
library/index_bundle_iterators/NetworkIterator.php
library/index_bundle_iterators/UnionIterator.php
library/index_bundle_iterators/WordIterator.php
library/indexing_plugins/AddressesPlugin.php
library/indexing_plugins/IndexingPlugin.php
library/indexing_plugins/RecipePlugin.php
library/indexing_plugins/WordfilterPlugin.php
library/processors/BmpProcessor.php
library/processors/DocProcessor.php
library/processors/DocxProcessor.php
library/processors/EpubProcessor.php
library/processors/GifProcessor.php
library/processors/GitXmlProcessor.php
library/processors/GopherProcessor.php
library/processors/HtmlProcessor.php
library/processors/ImageProcessor.php
library/processors/JavaProcessor.php
library/processors/JpgProcessor.php
library/processors/PageProcessor.php
library/processors/PdfProcessor.php
library/processors/PngProcessor.php
library/processors/PptProcessor.php
library/processors/PptxProcessor.php
library/processors/PythonProcessor.php
library/processors/RobotProcessor.php
library/processors/RssProcessor.php
library/processors/RtfProcessor.php
library/processors/SitemapProcessor.php
library/processors/SvgProcessor.php
library/processors/TextProcessor.php
library/processors/XlsxProcessor.php
library/processors/XmlProcessor.php
library/summarizers/CentroidSummarizer.php
library/summarizers/GraphBasedSummarizer.php
library/summarizers/ScrapeSummarizer.php
library/summarizers/Summarizer.php
locale/ar/configure.ini
locale/ar/resources/Tokenizer.php
locale/ar/resources/locale.js
locale/ar/resources/suggest_trie.txt.gz
locale/ar/statistics.txt
locale/bn/configure.ini
locale/bn/resources/Tokenizer.php
locale/bn/resources/locale.js
locale/bn/statistics.txt
locale/de/configure.ini
locale/de/resources/Tokenizer.php
locale/de/resources/locale.js
locale/de/resources/suggest_trie.txt.gz
locale/de/statistics.txt
locale/en_US/configure.ini
locale/en_US/resources/Tokenizer.php
locale/en_US/resources/lexicon.txt.gz
locale/en_US/resources/locale.js
locale/en_US/resources/suggest_trie.txt.gz
locale/en_US/statistics.txt
locale/es/configure.ini
locale/es/resources/Tokenizer.php
locale/es/resources/locale.js
locale/es/resources/suggest_trie.txt.gz
locale/es/statistics.txt
locale/fa/configure.ini
locale/fa/resources/Tokenizer.php
locale/fa/resources/locale.js
locale/fa/resources/suggest_trie.txt.gz
locale/fa/statistics.txt
locale/fr_FR/configure.ini
locale/fr_FR/resources/Tokenizer.php
locale/fr_FR/resources/locale.js
locale/fr_FR/resources/suggest_trie.txt.gz
locale/fr_FR/statistics.txt
locale/general.ini
locale/he/configure.ini
locale/he/resources/Tokenizer.php
locale/he/resources/locale.js
locale/he/resources/suggest_trie.txt.gz
locale/he/statistics.txt
locale/hi/configure.ini
locale/hi/resources/Tokenizer.php
locale/hi/resources/locale.js
locale/hi/resources/suggest_trie.txt.gz
locale/hi/statistics.txt
locale/in_ID/configure.ini
locale/in_ID/resources/Tokenizer.php
locale/in_ID/resources/locale.js
locale/in_ID/resources/suggest_trie.txt.gz
locale/in_ID/statistics.txt
locale/it/configure.ini
locale/it/resources/Tokenizer.php
locale/it/resources/locale.js
locale/it/resources/suggest_trie.txt.gz
locale/it/statistics.txt
locale/ja/configure.ini
locale/ja/resources/Tokenizer.php
locale/ja/resources/locale.js
locale/ja/statistics.txt
locale/kn/configure.ini
locale/kn/resources/Tokenizer.php
locale/kn/resources/locale.js
locale/kn/statistics.txt
locale/ko/configure.ini
locale/ko/resources/Tokenizer.php
locale/ko/resources/locale.js
locale/ko/statistics.txt
locale/nl/configure.ini
locale/nl/resources/Tokenizer.php
locale/nl/resources/locale.js
locale/nl/statistics.txt
locale/pl/configure.ini
locale/pl/resources/Tokenizer.php
locale/pl/resources/locale.js
locale/pl/resources/suggest_trie.txt.gz
locale/pl/statistics.txt
locale/pt/configure.ini
locale/pt/resources/Tokenizer.php
locale/pt/resources/locale.js
locale/pt/resources/suggest_trie.txt.gz
locale/pt/statistics.txt
locale/ru/configure.ini
locale/ru/resources/Tokenizer.php
locale/ru/resources/locale.js
locale/ru/resources/suggest_trie.txt.gz
locale/ru/statistics.txt
locale/te/configure.ini
locale/te/resources/Tokenizer.php
locale/te/resources/locale.js
locale/te/resources/suggest_trie.txt.gz
locale/te/statistics.txt
locale/th/configure.ini
locale/th/resources/Tokenizer.php
locale/th/resources/locale.js
locale/th/statistics.txt
locale/tr/configure.ini
locale/tr/resources/Tokenizer.php
locale/tr/resources/locale.js
locale/tr/resources/suggest_trie.txt.gz
locale/tr/statistics.txt
locale/vi_VN/configure.ini
locale/vi_VN/resources/Tokenizer.php
locale/vi_VN/resources/locale.js
locale/vi_VN/resources/suggest_trie.txt.gz
locale/vi_VN/statistics.txt
locale/zh_CN/configure.ini
locale/zh_CN/resources/Tokenizer.php
locale/zh_CN/resources/locale.js
locale/zh_CN/resources/segment_word_grams.ftr
locale/zh_CN/statistics.txt
models/ActivityModel.php
models/AdkeywordModel.php
models/AdmetadataModel.php
models/AdvertisementModel.php
models/CaptchaModel.php
models/CrawlModel.php
models/CronModel.php
models/GroupModel.php
models/LocaleModel.php
models/MachineModel.php
models/Model.php
models/ParallelModel.php
models/PhraseModel.php
models/ProfileModel.php
models/RoleModel.php
models/SearchfiltersModel.php
models/SigninModel.php
models/SourceModel.php
models/UserModel.php
models/VisitorModel.php
models/datasources/DatasourceManager.php
models/datasources/MysqlManager.php
models/datasources/PdoManager.php
models/datasources/Sqlite3Manager.php
privacy.php
resources/adv-logo.png
resources/anonymous.png
resources/blank.png
resources/collapse.png
resources/drag.png
resources/expand.png
resources/file-icon.png
resources/grouped.png
resources/list.png
resources/locked.png
resources/m-yioop.png
resources/new_thread.png
resources/play.png
resources/search-button.png
resources/unlocked.png
resources/wiki_button_images/empty.png
resources/wiki_button_images/wikibtn-bold.png
resources/wiki_button_images/wikibtn-bullets.png
resources/wiki_button_images/wikibtn-centeraligned.png
resources/wiki_button_images/wikibtn-definitionlist.png
resources/wiki_button_images/wikibtn-hr.png
resources/wiki_button_images/wikibtn-hyperlink.png
resources/wiki_button_images/wikibtn-italic.png
resources/wiki_button_images/wikibtn-leftaligned.png
resources/wiki_button_images/wikibtn-nowiki.png
resources/wiki_button_images/wikibtn-numbers.png
resources/wiki_button_images/wikibtn-rightaligned.png
resources/wiki_button_images/wikibtn-search-widget.png
resources/wiki_button_images/wikibtn-slide.png
resources/wiki_button_images/wikibtn-strike.png
resources/wiki_button_images/wikibtn-table.png
resources/wiki_button_images/wikibtn-underline.png
resources/yioop.png
robots.txt
scripts/basic.js
scripts/big_int.js
scripts/classifiers.js
scripts/hash_captcha.js
scripts/help.js
scripts/history.js
scripts/mix.js
scripts/sha1.js
scripts/slidy.js
scripts/suggest.js
scripts/wiki.js
scripts/zkp.js
terms.php
views/AdminView.php
views/ApiView.php
views/CrawlstatusView.php
views/FeedstatusView.php
views/FetchView.php
views/GroupView.php
views/MachinestatusView.php
views/NocacheView.php
views/RecoverView.php
views/RegisterView.php
views/RssView.php
views/SearchView.php
views/SettingsView.php
views/SigninView.php
views/StaticView.php
views/StatisticsView.php
views/SuggestView.php
views/View.php
views/WikiView.php
views/elements/ActivityElement.php
views/elements/ApiElement.php
views/elements/ConfigureElement.php
views/elements/CrawloptionsElement.php
views/elements/DisplayadvertisementElement.php
views/elements/EditclassifierElement.php
views/elements/EditlocalesElement.php
views/elements/EditmixElement.php
views/elements/Element.php
views/elements/FooterElement.php
views/elements/GroupfeedElement.php
views/elements/HelpElement.php
views/elements/LanguageElement.php
views/elements/MachinelogElement.php
views/elements/ManageaccountElement.php
views/elements/ManageadvertisementsElement.php
views/elements/ManageclassifiersElement.php
views/elements/ManagecrawlsElement.php
views/elements/ManagegroupsElement.php
views/elements/ManagelocalesElement.php
views/elements/ManagemachinesElement.php
views/elements/ManagerolesElement.php
views/elements/ManageusersElement.php
views/elements/MixcrawlsElement.php
views/elements/MoreoptionsElement.php
views/elements/PageoptionsElement.php
views/elements/ResultseditorElement.php
views/elements/SearchsourcesElement.php
views/elements/SecurityElement.php
views/elements/ServersettingsElement.php
views/elements/SigninElement.php
views/elements/SubsearchElement.php
views/elements/WikiElement.php
views/helpers/DisplayresultsHelper.php
views/helpers/FeedsHelper.php
views/helpers/FiletypeHelper.php
views/helpers/FileuploadHelper.php
views/helpers/HelpbuttonHelper.php
views/helpers/Helper.php
views/helpers/ImagesHelper.php
views/helpers/OptionsHelper.php
views/helpers/PaginationHelper.php
views/helpers/PagingtableHelper.php
views/helpers/SearchformHelper.php
views/helpers/ToggleHelper.php
views/helpers/VideourlHelper.php
views/layouts/ApiLayout.php
views/layouts/Layout.php
views/layouts/RssLayout.php
views/layouts/WebLayout.php
yioopbar.xml
tests/BloomFilterFileTest.php
tests/BtreeTest.php
tests/DeTokenizerTest.php
tests/DocxProcessorTest.php
tests/EnTokenizerTest.php
tests/EpubProcessorTest.php
tests/EsTokenizerTest.php
tests/FaTokenizerTest.php
tests/FrTokenizerTest.php
tests/HashTableTest.php
tests/HiTokenizerTest.php
tests/IndexShardTest.php
tests/ItTokenizerTest.php
tests/ManyUserExperiment.php
tests/NlTokenizerTest.php
tests/PdfProcessorTest.php
tests/PhantomjsUiTest.php
tests/PhraseParserTest.php
tests/PptxProcessorTest.php
tests/PriorityQueueTest.php
tests/PtTokenizerTest.php
tests/QueueServerTest.php
tests/RuTokenizerTest.php
tests/StringArrayTest.php
tests/SummarizerTest.php
tests/TrieTest.php
tests/UrlParserTest.php
tests/UtilityTest.php
tests/WebArchiveTest.php
tests/WebQueueBundleTest.php
tests/XlsxProcessorTest.php
tests/index.php
vendor/autoload.php
diff --git a/.htaccess b/.htaccess
new file mode 100644
index 000000000..91ed7a6a5
--- /dev/null
+++ b/.htaccess
@@ -0,0 +1,8 @@
+Options +FollowSymLinks
+RewriteEngine On
+
+RewriteRule "^(css|resources|scripts)/(.*)$" src/$1/$2 [L]
+RewriteRule "^(yioopbar.xml|favicon.ico|robots.txt)$" src/$1 [L]
+
+RewriteCond %{REQUEST_FILENAME} !index.php|tests/.*$|src/(favicon.ico$|robots.txt$|yioopbar.xml$|(css|scripts|resources/.*$))
+RewriteRule ^ index.php [L]
diff --git a/error.php b/error.php
deleted file mode 100755
index 048ebd210..000000000
--- a/error.php
+++ /dev/null
@@ -1,81 +0,0 @@
-<?php
-/**
- * SeekQuarry/Yioop --
- * Open Source Pure PHP Search Engine, Crawler, and Indexer
- *
- * Copyright (C) 2009 - 2015  Chris Pollett chris@pollett.org
- *
- * LICENSE:
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- * END LICENSE
- *
- * Web page used to HTTP display error pages for
- * the SeekQuarry/Yioop Search engine
- *
- * @author Chris Pollett chris@pollett.org
- * @license http://www.gnu.org/licenses/ GPL3
- * @link http://www.seekquarry.com/
- * @copyright 2009 - 2015
- * @filesource
- */
-namespace seekquarry\yioop;
-
-use seekquarry\yioop\library as L;
-use seekquarry\yioop\controllers\StaticController;
-
-/** Calculate base directory of script
- * @ignore
- */
-$pathinfo = pathinfo($_SERVER['SCRIPT_FILENAME']);
-if (!defined('BASE_DIR')) {
-    define("BASE_DIR", $pathinfo["dirname"].'/');
-}
-if (!defined('BASE_URL')) {
-    $pathinfo = pathinfo($_SERVER['SCRIPT_NAME']);
-    $http = isset($_SERVER['HTTPS']) ? "https://" : "http://";
-    //used in register controller to create links back to server
-    define("BASE_URL", $http.$_SERVER['SERVER_NAME'].$pathinfo["dirname"]."/");
-}
-/**
- * Load the configuration file
- */
-require_once(BASE_DIR.'configs/Config.php');
-/** for class autoload */
-require_once BASE_DIR ."vendor/autoload.php";
-/**
- * Load global functions related to localization
- */
-require_once BASE_DIR."/library/LocaleFunctions.php";
-mb_internal_encoding("UTF-8");
-mb_regex_encoding("UTF-8");
-$locale_tag = L\guessLocale();
-$locale = null;
-L\setLocaleObject($locale_tag);
-if (!isset($_REQUEST['p']) ||
-    !in_array($_REQUEST['p'], ["404", "409"])) {
-    $_REQUEST['p'] = "404";
-}
-switch ($_REQUEST['p'])
-{
-    case "404":
-        header("HTTP/1.0 404 Not Found");
-    break;
-    case "409":
-        header("HTTP/1.0 409 Conflict");
-    break;
-}
-$controller = new StaticController();
-$controller->processRequest();
diff --git a/index.php b/index.php
old mode 100755
new mode 100644
index f03813ea3..360633606
--- a/index.php
+++ b/index.php
@@ -1,205 +1,24 @@
 <?php
-/**
- * SeekQuarry/Yioop --
- * Open Source Pure PHP Search Engine, Crawler, and Indexer
- *
- * Copyright (C) 2009 - 2015  Chris Pollett chris@pollett.org
- *
- * LICENSE:
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- * END LICENSE
- *
- * Main web interface entry point for Yioop!
- * search site. Used to both get and display
- * search results. Also used for inter-machine
- * communication during crawling
- *
- * @author Chris Pollett chris@pollett.org
- * @license http://www.gnu.org/licenses/ GPL3
- * @link http://www.seekquarry.com/
- * @copyright 2009 - 2015
- * @filesource
- */
 namespace seekquarry\yioop;

-use seekquarry\yioop\library as L;
-
-
-$total_time = microtime();
-$pathinfo = pathinfo($_SERVER['SCRIPT_FILENAME']);
-/** Calculate base directory of script
- * @ignore
- */
-define("BASE_DIR", $pathinfo["dirname"].'/');
-$pathinfo = pathinfo($_SERVER['SCRIPT_NAME']);
-$http = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']) ?
-    "https://" : "http://";
-$port = (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] != 80) ?
-    ":".$_SERVER['SERVER_PORT'] : "";
-//used in register controller to create links back to server
-define("BASE_URL", $http.$_SERVER['SERVER_NAME']. $port
-    . $pathinfo["dirname"]."/");
-require_once BASE_DIR ."vendor/autoload.php";
-/**
- * Check for paths of the form index.php/something which yioop doesn't support
- */
-$s_name = $_SERVER['SCRIPT_NAME']."/";
-$path_name = substr($_SERVER["REQUEST_URI"], 0, strlen($s_name));
-if (strcmp($path_name, $s_name) == 0) {
-    $_SERVER["PATH_TRANSLATED"] = BASE_DIR;
-    $scriptinfo = pathinfo($s_name);
-    $_SERVER["PATH_INFO"] = ($scriptinfo["dirname"] == "/") ? "" :
-        $scriptinfo["dirname"] ;
-    include(BASE_DIR."/error.php");
-    exit();
-}
-if (!isset($_SERVER["PATH_INFO"])) {
-    $_SERVER["PATH_INFO"] = ".";
-}
-/**
- * Make an initial setting of controllers. This can be overridden in
- * local_config
- */
-$available_controllers = ["admin", "api", "archive",  "cache",
-    "classifier", "crawl", "fetch", "group", "machine", "resource", "search",
-    "settings", "statistics", "static"];
-/**
- * Load the configuration file
- */
-require_once(BASE_DIR.'configs/Config.php');
-ini_set("memory_limit","500M");
-header("X-FRAME-OPTIONS: DENY"); //prevent click-jacking
-header("X-Content-Type-Options: nosniff"); /*
-    Let browsers know that we should be setting the mimetype correctly --
-    For none dumb browsers this should help prevent against XSS attacks
-    to images containing HTML. Also, might help against PRSSI attacks.
-    */
-session_name(SESSION_NAME);
-session_start();
-/**
- * For error function
- */
-require_once BASE_DIR."/library/Utility.php";
-if ((DEBUG_LEVEL & ERROR_INFO) == ERROR_INFO) {
-    set_error_handler(NS_LIB . "yioop_error_handler");
-}
-/**
- * Load global functions related to localization
- */
-require_once BASE_DIR."/library/LocaleFunctions.php";
-/**
- * Load global functions related to checking Yioop! version
- */
-require_once BASE_DIR."/library/UpgradeFunctions.php";
-if (USE_MEMCACHE && class_exists("\Memcache")) {
-    $CACHE = new \Memcache();
-    foreach ($MEMCACHES as $mc) {
-        $CACHE->addServer($mc['host'], $mc['port']);
-    }
-    unset($mc);
-    define("USE_CACHE", true);
-} else if (USE_FILECACHE) {
-    $file_cache = NS_LIBRARY . "FileCache";
-    $CACHE = new $file_cache(WORK_DIRECTORY."/cache/queries");
-    unset($file_cache);
-    define("USE_CACHE", true);
-} else {
-    define("USE_CACHE", false);
-}
-if (!function_exists('mb_internal_encoding')) {
-    echo "PHP Zend Multibyte Support must be enabled for Yioop! to run.";
-    exit();
-}
-mb_internal_encoding("UTF-8");
-mb_regex_encoding("UTF-8");
-if (function_exists('lcfirst') === false) {
-    /**
-     * Lower cases the first letter in a string
-     *
-     * This function is only defined if the PHP version is before 5.3
-     * @param string $str  string to be lower cased
-     * @return string the lower cased string
-     */
-    function lcfirst( $str )
-    {
-        return (string)(strtolower(substr($str, 0, 1)).substr($str, 1));
-    }
-}
-if (in_array(REGISTRATION_TYPE, ['no_activation', 'email_registration',
-    'admin_activation'])) {
-    $available_controllers[] = "register";
-}
-if (!WEB_ACCESS) {
-    $available_controllers = ["admin", "archive", "cache", "crawl","fetch",
-        "machine"];
-}
-//the request variable c is used to determine the controller
-if (!isset($_REQUEST['c'])) {
-    $controller_name = "search";
-    if (defined('LANDING_PAGE') && LANDING_PAGE && !isset($_REQUEST['q'])) {
-        $controller_name = "static";
-        $_REQUEST['c'] = "static";
-        $_REQUEST['p'] = "Main";
-    }
-} else {
-    $controller_name = $_REQUEST['c'];
-}
-if (!checkAllowedController($controller_name))
+routeRequests();
+function routeRequests()
 {
-    if (WEB_ACCESS) {
-        $controller_name = "search";
+    $script_path = substr($_SERVER['PHP_SELF'], 0, -strlen("index.php"));
+    if($_SERVER['QUERY_STRING'] == "") {
+        $request_script = rtrim(
+            substr($_SERVER['REQUEST_URI'], strlen($script_path)), "?");
     } else {
-        $controller_name = "admin";
+        $request_script = substr($_SERVER['REQUEST_URI'], strlen($script_path),
+            -strlen($_SERVER['QUERY_STRING']) -  1);
+    }
+    $request_script = ($request_script == "") ? "index.php" : $request_script;
+    require_once "vendor/autoload.php";
+    if(in_array($request_script, ['', 'index.php', 'blog.php', 'terms.php',
+        'privacy.php', 'bot.php'])) {
+        require_once "src/$request_script";
+    } else {
+        $_REQUEST['p'] = "404";
+        require_once "src/error.php";
     }
 }
-// if no profile exists we force the page to be the configuration page
-if (!PROFILE || (defined("FIX_NAME_SERVER") && FIX_NAME_SERVER)) {
-    $controller_name = "admin";
-}
-$locale_tag = L\guessLocale();
-if (L\upgradeDatabaseWorkDirectoryCheck()) {
-    L\upgradeDatabaseWorkDirectory();
-}
-if (L\upgradeLocalesCheck()) {
-    L\upgradeLocales();
-}
-$locale = null;
-L\setLocaleObject($locale_tag);
-if (file_exists(APP_DIR."/index.php")) {
-    require_once APP_DIR."/index.php";
-}
-/**
- * Loads controller responsible for calculating
- * the data needed to render the scene
- *
- */
-$controller_class = NS_CONTROLLERS . ucfirst($controller_name)."Controller";
-$controller = new $controller_class($INDEXING_PLUGINS);
-$controller->processRequest();
-/**
- * Verifies that the supplied controller string is a controller for the
- * SeekQuarry app
- *
- * @param string $controller_name  name of controller
- *     (this usually come from the query string)
- * @return bool  whether it is a valid controller
- */
-function checkAllowedController($controller_name)
-{
-    global $available_controllers;
-    return in_array($controller_name, $available_controllers) ;
-}
-
diff --git a/blog.php b/src/blog.php
similarity index 97%
rename from blog.php
rename to src/blog.php
index bdb80495a..dd34144ee 100755
--- a/blog.php
+++ b/src/blog.php
@@ -36,5 +36,5 @@ namespace seekquarry\yioop;
 $_REQUEST['c'] = "group";
 $_REQUEST['a'] = "groupFeeds";
 $_REQUEST['just_group_id'] = 2;
-require_once("index.php");
+require_once(__DIR__."/index.php");

diff --git a/bot.php b/src/bot.php
old mode 100755
new mode 100644
similarity index 97%
rename from bot.php
rename to src/bot.php
index f6922f146..fbba0a79d
--- a/bot.php
+++ b/src/bot.php
@@ -35,5 +35,4 @@ namespace seekquarry\yioop;

 $_REQUEST['c'] = "static";
 $_REQUEST['p'] = "bot";
-require_once("index.php");
-
+require_once(__DIR__."/index.php");
diff --git a/configs/Config.php b/src/configs/Config.php
similarity index 87%
rename from configs/Config.php
rename to src/configs/Config.php
index 8167b3978..287a708f4 100755
--- a/configs/Config.php
+++ b/src/configs/Config.php
@@ -32,9 +32,6 @@
  */
 namespace seekquarry\yioop\configs;

-
-if (!defined('BASE_DIR') ||
-    defined('PROFILE_FILE_NAME')) {echo "BAD REQUEST"; exit();}
 /** Yioop Namespace*/
 define('NS', "seekquarry\\yioop\\");
 /** controllers sub-namespace */
@@ -74,7 +71,7 @@ define('NS_TESTS', NS . "tests\\");
  * @var int
  */
 define('YIOOP_VERSION', 33);
-const bob = 5;
+
 /*
     pcre is an external library to php which can cause Yioop
     to seg fault if given instances of reg expressions with
@@ -115,21 +112,6 @@ if (file_exists(BASE_DIR."/configs/LocalConfig.php")) {
         way to set work directory) */
     require_once(BASE_DIR."/configs/LocalConfig.php");
 }
-/**
- * @global array which activities are in which Component classes (use this
- *     array so don't have to instantiate classes to find out. Keys are
- *     names of components, values are the activities in that component.
- */
-global $COMPONENT_ACTIVITIES;
-$COMPONENT_ACTIVITIES = [
-    "accountaccess" =>["signin", "manageAccount", "manageUsers", "manageRoles"],
-    "crawl" => ["manageCrawls", "manageClassifiers", "pageOptions",
-        "resultsEditor", "searchSources"],
-    "social" => ["manageGroups", "groupFeeds", "mixCrawls", "wiki"],
-    "advertisement" => ["manageAdvertisements"],
-    "system" => ["manageMachines", "manageLocales", "serverSettings",
-        "security", "configure"]
-];
 /** setting Profile.php to something else in LocalConfig.php allows one to have
  *  two different yioop instances share the same work_directory but maybe have
  *  different configuration settings. This might be useful if one was production
@@ -149,10 +131,13 @@ if (MAINTENANCE_MODE && $_SERVER["SERVER_ADDR"] != $_SERVER["REMOTE_ADDR"]) {
     exit();
 }

+/** */
+define('DEFAULT_WORK_DIRECTORY', PARENT_DIR . "/work_directory");
+
 if (!defined('WORK_DIRECTORY')) {
 /*+++ The next block of code is machine edited, change at
 your own risk, please use configure web page instead +++*/
-define('WORK_DIRECTORY', '');
+define('WORK_DIRECTORY', DEFAULT_WORK_DIRECTORY);
 /*++++++*/
 // end machine edited code
 }
@@ -550,19 +535,6 @@ if(!defined("MAX_FILE_TIMESTAMP_LIMIT")) {
 if(!defined("MAX_MAIL_TIMESTAMP_LIMIT")) {
     define('MAX_MAIL_TIMESTAMP_LIMIT', 300);
 }
-/**
- * @global array file extensions which can be handled by the search engine,
- * other extensions will be ignored. This array is populated in the individual
- * lib/processors page processors
- */
-global $INDEXED_FILE_TYPES;
-$INDEXED_FILE_TYPES = ["unknown"];
-/**
- * @global array filetypes which should be considered images. This
- *     array is populated in the individual lib/processors page processors
- */
-global $IMAGE_TYPES;
-$IMAGE_TYPES = [];
 /**
  * Default edge size of square image thumbnails in pixels
  */
@@ -571,79 +543,6 @@ define('THUMB_DIM', 128);
  * Maximum size of a user thumb file that can be uploaded
  */
 define('THUMB_SIZE', 1000000);
-/**
- * @global array associates mimetypes that can be processed by the search
- * engine with the processor class that can process them. This
- * array is populated in the individual lib/processors page processors
- */
-global $PAGE_PROCESSORS;
-$PAGE_PROCESSORS = [];
-/**
- * @global array of indexing plugins, array itself is populated in the plugins
- *     after the plugin checks if it can run.
- */
-$INDEXING_PLUGINS;
-$INDEXING_PLUGINS = [];
-/** get any indexing plugins */
-$plugin_dir = BASE_DIR."/library/indexing_plugins/";
-$plugin_dir_len = strlen($plugin_dir);
-$plugin_ext_len = strlen("Plugin.php");
-foreach (glob("$plugin_dir*Plugin.php") as $filename) {
-    $tmp_plug_name = substr($filename, $plugin_dir_len, -$plugin_ext_len);
-    if ($tmp_plug_name != "Indexing") {
-        $INDEXING_PLUGINS[] = $tmp_plug_name;
-    }
-}
-/** get locally defined indexing plugins */
-$plugin_dir = APP_DIR."/library/indexing_plugins/";
-$plugin_dir_len = strlen($plugin_dir);
-foreach (glob("$plugin_dir*Plugin.php") as $filename) {
-    $INDEXING_PLUGINS[] = substr($filename, $plugin_dir_len, -$plugin_ext_len);
-}
-unset($plugin_dir);
-unset($plugin_ext_len);
-unset($plugin_dir_len);
-/**
- * Used in Modified 9 encoding. The ith array entry represents the number of
- * i bit elements that can be stored in a word using modified 9 (0th index
- * location is a dummy value 0 as can't store 0 bit numbers)
- * @global array
- */
-global $MOD9_PACK_POSSIBILITIES;
-$MOD9_PACK_POSSIBILITIES = [
-    0, 24, 12, 7, 6, 5, 4, 3, 3, 3, 2, 2, 2, 2,
-    2,  1,  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-    1, 1, 1, 1];
-/**
- * Used in Modified 9 encoding. Key values are the number of elements we would
- * like to store in the current word. Values are the bit prefix to use on first
- * byte of word. Notices bits 7 and 6 (128 and 64) are not parts of prefixes
- * as used for continuation bits.
- * @global array
- */
-global $MOD9_NUM_ELTS_CODES;
-$MOD9_NUM_ELTS_CODES = [
-    24 => 63, 12 => 62, 7 => 60, 6 => 56, 5 => 52, 4 => 48, 3 => 32,
-    2 => 16, 1 => 0];
-/**
- * Keys of this array are prefix codes from the high order byte of a word
- * encoded using Modified 9, values are the number of bits used to encode
- * an element if that prefix code was used.
- * @global array
- */
-global $MOD9_NUM_BITS_CODES;
-$MOD9_NUM_BITS_CODES = [63 => 1, 62 => 2, 60 => 3, 56 => 4, 52 => 5,
-    48 => 6, 32 => 9, 16 => 14, 0 => 28];
-/**
- * Keys of this array are prefix codes from the high order byte of a word
- * encoded using Modified 9, values are the number of elts stored in the
- * remaining bits of the word
- * @global array
- */
-global $MOD9_NUM_ELTS_DECODES;
-$MOD9_NUM_ELTS_DECODES = [
-    63 => 24, 62 => 12, 60=> 7, 56 => 6, 52 => 5, 48 => 4, 32 => 3,
-    16 => 2, 0 => 1];
 /** Characters we view as not part of words, not same as POSIX [:punct:]*/
 define ('PUNCT', "\.|\,|\:|\;|\"|\'|\[|\/|\%|\?|-|" .
     "\]|\{|\}|\(|\)|\!|\||\&|\`|" .
diff --git a/configs/ConfigureTool.php b/src/configs/ConfigureTool.php
similarity index 98%
rename from configs/ConfigureTool.php
rename to src/configs/ConfigureTool.php
index 92a87d7cd..7b1f403ea 100644
--- a/configs/ConfigureTool.php
+++ b/src/configs/ConfigureTool.php
@@ -39,12 +39,13 @@ use seekquarry\yioop\controllers\AdminController;

 if (php_sapi_name() != 'cli') {echo "BAD REQUEST"; exit();}
 /** Calculate base directory of script @ignore*/
-define("BASE_DIR", substr(dirname(realpath($_SERVER['PHP_SELF'])), 0,
-    -strlen("/configs")));
+define("PARENT_DIR", substr(dirname(realpath($_SERVER['PHP_SELF'])), 0,
+    -strlen("/src/configs")));
+define("BASE_DIR", PARENT_DIR . "/src");
 /** Load in global configuration settings */
 require_once BASE_DIR.'/configs/Config.php';
 /** for class autoload */
-require_once BASE_DIR ."/vendor/autoload.php";
+require_once PARENT_DIR ."/vendor/autoload.php";
 /** Loads common constants for web crawling*/
 require_once BASE_DIR."/library/LocaleFunctions.php";
 /** Loads common utility functions*/
@@ -100,13 +101,12 @@ class ConfigureTool
      */
     function __construct()
     {
-        global $INDEXING_PLUGINS;
         $_REQUEST = [];
         $_POST = [];
         $_GET = [];
         $_SERVER = [];
         $_SESSION = [];
-        $this->admin = new AdminController($INDEXING_PLUGINS);
+        $this->admin = new AdminController();
     }
     /**
      * This is the main loop where options of what the user can configure
@@ -453,7 +453,7 @@ class ConfigureTool
      */
     function confirmChange($admin_method, $reenter_method)
     {
-        global $COMPONENT_ACTIVITIES;
+        $component_activities = AdminController::$component_activities;
         $items = ["confirm" => "Confirm Change",
             "reenter" => "Re-enter the information",
             "configureMenu" => "Return to the Configure Menu"];
@@ -465,7 +465,7 @@ class ConfigureTool
         {
             case "confirm":
                 $component = "system";
-                foreach ($COMPONENT_ACTIVITIES as $available_component =>
+                foreach ($component_activities as $available_component =>
                     $activities) {
                     if (in_array($admin_method, $activities)) {
                         $component = $available_component;
diff --git a/configs/Createdb.php b/src/configs/Createdb.php
similarity index 100%
rename from configs/Createdb.php
rename to src/configs/Createdb.php
diff --git a/configs/ExportPublicHelpDb.php b/src/configs/ExportPublicHelpDb.php
similarity index 100%
rename from configs/ExportPublicHelpDb.php
rename to src/configs/ExportPublicHelpDb.php
diff --git a/configs/PublicHelpPages.php b/src/configs/PublicHelpPages.php
similarity index 100%
rename from configs/PublicHelpPages.php
rename to src/configs/PublicHelpPages.php
diff --git a/configs/TokenTool.php b/src/configs/TokenTool.php
similarity index 96%
rename from configs/TokenTool.php
rename to src/configs/TokenTool.php
index b21f64eba..6671c9e81 100644
--- a/configs/TokenTool.php
+++ b/src/configs/TokenTool.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -37,6 +35,12 @@ namespace Seekquarry\Yioop;
  * @copyright 2009 - 2015
  * @filesource
  */
+
+namespace seekquarry\yioop\configs;
+
+use seekquarry\yioop\library\NWordGrams;
+use seekquarry\yioop\library\Trie;
+
 if (php_sapi_name() != 'cli') {echo "BAD REQUEST"; exit();}
 ini_set("memory_limit","1500M");
 /**
@@ -47,16 +51,7 @@ define("BASE_DIR", substr(
     dirname(realpath($_SERVER['PHP_SELF'])), 0,
     -strlen("/configs")));
 /** Load in global configuration settings */
-require_once BASE_DIR.'/configs/config.php';
-/**
- * Contains makeNWordGramsTextFile and
- * and makeNWordGramsFilterFile used to create the bloom filter
- */
-require_once BASE_DIR."/lib/nword_grams.php";
-/**
- * Contains Trie Class used to store suggest terms
- */
-require_once BASE_DIR."/lib/trie.php";
+require_once BASE_DIR.'/configs/Config.php';
 /**
  * Used to print out a description of how to use token_tool.php
  * @var string
diff --git a/configs/default_crawl.ini b/src/configs/default_crawl.ini
similarity index 100%
rename from configs/default_crawl.ini
rename to src/configs/default_crawl.ini
diff --git a/controllers/AdminController.php b/src/controllers/AdminController.php
similarity index 96%
rename from controllers/AdminController.php
rename to src/controllers/AdminController.php
index 666eb9d24..de111b044 100755
--- a/controllers/AdminController.php
+++ b/src/controllers/AdminController.php
@@ -37,7 +37,6 @@ use seekquarry\yioop\library\PageRuleParser;
 use seekquarry\yioop\library\Classifiers\Classifier;
 use seekquarry\yioop\library\CrawlDaemon;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Controller used to handle admin functionalities such as
  * modify login and password, CREATE, UPDATE,DELETE operations
@@ -62,6 +61,27 @@ class AdminController extends Controller implements CrawlConstants
      * @var array
      */
     public $status_activities = ["crawlStatus", "machineStatus"];
+    /**
+     * Associative array of $components activities for this controller
+     * Components are collections of activities (a little like traits) which
+     * can be reused.
+     *
+     * @var array
+     */
+    public static $component_activities = [
+        "accountaccess" =>
+            ["signin", "manageAccount", "manageUsers", "manageRoles"],
+        "crawl" => ["manageCrawls", "manageClassifiers", "pageOptions",
+            "resultsEditor", "searchSources"],
+        "social" => ["manageGroups", "groupFeeds", "mixCrawls", "wiki"],
+        "advertisement" => ["manageAdvertisements"],
+        "system" => ["manageMachines", "manageLocales", "serverSettings",
+            "security", "configure"]
+    ];
+    public function __construct($indexing_plugins = [])
+    {
+        parent::__construct($indexing_plugins);
+    }
     /**
      * This is the main entry point for handling requests to administer the
      * Yioop/SeekQuarry site
@@ -349,7 +369,7 @@ class AdminController extends Controller implements CrawlConstants
             "advertisement" => tl('admin_controller_advertisement')
         ];
         if (isset($data["ACTIVITIES"])) {
-            foreach ($this->component_activities as $component => $activities) {
+            foreach (self::$component_activities as $component => $activities) {
                 foreach ($data["ACTIVITIES"] as $activity) {
                     if (in_array($activity['METHOD_NAME'], $activities)) {
                         $data['COMPONENT_ACTIVITIES'][
diff --git a/controllers/ApiController.php b/src/controllers/ApiController.php
similarity index 98%
rename from controllers/ApiController.php
rename to src/controllers/ApiController.php
index 5d244deeb..81fa14160 100644
--- a/controllers/ApiController.php
+++ b/src/controllers/ApiController.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\controllers;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\WikiPaser;

-if (!defined('BASE_DIR')) {  echo "BAD REQUEST";  exit(); }
 /**
  * Controller used to handle user group activities outside of
  * the admin panel setting. This either could be because the admin panel
diff --git a/controllers/ArchiveController.php b/src/controllers/ArchiveController.php
similarity index 98%
rename from controllers/ArchiveController.php
rename to src/controllers/ArchiveController.php
index 3aa074d56..09a4a0ecf 100755
--- a/controllers/ArchiveController.php
+++ b/src/controllers/ArchiveController.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\controllers;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\WebArchiveBundle;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Fetcher machines also act as archives for complete caches of web pages,
  * this controller is used to handle access to these web page caches
diff --git a/controllers/ClassifierController.php b/src/controllers/ClassifierController.php
similarity index 99%
rename from controllers/ClassifierController.php
rename to src/controllers/ClassifierController.php
index 0842f6722..b65452bd0 100644
--- a/controllers/ClassifierController.php
+++ b/src/controllers/ClassifierController.php
@@ -36,9 +36,6 @@ use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\classifiers\Classifier;
 use seekquarry\yioop\library\archive_bundle_iterators\MixArchiveBundleIterator;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Get the crawlHash function */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * This class handles XmlHttpRequests to label documents during classifier
  * construction.
diff --git a/controllers/Controller.php b/src/controllers/Controller.php
similarity index 96%
rename from controllers/Controller.php
rename to src/controllers/Controller.php
index 890536457..72f0badc2 100755
--- a/controllers/Controller.php
+++ b/src/controllers/Controller.php
@@ -36,7 +36,6 @@ use seekquarry\yioop\models\Model;
 use seekquarry\yioop\controllers\components\Component;
 use seekquarry\yioop\views\View;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Load crawlHash  and timing functions
  */
@@ -77,18 +76,16 @@ abstract class Controller
      */
     public $model_instances;
     /**
-     * Says which activities (roughly methods invoke from the web) this
-     * controller will respond to
+     * Array of instances of indexing_plugins used by this controller
      * @var array
      */
-    public $activities = [];
+    public $plugin_instances;
     /**
-     * Components are collections of activities (a little like traits) which
-     * can be reused.
-     *
+     * Says which activities (roughly methods invoke from the web) this
+     * controller will respond to
      * @var array
      */
-    public $component_activities = [];
+    public $activities = [];
     /**
      * Associative array of activity => component activity is on, used
      * by @see Controller::call method to actually invoke a given activity
@@ -97,28 +94,30 @@ abstract class Controller
      */
     public $activity_component = [];
     /**
-     * Says which post processing indexing plugins are available
+     * Associative array of $components activities for this controller
+     * Components are collections of activities (a little like traits) which
+     * can be reused.
+     *
      * @var array
      */
-    public $indexing_plugins = [];
+    public static $component_activities = [];
     /**
      * Sets up component activities, instance array, and plugins.
      *
      * @param array $indexing_plugins which post processing indexing plugins
      *      are available
      */
-    public function __construct($indexing_plugins = [])
+    public function __construct()
     {
-        global $INDEXED_FILE_TYPES, $COMPONENT_ACTIVITIES;
-        foreach ($COMPONENT_ACTIVITIES as $component => $activities) {
+        $class = get_class($this);
+        foreach ($class::$component_activities as $component => $activities) {
             foreach ($activities as $activity) {
                 $this->activity_component[$activity] = $component;
                 $this->activities[] = $activity;
             }
         }
-        $this->component_activities = $COMPONENT_ACTIVITIES;
         $this->component_instances = [];
-        $this->indexing_plugins = $indexing_plugins;
+        $this->plugins_instances = [];
         $this->model_instances = [];
         $this->view_instances = [];
     }
@@ -169,6 +168,29 @@ abstract class Controller
         }
         return $this->plugin_instances[$plugin];
     }
+    /**
+     * Used to get a list of all available indexing plugins for this Yioop
+     * instance.
+     *
+     * @param array elts of which are names of indexing plugins
+     */
+    public function getIndexingPluginList()
+    {
+        $dir_prefixes = [BASE_DIR, APP_DIR];
+        foreach($dir_prefixes as $dir_prefix) {
+            $plugin_dir = $dir_prefix."/library/indexing_plugins/";
+            $plugin_dir_len = strlen($plugin_dir);
+            $plugin_ext_len = strlen("Plugin.php");
+            foreach (glob("$plugin_dir*Plugin.php") as $filename) {
+                $tmp_plug_name = substr($filename, $plugin_dir_len,
+                    -$plugin_ext_len);
+                if ($tmp_plug_name != "Indexing") {
+                    $indexing_plugins[] = $tmp_plug_name;
+                }
+            }
+        }
+        return $indexing_plugins;
+    }
     /**
      * Dynamic loader for View objects which might live on the current
      * Controller
diff --git a/controllers/CrawlController.php b/src/controllers/CrawlController.php
similarity index 99%
rename from controllers/CrawlController.php
rename to src/controllers/CrawlController.php
index 283746767..ed54d7e46 100644
--- a/controllers/CrawlController.php
+++ b/src/controllers/CrawlController.php
@@ -35,7 +35,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\MediaConstants;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Controller used to manage networked installations of Yioop where
  * there might be mutliple queue_servers and a name_server. Command
diff --git a/controllers/FetchController.php b/src/controllers/FetchController.php
similarity index 99%
rename from controllers/FetchController.php
rename to src/controllers/FetchController.php
index 7d1c6da3a..9dc08fb4a 100755
--- a/controllers/FetchController.php
+++ b/src/controllers/FetchController.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\classifiers\Classifier;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 // to allow the calulation of longer archive schedules
 ini_set('max_execution_time', 60);
 /**
diff --git a/controllers/GroupController.php b/src/controllers/GroupController.php
similarity index 99%
rename from controllers/GroupController.php
rename to src/controllers/GroupController.php
index 4ef180541..40f7606df 100644
--- a/controllers/GroupController.php
+++ b/src/controllers/GroupController.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\WikiParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Controller used to handle user group activities outside of
  * the admin panel setting. This either could be because the admin panel
diff --git a/controllers/MachineController.php b/src/controllers/MachineController.php
similarity index 99%
rename from controllers/MachineController.php
rename to src/controllers/MachineController.php
index 3f89cd01b..d090ceec1 100644
--- a/controllers/MachineController.php
+++ b/src/controllers/MachineController.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\CrawlDaemon;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This class handles requests from a computer that is managing several
  * fetchers and queue_servers. This controller might be used to start, stop
diff --git a/controllers/RegisterController.php b/src/controllers/RegisterController.php
similarity index 99%
rename from controllers/RegisterController.php
rename to src/controllers/RegisterController.php
index 409ca1ddd..f9e77a953 100755
--- a/controllers/RegisterController.php
+++ b/src/controllers/RegisterController.php
@@ -32,8 +32,8 @@ namespace seekquarry\yioop\controllers;

 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\MailServer;
+use seekquarry\yioop\models\LocaleModel;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Controller used to handle account registration and retrieval for
  * the Yioop website. Also handles data for suggest a url
@@ -117,7 +117,7 @@ class RegisterController extends Controller implements CrawlConstants
      */
     public function __construct()
     {
-        global $locale;
+        $locale = LocaleModel::$current_locale;
         $register_view = $this->view("register");
         $num_captchas_qa = count($register_view->captchas_qa);
         for ($i = 0; $i < $num_captchas_qa; $i++) {
diff --git a/controllers/ResourceController.php b/src/controllers/ResourceController.php
similarity index 99%
rename from controllers/ResourceController.php
rename to src/controllers/ResourceController.php
index af2ead08a..970692652 100644
--- a/controllers/ResourceController.php
+++ b/src/controllers/ResourceController.php
@@ -37,7 +37,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\MediaConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to serve resources, css, or scripts such as images from APP_DIR
  *
diff --git a/controllers/SearchController.php b/src/controllers/SearchController.php
similarity index 99%
rename from controllers/SearchController.php
rename to src/controllers/SearchController.php
index fb1664166..2f5d3d1da 100755
--- a/controllers/SearchController.php
+++ b/src/controllers/SearchController.php
@@ -36,9 +36,6 @@ use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\FetchUrl;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Get the crawlHash function */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * Controller used to handle search requests to SeekQuarry
  * search site. Used to both get and display
@@ -672,7 +669,7 @@ class SearchController extends Controller implements CrawlConstants
         }
         $phrase_model->index_name = $index_name;
         $phrase_model->additional_meta_words = [];
-        foreach ($this->indexing_plugins as $plugin) {
+        foreach ($this->getIndexingPluginList() as $plugin) {
             $tmp_meta_words = $this->plugin($plugin)->getAdditionalMetaWords();
             $phrase_model->additional_meta_words =
                 array_merge($phrase_model->additional_meta_words,
@@ -1186,7 +1183,7 @@ class SearchController extends Controller implements CrawlConstants
    function cacheRequestAndOutput($url, $ui_flags = [], $terms ="",
         $crawl_time = 0)
     {
-        global $CACHE, $IMAGE_TYPES;
+        global $CACHE;
         $crawl_model = $this->model("crawl");
         $flag = 0;
         $crawl_item = null;
diff --git a/controllers/SettingsController.php b/src/controllers/SettingsController.php
similarity index 99%
rename from controllers/SettingsController.php
rename to src/controllers/SettingsController.php
index 791a517c7..729edcee9 100755
--- a/controllers/SettingsController.php
+++ b/src/controllers/SettingsController.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\controllers;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Controller used to handle search requests to SeekQuarry
  * search site. Used to both get and display
diff --git a/controllers/StaticController.php b/src/controllers/StaticController.php
similarity index 99%
rename from controllers/StaticController.php
rename to src/controllers/StaticController.php
index 116c74b07..e40014729 100644
--- a/controllers/StaticController.php
+++ b/src/controllers/StaticController.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\controllers;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This controller is  used by the Yioop web site to display
  * PUBLIC_GROUP_ID pages more like static forward facing pages.
diff --git a/controllers/StatisticsController.php b/src/controllers/StatisticsController.php
similarity index 94%
rename from controllers/StatisticsController.php
rename to src/controllers/StatisticsController.php
index d128adbac..812f7098b 100644
--- a/controllers/StatisticsController.php
+++ b/src/controllers/StatisticsController.php
@@ -32,8 +32,8 @@ namespace seekquarry\yioop\controllers;

 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\UrlParser;
+use seekquarry\yioop\library\processors\PageProcessor;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 define("NO_FEEDS", true);
 /**
  * Responsible for handling requests about global crawl statistics for
@@ -183,8 +183,24 @@ class StatisticsController extends Controller implements CrawlConstants
      */
     public function computeStatistics(&$data)
     {
-        global $INDEXED_FILE_TYPES;
-
+        /* get processors for different file types. constructing
+           them will populate the self::$indexed_file_types,
+           self::$image_types, and self::$mime_processor arrays
+         */
+        $proc_prefixes = [BASE_DIR, APP_DIR];
+        foreach($proc_prefixes as $proc_prefix) {
+            $proc_dir = $proc_prefix . "/library/processors/";
+            foreach (glob("$proc_dir*Processor.php") as $filename) {
+                require_once $filename;
+                $proc_name = substr($filename, strlen($proc_dir),
+                    -strlen(".php"));
+                if (!in_array($proc_name, ["PageProcessor",
+                    "ImageProcessor"])) {
+                    $proc_name = NS_PROCESSORS . $proc_name;
+                    new $proc_name();
+                }
+            }
+        }
         if (!isset($data["COUNT"])) {
             $tmp =  $this->model("crawl")->getInfoTimestamp(
                 $this->index_time_stamp, $this->machine_urls);
@@ -208,7 +224,7 @@ class StatisticsController extends Controller implements CrawlConstants
                 411, 412, 413, 414, 415, 416, 417, 418, 420, 422, 423, 424,
                 425, 426, 428, 429, 431, 444, 449, 450, 499, 500, 501, 502,
                 503, 504, 505, 506, 507, 508, 509, 510, 511, 598, 599],
-            "FILETYPE" => $INDEXED_FILE_TYPES,
+            "FILETYPE" => PageProcessor::$indexed_file_types,
             "HOST" => ["all"],
             "LANG" => [ 'aa', 'ab', 'ae', 'af', 'ak', 'am', 'an', 'ar',
                 'as', 'av', 'ay', 'az', 'ba', 'be', 'bg', 'bh', 'bi', 'bm',
diff --git a/controllers/components/AccountaccessComponent.php b/src/controllers/components/AccountaccessComponent.php
similarity index 99%
rename from controllers/components/AccountaccessComponent.php
rename to src/controllers/components/AccountaccessComponent.php
index 5cebcedfe..210b8bb99 100644
--- a/controllers/components/AccountaccessComponent.php
+++ b/src/controllers/components/AccountaccessComponent.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\controllers\components;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Component of the Yioop control panel used to handle activitys for
  * managing accounts, users, roles, and groups. i.e., Settings of users
diff --git a/controllers/components/AdvertisementComponent.php b/src/controllers/components/AdvertisementComponent.php
similarity index 99%
rename from controllers/components/AdvertisementComponent.php
rename to src/controllers/components/AdvertisementComponent.php
index efc8b8ff9..540d1d409 100644
--- a/controllers/components/AdvertisementComponent.php
+++ b/src/controllers/components/AdvertisementComponent.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\controllers\components;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Component of the Yioop control panel used to handle activitys for
  * managing advertisements. i.e., create advertisement, activate/
diff --git a/controllers/components/Component.php b/src/controllers/components/Component.php
similarity index 93%
rename from controllers/components/Component.php
rename to src/controllers/components/Component.php
index 329b8ffd6..42f299137 100644
--- a/controllers/components/Component.php
+++ b/src/controllers/components/Component.php
@@ -30,11 +30,19 @@
  */
 namespace seekquarry\yioop\controllers\components;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 function tl()
 {
     return call_user_func_array(NS_LIB . "tl", func_get_args());
 }
+/**
+ * shorthand for echo
+ *
+ * @param string $text string to send to the current output
+ */
+function e($text)
+{
+    echo $text;
+}
 /**
  * Base component class for all components on
  * the SeekQuarry site. A component consists of a collection of
diff --git a/controllers/components/CrawlComponent.php b/src/controllers/components/CrawlComponent.php
similarity index 98%
rename from controllers/components/CrawlComponent.php
rename to src/controllers/components/CrawlComponent.php
index ac1069ac0..bfa684578 100644
--- a/controllers/components/CrawlComponent.php
+++ b/src/controllers/components/CrawlComponent.php
@@ -37,10 +37,8 @@ use seekquarry\yioop\library\CrawlDaemon;
 use seekquarry\yioop\library\PageRuleParser;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UrlParser;
+use seekquarry\yioop\library\processors\PageProcessor;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** For crawlHash*/
-require_once BASE_DIR . "/library/Utility.php";
 /**
  * This component is used to provide activities for the admin controller related
  * to configuring and performing a web or archive crawl
@@ -814,12 +812,23 @@ class CrawlComponent extends Component implements CrawlConstants
      */
     public function pageOptions()
     {
-        global $INDEXED_FILE_TYPES;
-        /* get processors for different file types (populating
-           $INDEXED_FILE_TYPES) */
-        foreach (glob(BASE_DIR."/library/processors/*Processor.php")
-            as $filename) {
-            require_once $filename;
+        /* get processors for different file types. constructing
+           them will populate the self::$indexed_file_types,
+           self::$image_types, and self::$mime_processor arrays
+         */
+        $proc_prefixes = [BASE_DIR, APP_DIR];
+        foreach($proc_prefixes as $proc_prefix) {
+            $proc_dir = $proc_prefix . "/library/processors/";
+            foreach (glob("$proc_dir*Processor.php") as $filename) {
+                require_once $filename;
+                $proc_name = substr($filename, strlen($proc_dir),
+                    -strlen(".php"));
+                if (!in_array($proc_name, ["PageProcessor",
+                    "ImageProcessor"])) {
+                    $proc_name = NS_PROCESSORS . $proc_name;
+                    new $proc_name();
+                }
+            }
         }
         $parent = $this->parent;
         $crawl_model = $parent->model("crawl");
@@ -862,7 +871,7 @@ class CrawlComponent extends Component implements CrawlConstants
             self::GRAPH_BASED_SUMMARIZER =>  tl('crawl_component_graph_based')];
         if (!isset($seed_info["indexed_file_types"]["extensions"])) {
             $seed_info["indexed_file_types"]["extensions"] =
-                $INDEXED_FILE_TYPES;
+                PageProcessor::$indexed_file_types;
         }
         $loaded = false;
         if (isset($_REQUEST['load_option']) &&
@@ -970,7 +979,7 @@ class CrawlComponent extends Component implements CrawlConstants
             (isset($seed_info['indexing_plugins']['plugins'])) ?
                 $seed_info['indexing_plugins']['plugins']
                 : [];
-        foreach ($parent->indexing_plugins as $plugin) {
+        foreach ($parent->getIndexingPluginList() as $plugin) {
             if ($plugin == "") {continue; }
             $plugin_name = ucfirst($plugin);
             $data['INDEXING_PLUGINS'][$plugin_name]['checked'] =
@@ -1034,7 +1043,7 @@ class CrawlComponent extends Component implements CrawlConstants

         $data['INDEXED_FILE_TYPES'] = [];
         $filetypes = [];
-        foreach ($INDEXED_FILE_TYPES as $filetype) {
+        foreach (PageProcessor::$indexed_file_types as $filetype) {
             $ison =false;
             if (isset($_REQUEST["filetype"]) && !$loaded) {
                 if (isset($_REQUEST["filetype"][$filetype])) {
diff --git a/controllers/components/SocialComponent.php b/src/controllers/components/SocialComponent.php
similarity index 99%
rename from controllers/components/SocialComponent.php
rename to src/controllers/components/SocialComponent.php
index 953e961d5..dada12d00 100644
--- a/controllers/components/SocialComponent.php
+++ b/src/controllers/components/SocialComponent.php
@@ -36,7 +36,6 @@ use seekquarry\yioop\library\MailServer;
 use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\WikiParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Provides activities to AdminController related to creating, updating
  * blogs (and blog entries), static web pages, and crawl mixes.
diff --git a/controllers/components/SystemComponent.php b/src/controllers/components/SystemComponent.php
similarity index 99%
rename from controllers/components/SystemComponent.php
rename to src/controllers/components/SystemComponent.php
index 832b7d8e4..f9b6eb350 100755
--- a/controllers/components/SystemComponent.php
+++ b/src/controllers/components/SystemComponent.php
@@ -33,8 +33,6 @@ namespace seekquarry\yioop\controllers\components;
 use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-require_once BASE_DIR . "/library/LocaleFunctions.php";
 /**
  * This component is used to handle activities related to the configuration
  * of a Yioop installation, translations of text appearing in the installation,
@@ -982,7 +980,8 @@ EOD;
                     'TIMEZONE' => 'America/Los_Angeles',
                     'SESSION_NAME' => "yioopbiscuit",
                     'CSRF_TOKEN' => "YIOOP_TOKEN",
-                    'AUXILIARY_CSS' => ""
+                    'AUXILIARY_CSS' => "",
+                    'SEARCHBAR_PATH' => NAME_SERVER."yioopbar.xml"
                 ];
                 $old_profile =
                     $profile_model->getProfile($data['WORK_DIRECTORY']);
diff --git a/css/editor.css b/src/css/editor.css
similarity index 100%
rename from css/editor.css
rename to src/css/editor.css
diff --git a/css/search.css b/src/css/search.css
similarity index 100%
rename from css/search.css
rename to src/css/search.css
diff --git a/css/slidy.css b/src/css/slidy.css
similarity index 100%
rename from css/slidy.css
rename to src/css/slidy.css
diff --git a/data/default.db b/src/data/default.db
similarity index 100%
rename from data/default.db
rename to src/data/default.db
diff --git a/src/error.php b/src/error.php
new file mode 100755
index 000000000..bab6640e1
--- /dev/null
+++ b/src/error.php
@@ -0,0 +1,56 @@
+<?php
+/**
+ * SeekQuarry/Yioop --
+ * Open Source Pure PHP Search Engine, Crawler, and Indexer
+ *
+ * Copyright (C) 2009 - 2015  Chris Pollett chris@pollett.org
+ *
+ * LICENSE:
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * END LICENSE
+ *
+ * Web page used to HTTP display error pages for
+ * the SeekQuarry/Yioop Search engine
+ *
+ * @author Chris Pollett chris@pollett.org
+ * @license http://www.gnu.org/licenses/ GPL3
+ * @link http://www.seekquarry.com/
+ * @copyright 2009 - 2015
+ * @filesource
+ */
+namespace seekquarry\yioop;
+
+use seekquarry\yioop\library as L;
+use seekquarry\yioop\controllers\StaticController;
+
+if (!isset($_REQUEST['p']) ||
+    !in_array($_REQUEST['p'], ["404", "409"])) {
+    $_REQUEST['p'] = "404";
+}
+switch ($_REQUEST['p'])
+{
+    case "404":
+        header("HTTP/1.0 404 Not Found");
+    break;
+    case "409":
+        header("HTTP/1.0 409 Conflict");
+    break;
+}
+$_REQUEST['c'] = "static";
+/**
+ * load in main entry point
+ */
+include(__DIR__."/index.php");
diff --git a/examples/0-Archive1421025145.zip b/src/examples/0-Archive1421025145.zip
similarity index 100%
rename from examples/0-Archive1421025145.zip
rename to src/examples/0-Archive1421025145.zip
diff --git a/examples/IndexData1421025145.zip b/src/examples/IndexData1421025145.zip
similarity index 100%
rename from examples/IndexData1421025145.zip
rename to src/examples/IndexData1421025145.zip
diff --git a/examples/SearchApi.php b/src/examples/SearchApi.php
similarity index 93%
rename from examples/SearchApi.php
rename to src/examples/SearchApi.php
index 471ba5bb2..3ecce807a 100644
--- a/examples/SearchApi.php
+++ b/src/examples/SearchApi.php
@@ -44,13 +44,13 @@ if (php_sapi_name() != 'cli') {echo "BAD REQUEST"; exit();}
  * If you have Yioop! in a separate folder from your web-site
  * You should change BASE_DIR to the location of the Yioop! directory
  */
-define("BASE_DIR", substr(
-    dirname(realpath($_SERVER['PHP_SELF'])), 0,
-    -strlen("/examples")));
+define("PARENT_DIR", substr(dirname(realpath($_SERVER['PHP_SELF'])), 0,
+    -strlen("/src/examples")));
+define("BASE_DIR", PARENT_DIR . "/src");
 /** Load in global configuration settings; you need this*/
 require_once BASE_DIR.'/configs/Config.php';
 /** Load class autoloader*/
-require_once BASE_DIR.'/vendor/autoload.php';
+require_once PARENT_DIR.'/vendor/autoload.php';
 if (!PROFILE) {
     echo "Please configure the search engine instance by visiting" .
         "its web interface on localhost.\n";
@@ -83,19 +83,6 @@ if (class_exists("\ZipArchive")) {
     exec("unzip $archive -d $extract_folder");
     exec("unzip $index_archive -d $extract_folder");
 }
-if (function_exists('lcfirst') === false) {
-    /**
-     * Lower cases the first letter in a string
-     *
-     * This function is only defined if the PHP version is before 5.3
-     * @param string $str  string to be lower cased
-     * @return string the lower cased string
-     */
-    function lcfirst( $str )
-    {
-        return (string)(strtolower(substr($str, 0, 1)).substr($str, 1));
-    }
-}
 /**
  * The next block of code till +++++ is needed only if you want
  * to support File or mem_caching of queries repsonses
diff --git a/executables/ArcTool.php b/src/executables/ArcTool.php
similarity index 99%
rename from executables/ArcTool.php
rename to src/executables/ArcTool.php
index d517a795e..dbae686e7 100755
--- a/executables/ArcTool.php
+++ b/src/executables/ArcTool.php
@@ -53,7 +53,7 @@ ini_set("memory_limit","2000M"); /*
 /** This tool does not need logging*/
 define("LOG_TO_FILES", false);
 /** Set-up autoload*/
-require_once BASE_DIR ."/vendor/autoload.php";
+require_once "../../vendor/autoload.php";
 /** Load in global configuration settings */
 require_once BASE_DIR.'/configs/Config.php';
 if (!PROFILE) {
diff --git a/executables/ClassifierTool.php b/src/executables/ClassifierTool.php
similarity index 99%
rename from executables/ClassifierTool.php
rename to src/executables/ClassifierTool.php
index 7c0008bb6..4fadb8c3d 100755
--- a/executables/ClassifierTool.php
+++ b/src/executables/ClassifierTool.php
@@ -41,7 +41,7 @@ if (php_sapi_name() != 'cli') {echo "BAD REQUEST"; exit();}
 define("BASE_DIR", substr(dirname(realpath($_SERVER['PHP_SELF'])), 0,
     -strlen("/executables")));
 /** Set-up autoload*/
-require_once BASE_DIR ."/vendor/autoload.php";
+require_once "../../vendor/autoload.php";
 /** Load in global configuration settings */
 require_once BASE_DIR.'/configs/Config.php';
 if (!PROFILE) {
diff --git a/executables/ClassifierTrainer.php b/src/executables/ClassifierTrainer.php
similarity index 98%
rename from executables/ClassifierTrainer.php
rename to src/executables/ClassifierTrainer.php
index bbbb3736c..aca1bc690 100755
--- a/executables/ClassifierTrainer.php
+++ b/src/executables/ClassifierTrainer.php
@@ -45,7 +45,7 @@ define("BASE_DIR", substr(dirname(realpath($_SERVER['PHP_SELF'])), 0,
  */
 define("NO_LOGGING", false);
 /** Set-up autoload*/
-require_once BASE_DIR ."/vendor/autoload.php";
+require_once "../../vendor/autoload.php";
 /*
    Load in global configuration settings
  */
diff --git a/executables/CodeTool.php b/src/executables/CodeTool.php
similarity index 99%
rename from executables/CodeTool.php
rename to src/executables/CodeTool.php
index ad02f3589..47671a495 100755
--- a/executables/CodeTool.php
+++ b/src/executables/CodeTool.php
@@ -42,9 +42,10 @@ if (php_sapi_name() != 'cli') {echo "BAD REQUEST"; exit();}
 /** Calculate base directory of script @ignore */
 define("BASE_DIR", substr(dirname(realpath($_SERVER['PHP_SELF'])), 0,
     -strlen("/executables")));
-
+/** Set-up whole project folder*/
+define("PARENT_DIR", substr(BASE_DIR, 0, -strlen("/src")));
 /** Set-up autoloader */
-require_once BASE_DIR . "/vendor/autoload.php";
+require_once PARENT_DIR. "/vendor/autoload.php";
 /** Load in global configuration settings */
 require_once BASE_DIR . '/Configs/Config.php';
 if (!PROFILE) {
diff --git a/executables/Fetcher.php b/src/executables/Fetcher.php
similarity index 98%
rename from executables/Fetcher.php
rename to src/executables/Fetcher.php
index a1da4c76e..a2659a38e 100755
--- a/executables/Fetcher.php
+++ b/src/executables/Fetcher.php
@@ -40,19 +40,22 @@ use seekquarry\yioop\library\FetchGitRepositoryUrls;
 use seekquarry\yioop\library\IndexShard;
 use seekquarry\yioop\library\PageRuleParser;
 use seekquarry\yioop\library\PhraseParser;
+use seekquarry\yioop\library\processors\PageProcessor;
 use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\WebArchiveBundle;

 if (php_sapi_name() != 'cli') {echo "BAD REQUEST"; exit();}
+ini_set("memory_limit", "1200M"); //so have enough memory to crawl sitemaps
 /**
  * Calculate base directory of script
  * @ignore
  */
 define("BASE_DIR", substr(dirname(realpath($_SERVER['PHP_SELF'])), 0,
     -strlen("/executables")));
-ini_set("memory_limit", "1200M"); //so have enough memory to crawl sitemaps
-/** Set-up autoload*/
-require_once BASE_DIR ."/vendor/autoload.php";
+/** Set-up whole project folder*/
+define("PARENT_DIR", substr(BASE_DIR, 0, -strlen("/src")));
+/** Set-up autoloader */
+require_once PARENT_DIR. "/vendor/autoload.php";
 /** Load in global configuration settings */
 require_once BASE_DIR.'/configs/Config.php';
 if (!PROFILE) {
@@ -424,16 +427,33 @@ class Fetcher implements CrawlConstants
      */
     public function __construct()
     {
-        global $PAGE_PROCESSORS, $INDEXED_FILE_TYPES;
+        /* get processors for different file types. constructing
+           them will populate the self::$indexed_file_types,
+           self::$image_types, and self::$mime_processor arrays
+         */
+        $proc_prefixes = [BASE_DIR, APP_DIR];
+        foreach($proc_prefixes as $proc_prefix) {
+            $proc_dir = $proc_prefix . "/library/processors/";
+            foreach (glob("$proc_dir*Processor.php") as $filename) {
+                require_once $filename;
+                $proc_name = substr($filename, strlen($proc_dir),
+                    -strlen(".php"));
+                if (!in_array($proc_name, ["PageProcessor",
+                    "ImageProcessor"])) {
+                    $proc_name = NS_PROCESSORS . $proc_name;
+                    new $proc_name();
+                }
+            }
+        }
         $db_class = NS_DATASOURCES . ucfirst(DBMS)."Manager";
         $this->db = new $db_class();
         // initially same only one queueserver and is same as name server
         $this->name_server = NAME_SERVER;
         $this->queue_servers = [NAME_SERVER];
         $this->current_server = 0;
-        $this->page_processors = $PAGE_PROCESSORS;
-        $this->indexed_file_types = $INDEXED_FILE_TYPES;
-        $this->all_file_types = $INDEXED_FILE_TYPES;
+        $this->page_processors = PageProcessor::$mime_processor;
+        $this->indexed_file_types = PageProcessor::$indexed_file_types;
+        $this->all_file_types = PageProcessor::$indexed_file_types;
         $this->restrict_sites_by_url = false;
         $this->allowed_sites = [];
         $this->disallowed_sites = [];
@@ -1577,7 +1597,7 @@ class Fetcher implements CrawlConstants
      */
     public function processFetchPages($site_pages)
     {
-        $PAGE_PROCESSORS = $this->page_processors;
+        $page_processors = $this->page_processors;
         L\crawlLog("Start process pages... Current Memory:".memory_get_usage());
         $start_time = microtime();
         $prefix = $this->fetcher_num."-";
@@ -1661,8 +1681,8 @@ class Fetcher implements CrawlConstants
                     $site[self::ENCODING] = "UTF-8";
                 }
                 $handled = true;
-            } else if (isset($PAGE_PROCESSORS[$type])) {
-                $page_processor = NS_PROCESSORS . $PAGE_PROCESSORS[$type];
+            } else if (isset($page_processors[$type])) {
+                $page_processor = NS_PROCESSORS . $page_processors[$type];
                 if (L\generalIsA($page_processor, "TextProcessor")) {
                     $text_data =true;
                 } else {
diff --git a/executables/MediaUpdater.php b/src/executables/MediaUpdater.php
similarity index 98%
rename from executables/MediaUpdater.php
rename to src/executables/MediaUpdater.php
index 8c21fc88c..55ca891bb 100644
--- a/executables/MediaUpdater.php
+++ b/src/executables/MediaUpdater.php
@@ -42,15 +42,17 @@ use seekquarry\yioop\models\GroupModel;
 use seekquarry\yioop\models\SourceModel;

 if (php_sapi_name() != 'cli') {echo "BAD REQUEST"; exit();}
+ini_set("memory_limit", "1300M");
 /**
  * Calculate base directory of script
  * @ignore
  */
 define("BASE_DIR", substr(dirname(realpath($_SERVER['PHP_SELF'])), 0,
     -strlen("/executables")));
-ini_set("memory_limit", "1300M");
-/** Set-up autoload*/
-require_once BASE_DIR ."/vendor/autoload.php";
+/** Set-up whole project folder*/
+define("PARENT_DIR", substr(BASE_DIR, 0, -strlen("/src")));
+/** Set-up autoloader */
+require_once PARENT_DIR. "/vendor/autoload.php";
 /** Load in global configuration settings */
 require_once BASE_DIR.'/configs/Config.php';
 if (!PROFILE) {
@@ -77,19 +79,6 @@ require_once BASE_DIR."/library/LocaleFunctions.php";
  */
 mb_internal_encoding("UTF-8");
 mb_regex_encoding("UTF-8");
-if (function_exists('lcfirst') === false) {
-    /**
-     * Lower cases the first letter in a string
-     *
-     * This function is only defined if the PHP version is before 5.3
-     * @param string $str  string to be lower cased
-     * @return string the lower cased string
-     */
-    function lcfirst( $str )
-    {
-        return (string)(strtolower(substr($str, 0, 1)).substr($str, 1));
-    }
-}
 /**
  * Separate process/command-line script which can be used to update
  * news sources for Yioop and also handle other kinds of activities such as
diff --git a/executables/Mirror.php b/src/executables/Mirror.php
similarity index 98%
rename from executables/Mirror.php
rename to src/executables/Mirror.php
index a982211b7..a712a8d5a 100644
--- a/executables/Mirror.php
+++ b/src/executables/Mirror.php
@@ -36,6 +36,7 @@ use seekquarry\yioop\library\CrawlDaemon;
 use seekquarry\yioop\library\FetchUrl;

 if (php_sapi_name() != 'cli') {echo "BAD REQUEST"; exit();}
+ini_set("memory_limit","850M"); //so have enough memory to crawl big pages
 /**
  * Calculate base directory of script
  * @ignore
@@ -43,9 +44,10 @@ if (php_sapi_name() != 'cli') {echo "BAD REQUEST"; exit();}
 define("BASE_DIR", substr(
     dirname(realpath($_SERVER['PHP_SELF'])), 0,
     -strlen("/executables")));
-ini_set("memory_limit","850M"); //so have enough memory to crawl big pages
-/** Set-up autoload*/
-require_once BASE_DIR ."/vendor/autoload.php";
+/** Set-up whole project folder*/
+define("PARENT_DIR", substr(BASE_DIR, 0, -strlen("/src")));
+/** Set-up autoloader */
+require_once PARENT_DIR. "/vendor/autoload.php";
 /** Load in global configuration settings */
 require_once BASE_DIR.'/configs/Config.php';
 if (!PROFILE) {
diff --git a/executables/QueryTool.php b/src/executables/QueryTool.php
similarity index 92%
rename from executables/QueryTool.php
rename to src/executables/QueryTool.php
index fee3680e6..685de9b46 100755
--- a/executables/QueryTool.php
+++ b/src/executables/QueryTool.php
@@ -42,8 +42,10 @@ define("BASE_DIR", substr(
     -strlen("/executables")));
 /** so can output plans */
 define("QUERY_STATISTICS", true);
-/** Set-up autoload*/
-require_once BASE_DIR ."/vendor/autoload.php";
+/** Set-up whole project folder*/
+define("PARENT_DIR", substr(BASE_DIR, 0, -strlen("/src")));
+/** Set-up autoloader */
+require_once PARENT_DIR. "/vendor/autoload.php";
 /** Load in global configuration settings */
 require_once BASE_DIR.'/configs/Config.php';
 if (!PROFILE) {
@@ -92,16 +94,16 @@ class QueryTool implements CrawlConstants
      */
     public function start()
     {
-        global $argv, $INDEXING_PLUGINS;
+        global $argv;
         if (!isset($argv[1])) {
             $this->usageMessageAndExit();
         }
         $query = $argv[1];
         $results_per_page = (isset($argv[2])) ? $argv[2] : 10;
         $limit = (isset($argv[3])) ? $argv[3] : 0;
-        L\setLocaleObject(getLocaleTag());
+        L\setLocaleObject((isset($argv[4])) ? $argv[4] : DEFAULT_LOCALE);
         $start_time = microtime();
-        $controller = new SearchController($INDEXING_PLUGINS);
+        $controller = new SearchController();
         $data = $controller->queryRequest($query, $results_per_page, $limit);
         if (isset($argv[2]) && ($argv[2] == "plan" || $argv[2] == "explain")) {
             echo "\n" . $controller->model("phrase")->db->query_log[0]["PLAN"]
@@ -169,15 +171,5 @@ class QueryTool implements CrawlConstants
         exit();
     }
 }
-/**
- * Used within PhraseModel called from SearchController to do stemming
- * @return string IANA tag either default or from the command line.
- */
-function getLocaleTag()
-{
-    global $argv;
-
-    return  (isset($argv[4])) ? $argv[4] : DEFAULT_LOCALE;
-}
 $query_tool =  new QueryTool();
 $query_tool->start();
diff --git a/executables/QueueServer.php b/src/executables/QueueServer.php
similarity index 98%
rename from executables/QueueServer.php
rename to src/executables/QueueServer.php
index 1214d12bb..e67978319 100755
--- a/executables/QueueServer.php
+++ b/src/executables/QueueServer.php
@@ -37,6 +37,7 @@ use seekquarry\yioop\library\FetchUrl;
 use seekquarry\yioop\library\IndexShard;
 use seekquarry\yioop\library\IndexArchiveBundle;
 use seekquarry\yioop\library\Join;
+use seekquarry\yioop\library\processors\PageProcessor;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\WebQueueBundle;
@@ -54,8 +55,12 @@ if (!defined("UNIT_TEST_MODE")) {
     define("NO_CACHE", true);
 }
 ini_set("memory_limit","2500M"); //so have enough memory to crawl big pages
-/** Set-up autoload*/
-require_once BASE_DIR ."/vendor/autoload.php";
+/** Set-up whole project folder*/
+if (!defined("PARENT_DIR")) {
+    define("PARENT_DIR", substr(BASE_DIR, 0, -strlen("/src")));
+}
+/** Set-up autoloader */
+require_once PARENT_DIR. "/vendor/autoload.php";
 /** Load in global configuration settings */
 require_once BASE_DIR.'/configs/Config.php';
 if (!PROFILE) {
@@ -281,11 +286,28 @@ class QueueServer implements CrawlConstants, Join
      */
     public function __construct()
     {
-        global $INDEXED_FILE_TYPES;
+        /* get processors for different file types. constructing
+           them will populate the self::$indexed_file_types,
+           self::$image_types, and self::$mime_processor arrays
+         */
+        $proc_prefixes = [BASE_DIR, APP_DIR];
+        foreach($proc_prefixes as $proc_prefix) {
+            $proc_dir = $proc_prefix . "/library/processors/";
+            foreach (glob("$proc_dir*Processor.php") as $filename) {
+                require_once $filename;
+                $proc_name = substr($filename, strlen($proc_dir),
+                    -strlen(".php"));
+                if (!in_array($proc_name, ["PageProcessor",
+                    "ImageProcessor"])) {
+                    $proc_name = NS_PROCESSORS . $proc_name;
+                    new $proc_name();
+                }
+            }
+        }
         $db_class = NS_DATASOURCES . ucfirst(DBMS)."Manager";
         $this->db = new $db_class();
-        $this->indexed_file_types = $INDEXED_FILE_TYPES;
-        $this->all_file_types = $INDEXED_FILE_TYPES;
+        $this->indexed_file_types = PageProcessor::$indexed_file_types;
+        $this->all_file_types = PageProcessor::$indexed_file_types;
         $this->most_recent_fetcher = "No Fetcher has spoken with me";

         //the next values will be set for real in startCrawl
@@ -2581,6 +2603,6 @@ if (!defined("UNIT_TEST_MODE")) {
     /*
      * Instantiate and runs the QueueSever
      */
-    $queue_server =  new QueueServer($INDEXED_FILE_TYPES);
+    $queue_server =  new QueueServer();
     $queue_server->start();
 }
diff --git a/favicon.ico b/src/favicon.ico
similarity index 100%
rename from favicon.ico
rename to src/favicon.ico
diff --git a/src/index.php b/src/index.php
new file mode 100755
index 000000000..1e4d60253
--- /dev/null
+++ b/src/index.php
@@ -0,0 +1,181 @@
+<?php
+/**
+ * SeekQuarry/Yioop --
+ * Open Source Pure PHP Search Engine, Crawler, and Indexer
+ *
+ * Copyright (C) 2009 - 2015  Chris Pollett chris@pollett.org
+ *
+ * LICENSE:
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * END LICENSE
+ *
+ * Main web interface entry point for Yioop!
+ * search site. Used to both get and display
+ * search results. Also used for inter-machine
+ * communication during crawling
+ *
+ * @author Chris Pollett chris@pollett.org
+ * @license http://www.gnu.org/licenses/ GPL3
+ * @link http://www.seekquarry.com/
+ * @copyright 2009 - 2015
+ * @filesource
+ */
+namespace seekquarry\yioop;
+
+use seekquarry\yioop\library as L;
+
+bootstrap();
+function bootstrap()
+{
+    $total_time = microtime();
+    /** Calculate base directory of script
+     * @ignore
+     */
+    define("BASE_DIR", __DIR__ ."/");
+    define("PARENT_DIR", substr(BASE_DIR, 0, -strlen("/src")));
+    $pathinfo = pathinfo($_SERVER['SCRIPT_NAME']);
+    $http = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']) ?
+        "https://" : "http://";
+    $port = (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] != 80) ?
+        ":".$_SERVER['SERVER_PORT'] : "";
+    //used in register controller to create links back to server
+    define("BASE_URL", $http.$_SERVER['SERVER_NAME']. $port
+        . $pathinfo["dirname"]."/");
+    /**
+     * Check for paths of the form index.php/something which yioop doesn't
+     * support
+     */
+    $s_name = $_SERVER['SCRIPT_NAME']."/";
+    $path_name = substr($_SERVER["REQUEST_URI"], 0, strlen($s_name));
+    if (strcmp($path_name, $s_name) == 0) {
+        $_SERVER["PATH_TRANSLATED"] = BASE_DIR;
+        $scriptinfo = pathinfo($s_name);
+        $_SERVER["PATH_INFO"] = ($scriptinfo["dirname"] == "/") ? "" :
+            $scriptinfo["dirname"] ;
+        include(BASE_DIR."/error.php");
+        exit();
+    }
+    if (!isset($_SERVER["PATH_INFO"])) {
+        $_SERVER["PATH_INFO"] = ".";
+    }
+    /**
+     * Make an initial setting of controllers. This can be overridden in
+     * local_config
+     */
+    $available_controllers = ["admin", "api", "archive",  "cache",
+        "classifier", "crawl", "fetch", "group", "machine", "resource",
+        "search", "settings", "statistics", "static"];
+    /**
+     * Load the configuration file
+     */
+    require_once(BASE_DIR.'configs/Config.php');
+    ini_set("memory_limit","500M");
+    header("X-FRAME-OPTIONS: DENY"); //prevent click-jacking
+    header("X-Content-Type-Options: nosniff"); /*
+        Let browsers know that we should be setting the mimetype correctly --
+        For none dumb browsers this should help prevent against XSS attacks
+        to images containing HTML. Also, might help against PRSSI attacks.
+        */
+    session_name(SESSION_NAME);
+    session_start();
+    /**
+     * For error function
+     */
+    require_once BASE_DIR."/library/Utility.php";
+    if ((DEBUG_LEVEL & ERROR_INFO) == ERROR_INFO) {
+        set_error_handler(NS_LIB . "yioop_error_handler");
+    }
+    /**
+     * Load global functions related to localization
+     */
+    require_once BASE_DIR."/library/LocaleFunctions.php";
+    /**
+     * Load global functions related to checking Yioop! version
+     */
+    require_once BASE_DIR."/library/UpgradeFunctions.php";
+    if (USE_MEMCACHE && class_exists("\Memcache")) {
+        $CACHE = new \Memcache();
+        foreach ($MEMCACHES as $mc) {
+            $CACHE->addServer($mc['host'], $mc['port']);
+        }
+        unset($mc);
+        define("USE_CACHE", true);
+    } else if (USE_FILECACHE) {
+        $file_cache = NS_LIBRARY . "FileCache";
+        $CACHE = new $file_cache(WORK_DIRECTORY."/cache/queries");
+        unset($file_cache);
+        define("USE_CACHE", true);
+    } else {
+        define("USE_CACHE", false);
+    }
+    if (!function_exists('mb_internal_encoding')) {
+        echo "PHP Zend Multibyte Support must be enabled for Yioop! to run.";
+        exit();
+    }
+    mb_internal_encoding("UTF-8");
+    mb_regex_encoding("UTF-8");
+    if (in_array(REGISTRATION_TYPE, ['no_activation', 'email_registration',
+        'admin_activation'])) {
+        $available_controllers[] = "register";
+    }
+    if (!WEB_ACCESS) {
+        $available_controllers = ["admin", "archive", "cache", "crawl","fetch",
+            "machine"];
+    }
+    //the request variable c is used to determine the controller
+    if (!isset($_REQUEST['c'])) {
+        $controller_name = "search";
+        if (defined('LANDING_PAGE') && LANDING_PAGE && !isset($_REQUEST['q'])) {
+            $controller_name = "static";
+            $_REQUEST['c'] = "static";
+            $_REQUEST['p'] = "Main";
+        }
+    } else {
+        $controller_name = $_REQUEST['c'];
+    }
+    if (!in_array($controller_name, $available_controllers))
+    {
+        if (WEB_ACCESS) {
+            $controller_name = "search";
+        } else {
+            $controller_name = "admin";
+        }
+    }
+    // if no profile exists we force the page to be the configuration page
+    if (!PROFILE || (defined("FIX_NAME_SERVER") && FIX_NAME_SERVER)) {
+        $controller_name = "admin";
+    }
+    $locale_tag = L\getLocaleTag();
+    if (L\upgradeDatabaseWorkDirectoryCheck()) {
+        L\upgradeDatabaseWorkDirectory();
+    }
+    if (L\upgradeLocalesCheck($locale_tag)) {
+        L\upgradeLocales();
+    }
+    //upgrade manipulations might mess with globale locale, so set it back here
+    L\setLocaleObject($locale_tag);
+    if (file_exists(APP_DIR."/index.php")) {
+        require_once APP_DIR."/index.php";
+    }
+    /**
+     * Loads controller responsible for calculating
+     * the data needed to render the scene
+     *
+     */
+    $controller_class = NS_CONTROLLERS . ucfirst($controller_name)."Controller";
+    $controller = new $controller_class();
+    $controller->processRequest();
+}
diff --git a/library/AnalyticsManager.php b/src/library/AnalyticsManager.php
similarity index 97%
rename from library/AnalyticsManager.php
rename to src/library/AnalyticsManager.php
index 20c473f36..998e279f7 100644
--- a/library/AnalyticsManager.php
+++ b/src/library/AnalyticsManager.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library;

 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to set and get SQL query and search query timing statistic
  * between models and index_bundle_iterators
diff --git a/library/BTree.php b/src/library/BTree.php
similarity index 98%
rename from library/BTree.php
rename to src/library/BTree.php
index 60fb945ce..0fe489e56 100644
--- a/library/BTree.php
+++ b/src/library/BTree.php
@@ -30,12 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-/**
- * Default value of minimum degree. The minimum degree determines the minimum
- * and maximum number of keys and child nodes, for nodes
- * other than root node
- */
-define('MIN_DEGREE', 501);
 /**
  * This class implements the B-Tree data structure for storing int key based
  * key-value pairs based on the algorithms in Introduction To Algorithms,
@@ -47,6 +41,12 @@ define('MIN_DEGREE', 501);
  */
 class BTree
 {
+    /**
+     * Default value of minimum degree. The minimum degree determines the
+     * minimum and maximum number of keys and child nodes, for nodes
+     * other than root node
+     */
+    const MIN_DEGREE = 501;
     /**
      * Minimum degree of the B-Tree. Used in determining the minimum/maximum
      * keys and links a B-Tree node may have.
@@ -78,7 +78,7 @@ class BTree
      * @param string $dir is the directory for storing the B-Tree files
      * @param int $min_degree minimum degree of a B-tree node
      */
-    public function __construct($dir, $min_degree = MIN_DEGREE)
+    public function __construct($dir, $min_degree = self::MIN_DEGREE)
     {
         $this->dir = $dir;
         $this->min_degree = $min_degree;
diff --git a/library/BloomFilterBundle.php b/src/library/BloomFilterBundle.php
similarity index 99%
rename from library/BloomFilterBundle.php
rename to src/library/BloomFilterBundle.php
index e6a831ffa..4fde93ed1 100644
--- a/library/BloomFilterBundle.php
+++ b/src/library/BloomFilterBundle.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  *
  * A BloomFilterBundle is a directory of BloomFilterFile.
diff --git a/library/BloomFilterFile.php b/src/library/BloomFilterFile.php
similarity index 98%
rename from library/BloomFilterFile.php
rename to src/library/BloomFilterFile.php
index 93dfcb0d3..f1c604317 100755
--- a/library/BloomFilterFile.php
+++ b/src/library/BloomFilterFile.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * For packInt/unpackInt
  */
diff --git a/library/BrowserRunner.php b/src/library/BrowserRunner.php
similarity index 98%
rename from library/BrowserRunner.php
rename to src/library/BrowserRunner.php
index 82f711ff6..149e407ed 100644
--- a/library/BrowserRunner.php
+++ b/src/library/BrowserRunner.php
@@ -24,7 +24,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to execute browser-based Javascript and browser page rendering from PHP.
  *
diff --git a/library/Bzip2BlockIterator.php b/src/library/Bzip2BlockIterator.php
similarity index 99%
rename from library/Bzip2BlockIterator.php
rename to src/library/Bzip2BlockIterator.php
index e478af69b..d6bbb188c 100644
--- a/library/Bzip2BlockIterator.php
+++ b/src/library/Bzip2BlockIterator.php
@@ -30,9 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR') && php_sapi_name() != 'cli') {
-    echo "BAD REQUEST"; exit();
-}
 /**
  * This class is used to allow one to iterate through a Bzip2 file.
  * The main advantage of using this class over the built-in bzip is that
@@ -313,7 +310,7 @@ class BZip2BlockIterator
         }
     }
 }
-if (!function_exists("main")) {
+if (!function_exists("main") && php_sapi_name() == 'cli') {
     /**
      * Command-line shell for testing the class
      */
diff --git a/library/CrawlConstants.php b/src/library/CrawlConstants.php
similarity index 99%
rename from library/CrawlConstants.php
rename to src/library/CrawlConstants.php
index 5c80b46a9..8cfa7eff5 100755
--- a/library/CrawlConstants.php
+++ b/src/library/CrawlConstants.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Shared constants and enums used by components that are involved in the
  * crawling process
diff --git a/library/CrawlDaemon.php b/src/library/CrawlDaemon.php
similarity index 99%
rename from library/CrawlDaemon.php
rename to src/library/CrawlDaemon.php
index ea4e90ec3..123ec3d3b 100644
--- a/library/CrawlDaemon.php
+++ b/src/library/CrawlDaemon.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library;

 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Load system-wide defines
  */
diff --git a/library/FetchGitRepositoryUrls.php b/src/library/FetchGitRepositoryUrls.php
similarity index 99%
rename from library/FetchGitRepositoryUrls.php
rename to src/library/FetchGitRepositoryUrls.php
index 142a9c94d..ce3ca9aa1 100755
--- a/library/FetchGitRepositoryUrls.php
+++ b/src/library/FetchGitRepositoryUrls.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Library of functions used to fetch Git internal urls
  *
diff --git a/library/FetchUrl.php b/src/library/FetchUrl.php
similarity index 99%
rename from library/FetchUrl.php
rename to src/library/FetchUrl.php
index 77b35c519..7bbecce57 100755
--- a/library/FetchUrl.php
+++ b/src/library/FetchUrl.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\library;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  *
  * Code used to manage HTTP or Gopher requests from one or more URLS
diff --git a/library/FileCache.php b/src/library/FileCache.php
similarity index 98%
rename from library/FileCache.php
rename to src/library/FileCache.php
index fd4b703e3..2a986ff67 100644
--- a/library/FileCache.php
+++ b/src/library/FileCache.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Library of functions used to implement a simple file cache
  *
diff --git a/library/HashTable.php b/src/library/HashTable.php
similarity index 99%
rename from library/HashTable.php
rename to src/library/HashTable.php
index bcd30e97b..89d648d4a 100755
--- a/library/HashTable.php
+++ b/src/library/HashTable.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  *
  * Code used to manage a memory efficient hash table
diff --git a/library/IndexArchiveBundle.php b/src/library/IndexArchiveBundle.php
similarity index 99%
rename from library/IndexArchiveBundle.php
rename to src/library/IndexArchiveBundle.php
index a781ec01d..488d2fb28 100644
--- a/library/IndexArchiveBundle.php
+++ b/src/library/IndexArchiveBundle.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used for crawlLog and crawlHash
  */
diff --git a/library/IndexDictionary.php b/src/library/IndexDictionary.php
similarity index 99%
rename from library/IndexDictionary.php
rename to src/library/IndexDictionary.php
index 53e93894c..d644aa212 100644
--- a/library/IndexDictionary.php
+++ b/src/library/IndexDictionary.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Data structure used to store for entries of the form:
  * word id, index shard generation, posting list offset, and length of
diff --git a/library/IndexManager.php b/src/library/IndexManager.php
similarity index 99%
rename from library/IndexManager.php
rename to src/library/IndexManager.php
index 61a9b0921..089573873 100644
--- a/library/IndexManager.php
+++ b/src/library/IndexManager.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * For crawlHash
  */
diff --git a/library/IndexShard.php b/src/library/IndexShard.php
similarity index 99%
rename from library/IndexShard.php
rename to src/library/IndexShard.php
index 8d1a4d8a4..189a4c30e 100644
--- a/library/IndexShard.php
+++ b/src/library/IndexShard.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Load charCopy
  */
diff --git a/library/JavascriptUnitTest.php b/src/library/JavascriptUnitTest.php
similarity index 96%
rename from library/JavascriptUnitTest.php
rename to src/library/JavascriptUnitTest.php
index 2953c5a11..4e058b558 100644
--- a/library/JavascriptUnitTest.php
+++ b/src/library/JavascriptUnitTest.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Super class of all the test classes testing Javascript functions.
  *
diff --git a/library/Join.php b/src/library/Join.php
similarity index 96%
rename from library/Join.php
rename to src/library/Join.php
index 52a49b4a2..5e2d102e5 100644
--- a/library/Join.php
+++ b/src/library/Join.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Marker interface used to say that a class has supports a join()
  * callback method. IndexArchiveBundle has methods which take objects
diff --git a/library/LocaleFunctions.php b/src/library/LocaleFunctions.php
similarity index 95%
rename from library/LocaleFunctions.php
rename to src/library/LocaleFunctions.php
index 67e169b5c..ce35c4aee 100755
--- a/library/LocaleFunctions.php
+++ b/src/library/LocaleFunctions.php
@@ -263,6 +263,7 @@ function guessEncodingHtml($html, $return_loc_info = false)
     }
     return mb_detect_encoding($html, 'auto');
 }
+
 /**
  * Translate the supplied arguments into the current locale.
  * This function takes a variable number of arguments. The first
@@ -275,7 +276,7 @@ function guessEncodingHtml($html, $return_loc_info = false)
  */
 function tl()
 {
-    global $locale;
+    $locale = LocaleModel::$current_locale;
     if (!is_object($locale)) {
         return false;
     }
@@ -294,29 +295,28 @@ function tl()
  */
 function setLocaleObject($locale_tag)
 {
-    global $locale;
     $locale_model = NS_MODELS . "LocaleModel";
     $locale = new $locale_model();
     $locale->initialize($locale_tag);
+    LocaleModel::$current_locale = $locale;
 }
-
-if (!function_exists("getLocaleTag")) {
-    /**
-     * Gets the language tag (for instance, en_US for American English) of the
-     * locale that is currently being used.
-     *
-     * @return string  the tag of the language currently being used for locale
-     *     settings
-     */
-    function getLocaleTag()
-    {
-        global $locale, $locale_tag;
-        if (!$locale) {
-            $locale_tag = guessLocale();
-            return $locale_tag;
-        }
-        return $locale->getLocaleTag();
+/**
+ * Gets the language tag (for instance, en_US for American English) of the
+ * locale that is currently being used. This function has the side
+ * effect of setting Yioop's current locale.
+ *
+ * @return string  the tag of the language currently being used for locale
+ *     settings
+ */
+function getLocaleTag()
+{
+    $locale = LocaleModel::$current_locale;
+    if (!$locale) {
+        $locale_tag = guessLocale();
+        setLocaleObject($locale_tag);
+        return $locale_tag;
     }
+    return $locale->getLocaleTag();
 }
 /**
  * Returns the current language directions.
@@ -326,7 +326,7 @@ if (!function_exists("getLocaleTag")) {
  */
 function getLocaleDirection()
 {
-    global $locale;
+    $locale = LocaleModel::$current_locale;
     return $locale->getLocaleDirection();
 }
 /**
@@ -336,7 +336,7 @@ function getLocaleDirection()
  */
 function getLocaleQueryStatistics()
 {
-    global $locale;
+    $locale = LocaleModel::$current_locale;
     $query_info = [];
     $query_info['QUERY_LOG'] = $locale->db->query_log;
     $query_info['TOTAL_ELAPSED_TIME'] = $locale->db->total_time;
@@ -352,7 +352,7 @@ function getLocaleQueryStatistics()
  */
 function getBlockProgression()
 {
-    global $locale;
+    $locale = LocaleModel::$current_locale;
     return $locale->getBlockProgression();

 }
@@ -365,7 +365,7 @@ function getBlockProgression()
  */
 function getWritingMode()
 {
-    global $locale;
+    $locale = LocaleModel::$current_locale;
     return $locale->getWritingMode();

 }
diff --git a/library/MailServer.php b/src/library/MailServer.php
similarity index 100%
rename from library/MailServer.php
rename to src/library/MailServer.php
diff --git a/library/MediaConstants.php b/src/library/MediaConstants.php
similarity index 97%
rename from library/MediaConstants.php
rename to src/library/MediaConstants.php
index c23e5bb25..e552ff158 100644
--- a/library/MediaConstants.php
+++ b/src/library/MediaConstants.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Shared constants and enums used by components that are involved in the
  * media related operations
diff --git a/library/NWordGrams.php b/src/library/NWordGrams.php
similarity index 99%
rename from library/NWordGrams.php
rename to src/library/NWordGrams.php
index b20fd0c0c..a98a82b95 100644
--- a/library/NWordGrams.php
+++ b/src/library/NWordGrams.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Library of functions used to create and extract n word grams
  *
diff --git a/library/Notifier.php b/src/library/Notifier.php
similarity index 97%
rename from library/Notifier.php
rename to src/library/Notifier.php
index 3aa774f37..6dd05d57b 100755
--- a/library/Notifier.php
+++ b/src/library/Notifier.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * A Notifier is an object which will be notified by a priority queue
  * when the index in the queue viewed as array of some data item has been
diff --git a/library/PageRuleParser.php b/src/library/PageRuleParser.php
similarity index 99%
rename from library/PageRuleParser.php
rename to src/library/PageRuleParser.php
index e717d60d2..2a6a9e031 100644
--- a/library/PageRuleParser.php
+++ b/src/library/PageRuleParser.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Has methods to parse user-defined page rules to apply documents
  * to be indexed.
diff --git a/library/PartialZipArchive.php b/src/library/PartialZipArchive.php
similarity index 100%
rename from library/PartialZipArchive.php
rename to src/library/PartialZipArchive.php
diff --git a/library/PersistentStructure.php b/src/library/PersistentStructure.php
similarity index 98%
rename from library/PersistentStructure.php
rename to src/library/PersistentStructure.php
index d74b2bade..af40db886 100755
--- a/library/PersistentStructure.php
+++ b/src/library/PersistentStructure.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * A PersistentStructure is a data structure which every so many operations
  * will be saved to secondary storage (such as disk).
diff --git a/library/PhraseParser.php b/src/library/PhraseParser.php
similarity index 99%
rename from library/PhraseParser.php
rename to src/library/PhraseParser.php
index ce43b66e7..6473cd047 100755
--- a/library/PhraseParser.php
+++ b/src/library/PhraseParser.php
@@ -30,7 +30,8 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
+use seekquarry\yioop\library\processors\PageProcessor;
+
 /**
  * For crawlHash
  */
@@ -938,7 +939,6 @@ class PhraseParser
     public static function calculateLinkMetas($url, $link_host, $link_text,
         $site_url)
     {
-        global $IMAGE_TYPES;
         $link_meta_ids = [];
         if (strlen($link_host) == 0) continue;
         if (substr($link_text, 0, 9) == "location:") {
@@ -950,7 +950,10 @@ class PhraseParser
         $link_type = UrlParser::getDocumentType($url);
         $link_meta_ids[] = "media:all";
         $link_meta_ids[] = "safe:all";
-        if (in_array($link_type, $IMAGE_TYPES)) {
+        /* Assumes PageProcessor::$image_types populated. True if called
+           from Fetcher or CrawlComponent
+         */
+        if (in_array($link_type, PageProcessor::$image_types)) {
             $link_meta_ids[] = "media:image";
             if (isset($safe) && !$safe) {
                 $link_meta_ids[] = "safe:false";
diff --git a/library/PriorityQueue.php b/src/library/PriorityQueue.php
similarity index 99%
rename from library/PriorityQueue.php
rename to src/library/PriorityQueue.php
index d6dae0bff..5023565ee 100755
--- a/library/PriorityQueue.php
+++ b/src/library/PriorityQueue.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Loaded for crawlLog function
  */
diff --git a/library/StringArray.php b/src/library/StringArray.php
similarity index 98%
rename from library/StringArray.php
rename to src/library/StringArray.php
index 09bf0c71f..f781c6239 100755
--- a/library/StringArray.php
+++ b/src/library/StringArray.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Load charCopy
  */
diff --git a/library/SuffixTree.php b/src/library/SuffixTree.php
similarity index 100%
rename from library/SuffixTree.php
rename to src/library/SuffixTree.php
diff --git a/library/Thesaurus.php b/src/library/Thesaurus.php
similarity index 100%
rename from library/Thesaurus.php
rename to src/library/Thesaurus.php
diff --git a/library/Trie.php b/src/library/Trie.php
similarity index 100%
rename from library/Trie.php
rename to src/library/Trie.php
diff --git a/library/UnitTest.php b/src/library/UnitTest.php
similarity index 98%
rename from library/UnitTest.php
rename to src/library/UnitTest.php
index 46af3a108..9fa2ade0a 100644
--- a/library/UnitTest.php
+++ b/src/library/UnitTest.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Base class for all the SeekQuarry/Yioop engine Unit tests
  *
diff --git a/library/UpgradeFunctions.php b/src/library/UpgradeFunctions.php
similarity index 99%
rename from library/UpgradeFunctions.php
rename to src/library/UpgradeFunctions.php
index be616935e..ed91356ef 100644
--- a/library/UpgradeFunctions.php
+++ b/src/library/UpgradeFunctions.php
@@ -36,12 +36,13 @@ namespace seekquarry\yioop\library;
 use seekquarry\yioop\models as M;
 use seekquarry\yioop\models\Datasources as D;
 /**
- * Checks to see if the locale data of Yioop! in the work dir is older than the
- * currently running Yioop!
+ * Checks to see if the locale data of Yioop! of a locale in the work dir is
+ * older than the currently running Yioop!
+ *
+ * @param string $locale_tag locale to check directory of
  */
-function upgradeLocalesCheck()
+function upgradeLocalesCheck($locale_tag)
 {
-    global $locale_tag;
     if (!PROFILE) return;
     $dir_locale_tag = str_replace("-", "_", $locale_tag);
     $config_name = LOCALE_DIR."/$dir_locale_tag/configure.ini";
@@ -854,10 +855,6 @@ function upgradeDatabaseVersion23(&$db)
  */
 function upgradeDatabaseVersion24(&$db)
 {
-    /** Get base class for profile_model.php*/
-    require_once BASE_DIR."/models/model.php";
-    /** For ProfileModel::createDatabaseTables method */
-    require_once BASE_DIR."/models/profile_model.php";
     $db->execute("DELETE FROM VERSION WHERE ID < 23");
     $db->execute("UPDATE VERSION SET ID=24 WHERE ID=23");
     $profile_model = new M\ProfileModel(DB_NAME, false);
@@ -900,7 +897,7 @@ function upgradeDatabaseVersion24(&$db)
 function upgradeDatabaseVersion25(&$db)
 {
     /** For reading HELP_GROUP_ID**/
-    require_once BASE_DIR . "/configs/config.php";
+    require_once BASE_DIR . "/configs/Config.php";
     $db->execute("DELETE FROM VERSION WHERE ID < 24");
     $db->execute("UPDATE VERSION SET ID=25 WHERE ID=24");
     $sql = "SELECT COUNT(*) AS NUM FROM GROUPS WHERE GROUP_ID=" .
@@ -958,7 +955,7 @@ function upgradeDatabaseVersion25(&$db)
  */
 function upgradeDatabaseVersion26(&$db){
     /** For reading HELP_GROUP_ID**/
-    require_once BASE_DIR . "/configs/config.php";
+    require_once BASE_DIR . "/configs/Config.php";
     $db->execute("DELETE FROM VERSION WHERE ID < 25");
     $db->execute("UPDATE VERSION SET ID=26 WHERE ID=25");
     //Delete all existing pages in Help group
diff --git a/library/UrlParser.php b/src/library/UrlParser.php
similarity index 99%
rename from library/UrlParser.php
rename to src/library/UrlParser.php
index 21f248f3f..adaeb7e96 100755
--- a/library/UrlParser.php
+++ b/src/library/UrlParser.php
@@ -30,8 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-
-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Library of functions used to manipulate and to extract components from urls
  *
diff --git a/library/Utility.php b/src/library/Utility.php
similarity index 97%
rename from library/Utility.php
rename to src/library/Utility.php
index fccd45af2..9fc14d6ec 100755
--- a/library/Utility.php
+++ b/src/library/Utility.php
@@ -33,7 +33,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * User defined function to perform error handling for yioop if
  * the error box was checked in the configure menu.
@@ -449,6 +448,52 @@ function deDeltaList(&$delta_list)
         $delta_list[$i] += $delta_list[$i - 1];
     }
 }
+
+/**
+ * Mini-class (so not own file) used to hold encode decode info related to
+ * Mod9 encoding (as variant of Simplified-9 specify to Yioop)
+ * @see encodeModified9 for a complete description
+ */
+class Mod9Constants
+{
+    /**
+     * Used in Modified 9 encoding. The ith array entry represents the number of
+     * i bit elements that can be stored in a word using modified 9 (0th index
+     * location is a dummy value 0 as can't store 0 bit numbers)
+     * @array
+     */
+    public static $MOD9_PACK_POSSIBILITIES = [
+        0, 24, 12, 7, 6, 5, 4, 3, 3, 3, 2, 2, 2, 2,
+        2,  1,  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+        1, 1, 1, 1];
+    /**
+     * Used in Modified 9 encoding. Key values are the number of elements we
+     * would like to store in the current word. Values are the bit prefix to use
+     * on first byte of word. Notices bits 7 and 6 (128 and 64) are not parts of
+     * prefixes as used for continuation bits.
+     * @array
+     */
+    public static $MOD9_NUM_ELTS_CODES = [
+        24 => 63, 12 => 62, 7 => 60, 6 => 56, 5 => 52, 4 => 48, 3 => 32,
+        2 => 16, 1 => 0];
+    /**
+     * Keys of this array are prefix codes from the high order byte of a word
+     * encoded using Modified 9, values are the number of bits used to encode
+     * an element if that prefix code was used.
+     * @array
+     */
+    public static $MOD9_NUM_BITS_CODES = [63 => 1, 62 => 2, 60 => 3, 56 => 4,
+        52 => 5, 48 => 6, 32 => 9, 16 => 14, 0 => 28];
+    /**
+     * Keys of this array are prefix codes from the high order byte of a word
+     * encoded using Modified 9, values are the number of elts stored in the
+     * remaining bits of the word
+     * @array
+     */
+    public static $MOD9_NUM_ELTS_DECODES = [
+        63 => 24, 62 => 12, 60=> 7, 56 => 6, 52 => 5, 48 => 4, 32 => 3,
+        16 => 2, 0 => 1];
+}
 /**
  * Encodes a sequence of integers x, such that 1 <= x <= 2<<28-1
  * as a string.
@@ -471,7 +516,7 @@ function deDeltaList(&$delta_list)
  */
 function encodeModified9($list)
 {
-    global $MOD9_PACK_POSSIBILITIES;
+    $MOD9_PACK_POSSIBILITIES = Mod9Constants::$MOD9_PACK_POSSIBILITIES;
     $cnt = 0;
     $cur_size = 1;
     $cur_len = 1;
@@ -520,7 +565,8 @@ function encodeModified9($list)
  */
 function packListModified9($continue_bits, $cnt, $pack_list)
 {
-    global $MOD9_NUM_ELTS_CODES, $MOD9_NUM_BITS_CODES;
+    $MOD9_NUM_ELTS_CODES = Mod9Constants::$MOD9_NUM_ELTS_CODES;
+    $MOD9_NUM_BITS_CODES = Mod9Constants::$MOD9_NUM_BITS_CODES;

     $out_int = 0;
     $code = $MOD9_NUM_ELTS_CODES[$cnt];
@@ -617,7 +663,8 @@ function unpackListModified9($encoded_list)
             $shift = 18;
         break;
         default:
-            global $MOD9_NUM_BITS_CODES, $MOD9_NUM_ELTS_DECODES;
+            $MOD9_NUM_BITS_CODES = Mod9Constants::$MOD9_NUM_BITS_CODES;
+            $MOD9_NUM_ELTS_DECODES = Mod9Constants::$MOD9_NUM_ELTS_DECODES;
             $int_string = packInt($encoded_list);
             $first_char = ord($int_string[0]);
             foreach ($MOD9_NUM_BITS_CODES as $code => $num_bits) {
@@ -668,7 +715,8 @@ function docIndexModified9($encoded_list)
             $shift = 18;
         break;
         default:
-            global $MOD9_NUM_BITS_CODES, $MOD9_NUM_ELTS_DECODES;
+            $MOD9_NUM_BITS_CODES = Mod9Constants::$MOD9_NUM_BITS_CODES;
+            $MOD9_NUM_ELTS_DECODES = Mod9Constants::$MOD9_NUM_ELTS_DECODES;
             $first_char = $encoded_list >> 24;
             foreach ($MOD9_NUM_BITS_CODES as $code => $num_bits) {
                 if (($first_char & $code) == $code) break;
diff --git a/library/WebArchive.php b/src/library/WebArchive.php
similarity index 99%
rename from library/WebArchive.php
rename to src/library/WebArchive.php
index ac872a3db..735573cf1 100755
--- a/library/WebArchive.php
+++ b/src/library/WebArchive.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Loads crawlLog functions if needed
  */
diff --git a/library/WebArchiveBundle.php b/src/library/WebArchiveBundle.php
similarity index 99%
rename from library/WebArchiveBundle.php
rename to src/library/WebArchiveBundle.php
index 2a964486a..ced39814d 100755
--- a/library/WebArchiveBundle.php
+++ b/src/library/WebArchiveBundle.php
@@ -30,8 +30,6 @@
  */
 namespace seekquarry\yioop\library;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-
 /**
  * A web archive bundle is a collection of web archives which are managed
  * together.It is useful to split data across several archive files rather than
diff --git a/library/WebQueueBundle.php b/src/library/WebQueueBundle.php
similarity index 99%
rename from library/WebQueueBundle.php
rename to src/library/WebQueueBundle.php
index 84fd4bf15..2d94cf823 100755
--- a/library/WebQueueBundle.php
+++ b/src/library/WebQueueBundle.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library;

 use seekquarry\yioop\library\compressors\NonCompressor;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used for the crawlHash function
  */
diff --git a/library/WikiParser.php b/src/library/WikiParser.php
similarity index 99%
rename from library/WikiParser.php
rename to src/library/WikiParser.php
index 5ca0b70e4..e11026428 100644
--- a/library/WikiParser.php
+++ b/src/library/WikiParser.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library;

 use seekquarry\yioop\library\processors\TextProcessor;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Class with methods to parse mediawiki documents, both within Yioop, and
  * when Yioop indexes mediawiki dumps as from Wikipedia.
diff --git a/library/archive_bundle_iterators/ArcArchiveBundleIterator.php b/src/library/archive_bundle_iterators/ArcArchiveBundleIterator.php
similarity index 97%
rename from library/archive_bundle_iterators/ArcArchiveBundleIterator.php
rename to src/library/archive_bundle_iterators/ArcArchiveBundleIterator.php
index 77dc2e019..80eedbdd9 100644
--- a/library/archive_bundle_iterators/ArcArchiveBundleIterator.php
+++ b/src/library/archive_bundle_iterators/ArcArchiveBundleIterator.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\library\archive_bundle_iterators;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\FetchUrl;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to iterate through the records of a collection of arc files stored in
  * a WebArchiveBundle folder. Arc is the file format of the Internet Archive
@@ -45,7 +44,6 @@ if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
  * @see WebArchiveBundle
  */
 class ArcArchiveBundleIterator extends TextArchiveBundleIterator
-    implements CrawlConstants
 {
     /**
      * Creates an arc archive iterator with the given parameters.
diff --git a/library/archive_bundle_iterators/ArchiveBundleIterator.php b/src/library/archive_bundle_iterators/ArchiveBundleIterator.php
similarity index 98%
rename from library/archive_bundle_iterators/ArchiveBundleIterator.php
rename to src/library/archive_bundle_iterators/ArchiveBundleIterator.php
index 0bf0ac287..5872d9db7 100644
--- a/library/archive_bundle_iterators/ArchiveBundleIterator.php
+++ b/src/library/archive_bundle_iterators/ArchiveBundleIterator.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library\archive_bundle_iterators;

 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Abstract class used to model iterating documents indexed in
  * an WebArchiveBundle or set of such bundles.
diff --git a/library/archive_bundle_iterators/DatabaseBundleIterator.php b/src/library/archive_bundle_iterators/DatabaseBundleIterator.php
similarity index 99%
rename from library/archive_bundle_iterators/DatabaseBundleIterator.php
rename to src/library/archive_bundle_iterators/DatabaseBundleIterator.php
index 584b7158c..e7edd0707 100644
--- a/library/archive_bundle_iterators/DatabaseBundleIterator.php
+++ b/src/library/archive_bundle_iterators/DatabaseBundleIterator.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\FetchUrl;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /** For webencode */
 require_once BASE_DIR.'/library/Utility.php';
 /**
@@ -46,7 +45,6 @@ require_once BASE_DIR.'/library/Utility.php';
  * @see WebArchiveBundle
  */
 class DatabaseBundleIterator extends ArchiveBundleIterator
-    implements CrawlConstants
 {
     /**
      * The path to the directory containing the archive partitions to be
diff --git a/library/archive_bundle_iterators/MediaWikiArchiveBundleIterator.php b/src/library/archive_bundle_iterators/MediaWikiArchiveBundleIterator.php
similarity index 97%
rename from library/archive_bundle_iterators/MediaWikiArchiveBundleIterator.php
rename to src/library/archive_bundle_iterators/MediaWikiArchiveBundleIterator.php
index cb2665636..523053886 100644
--- a/library/archive_bundle_iterators/MediaWikiArchiveBundleIterator.php
+++ b/src/library/archive_bundle_iterators/MediaWikiArchiveBundleIterator.php
@@ -36,11 +36,22 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\FetchUrl;
 use seekquarry\yioop\library\WikiParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
- * Used to define the styles we put on cache wiki pages
+ * Used to iterate through a collection of .xml.bz2  media wiki files
+ * stored in a WebArchiveBundle folder. Here these media wiki files contain the
+ * kinds of documents used by wikipedia. Iteration would be
+ * for the purpose making an index of these records
+ *
+ * @author Chris Pollett
+ * @package seek_quarry\library\archive_bundle_iterator
+ * @see WebArchiveBundle
  */
-define('WIKI_PAGE_STYLES', <<<EOD
+class MediaWikiArchiveBundleIterator extends TextArchiveBundleIterator
+{
+    /**
+     * Used to define the styles we put on cache wiki pages
+     */
+    const WIKI_PAGE_STYLES = <<<EOD
 <style type="text/css">
 table.wikitable
 {
@@ -67,21 +78,7 @@ table.wikitable > caption
     font-weight:bold;
 }
 </style>
-EOD
-);
-/**
- * Used to iterate through a collection of .xml.bz2  media wiki files
- * stored in a WebArchiveBundle folder. Here these media wiki files contain the
- * kinds of documents used by wikipedia. Iteration would be
- * for the purpose making an index of these records
- *
- * @author Chris Pollett
- * @package seek_quarry\library\archive_bundle_iterator
- * @see WebArchiveBundle
- */
-class MediaWikiArchiveBundleIterator extends TextArchiveBundleIterator
-    implements CrawlConstants
-{
+EOD;
     /**
      * Used to hold a WikiParser object that will be used for parsing
      * @var object
@@ -271,7 +268,7 @@ class MediaWikiArchiveBundleIterator extends TextArchiveBundleIterator
         $site[self::OPERATING_SYSTEM] = "unknown";
         $site[self::PAGE] = "<html lang='".$this->header['lang']."' >\n".
             "<head><title>$pre_url</title>\n".
-            WIKI_PAGE_STYLES . "\n</head>\n".
+            self::WIKI_PAGE_STYLES . "\n</head>\n".
             "<body><h1>$pre_url</h1>\n";
         $pre_page = $this->getTextContent($dom, "/page/revision/text");
         $current_hash = L\crawlHash($pre_page);
diff --git a/library/archive_bundle_iterators/MixArchiveBundleIterator.php b/src/library/archive_bundle_iterators/MixArchiveBundleIterator.php
similarity index 97%
rename from library/archive_bundle_iterators/MixArchiveBundleIterator.php
rename to src/library/archive_bundle_iterators/MixArchiveBundleIterator.php
index a6da0533f..e85bca2b3 100644
--- a/library/archive_bundle_iterators/MixArchiveBundleIterator.php
+++ b/src/library/archive_bundle_iterators/MixArchiveBundleIterator.php
@@ -35,7 +35,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\FileCache;
 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /** Loads common constants for web crawling*/
 require_once BASE_DIR."/library/LocaleFunctions.php";
 /**
@@ -46,7 +45,6 @@ require_once BASE_DIR."/library/LocaleFunctions.php";
  * @package seek_quarry\library\archive_bundle_iterator
  */
 class MixArchiveBundleIterator extends ArchiveBundleIterator
-    implements CrawlConstants
 {
     /**
      * Used to hold timestamp of the crawl mix being used to iterate over
@@ -76,13 +74,11 @@ class MixArchiveBundleIterator extends ArchiveBundleIterator
      */
     public function __construct($mix_timestamp, $result_timestamp)
     {
-        global $INDEXING_PLUGINS;
         L\setLocaleObject(L\getLocaleTag());
-
         $this->mix_timestamp = $mix_timestamp;
         $this->result_timestamp = $result_timestamp;
         $this->query = "site:any m:".$mix_timestamp;
-        $this->searchController = new SearchController($INDEXING_PLUGINS);
+        $this->searchController = new SearchController();
         $archive_name = $this->getArchiveName($result_timestamp);
         if (!file_exists($archive_name)) {
             mkdir($archive_name);
diff --git a/library/archive_bundle_iterators/OdpRdfArchiveBundleIterator.php b/src/library/archive_bundle_iterators/OdpRdfArchiveBundleIterator.php
similarity index 99%
rename from library/archive_bundle_iterators/OdpRdfArchiveBundleIterator.php
rename to src/library/archive_bundle_iterators/OdpRdfArchiveBundleIterator.php
index ab9cb8d60..1d8e54cf3 100644
--- a/library/archive_bundle_iterators/OdpRdfArchiveBundleIterator.php
+++ b/src/library/archive_bundle_iterators/OdpRdfArchiveBundleIterator.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\library\archive_bundle_iterators;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\FetchUrl;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to iterate through the records of a collection of one or more open
  * directory RDF files stored in a WebArchiveBundle folder. Open Directory
@@ -45,7 +44,6 @@ if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
  * @see WebArchiveBundle
  */
 class OdpRdfArchiveBundleIterator extends TextArchiveBundleIterator
-    implements CrawlConstants
 {
     /**
      * Associative array containing global properties like base url of the
diff --git a/library/archive_bundle_iterators/TextArchiveBundleIterator.php b/src/library/archive_bundle_iterators/TextArchiveBundleIterator.php
similarity index 99%
rename from library/archive_bundle_iterators/TextArchiveBundleIterator.php
rename to src/library/archive_bundle_iterators/TextArchiveBundleIterator.php
index d6ef2c88e..b1681a579 100644
--- a/library/archive_bundle_iterators/TextArchiveBundleIterator.php
+++ b/src/library/archive_bundle_iterators/TextArchiveBundleIterator.php
@@ -35,7 +35,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\FetchUrl;
 use seekquarry\yioop\library\Bzip2BlockIterator;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /** For webencode */
 require_once BASE_DIR.'/library/Utility.php';
 /**
@@ -47,7 +46,6 @@ require_once BASE_DIR.'/library/Utility.php';
  * @see WebArchiveBundle
  */
 class TextArchiveBundleIterator extends ArchiveBundleIterator
-    implements CrawlConstants
 {
     /**
      * The path to the directory containing the archive partitions to be
diff --git a/library/archive_bundle_iterators/WarcArchiveBundleIterator.php b/src/library/archive_bundle_iterators/WarcArchiveBundleIterator.php
similarity index 98%
rename from library/archive_bundle_iterators/WarcArchiveBundleIterator.php
rename to src/library/archive_bundle_iterators/WarcArchiveBundleIterator.php
index 388bb2007..6373321dd 100644
--- a/library/archive_bundle_iterators/WarcArchiveBundleIterator.php
+++ b/src/library/archive_bundle_iterators/WarcArchiveBundleIterator.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\library\archive_bundle_iterators;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\FetchUrl;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to iterate through the records of a collection of warc files stored in
  * a WebArchiveBundle folder. Warc is the newer file format of the
@@ -47,7 +46,6 @@ if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
  * @see WebArchiveBundle
  */
 class WarcArchiveBundleIterator extends TextArchiveBundleIterator
-    implements CrawlConstants
 {
     /**
      * Creates an warc archive iterator with the given parameters.
diff --git a/library/archive_bundle_iterators/WebArchiveBundleIterator.php b/src/library/archive_bundle_iterators/WebArchiveBundleIterator.php
similarity index 98%
rename from library/archive_bundle_iterators/WebArchiveBundleIterator.php
rename to src/library/archive_bundle_iterators/WebArchiveBundleIterator.php
index c16a151a9..bc8a851f0 100644
--- a/library/archive_bundle_iterators/WebArchiveBundleIterator.php
+++ b/src/library/archive_bundle_iterators/WebArchiveBundleIterator.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\WebArchiveBundle;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Class used to model iterating documents indexed in
  * an WebArchiveBundle. This would typically be for the purpose
@@ -45,7 +44,6 @@ if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
  * @see WebArchiveBundle
  */
 class WebArchiveBundleIterator extends ArchiveBundleIterator
-    implements CrawlConstants
 {
     /**
      * Number of web archive objects in this web archive bundle
diff --git a/library/classifiers/BinaryFeatures.php b/src/library/classifiers/BinaryFeatures.php
similarity index 100%
rename from library/classifiers/BinaryFeatures.php
rename to src/library/classifiers/BinaryFeatures.php
diff --git a/library/classifiers/ChiSquaredFeatureSelection.php b/src/library/classifiers/ChiSquaredFeatureSelection.php
similarity index 100%
rename from library/classifiers/ChiSquaredFeatureSelection.php
rename to src/library/classifiers/ChiSquaredFeatureSelection.php
diff --git a/library/classifiers/Classifier.php b/src/library/classifiers/Classifier.php
similarity index 99%
rename from library/classifiers/Classifier.php
rename to src/library/classifiers/Classifier.php
index eb4a9501a..0d100cb70 100644
--- a/library/classifiers/Classifier.php
+++ b/src/library/classifiers/Classifier.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\PhraseParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * The primary interface for building and using classifiers. An instance of
  * this class represents a single classifier in memory, but the class also
diff --git a/library/classifiers/ClassifierAlgorithm.php b/src/library/classifiers/ClassifierAlgorithm.php
similarity index 97%
rename from library/classifiers/ClassifierAlgorithm.php
rename to src/library/classifiers/ClassifierAlgorithm.php
index 773bc6e1e..7301db75f 100644
--- a/library/classifiers/ClassifierAlgorithm.php
+++ b/src/library/classifiers/ClassifierAlgorithm.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library\classifiers;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * An abstract class shared by classification algorithms that implement a
  * common interface.
diff --git a/library/classifiers/FeatureSelection.php b/src/library/classifiers/FeatureSelection.php
similarity index 98%
rename from library/classifiers/FeatureSelection.php
rename to src/library/classifiers/FeatureSelection.php
index 8f7a632b9..a81d3fe07 100644
--- a/library/classifiers/FeatureSelection.php
+++ b/src/library/classifiers/FeatureSelection.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library\classifiers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This is an abstract class that specifies an interface for selecting top
  * features from a dataset.
diff --git a/library/classifiers/Features.php b/src/library/classifiers/Features.php
similarity index 100%
rename from library/classifiers/Features.php
rename to src/library/classifiers/Features.php
diff --git a/library/classifiers/LassoRegression.php b/src/library/classifiers/LassoRegression.php
similarity index 99%
rename from library/classifiers/LassoRegression.php
rename to src/library/classifiers/LassoRegression.php
index 060bf0493..98430ebd7 100644
--- a/library/classifiers/LassoRegression.php
+++ b/src/library/classifiers/LassoRegression.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library\classifiers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Implements the logistic regression text classification algorithm using lasso
  * regression and a cyclic coordinate descent optimization step.
diff --git a/library/classifiers/NaiveBayes.php b/src/library/classifiers/NaiveBayes.php
similarity index 99%
rename from library/classifiers/NaiveBayes.php
rename to src/library/classifiers/NaiveBayes.php
index d5176900d..b75650c43 100644
--- a/library/classifiers/NaiveBayes.php
+++ b/src/library/classifiers/NaiveBayes.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library\classifiers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Implements the Naive Bayes text classification algorithm.
  *
diff --git a/library/classifiers/SparseMatrix.php b/src/library/classifiers/SparseMatrix.php
similarity index 100%
rename from library/classifiers/SparseMatrix.php
rename to src/library/classifiers/SparseMatrix.php
diff --git a/library/classifiers/WeightedFeatures.php b/src/library/classifiers/WeightedFeatures.php
similarity index 100%
rename from library/classifiers/WeightedFeatures.php
rename to src/library/classifiers/WeightedFeatures.php
diff --git a/library/compressors/Compressor.php b/src/library/compressors/Compressor.php
similarity index 98%
rename from library/compressors/Compressor.php
rename to src/library/compressors/Compressor.php
index 5a846c788..3c298805f 100755
--- a/library/compressors/Compressor.php
+++ b/src/library/compressors/Compressor.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library\compressors;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * A Compressor is used to apply a filter to objects before they are stored
  * into a WebArchive. The filter is assumed to be invertible, and the typical
diff --git a/library/compressors/GzipCompressor.php b/src/library/compressors/GzipCompressor.php
similarity index 98%
rename from library/compressors/GzipCompressor.php
rename to src/library/compressors/GzipCompressor.php
index 15babd81c..1393fa7d6 100755
--- a/library/compressors/GzipCompressor.php
+++ b/src/library/compressors/GzipCompressor.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library\compressors;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Loads utility class for packInt/unpackInt
  */
diff --git a/library/compressors/NonCompressor.php b/src/library/compressors/NonCompressor.php
similarity index 98%
rename from library/compressors/NonCompressor.php
rename to src/library/compressors/NonCompressor.php
index 84c1906b6..2854f4c2a 100755
--- a/library/compressors/NonCompressor.php
+++ b/src/library/compressors/NonCompressor.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library\compressors;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Loads utility class for packInt/unpackInt
  */
diff --git a/library/index_bundle_iterators/DisjointIterator.php b/src/library/index_bundle_iterators/DisjointIterator.php
similarity index 99%
rename from library/index_bundle_iterators/DisjointIterator.php
rename to src/library/index_bundle_iterators/DisjointIterator.php
index 339a26d7d..3c84cc38d 100644
--- a/library/index_bundle_iterators/DisjointIterator.php
+++ b/src/library/index_bundle_iterators/DisjointIterator.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library\index_bundle_iterators;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to iterate over the documents which occur in a set of disjoint iterators
  * all belonging to the same index
diff --git a/library/index_bundle_iterators/DocIterator.php b/src/library/index_bundle_iterators/DocIterator.php
similarity index 99%
rename from library/index_bundle_iterators/DocIterator.php
rename to src/library/index_bundle_iterators/DocIterator.php
index 9d9cec846..ffec29bcc 100755
--- a/library/index_bundle_iterators/DocIterator.php
+++ b/src/library/index_bundle_iterators/DocIterator.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\IndexManager;
 use seekquarry\yioop\library\IndexShard;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to iterate through all the documents and links associated with a
  * an IndexArchiveBundle. It iterates through each doc or link regarless of
diff --git a/library/index_bundle_iterators/GroupIterator.php b/src/library/index_bundle_iterators/GroupIterator.php
similarity index 99%
rename from library/index_bundle_iterators/GroupIterator.php
rename to src/library/index_bundle_iterators/GroupIterator.php
index 101dbe746..2626aff43 100644
--- a/library/index_bundle_iterators/GroupIterator.php
+++ b/src/library/index_bundle_iterators/GroupIterator.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\library\index_bundle_iterators;
 use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\IndexShard;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This iterator is used to group together documents or document parts
  * which share the same url. For instance, a link document item and
diff --git a/library/index_bundle_iterators/IndexBundleIterator.php b/src/library/index_bundle_iterators/IndexBundleIterator.php
similarity index 99%
rename from library/index_bundle_iterators/IndexBundleIterator.php
rename to src/library/index_bundle_iterators/IndexBundleIterator.php
index 184a22fab..51146db0c 100644
--- a/library/index_bundle_iterators/IndexBundleIterator.php
+++ b/src/library/index_bundle_iterators/IndexBundleIterator.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /** For toHexString */
 require_once BASE_DIR . "/library/Utility.php";
 /**
diff --git a/library/index_bundle_iterators/IntersectIterator.php b/src/library/index_bundle_iterators/IntersectIterator.php
similarity index 99%
rename from library/index_bundle_iterators/IntersectIterator.php
rename to src/library/index_bundle_iterators/IntersectIterator.php
index 5c216c3d1..72c6a4d44 100644
--- a/library/index_bundle_iterators/IntersectIterator.php
+++ b/src/library/index_bundle_iterators/IntersectIterator.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library\index_bundle_iterators;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to iterate over the documents which occur in all of a set of
  * iterator results
diff --git a/library/index_bundle_iterators/NegationIterator.php b/src/library/index_bundle_iterators/NegationIterator.php
similarity index 99%
rename from library/index_bundle_iterators/NegationIterator.php
rename to src/library/index_bundle_iterators/NegationIterator.php
index 352286678..a0109c31f 100644
--- a/library/index_bundle_iterators/NegationIterator.php
+++ b/src/library/index_bundle_iterators/NegationIterator.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library\index_bundle_iterators;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to iterate over the documents which don't occur in a set of
  * iterator results
diff --git a/library/index_bundle_iterators/NetworkIterator.php b/src/library/index_bundle_iterators/NetworkIterator.php
similarity index 99%
rename from library/index_bundle_iterators/NetworkIterator.php
rename to src/library/index_bundle_iterators/NetworkIterator.php
index 5b313964c..19b223f66 100644
--- a/library/index_bundle_iterators/NetworkIterator.php
+++ b/src/library/index_bundle_iterators/NetworkIterator.php
@@ -37,7 +37,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\FetchUrl;
 use seekquarry\yioop\library\AnalyticsManager;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This iterator is used to handle querying a network of queue_servers
  * with regard to a query
diff --git a/library/index_bundle_iterators/UnionIterator.php b/src/library/index_bundle_iterators/UnionIterator.php
similarity index 99%
rename from library/index_bundle_iterators/UnionIterator.php
rename to src/library/index_bundle_iterators/UnionIterator.php
index fbd3a0398..7ce7d29e2 100644
--- a/library/index_bundle_iterators/UnionIterator.php
+++ b/src/library/index_bundle_iterators/UnionIterator.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library\index_bundle_iterators;

 use seekquarry\yioop\library\BloomFilterFile;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to iterate over the documents which occur in any of a set of
  * WordIterator results
diff --git a/library/index_bundle_iterators/WordIterator.php b/src/library/index_bundle_iterators/WordIterator.php
similarity index 99%
rename from library/index_bundle_iterators/WordIterator.php
rename to src/library/index_bundle_iterators/WordIterator.php
index bd4026a30..ce06a7978 100644
--- a/library/index_bundle_iterators/WordIterator.php
+++ b/src/library/index_bundle_iterators/WordIterator.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\library\index_bundle_iterators;
 use seekquarry\yioop\library\IndexShard;
 use seekquarry\yioop\library\IndexManager;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to iterate through the documents associated with a word in
  * an IndexArchiveBundle. It also makes it easy to get the summaries
diff --git a/library/indexing_plugins/AddressesPlugin.php b/src/library/indexing_plugins/AddressesPlugin.php
similarity index 99%
rename from library/indexing_plugins/AddressesPlugin.php
rename to src/library/indexing_plugins/AddressesPlugin.php
index 78238481d..c677c2831 100644
--- a/library/indexing_plugins/AddressesPlugin.php
+++ b/src/library/indexing_plugins/AddressesPlugin.php
@@ -33,11 +33,6 @@ namespace seekquarry\yioop\library\indexing_plugins;
 use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Loads processor used for */
-if (!isset($PAGE_PROCESSORS)) {
-    $PAGE_PROCESSORS = [];
-}
 /** Used for guessLocaleFromString */
 require_once BASE_DIR."/library/LocaleFunctions.php";
 /**
diff --git a/library/indexing_plugins/IndexingPlugin.php b/src/library/indexing_plugins/IndexingPlugin.php
similarity index 99%
rename from library/indexing_plugins/IndexingPlugin.php
rename to src/library/indexing_plugins/IndexingPlugin.php
index 5cad80e17..1ab15392b 100644
--- a/library/indexing_plugins/IndexingPlugin.php
+++ b/src/library/indexing_plugins/IndexingPlugin.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library\IndexingPlugins;
  */
 namespace seekquarry\yioop\library\indexing_plugins;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Flag to say that post_processing is occurring (used to control logging in
  * models)
diff --git a/library/indexing_plugins/RecipePlugin.php b/src/library/indexing_plugins/RecipePlugin.php
similarity index 98%
rename from library/indexing_plugins/RecipePlugin.php
rename to src/library/indexing_plugins/RecipePlugin.php
index b78140084..7c58ba7c9 100644
--- a/library/indexing_plugins/RecipePlugin.php
+++ b/src/library/indexing_plugins/RecipePlugin.php
@@ -39,15 +39,6 @@ use seekquarry\yioop\library\IndexShard;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\processors\HtmlProcessor;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Un Register plugin if php version not high enough to have spi*/
-if (!defined('PHP_VERSION_ID') || PHP_VERSION_ID < 50300) {
-    if (!isset($INDEXING_PLUGINS)) {
-        $INDEXING_PLUGINS= [];
-    }
-    $INDEXING_PLUGINS = array_values(
-        array_diff($INDEXING_PLUGINS, ["recipe"]));
-}
 /**
  * Ratio of clusters/total number of recipes seen
  */
@@ -172,7 +163,6 @@ class RecipePlugin extends IndexingPlugin implements CrawlConstants
      */
     public function postProcessing($index_name)
     {
-        global $INDEXING_PLUGINS;
         if (!class_exists("\SplHeap")) {
             L\crawlLog("...Recipe Plugin Requires SPLHeap for clustering!");
             L\crawlLog("...Aborting plugin");
@@ -180,7 +170,7 @@ class RecipePlugin extends IndexingPlugin implements CrawlConstants
         }
         $locale_tag = L\guessLocale();
         L\setLocaleObject($locale_tag);
-        $search_controller = new SearchController($INDEXING_PLUGINS);
+        $search_controller = new SearchController();
         $query = "recipe:all i:$index_name";
         L\crawlLog("...Running Recipe Plugin!");
         L\crawlLog("...Finding docs tagged as recipes.");
diff --git a/library/indexing_plugins/WordfilterPlugin.php b/src/library/indexing_plugins/WordfilterPlugin.php
similarity index 99%
rename from library/indexing_plugins/WordfilterPlugin.php
rename to src/library/indexing_plugins/WordfilterPlugin.php
index f60b55c11..0f4169c5a 100644
--- a/library/indexing_plugins/WordfilterPlugin.php
+++ b/src/library/indexing_plugins/WordfilterPlugin.php
@@ -35,7 +35,6 @@ use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\TextProcessor;
 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /** for tl */
 require_once BASE_DIR. "/library/LocaleFunctions.php";
 /**
diff --git a/library/processors/BmpProcessor.php b/src/library/processors/BmpProcessor.php
similarity index 92%
rename from library/processors/BmpProcessor.php
rename to src/library/processors/BmpProcessor.php
index 031b76d5a..64c6907ca 100644
--- a/library/processors/BmpProcessor.php
+++ b/src/library/processors/BmpProcessor.php
@@ -32,14 +32,6 @@ namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $IMAGE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "bmp";
-$IMAGE_TYPES[] = "bmp";
-$PAGE_PROCESSORS["image/bmp"] = "BmpProcessor";;
 /**
  * Used to create crawl summary information
  * for BMP and ICO files
@@ -65,6 +57,18 @@ class BmpProcessor extends ImageProcessor
      * Maximum pixel width or height
      */
     const MAX_DIM = 1000;
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "bmp";
+        self::$image_types[] = "bmp";
+        self::$mime_processor["image/bmp"] = "BmpProcessor";
+    }
     /**
      * {@inheritDoc}
      *
diff --git a/library/processors/DocProcessor.php b/src/library/processors/DocProcessor.php
similarity index 92%
rename from library/processors/DocProcessor.php
rename to src/library/processors/DocProcessor.php
index b43913afe..be33a762e 100755
--- a/library/processors/DocProcessor.php
+++ b/src/library/processors/DocProcessor.php
@@ -30,12 +30,6 @@
  */
 namespace seekquarry\yioop\library\processors;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "doc";
-$PAGE_PROCESSORS["application/msword"] = "DocProcessor";
 /**
  * Used to create crawl summary information
  * for binary DOC files
@@ -45,6 +39,17 @@ $PAGE_PROCESSORS["application/msword"] = "DocProcessor";
  */
 class DocProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "doc";
+        self::$mime_processor["application/msword"] = "DocProcessor";
+    }
     /**
      * Used to extract the title, description and links from
      * a string consisting of Word Doc data (2004 or earlier).
diff --git a/library/processors/DocxProcessor.php b/src/library/processors/DocxProcessor.php
similarity index 92%
rename from library/processors/DocxProcessor.php
rename to src/library/processors/DocxProcessor.php
index 26c23d816..b42d7219a 100644
--- a/library/processors/DocxProcessor.php
+++ b/src/library/processors/DocxProcessor.php
@@ -34,14 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\PartialZipArchive;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "docx";
-$PAGE_PROCESSORS["application/vnd.openxmlformats-".
-    "officedocument.wordprocessingml.document"] = "DocxProcessor";
 /**
  * Used to create crawl summary information
  * for DOCX files
@@ -51,6 +43,18 @@ $PAGE_PROCESSORS["application/vnd.openxmlformats-".
  */
 class DocxProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "docx";
+        self::$mime_processor["application/vnd.openxmlformats-".
+            "officedocument.wordprocessingml.document"] = "DocxProcessor";
+    }
     /**
      * Used to extract the title, description and links from
      * a docx file consisting of xml data.
diff --git a/library/processors/EpubProcessor.php b/src/library/processors/EpubProcessor.php
similarity index 91%
rename from library/processors/EpubProcessor.php
rename to src/library/processors/EpubProcessor.php
index cbeba2e82..1369fdb45 100644
--- a/library/processors/EpubProcessor.php
+++ b/src/library/processors/EpubProcessor.php
@@ -33,19 +33,7 @@ namespace seekquarry\yioop\library\processors;
 use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\PartialZipArchive;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-/** Register File Types We Handle*/
-$INDEXED_FILE_TYPES[] = "epub";
-$PAGE_PROCESSORS["application/epub+zip"] = "EpubProcessor";
 /**
- * The constant represents the number of
- * child levels at which the data is present in
- * the content.opf file.
- */
-define('MAX_DOM_LEVEL', 15);
- /**
  * Used to create crawl summary information
  * for XML files (those served as application/epub+zip)
  *
@@ -54,6 +42,23 @@ define('MAX_DOM_LEVEL', 15);
  */
 class EpubProcessor extends TextProcessor
 {
+    /**
+     * The constant represents the number of
+     * child levels at which the data is present in
+     * the content.opf file.
+     */
+    const MAX_DOM_LEVEL = 15;
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "epub";
+        self::$mime_processor["application/epub+zip"] = "EpubProcessor";
+    }
     /**
      * The name of the tag element in an xml document
      *
@@ -116,8 +121,8 @@ class EpubProcessor extends TextProcessor
                 // Get the file data from zipped folder
                 $opf_data = $zip->getFromName($filename[$i]);
                 $opf_summary = $this->xmlToObject($opf_data);
-                for ($m = 0; $m <= MAX_DOM_LEVEL; $m++) {
-                    for ($n = 0; $n <= MAX_DOM_LEVEL; $n++) {
+                for ($m = 0; $m <= self::MAX_DOM_LEVEL; $m++) {
+                    for ($n = 0; $n <= self::MAX_DOM_LEVEL; $n++) {
                         if (isset($opf_summary->children[$m]->children[$n])){
                             $child = $opf_summary->children[$m]->
                                 children[$n];
diff --git a/library/processors/GifProcessor.php b/src/library/processors/GifProcessor.php
similarity index 84%
rename from library/processors/GifProcessor.php
rename to src/library/processors/GifProcessor.php
index 2c9e39b8b..974830209 100755
--- a/library/processors/GifProcessor.php
+++ b/src/library/processors/GifProcessor.php
@@ -32,14 +32,6 @@ namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $IMAGE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "gif";
-$IMAGE_TYPES[] = "gif";
-$PAGE_PROCESSORS["image/gif"] = "GifProcessor";
 /**
  * Used to create crawl summary information
  * for GIF files
@@ -49,6 +41,18 @@ $PAGE_PROCESSORS["image/gif"] = "GifProcessor";
  */
 class GifProcessor extends ImageProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "gif";
+        self::$image_types[] = "gif";
+        self::$mime_processor["image/gif"] = "GifProcessor";
+    }
     /**
      * {@inheritDoc}
      *
diff --git a/library/processors/GitXmlProcessor.php b/src/library/processors/GitXmlProcessor.php
similarity index 72%
rename from library/processors/GitXmlProcessor.php
rename to src/library/processors/GitXmlProcessor.php
index 5e4a2170d..39e2bb50c 100755
--- a/library/processors/GitXmlProcessor.php
+++ b/src/library/processors/GitXmlProcessor.php
@@ -30,22 +30,6 @@
  */
 namespace seekquarry\yioop\library\processors;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$add_extensions = ["xml"];
-if (!isset($INDEXED_FILE_TYPES)) {
-    $INDEXED_FILE_TYPES = [];
-}
-$INDEXED_FILE_TYPES = array_merge($INDEXED_FILE_TYPES, $add_extensions);
-$add_types = [
-    "text/gitxml" => "GitXmlProcessor"
-];
-if (!isset($PAGE_PROCESSORS)) {
-    $PAGE_PROCESSORS = [];
-}
-$PAGE_PROCESSORS =  array_merge($PAGE_PROCESSORS, $add_types);
 /**
  * Parent class common to all processors used to create crawl summary
  * information  that involves basically text data
@@ -55,4 +39,15 @@ $PAGE_PROCESSORS =  array_merge($PAGE_PROCESSORS, $add_types);
  */
 class GitXmlProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "xml";
+        self::$mime_processor["text/gitxml"] = "GitXmlProcessor";
+    }
 }
diff --git a/library/processors/GopherProcessor.php b/src/library/processors/GopherProcessor.php
similarity index 90%
rename from library/processors/GopherProcessor.php
rename to src/library/processors/GopherProcessor.php
index 92d9f54c2..b867822b3 100644
--- a/library/processors/GopherProcessor.php
+++ b/src/library/processors/GopherProcessor.php
@@ -30,9 +30,6 @@
  */
 namespace seekquarry\yioop\library\processors;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-global $PAGE_PROCESSORS;
-$PAGE_PROCESSORS["text/gopher"] = "GopherProcessor";
  /**
  * Used to create crawl summary information
  * for gopher protocol pages
@@ -42,6 +39,16 @@ $PAGE_PROCESSORS["text/gopher"] = "GopherProcessor";
  */
 class GopherProcessor extends HtmlProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$mime_processor["text/gopher"] = "GopherProcessor";
+    }
     /**
      * Used to extract the title, description and links from
      * a string consisting of gopher page data.
diff --git a/library/processors/HtmlProcessor.php b/src/library/processors/HtmlProcessor.php
similarity index 96%
rename from library/processors/HtmlProcessor.php
rename to src/library/processors/HtmlProcessor.php
index 01df45356..a1890bccb 100755
--- a/library/processors/HtmlProcessor.php
+++ b/src/library/processors/HtmlProcessor.php
@@ -36,19 +36,6 @@ use seekquarry\yioop\library\summarizers\CentroidSummarizer;
 use seekquarry\yioop\library\summarizers\GraphBasedSummarizer;
 use seekquarry\yioop\library\summarizers\ScrapeSummarizer;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$add_extensions = ["asp", "aspx", "cgi", "cfm", "cfml", "do", "htm",
-    "html", "jsp", "php", "pl", "py", "shtml"];
-if (!isset($INDEXED_FILE_TYPES)) {
-    $INDEXED_FILE_TYPES = [];
-}
-$INDEXED_FILE_TYPES = array_merge($INDEXED_FILE_TYPES, $add_extensions);
-$PAGE_PROCESSORS["text/html"] = "HtmlProcessor";
-$PAGE_PROCESSORS["text/asp"] = "HtmlProcessor";
-$PAGE_PROCESSORS["application/xhtml+xml"] = "HtmlProcessor";
 /**
  * For guessing language from charset
  */
@@ -68,6 +55,22 @@ class HtmlProcessor extends TextProcessor
      * Maximum number of characters in a title
      */
     const MAX_TITLE_LEN = 100;
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        $add_extensions = ["asp", "aspx", "cgi", "cfm", "cfml", "do", "htm",
+            "html", "jsp", "php", "pl", "py", "shtml"];
+        self::$indexed_file_types = array_merge(self::$indexed_file_types,
+            $add_extensions);
+        self::$mime_processor["text/html"] = "HtmlProcessor";
+        self::$mime_processor["text/asp"] = "HtmlProcessor";
+        self::$mime_processor["application/xhtml+xml"] = "HtmlProcessor";
+    }
     /**
      * Used to extract the title, description and links from
      * a string consisting of webpage data.
diff --git a/library/processors/ImageProcessor.php b/src/library/processors/ImageProcessor.php
similarity index 98%
rename from library/processors/ImageProcessor.php
rename to src/library/processors/ImageProcessor.php
index 0160c1119..b19fcddec 100755
--- a/library/processors/ImageProcessor.php
+++ b/src/library/processors/ImageProcessor.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\library\processors;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Base abstract class common to all processors used to create crawl summary
  * information from images
diff --git a/library/processors/JavaProcessor.php b/src/library/processors/JavaProcessor.php
similarity index 85%
rename from library/processors/JavaProcessor.php
rename to src/library/processors/JavaProcessor.php
index 0f528011d..96d437c4d 100755
--- a/library/processors/JavaProcessor.php
+++ b/src/library/processors/JavaProcessor.php
@@ -31,22 +31,7 @@
 namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\UrlParser;
-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$add_extensions = ["java"];
-if (!isset($INDEXED_FILE_TYPES)) {
-    $INDEXED_FILE_TYPES = [];
-}
-$INDEXED_FILE_TYPES = array_merge($INDEXED_FILE_TYPES, $add_extensions);
-$add_types = [
-    "text/java" => "JavaProcessor"
-];
-if (!isset($PAGE_PROCESSORS)) {
-    $PAGE_PROCESSORS = [];
-}
-$PAGE_PROCESSORS =  array_merge($PAGE_PROCESSORS, $add_types);
+
 /**
  * Parent class common to all processors used to create crawl summary
  * information  that involves basically text data
@@ -56,6 +41,17 @@ $PAGE_PROCESSORS =  array_merge($PAGE_PROCESSORS, $add_types);
  */
 class JavaProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "java";
+        self::$mime_processor["text/java"] = "JavaProcessor";
+    }
     /**
      * Computes a summary based on a text string of a document
      *
diff --git a/library/processors/JpgProcessor.php b/src/library/processors/JpgProcessor.php
similarity index 81%
rename from library/processors/JpgProcessor.php
rename to src/library/processors/JpgProcessor.php
index 2cb69acd4..b8895f735 100755
--- a/library/processors/JpgProcessor.php
+++ b/src/library/processors/JpgProcessor.php
@@ -32,17 +32,7 @@ namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 ini_set("gd.jpeg_ignore_warning", 1);
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $IMAGE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "jpg";
-$INDEXED_FILE_TYPES[] = "jpeg";
-$IMAGE_TYPES[] = "jpg";
-$IMAGE_TYPES[] = "jpeg";
-$PAGE_PROCESSORS["image/jpeg"] = "JpgProcessor";
 /**
  * Used to create crawl summary information
  * for JPEG files
@@ -52,6 +42,20 @@ $PAGE_PROCESSORS["image/jpeg"] = "JpgProcessor";
  */
 class JpgProcessor extends ImageProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "jpg";
+        self::$indexed_file_types[] = "jpeg";
+        self::$image_types[] = "jpg";
+        self::$image_types[] = "jpeg";
+        self::$mime_processor["image/jpeg"] = "JpgProcessor";
+    }
     /**
      * {@inheritDoc}
      *
diff --git a/library/processors/PageProcessor.php b/src/library/processors/PageProcessor.php
similarity index 89%
rename from library/processors/PageProcessor.php
rename to src/library/processors/PageProcessor.php
index 617e5bc42..24dc6ae83 100644
--- a/library/processors/PageProcessor.php
+++ b/src/library/processors/PageProcessor.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Base class common to all processors of web page data
  *
@@ -66,6 +65,26 @@ abstract class PageProcessor implements CrawlConstants
      * @var int
      */
     public static $max_description_len;
+    /**
+     * Associative array of mime_type => (page processor name that can process
+     * that type)
+     * Sub-classes add to this array with the types they handle
+     * @var array
+     */
+    public static $mime_processor = [];
+    /**
+     * Array filetypes which should be considered images.
+     * Sub-classes add to this array with the types they handle
+     * @var array
+     */
+    public static $image_types = [];
+    /**
+     * Array of file extensions which can be handled by the search engine,
+     * other extensions will be ignored.
+     * Sub-classes add to this array with the types they handle
+     * @var array
+     */
+    public static $indexed_file_types = ["unknown"];
     /**
      * Set-ups the any indexing plugins associated with this page
      * processor
diff --git a/library/processors/PdfProcessor.php b/src/library/processors/PdfProcessor.php
similarity index 95%
rename from library/processors/PdfProcessor.php
rename to src/library/processors/PdfProcessor.php
index aec9f9629..82a1428b4 100755
--- a/library/processors/PdfProcessor.php
+++ b/src/library/processors/PdfProcessor.php
@@ -30,12 +30,6 @@
  */
 namespace seekquarry\yioop\library\processors;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "pdf";
-$PAGE_PROCESSORS["application/pdf"] = "PdfProcessor";
 /**
  * Used to create crawl summary information
  * for PDF files
@@ -45,6 +39,17 @@ $PAGE_PROCESSORS["application/pdf"] = "PdfProcessor";
  */
 class PdfProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "pdf";
+        self::$mime_processor["application/pdf"] = "PdfProcessor";
+    }
     /**
      * Used to extract the title, description and links from
      * a string consisting of PDF data.
diff --git a/library/processors/PngProcessor.php b/src/library/processors/PngProcessor.php
similarity index 84%
rename from library/processors/PngProcessor.php
rename to src/library/processors/PngProcessor.php
index 9d79a6727..2b96823f6 100755
--- a/library/processors/PngProcessor.php
+++ b/src/library/processors/PngProcessor.php
@@ -32,14 +32,6 @@ namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $IMAGE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "png";
-$IMAGE_TYPES[] = "png";
-$PAGE_PROCESSORS["image/png"] = "PngProcessor";
 /**
  * Used to create crawl summary information
  * for PNG files
@@ -49,6 +41,18 @@ $PAGE_PROCESSORS["image/png"] = "PngProcessor";
  */
 class PngProcessor extends ImageProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "png";
+        self::$image_types[] = "png";
+        self::$mime_processor["image/png"] = "PngProcessor";
+    }
     /**
      * {@inheritDoc}
      *
diff --git a/library/processors/PptProcessor.php b/src/library/processors/PptProcessor.php
similarity index 92%
rename from library/processors/PptProcessor.php
rename to src/library/processors/PptProcessor.php
index 577074ad5..b2af9af6e 100755
--- a/library/processors/PptProcessor.php
+++ b/src/library/processors/PptProcessor.php
@@ -30,12 +30,6 @@
  */
 namespace seekquarry\yioop\library\processors;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "ppt";
-$PAGE_PROCESSORS["application/vnd.ms-powerpoint"] = "PptProcessor";
 /**
  * Used to create crawl summary information
  * for PPT files
@@ -52,6 +46,17 @@ class PptProcessor extends TextProcessor
     const READ_LEN_TEXT_SEG = 4;
     const SCAN_TEXT_SEG = 5;
     const ALWAYS_IGNORE = 6;
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "ppt";
+        self::$mime_processor["application/vnd.ms-powerpoint"] = "PptProcessor";
+    }
     /**
      * Computes a summary based on a string of a binary Powerpoint document
      * (as opposed to the modern xml powerpoint format).
diff --git a/library/processors/PptxProcessor.php b/src/library/processors/PptxProcessor.php
similarity index 93%
rename from library/processors/PptxProcessor.php
rename to src/library/processors/PptxProcessor.php
index 7a6d3c61c..9760040f0 100644
--- a/library/processors/PptxProcessor.php
+++ b/src/library/processors/PptxProcessor.php
@@ -34,14 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\PartialZipArchive;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "pptx";
-$PAGE_PROCESSORS["application/vnd.openxmlformats-officedocument.".
-    "presentationml.presentation"] = "PptxProcessor";
 /**
  * Used to create crawl summary information
  * for PPTX files
@@ -51,6 +43,18 @@ $PAGE_PROCESSORS["application/vnd.openxmlformats-officedocument.".
  */
 class PptxProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "pptx";
+        self::$mime_processor["application/vnd.openxmlformats-officedocument.".
+            "presentationml.presentation"] = "PptxProcessor";
+    }
     /**
      * Used to extract the title, description and links from
      * a pptx file consisting of xml data.
diff --git a/library/processors/PythonProcessor.php b/src/library/processors/PythonProcessor.php
similarity index 85%
rename from library/processors/PythonProcessor.php
rename to src/library/processors/PythonProcessor.php
index ab93dfdbc..f54657d23 100755
--- a/library/processors/PythonProcessor.php
+++ b/src/library/processors/PythonProcessor.php
@@ -32,22 +32,6 @@ namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$add_extensions = ["py"];
-if (!isset($INDEXED_FILE_TYPES)) {
-    $INDEXED_FILE_TYPES = [];
-}
-$INDEXED_FILE_TYPES = array_merge($INDEXED_FILE_TYPES, $add_extensions);
-$add_types = [
-    "text/py" => "PythonProcessor"
-];
-if (!isset($PAGE_PROCESSORS)) {
-    $PAGE_PROCESSORS = [];
-}
-$PAGE_PROCESSORS =  array_merge($PAGE_PROCESSORS, $add_types);
 /**
  * Parent class common to all processors used to create crawl summary
  * information  that involves basically text data
@@ -57,6 +41,17 @@ $PAGE_PROCESSORS =  array_merge($PAGE_PROCESSORS, $add_types);
  */
 class PythonProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "py";
+        self::$mime_processor["text/py"] = "PythonProcessor";
+    }
     /**
      * Computes a summary based on a text string of a document
      *
diff --git a/library/processors/RobotProcessor.php b/src/library/processors/RobotProcessor.php
similarity index 94%
rename from library/processors/RobotProcessor.php
rename to src/library/processors/RobotProcessor.php
index 1a0d6965d..5f82886d0 100644
--- a/library/processors/RobotProcessor.php
+++ b/src/library/processors/RobotProcessor.php
@@ -32,10 +32,6 @@ namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $PAGE_PROCESSORS;
-$PAGE_PROCESSORS["text/robot"] = "RobotProcessor";
 /**
  * Processor class used to extract information from robots.txt files
  *
@@ -44,6 +40,17 @@ $PAGE_PROCESSORS["text/robot"] = "RobotProcessor";
  */
 class RobotProcessor extends PageProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "pdf";
+        self::$mime_processor["text/robot"] = "RobotProcessor";
+    }
     /**
      * Parses the contents of a robots.txt page extracting allowed,
      * disallowed paths, crawl-delay, and sitemaps. We also extract a
diff --git a/library/processors/RssProcessor.php b/src/library/processors/RssProcessor.php
similarity index 95%
rename from library/processors/RssProcessor.php
rename to src/library/processors/RssProcessor.php
index 1f0892d16..d7eccd1f7 100644
--- a/library/processors/RssProcessor.php
+++ b/src/library/processors/RssProcessor.php
@@ -32,13 +32,6 @@ namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "rss";
-$PAGE_PROCESSORS["application/rss+xml"] = "RssProcessor";
-$PAGE_PROCESSORS["application/atom+xml"] = "RssProcessor";
 /**
  * Used to create crawl summary information
  * for RSS or Atom files
@@ -48,6 +41,18 @@ $PAGE_PROCESSORS["application/atom+xml"] = "RssProcessor";
  */
 class RssProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "rss";
+        self::$mime_processor["application/rss+xml"] = "RssProcessor";
+        self::$mime_processor["application/atom+xml"] = "RssProcessor";
+    }
     /**
      * Used to extract the title, description and links from
      * a string consisting of rss or atom news feed data.
diff --git a/library/processors/RtfProcessor.php b/src/library/processors/RtfProcessor.php
similarity index 91%
rename from library/processors/RtfProcessor.php
rename to src/library/processors/RtfProcessor.php
index 71e30ed48..3a0743fbc 100755
--- a/library/processors/RtfProcessor.php
+++ b/src/library/processors/RtfProcessor.php
@@ -30,12 +30,6 @@
  */
 namespace seekquarry\yioop\library\processors;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "rtf";
-$PAGE_PROCESSORS["text/rtf"] = "RtfProcessor";
 /**
  * Used to create crawl summary information
  * for RTF files
@@ -45,6 +39,17 @@ $PAGE_PROCESSORS["text/rtf"] = "RtfProcessor";
  */
 class RtfProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "rtf";
+        self::$mime_processor["text/rtf"] = "RtfProcessor";
+    }
     /**
      * Computes a summary based on a rtf string of a document
      *
diff --git a/library/processors/SitemapProcessor.php b/src/library/processors/SitemapProcessor.php
similarity index 98%
rename from library/processors/SitemapProcessor.php
rename to src/library/processors/SitemapProcessor.php
index 2360525c7..2455be780 100644
--- a/library/processors/SitemapProcessor.php
+++ b/src/library/processors/SitemapProcessor.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
  /**
  * Used to create crawl summary information
  * for sitemap files
diff --git a/library/processors/SvgProcessor.php b/src/library/processors/SvgProcessor.php
similarity index 92%
rename from library/processors/SvgProcessor.php
rename to src/library/processors/SvgProcessor.php
index 26bf55149..e1b240764 100644
--- a/library/processors/SvgProcessor.php
+++ b/src/library/processors/SvgProcessor.php
@@ -33,20 +33,10 @@ namespace seekquarry\yioop\library\processors;
 use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $IMAGE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "svg";
-$IMAGE_TYPES[] = "svg";
-$PAGE_PROCESSORS["image/svg+xml"] = "SvgProcessor";
 /**
  * Used for convertPixels
  */
 require_once BASE_DIR."/library/Utility.php";
-
-
  /**
  * Used to create crawl summary information
  * for SVG files. This class is a little bit
@@ -61,6 +51,18 @@ require_once BASE_DIR."/library/Utility.php";
 class SvgProcessor extends TextProcessor
 {
     const MAX_THUMB_LEN = 5000;
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "svg";
+        self::$image_types[] = "svg";
+        self::$mime_processor["image/svg+xml"] = "SvgProcessor";
+    }
     /**
      * Used to extract the title, description and links from
      * a string consisting of svg image. If the image is small
diff --git a/library/processors/TextProcessor.php b/src/library/processors/TextProcessor.php
similarity index 90%
rename from library/processors/TextProcessor.php
rename to src/library/processors/TextProcessor.php
index c7252e5a7..41606ea7f 100755
--- a/library/processors/TextProcessor.php
+++ b/src/library/processors/TextProcessor.php
@@ -35,23 +35,6 @@ use seekquarry\yioop\library\summarizers\CentroidSummarizer;
 use seekquarry\yioop\library\summarizers\GraphBasedSummarizer;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-$add_extensions = ["csv", "tab", "tsv", "txt"];
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-if (!isset($INDEXED_FILE_TYPES)) {
-    $INDEXED_FILE_TYPES = [];
-}
-$INDEXED_FILE_TYPES = array_merge($INDEXED_FILE_TYPES, $add_extensions);
-$add_types = [
-    "text/plain" => "TextProcessor",
-    "text/csv" => "TextProcessor",
-    "text/x-java-source" => "TextProcessor",
-    "text/tab-separated-values" => "TextProcessor"
-];
-$PAGE_PROCESSORS =  (isset($PAGE_PROCESSORS)) ?
-    array_merge($PAGE_PROCESSORS, $add_types) : $add_types;
 /**
  * To try to guess locale's from string samples
  */
@@ -65,6 +48,22 @@ require_once BASE_DIR."/library/LocaleFunctions.php";
  */
 class TextProcessor extends PageProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        $add_extensions = ["csv", "tab", "tsv", "txt"];
+        self::$indexed_file_types = array_merge(self::$indexed_file_types,
+            $add_extensions);
+        self::$mime_processor["text/plain"] = "TextProcessor";
+        self::$mime_processor["text/csv"] = "TextProcessor";
+        self::$mime_processor["text/x-java-source"] = "TextProcessor";
+        self::$mime_processor["text/tab-separated-values"] = "TextProcessor";
+    }
     /**
      * Computes a summary based on a text string of a document
      *
diff --git a/library/processors/XlsxProcessor.php b/src/library/processors/XlsxProcessor.php
similarity index 93%
rename from library/processors/XlsxProcessor.php
rename to src/library/processors/XlsxProcessor.php
index 5b9c45e52..0d9df9f77 100644
--- a/library/processors/XlsxProcessor.php
+++ b/src/library/processors/XlsxProcessor.php
@@ -33,15 +33,7 @@ namespace seekquarry\yioop\library\processors;
 use seekquarry\yioop\library\PartialZipArchive;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "xlsx";
-$PAGE_PROCESSORS["application/vnd.openxmlformats-officedocument.".
-    "spreadsheetml.sheet"] = "XlsxProcessor";
- /**
+/**
  * Used to create crawl summary information
  * for xlsx files
  *
@@ -50,6 +42,18 @@ $PAGE_PROCESSORS["application/vnd.openxmlformats-officedocument.".
  */
 class XlsxProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "xlsx";
+        self::$mime_processor["application/vnd.openxmlformats-officedocument.".
+            "spreadsheetml.sheet"] = "XlsxProcessor";
+    }
     /**
      * Used to extract the title, description and links from
      * a xlsx file.
diff --git a/library/processors/XmlProcessor.php b/src/library/processors/XmlProcessor.php
similarity index 86%
rename from library/processors/XmlProcessor.php
rename to src/library/processors/XmlProcessor.php
index 4a8ec5195..0a8dc61d0 100644
--- a/library/processors/XmlProcessor.php
+++ b/src/library/processors/XmlProcessor.php
@@ -32,13 +32,6 @@ namespace seekquarry\yioop\library\processors;

 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Register File Types We Handle*/
-global $INDEXED_FILE_TYPES;
-global $PAGE_PROCESSORS;
-$INDEXED_FILE_TYPES[] = "xml";
-$PAGE_PROCESSORS["text/xml"] = "XmlProcessor";
-$PAGE_PROCESSORS["application/xml"] = "XmlProcessor";
 /**
  * Used to create crawl summary information
  * for XML files (those served as text/xml)
@@ -48,6 +41,18 @@ $PAGE_PROCESSORS["application/xml"] = "XmlProcessor";
  */
 class XmlProcessor extends TextProcessor
 {
+    /**
+     * {@inheritDoc}
+     */
+    public function __construct($plugins = [], $max_description_len = null,
+        $summarizer_option = self::BASIC_SUMMARIZER)
+    {
+        parent::__construct($plugins, $max_description_len, $summarizer_option);
+        /** Register File Types We Handle*/
+        self::$indexed_file_types[] = "xml";
+        self::$mime_processor["text/xml"] = "XmlProcessor";
+        self::$mime_processor["application/xml"] = "XmlProcessor";
+    }
     /**
      * Used to extract the title, description and links from
      * a string consisting of rss news feed data.
diff --git a/library/summarizers/CentroidSummarizer.php b/src/library/summarizers/CentroidSummarizer.php
similarity index 99%
rename from library/summarizers/CentroidSummarizer.php
rename to src/library/summarizers/CentroidSummarizer.php
index 845b22812..7298a10a5 100644
--- a/library/summarizers/CentroidSummarizer.php
+++ b/src/library/summarizers/CentroidSummarizer.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\processors\PageProcessor;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Class which may be used by TextProcessors to get a summary for a text
  * document that may later be used for indexing. It does this by doing
diff --git a/library/summarizers/GraphBasedSummarizer.php b/src/library/summarizers/GraphBasedSummarizer.php
similarity index 99%
rename from library/summarizers/GraphBasedSummarizer.php
rename to src/library/summarizers/GraphBasedSummarizer.php
index 0108c9c29..4d4594d03 100644
--- a/library/summarizers/GraphBasedSummarizer.php
+++ b/src/library/summarizers/GraphBasedSummarizer.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\processors\PageProcessor;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Class which may be used by TextProcessors to get a summary for a text
  * document that may later be used for indexing.
diff --git a/library/summarizers/ScrapeSummarizer.php b/src/library/summarizers/ScrapeSummarizer.php
similarity index 99%
rename from library/summarizers/ScrapeSummarizer.php
rename to src/library/summarizers/ScrapeSummarizer.php
index b63c1f8c4..9442b7a85 100644
--- a/library/summarizers/ScrapeSummarizer.php
+++ b/src/library/summarizers/ScrapeSummarizer.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\processors\PageProcessor;

-if(!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Class which may be used by TextProcessors to get a summary for a text
  * document that may later be used for indexing.
diff --git a/library/summarizers/Summarizer.php b/src/library/summarizers/Summarizer.php
similarity index 99%
rename from library/summarizers/Summarizer.php
rename to src/library/summarizers/Summarizer.php
index cc2735ca6..37940ca24 100644
--- a/library/summarizers/Summarizer.php
+++ b/src/library/summarizers/Summarizer.php
@@ -30,8 +30,6 @@
  */
 namespace seekquarry\yioop\library\summarizers;

-if(!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-
 /**
  * Base class for all summarizers that will hold common methods and
  * base functionality.
diff --git a/locale/ar/configure.ini b/src/locale/ar/configure.ini
similarity index 92%
rename from locale/ar/configure.ini
rename to src/locale/ar/configure.ini
index ef54c0a93..93fc12fe1 100755
--- a/locale/ar/configure.ini
+++ b/src/locale/ar/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "تسجيل الدخول الناجحة!!"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "اسم المستخدم أو كلمة المرور غير صحيحة!"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "Login to continue configuration (default: u=root, p=)"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = "توقفت عن تحديثات الحالة."
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "لا تتطابق كلمات المرور المكتوبة."
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "لا تتطابق كلمات المرور المكتوبة."
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "لا تتطابق كلمات المرور المكتوبة."
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "اسم المستخدم غير موجود"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "اسم المستخدم غير موجود"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "دور الاسم غير موجود"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "دور إضافة اسم"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "اسم المستخدم غير موجود"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "اسم المستخدم غير موجود"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "دور الاسم غير موجود"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "دور حذف اسم"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "اسم المستخدم غير موجود"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "اسم المستخدم غير موجود"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "حدد النشاط"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "دور الاسم غير موجود"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "وأضاف النشاط"
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "دور الاسم موجود"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "دور إضافة اسم"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "دور الاسم غير موجود"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "حذف النشاط"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "دور الاسم غير موجود"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "دور حذف اسم"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "بدء تشغيل تتبع الارتباطات الجديدة!"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "وقف الزحف. . .هذا سوف يستغرق بعض وقت لتحديث ."
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "استئناف الزحف. . .هذا سوف يستغرق بعض وقت لتحديث ."
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "حذف الزحف. . .هذا سوف يستغرق بعض وقت لتحديث ."
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "حذف فشل الزحف!!"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "وضع الزحف لاستخدامها كمؤشر"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "لا يوجد وصف لتتبع الارتباطات"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "استخدام الخيارات الموجودة بالأسفل"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = "استخدام يوب! افتراضيات "
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "استخدام الخيارات الموجودة بالأسفل"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = "تتبع الارتباطات السابقة:"
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "اتساع الأولى"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "أهمية الصفحة"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = "محددات مواقع المعلومات حقن!"
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "تحديث معلومات الموقع البذور!"
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "استخدام الخيارات الموجودة بالأسفل"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = "استخدام يوب! افتراضيات "
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "استخدام الخيارات الموجودة بالأسفل"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = "ابدأ"
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = "أيام 1"
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = "يومين"
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = "3 أيام"
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = "7 أيام"
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = "14 يوما"
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = "خيارات الصفحة تحديث!"
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = "تصفية تحديث الصفحات!"
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = "حدد عنوان URL تم تحريرها مسبقاً"
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = "نتيجة تحديث الصفحة يحتاج إلى تحديد عنوان URL!"
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = "تحديث الصفحة النتيجة!"
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = "تحميل الصفحة!"
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = "نوع الوسائط"
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = "فيديو"
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = "RSS"
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = "مؤشر/ميكس للاستخدام"
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = "مصدر الوسائط المضافة!"
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = "وأضاف سوبسيرتش!"
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = "مصدر الوسائط المحذوفة!"
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = "حذف سوبسيرتش!"
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = "الزحف ميكس التغييرات المحفوظة!"
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = "حدد الجهاز"
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = "وأضاف آلة!"
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = "اسم الجهاز موجود بالفعل; Please Delete First!"
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = "الحقول المفقودة من نموذج آلة!"
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = "اسم الجهاز غير موجود!"
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = "الجهاز قيد الاستخدام. الرجاء إيقاف خدمة قيد التشغيل على ذلك! "
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = "حذف آلة!"
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = "لا يوجد ملف السجل وجدت."
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = "آلة #039;s Servers Updated!"
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = "غير قادر على تنفيذ الإجراء!"
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "وأضاف لغة!"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "الإعدادات المحلية غير موجود!"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "حذف الإعدادات المحلية"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "الإعدادات المحلية غير موجود!"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "سلاسل لغة تحديث!"
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = "مشكلة في تحديث قاعدة البيانات!"
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "تحديث الشخصية!"
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "كان هناك ملفتعريف تحديث المشكلة!"
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = "يجب استخدام مسار مطلق لدليل العمل"
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "تعيين دليل العمل! قد تحتاج إلى إعادة تسجيل الدخول! "
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "الرجاء تسمية الروبوت الخاص بك"
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "يعمل الدليل والشخصية التي تم إنشاؤها!"
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "تعذر التحديث config.php الملف!"
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "غير قادر على إنشاء الشخصية!"
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = "دليل العمل هو صالح! لا يمكن إنشاء الشخصية! "
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = "دليل العمل هو صالح! لا يمكن إنشاء الشخصية! "
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "تحديث الشخصية!"
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "كان هناك ملفتعريف تحديث المشكلة!"
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "كان هناك ملفتعريف تحديث المشكلة!"
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = "يرجى وصف الروبوت الخاص بك"
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = "بي إتش بي الإصدار 5.3 أو أحدث"
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = "configs/config.php ليس ملقم ويب للكتابة."
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = "دليل العمل يجب أن يكون قابل للكتابة من قبل ملقم ويب."
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = "pnp.ini ملف post_max_size متغيرينبغي أن يكون مالا يقل عن 32 م"
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = "مطلوب ما يلي العناصر في عداد المفقودين:  %s"
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = "كانت العناصر الاختيارية التالية مفقودة:  %s"
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = "تمرير الاختيار."
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = "استخدام configs/local_config.php حتى تغيير دليل العمل أعلاه قد لا تعمل."
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "تسجيل الخروج الناجحة!!"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = "استخدام مزيج الزحف:  %s"
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = "ويب الوثيقة: %s. الحجم: %s صفحات وعناوين URL %s"
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = "البحث"
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = "لا يوجد مؤشر مجموعة البحث للاستخدام!"
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = "لا يوجد مؤشر مجموعة البحث للاستخدام!"
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = "موقع على شبكة الإنترنت قد طلبت هذه الصفحة لم تتم أرشفة."
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = "هذه الصورة التي ظهرت على الصفحة:"
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = "عنوان المستخرجة"
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = "وصف استخراج"
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = "الروابط المستخرجة"
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = "استخراج يسمح لمسارات تتبع الارتباطات"
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = "استخراج غير مسموح لمسارات تتبع الارتباطات"
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = "تأخير الزحف ييوببوت"
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = "يوب ذاكرة التخزين المؤقت الصفحة... هذه الصفحة قد تم تعديل لإضافة توجيه الروبوتات، وجعل ارتباطات مطلقة، إضافة ملخصات المستخرجة، وتسليط الضوء على مصطلحات الاستعلام."
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = "تم الحصول على هذه النسخة المخزنة مؤقتاً من  %s الزاحف يوب على  %s."
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "Admin"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "حذف"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = "لا توجد عمليات تتبع الارتباطات السابقة"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "الأنشطة"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = "خروج السيارات في دقيقة واحدة!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = "نتائج أخبار ل  %s"
@@ -3765,7 +3765,7 @@ toggle_helper_on = "على"
 ; ToggleHelper.php line: 75
 toggle_helper_off = "إيقاف"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = "بي إتش بي محرك البحث-يوب!:  %s"
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = "خروج السيارات في دقيقة واحدة!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/ar/resources/Tokenizer.php b/src/locale/ar/resources/Tokenizer.php
similarity index 99%
rename from locale/ar/resources/Tokenizer.php
rename to src/locale/ar/resources/Tokenizer.php
index adaf47a30..b7999c5b1 100755
--- a/locale/ar/resources/Tokenizer.php
+++ b/src/locale/ar/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\ar\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Arabic specific tokenization code. In particular, it has a stemmer,
  * The stemmer is my stab at porting Ljiljana Dolamic (University of Neuchatel,
diff --git a/locale/ar/resources/locale.js b/src/locale/ar/resources/locale.js
similarity index 100%
rename from locale/ar/resources/locale.js
rename to src/locale/ar/resources/locale.js
diff --git a/locale/ar/resources/suggest_trie.txt.gz b/src/locale/ar/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/ar/resources/suggest_trie.txt.gz
rename to src/locale/ar/resources/suggest_trie.txt.gz
diff --git a/locale/ar/statistics.txt b/src/locale/ar/statistics.txt
similarity index 100%
rename from locale/ar/statistics.txt
rename to src/locale/ar/statistics.txt
diff --git a/locale/bn/configure.ini b/src/locale/bn/configure.ini
similarity index 91%
rename from locale/bn/configure.ini
rename to src/locale/bn/configure.ini
index ab005abf8..02ed3b922 100755
--- a/locale/bn/configure.ini
+++ b/src/locale/bn/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = ""
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = ""
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = ""
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = ""
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = ""
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = ""
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = ""
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = ""
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = ""
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = ""
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = ""
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/bn/resources/Tokenizer.php b/src/locale/bn/resources/Tokenizer.php
similarity index 95%
rename from locale/bn/resources/Tokenizer.php
rename to src/locale/bn/resources/Tokenizer.php
index 7b62c8e88..13d22259a 100755
--- a/locale/bn/resources/Tokenizer.php
+++ b/src/locale/bn/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\bn\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Bengali specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/bn/resources/locale.js b/src/locale/bn/resources/locale.js
similarity index 100%
rename from locale/bn/resources/locale.js
rename to src/locale/bn/resources/locale.js
diff --git a/locale/bn/statistics.txt b/src/locale/bn/statistics.txt
similarity index 100%
rename from locale/bn/statistics.txt
rename to src/locale/bn/statistics.txt
diff --git a/locale/de/configure.ini b/src/locale/de/configure.ini
similarity index 91%
rename from locale/de/configure.ini
rename to src/locale/de/configure.ini
index 60944e992..f40c1ccb9 100755
--- a/locale/de/configure.ini
+++ b/src/locale/de/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = ""
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = ""
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = ""
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = ""
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = ""
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = ""
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = ""
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = ""
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = ""
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = ""
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = ""
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/de/resources/Tokenizer.php b/src/locale/de/resources/Tokenizer.php
similarity index 99%
rename from locale/de/resources/Tokenizer.php
rename to src/locale/de/resources/Tokenizer.php
index fe763f765..7d167e25a 100755
--- a/locale/de/resources/Tokenizer.php
+++ b/src/locale/de/resources/Tokenizer.php
@@ -30,7 +30,6 @@ namespace seekquarry\yioop\locale\de\resources;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * German specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/de/resources/locale.js b/src/locale/de/resources/locale.js
similarity index 100%
rename from locale/de/resources/locale.js
rename to src/locale/de/resources/locale.js
diff --git a/locale/de/resources/suggest_trie.txt.gz b/src/locale/de/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/de/resources/suggest_trie.txt.gz
rename to src/locale/de/resources/suggest_trie.txt.gz
diff --git a/locale/de/statistics.txt b/src/locale/de/statistics.txt
similarity index 100%
rename from locale/de/statistics.txt
rename to src/locale/de/statistics.txt
diff --git a/locale/en_US/configure.ini b/src/locale/en_US/configure.ini
similarity index 93%
rename from locale/en_US/configure.ini
rename to src/locale/en_US/configure.ini
index a9b9b24e2..bdbaa8693 100644
--- a/locale/en_US/configure.ini
+++ b/src/locale/en_US/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = "Cookies needed to login!!"
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = "Account not active. Maybe request password reset?"
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "Login Successful!!"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = "No Back Button During Login!"
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "Username or Password Incorrect!"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "Login to continue configuration (default: u=root, p=)"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = "Status updates have stopped."
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = "Account Access"
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = "Social"
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = "Crawls"
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = "System Settings"
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = "Advertisements"
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = "Equals"
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = "Not equals"
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = "Contains"
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = "Begins with"
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = "Ends with"
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = "Equals"
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = "Not equals"
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = "No sort"
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = "Ascending"
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = "Descending"
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = "No Posts Yet"
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = "Password is too long!"
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "Typed passwords do not match."
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = "Invalid Password!"
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = "Unknown Image File Type!"
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = "Icon File Too Big!"
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = "User Folder Could Not be Created!"
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = "User Updated"
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = "Active"
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = "Inactive"
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = "Banned"
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = "Pending"
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = "Invited"
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = "Active"
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = "Banned"
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = "Password is too long!"
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "Typed passwords do not match."
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = "Invalid Username!"
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = "User Already Exists!"
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = "User Added"
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = "Can&#039;t edit -- that sername doesn&#039;t exist!"
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = "Cannot Edit Public User!"
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "Typed passwords do not match."
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = "User Updated"
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = "Filtering by Group!"
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = "Filtering by Role!"
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "Username Does Not Exist"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = "Cannot Delete Built-in User!"
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = "User Deleted"
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "Username Does Not Exist"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "Role Name Does not Exist"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = "Role Name Already Added!"
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "Role Name Added"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "Username Does Not Exist"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = "Group Name does not exists"
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = "Group Name Already Added!"
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = "Group Name Added"
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "Username Does Not Exist"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "Role Name Does not Exist"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "Role Name Deleted"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "Username Does Not Exist"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = "Group Name does not exists"
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = "Group Deleted"
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "Username Does Not Exist"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = "User Status Updated"
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "Select Activity"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "Role Name Does not Exist"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "Activity Added"
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "Role Name Exists"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "Role Name Added"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = "Role Name Blank!"
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "Role Name Does not Exist"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "Activity Deleted"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "Role Name Does not Exist"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "Role Name Deleted"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = "Role updated!"
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = "Name, Description, Destination URL cannot be empty"
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = "Start or End Date cannot be empty"
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = "Please enter keywords"
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = "Start Date must be earlier than End Date"
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = "Ad campaign can be at most 31 days!"
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = "Please Enter Correct Date"
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = "Please enter keywords"
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = "Less Budget. Advertisement cannot be created"
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = "Advertisement created"
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = "Advertisement does not exists"
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = "Advertisement Updated"
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "Starting New Crawl!"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "Stopping crawl. . .This will take a moment to refresh."
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "Resuming crawl. . .This will take a moment to refresh."
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "Deleting Crawl. . .This will take a moment to refresh."
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "Delete Crawl Failed!!"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "Setting Crawl To Use as Index"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "No Description for Crawl"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "Use options below"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = "Use Yioop! defaults"
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "Use options below"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = "Previous Crawl:"
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = "Urls injected on %s."
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = "User suggested URLS added!"
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = "No new urls in suggest data"
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "Breadth First"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "Page Importance"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = "Urls injected on %s."
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = "Urls Injected!"
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "Updating Seed Site Info!"
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = "New classifier created."
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = "A classifier with that name already exists."
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = "Classifier deleted."
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = "No classifier with that name."
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = "No classifier with that name."
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = "Finalizing classifier."
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = "Finalizing classifier."
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = "A classifier with that name already exists."
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = "Failed to load documents"
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = "Loading"
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = "Added {1} {2} examples"
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = "Failed to update labels."
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = "Updating"
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = "Failed to update accuracy"
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = "N/A"
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = "No documents"
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = "{1}{2} documents"
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = "In Class"
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = "Not In Class"
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = "Skip"
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = "Prediction: {1}"
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = "{1}%% confidence, {2}%% disagreement"
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "Use options below"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = "Use Yioop! defaults"
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "Use options below"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = "Never"
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = "1 days"
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = "2 days"
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = "3 days"
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = "7 days"
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = "14 days"
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = "Basic"
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = "Centroid"
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = "Graph-Based"
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = "Page Options Updated!"
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = "Running Tests!"
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = "Filter Pages Updated!"
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = "Select a Previously Edited URL"
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = "Result Page Update needs to Specify the URL!"
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = "Result Page Updated!"
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = "Page Loaded!"
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = "Media Kind"
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = "Video"
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = "RSS"
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = "Html Feed"
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = "Index/Mix to Use"
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = "Type of Source Not Set!"
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = "Must set media type!"
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = "Invalid URL!"
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = "All Fields Need to be Filled!"
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = "Media Source Added!"
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = "All Fields Need to be Filled!"
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = "Subsearch Added!"
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = "Source Was Not Deleted!"
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = "Media Source Deleted!"
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = "Source Was Not Deleted!"
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = "Subsearch Deleted!"
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = "Subsearch Updated!"
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = "Media Source Updated!"
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = "Too Many Search Result Fragments!"
 ; SocialComponent.php line: 2479
 social_component_mix_saved = "Crawl Mix Changes Saved!"
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = "Select Machine"
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = "Machine Added!"
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = "Machine Name Already Exists; Please Delete First!"
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = "Missing Fields From Machine Form!"
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = "Machine Name does not Exists!"
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = "Machine in use. Please stop the service running on it!"
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = "Machine Deleted!"
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = "Media Update Mode Toggled!"
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = "No Log File Found."
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = "Machine&#039;s Servers Updated!"
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = "Unable to Perform Action!"
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = "Select Mode"
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = "Field values missing or invalid!"
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "Locale Added!"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "Locale Does Not Exist!"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "Locale Deleted"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "Locale Does Not Exist!"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = "Locale Information Updated!"
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "Locale Strings Updated!"
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = "All Strings"
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = "Missing Strings"
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = "Problem Updating Database!"
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "Profile Updated!"
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "There was a Problem Updating Profile!"
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = "Disable Registration"
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = "No Activation"
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = "Email Activation"
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = "Admin Activation"
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = "No Advertisements"
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = "Keyword Advertisements"
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = "External Ad Server"
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = "Text Captcha"
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = "Hash Captcha"
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = "Image Captcha"
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = "Normal Authentication"
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = "ZKP Authentication"
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = "Normal Authentication"
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = "Settings Updated!"
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = "No Settings Were Changed!"
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = "Must use an Absolute path for Work Directory"
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = "Work Directory cannot be contained in Yioop folder!"
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "Work Directory Set! You may need to re-login!"
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "Please Name Your robot"
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "Working Directory and Profile Created!"
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "Unable to Update config.php File!"
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "Unable to Create Profile!"
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = "Work Directory is Invalid! Cannot Create Profile!"
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = "Work Directory is Invalid! Cannot Create Profile!"
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = "No Resource Folder!"
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = "Invalid File Type!"
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = "File Too Big!"
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "Profile Updated!"
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "There was a Problem Updating Profile!"
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = "Reset Completed"
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "There was a Problem Updating Profile!"
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = "Please Describe Your Robot"
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = "PHP Version 5.3 or Newer"
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = "configs/config.php not web server writable."
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = "Work directory needs to be writable by web server. "
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = "php.ini file variable post_max_size should be at least 2M"
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = "The following required items were missing: %s"
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = "The following optional items were missing: %s"
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = "Check Passed."
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = "Using configs/LocalConfig.php so changing work directory above may not work."
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = "Check Email Address!"
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = "Account not created - Username already in use!!"
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = "Web"
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "Logout Successful!!"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = "Using Crawl Mix: %s"
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = "Index: %s -- Size: %s pages/%s urls"
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = "Search"
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = "No Search Index Set For Use!"
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = "No Search Index Set For Use!"
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = "Download Fetcher: %s"
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = "The website in question has requested this page not be archived."
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = "Yioop Cache"
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = "This image appeared on the page:"
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = "Extracted Title"
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = "Extracted Description"
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = "Extracted Links"
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = "Extracted Allowed To Crawl Paths"
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = "Extracted Disallowed To Crawl Paths"
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = "YioopBot Crawl Delay"
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = "Yioop Cache Page... This page has been modified to add a robots directive,  make links absolute, add extracted summaries, and to highlight query terms."
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = "Yioop Cache"
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = "This cached version of %s was obtained by the Yioop crawler on %s."
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = "Download Fetcher: %s"
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = "Toggle Extracted Headers and Summaries"
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = "Toggle History"
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = "All Cached Versions - Change Year and/or Months to see Links"
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = "Year:"
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = "Month:"
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = "Logout Successful"
 ; StaticController.php line: 147
 static_controller_complete_title = "Yioop! - %s"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "Admin"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "Delete"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = "No Previous Crawls"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "Activities"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = "My Feeds"
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = "Auto-logout in One Minute!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = "News Results for %s"
@@ -3765,7 +3765,7 @@ toggle_helper_on = "On"
 ; ToggleHelper.php line: 75
 toggle_helper_off = "Off"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = "PHP Search Engine - Yioop! : %s"
@@ -4310,19 +4310,19 @@ wiki_view_wiki = "Wiki"
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = "Auto-logout in One Minute!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = "Word Filter Settings Saved!"
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = "Defaults restored!"
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = "Word Filter Preferences"
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = "Factory Settings"
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = "Save"
diff --git a/locale/en_US/resources/Tokenizer.php b/src/locale/en_US/resources/Tokenizer.php
similarity index 99%
rename from locale/en_US/resources/Tokenizer.php
rename to src/locale/en_US/resources/Tokenizer.php
index 162f5c3b4..86748b9ce 100755
--- a/locale/en_US/resources/Tokenizer.php
+++ b/src/locale/en_US/resources/Tokenizer.php
@@ -30,7 +30,6 @@ namespace seekquarry\yioop\locale\en_US\resources;

 use seekquarry\yioop\library\PhraseParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /* If you would like to use wordnet for thesaurus reordering of query results
    define the following variable in your configs/local_config.php file with
    the path to the WordNet executable.
diff --git a/locale/en_US/resources/lexicon.txt.gz b/src/locale/en_US/resources/lexicon.txt.gz
similarity index 100%
rename from locale/en_US/resources/lexicon.txt.gz
rename to src/locale/en_US/resources/lexicon.txt.gz
diff --git a/locale/en_US/resources/locale.js b/src/locale/en_US/resources/locale.js
similarity index 100%
rename from locale/en_US/resources/locale.js
rename to src/locale/en_US/resources/locale.js
diff --git a/locale/en_US/resources/suggest_trie.txt.gz b/src/locale/en_US/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/en_US/resources/suggest_trie.txt.gz
rename to src/locale/en_US/resources/suggest_trie.txt.gz
diff --git a/locale/en_US/statistics.txt b/src/locale/en_US/statistics.txt
similarity index 100%
rename from locale/en_US/statistics.txt
rename to src/locale/en_US/statistics.txt
diff --git a/locale/es/configure.ini b/src/locale/es/configure.ini
similarity index 92%
rename from locale/es/configure.ini
rename to src/locale/es/configure.ini
index 3fc7160ac..66e7e4f48 100755
--- a/locale/es/configure.ini
+++ b/src/locale/es/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "Inicio de sesi&oacute;n con &eacute;xito."
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "El nombre de usuario o la contrase&ntilde;a introducidos no son correctos."
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "Inicia sesi&oacute;n para continuar con la configuraci&oacute;n (default: u=root, p=)"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = "Las actualizaciones se han detenido."
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "Las contrase&ntilde;as introducidas no coinciden."
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "Las contrase&ntilde;as introducidas no coinciden."
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "Las contrase&ntilde;as introducidas no coinciden."
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "El nombre de usuario no existe"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "El nombre de usuario no existe"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "El nombre de usuario no existe"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "El nombre de usuario no existe"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "El nombre de usuario no existe"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "El nombre de usuario no existe"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = ""
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = ""
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "Actividad eliminada"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "Iniciando nuevo rastreo"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "Deteniendo el rastreo. . . Esto tomar&aacute; un momento para recargar."
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "Reanundando el rastreo. . . Esto tomar&aacute; un momento para recargar."
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "Eliminando el rastreo. . . Esto tomar&aacute; un momento para recargar."
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "Eliminar el rastreo no tuvo &eacute;xito"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "Usar el rastreo como &iacute;ndice"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "No hay descripci&oacute;n para el rastreo"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "Utilice las opciones a continuaci&oacute;n"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = "Utilizar Yioop! por defecto"
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "Utilice las opciones a continuaci&oacute;n"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = "Rastreo anterior:"
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "Breadth First"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "Importancia de p&aacute;gina"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = "Urls inyectadas!"
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "Utilice las opciones a continuaci&oacute;n"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = "Utilizar Yioop! por defecto"
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "Utilice las opciones a continuaci&oacute;n"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = "Nunca"
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = "1 d&iacute;a"
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = "2 d&iacute;as"
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = "3 d&iacute;as"
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = "7 d&iacute;as"
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = "14 d&iacute;as"
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = "Filtrar P&aacute;ginas Actualizadas!"
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = "Seleccionar una URL previamente editada"
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = "Resultados de la actualizaci&oacute;n de la p&aacute;gina debe especificar la URL!"
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = "P&aacute;gina Actualizada!"
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = "P&aacute;gina Cargada!"
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = "Guardados los Cambios del Rastreo Mix!"
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = "Seleccionar M&aacute;quina"
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = "M&aacute;quina Agregada!"
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = "Nombre de la m&aacute;quina ya existe, por favor elimina primero!"
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = "Falta de Campos, en el Formulario de la M&aacute;quina!"
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = "El Nombre de la M&aacute;quina no Existe!"
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = "M&aacute;quina en Uso. Por favor, Detenga el Servicio que se Ejecuta en &eacute;l!"
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = "M&aacute;quina Eliminada!"
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = "No se Encontr&oacute; el Archivo de Registro."
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = "Servidores de M&aacute;quina&#039;s Actualizados!"
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = "No se Puede Realizar la Acci&oacute;n!"
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "Configuraci&oacute;n Regional Agregada!"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "Configuraci&oacute;n Regional No Existe"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "Configuraci&oacute;n Regional Eliminada"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "Configuraci&oacute;n Regional No Existe"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "Cadenas de Configuraci&oacute;n Regional Actualizada!"
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = "Problema al actualizar la base de datos!"
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "Perfil actualizado!"
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "Hubo un problema al actualizar el perfil!"
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = "Debe utilizar una ruta absoluta para el directorio de trabajo"
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "El trabajo conjunto de Directorio! Puede que tenga que volver a entrar!"
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "Por favor, Nombre tu Robot"
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "Directorio de Trabajo y Perfil creados!"
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "No se puede actualizar el archivo config.php!"
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "No se puede crear el perfil!"
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = "Directorio de trabajo es inv&aacute;lido! No se puede crear el perfil!"
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = "Directorio de trabajo es inv&aacute;lido! No se puede crear el perfil!"
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "Perfil actualizado!"
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "Hubo un problema al actualizar el perfil!"
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "Hubo un problema al actualizar el perfil!"
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = "Por favor describa su robot"
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = "PHP Version 5.3 o la M&aacute;s Reciente"
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = "configs/config.php el servidor web no es escribible."
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = "Directorio de trabajo tiene que ser escribible por el servidor web"
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = "La variable post_max_size del archivo php.ini deber�a ser de al menos 32M"
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = "Los siguientes elementos necesarios (requeridos), no estaban: %s"
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = "Los siguientes elementos opcionales, no estaban: %s"
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = "Entrada Aprobada"
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "Se ha cerrado la sesi&oacute;n con &eacute;xito!!"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = "Usando Rastreo Mix: %s"
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = "Usando &Iacute;ndice: %s -- Size: %s pages/%s urls"
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = "No se dispone de &iacute;ndice de b&uacute;squeda para su uso!"
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = "No se dispone de &iacute;ndice de b&uacute;squeda para su uso!"
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = "T&iacute;tulo extra&iacute;do"
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = "Descripci&oacute;n Extra&iacute;da"
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = "Enlaces (links) extra&iacute;dos"
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = "Rutas permitidas extra&iacute;das para ser rastreadas"
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = "Rutas No permitidas extra&iacute;das para no ser rastreadas"
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = "Rastreo Retrasado de YioopBot"
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = "P&aacute;gina de cache Yioop ... Esta p&aacute;gina ha sido modificada para a&ntilde;adir una directiva robots, hacer enlaces absolutos, a&ntilde;adir res&uacute;menes extra&iacute;dos, y para resaltar los t&eacute;rminos de la consulta."
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = "Esta versi&oacute;n en cach&eacute; de %s se obtuvo mediante el rastreador Yioop en %s."
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "Administrador"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "Eliminar"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = "Rastreos noanteriores"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "Actividades"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = "Auto-cerrar la sesi&oacute;n en un minuto!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = "Auto-cerrar la sesi&oacute;n en un minuto!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/es/resources/Tokenizer.php b/src/locale/es/resources/Tokenizer.php
similarity index 99%
rename from locale/es/resources/Tokenizer.php
rename to src/locale/es/resources/Tokenizer.php
index 69bd43019..e01058a88 100755
--- a/locale/es/resources/Tokenizer.php
+++ b/src/locale/es/resources/Tokenizer.php
@@ -30,7 +30,6 @@ namespace seekquarry\yioop\locale\es\resources;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Spanish specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/es/resources/locale.js b/src/locale/es/resources/locale.js
similarity index 100%
rename from locale/es/resources/locale.js
rename to src/locale/es/resources/locale.js
diff --git a/locale/es/resources/suggest_trie.txt.gz b/src/locale/es/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/es/resources/suggest_trie.txt.gz
rename to src/locale/es/resources/suggest_trie.txt.gz
diff --git a/locale/es/statistics.txt b/src/locale/es/statistics.txt
similarity index 100%
rename from locale/es/statistics.txt
rename to src/locale/es/statistics.txt
diff --git a/locale/fa/configure.ini b/src/locale/fa/configure.ini
similarity index 92%
rename from locale/fa/configure.ini
rename to src/locale/fa/configure.ini
index b1617c363..4803fcd15 100755
--- a/locale/fa/configure.ini
+++ b/src/locale/fa/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "با موفقیت وارد شدید!!"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "نام کاربری یا رمز عبور اشتباه است!"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "برای ادامهٔ تنظیمات وارد شوید (پیش&zwnj;فرض: نام کاربری=root و رمز عبور=)"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = "به روز رسانی وضعیت متوقف شده است."
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "رمزعبورهای وارد شده مطابقت ندارند."
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "رمزعبورهای وارد شده مطابقت ندارند."
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "رمزعبورهای وارد شده مطابقت ندارند."
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "این نام کاربری وجود ندارد"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "این نام کاربری وجود ندارد"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "این نقش وجود ندارد"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "نقش اضافه شد"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "این نام کاربری وجود ندارد"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "این نام کاربری وجود ندارد"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "این نقش وجود ندارد"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "نقش حذف شد"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "این نام کاربری وجود ندارد"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "این نام کاربری وجود ندارد"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "یک فعالیت انتخاب کنید"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "این نقش وجود ندارد"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "فعالیت اضافه شد"
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "این نقش وجود دارد"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "نقش اضافه شد"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "این نقش وجود ندارد"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "فعالیت حذف شد"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "این نقش وجود ندارد"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "نقش حذف شد"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "در حال آغاز خزش جدید!"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "در حال متوقف کردن خزش ... چند لحظه تا باز آوری طول می&zwnj;کشد. "
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "در حال از سرگیری خزش ... چند لحظه تا باز آوری طول می&zwnj;کشد. "
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "در حال حذف کردن خزش ... چند لحظه تا باز آوری طول می&zwnj;کشد. "
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "حذف خزش شکست خورد!!"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "قرار دادن خزش به عنوان نمایه"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "شرحی برای خزش نیست"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "از گزینه&zwnj;های زیر استفاده کن"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = "از پیش&zwnj;فرض&zwnj;های Yioop! استفاده کن"
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "از گزینه&zwnj;های زیر استفاده کن"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = "خزش قبلی:"
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "اول سطح"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "اهمیت صفحه"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = "urlها وارد شدند."
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "در حال به روز آوری اطلاعات seed site "
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "از گزینه&zwnj;های زیر استفاده کن"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = "از پیش&zwnj;فرض&zwnj;های Yioop! استفاده کن"
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "از گزینه&zwnj;های زیر استفاده کن"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = "هرگز"
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = "۱ روز"
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = "۲ روز"
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = "۳ روز"
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = "۷ روز"
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = "۱۴ روز"
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = "تنظیمات صفحه به روز شد!"
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = "پالایه صفحات به روز شد!"
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = "یک URL که قبلن ویرایش شده انتخاب کنید"
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = "به روز رسانی صفحهٔ نتایج احتیاج به تعیین URL دارد! "
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = "صفحهٔ نتایج به روز آوری شد!"
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = "صفحه بارگذاری شد!"
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = "نوع رسانه"
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = "ویدیو"
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = "RSS"
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = "نمایه/ترکیب مورد استفاده"
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = "منبع رسانه&zwnj;ها اضافه شد!"
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = "زیرجستجو اضافه شد!"
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = "منبع رسانه&zwnj;ها حذف شد!"
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = "زیر جستجو حذف شد!"
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = "تغییرات ترکیب خزش ذخیره شد!"
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = "یک دستگاه انتخاب کنید"
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = "دستگاه اضافه شد!"
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = "دستگاه وجود دارد؛ لطفن اول حذف کنید! "
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = "بعضی قسمت&zwnj;های فرم دستگاه پر نشده است!"
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = "این دستگاه وجود ندارد!"
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = "دستگاه در حال استفاده است. لطفن کاری که انجام می&zwnj;دهد را متوقف کنید!"
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = "دستگاه حذف شد!"
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = "Log File پیدا نشد."
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = "سرورهای دستگاه به روز شدند!"
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = "نمی&zwnj;توان این فرمان را اجرا کرد!"
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "زبان اضافه شد!"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "این زبان وجود ندارد!"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "زبان حذف شد"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "این زبان وجود ندارد!"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "رشته&zwnj;های زبان به روز شد!"
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = "در به روز رسانی پایگاه داده مشکلی پیش آمده است! "
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "پروفایل به روز شد!"
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "در به روز رسانی پروفایل مشکلی پیش آمده است!"
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = "باید از مسیر مطلق برای پوشهٔ کار استفاده کرد"
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = "پوشهٔ کار نمی&zwnj;تواند در پوشهٔ Yioop باشد."
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "پوشهٔ کار تنظیم شد! احتمالن لازم است دوباره وارد شوید.!"
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "لطفن برای رباتتان نامی بگذارید"
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "پوشهٔ کار و پروفایل ساخته شدند!"
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "نمی&zwnj;توان فایل config.php را به روز کرد!"
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "نمی&zwnj;توان پروفایل را ساخت!"
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = "پوشهٔ کار معتبر نیست! نمی&zwnj;توان پروفایل را ساخت!"
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = "پوشهٔ کار معتبر نیست! نمی&zwnj;توان پروفایل را ساخت!"
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "پروفایل به روز شد!"
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "در به روز رسانی پروفایل مشکلی پیش آمده است!"
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "در به روز رسانی پروفایل مشکلی پیش آمده است!"
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = "لطفن رباتتان را توصیف کنید"
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = "PHP نسخهٔ ۳.۵ یا جدیدتر"
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = "وب سرور نمی&zwnj;تواند در configs/config.php بنویسد."
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = "وب سرور باید بتواند در پوشهٔ کار بنویسد."
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = "متغیر post_max_size در php.ini باید حداقل ۲ مگابایت باشد. "
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = "موارد لازم زیر خالی هستند: %s"
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = "موارد اختیاری زیر خالی هستند: %s"
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = "در بررسی مشکلی پیدا نشد."
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = "از configs/local_config.php استفاده می&zwnj;شود، بنابراین ممکن است تغییر بالا عمل نکند."
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "با موفقیت خارج شدید!!"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = "با استفاده از ترکیب خزش: %s"
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = "نمایه: %s -- اندازه: %s صفحات/%s urls"
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = "بگرد"
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = "هیچ نمایهٔ جستجویی برای استفاده تنظیم نشده است!"
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = "هیچ نمایهٔ جستجویی برای استفاده تنظیم نشده است!"
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = "وب&zwnj;سایت مورد نظر نمی&zwnj;خواهد این صفحه بایگانی شود."
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = "این تصویر در صفحهٔ زیر دیده شده است: "
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = "عنوان استخراج شده"
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = "توضیح استخراج شده"
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = "لینک&zwnj;های استخراج شده"
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = "مسیرهای مجاز به خزش استخراج شده"
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = "مسیرهای غیرمجاز به خزش استخراج شده"
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = "تاخیر در خزش YioopBot"
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = "صفحه کش Yioop ... این صفحه برای اضافه کردن دستورالعمل ربات، ایجاد لینک های مطلق، اضافه کردن خلاصه&zwnj;های استخراج شده، و برجسته سازی کلمات مورد پرسمان اصلاح شده است."
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = "این نسخه کش شدهٔ ‪%‬s را خزندهٔ Yioop در ‪%‬s به دست آورده است."
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = " وضعیت سرصفحه استخراج شده و خلاصه را عوض کن"
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = "وضعیت تاریخچه را عوض کن"
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = "همه نسخه های کش شده - سال و/یا ماه را برای دیدن لینک&zwnj;ها تغییر دهید"
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = "سال:"
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = "ماه:"
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "مدیر"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "حذف کن"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = "هیچ خزش قبلی موجود نیست"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "فعالیت&zwnj;ها"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = "خروج خودکار تا یک دقیقهٔ دیگر!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = "نتایج اخبار برای %s"
@@ -3765,7 +3765,7 @@ toggle_helper_on = "روشن"
 ; ToggleHelper.php line: 75
 toggle_helper_off = "خاموش"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = "موتور جستجوی PHP - Yioop! : %s"
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = "خروج خودکار تا یک دقیقهٔ دیگر!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/fa/resources/Tokenizer.php b/src/locale/fa/resources/Tokenizer.php
similarity index 99%
rename from locale/fa/resources/Tokenizer.php
rename to src/locale/fa/resources/Tokenizer.php
index 00b488f08..bc820c981 100755
--- a/locale/fa/resources/Tokenizer.php
+++ b/src/locale/fa/resources/Tokenizer.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -30,7 +28,6 @@ namespace Seekquarry\Yioop;
  */
 namespace seekquarry\yioop\locale\fa\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Persian specific tokenization code. In particular, it has a stemmer,
  * The stemmer is my stab at porting Nick Patch's Perl port,
diff --git a/locale/fa/resources/locale.js b/src/locale/fa/resources/locale.js
similarity index 100%
rename from locale/fa/resources/locale.js
rename to src/locale/fa/resources/locale.js
diff --git a/locale/fa/resources/suggest_trie.txt.gz b/src/locale/fa/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/fa/resources/suggest_trie.txt.gz
rename to src/locale/fa/resources/suggest_trie.txt.gz
diff --git a/locale/fa/statistics.txt b/src/locale/fa/statistics.txt
similarity index 100%
rename from locale/fa/statistics.txt
rename to src/locale/fa/statistics.txt
diff --git a/locale/fr_FR/configure.ini b/src/locale/fr_FR/configure.ini
similarity index 92%
rename from locale/fr_FR/configure.ini
rename to src/locale/fr_FR/configure.ini
index 5bbc9c857..f9e8d550b 100755
--- a/locale/fr_FR/configure.ini
+++ b/src/locale/fr_FR/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "D&eacute;connexion r&eacute;ussie!"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = ""
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = ""
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = ""
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = ""
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = ""
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = ""
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = ""
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = ""
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = ""
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = "L&#039;index: %s -- Taille: %s pages / %s urls"
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = "Afficher les r&eacute;sultats pour "
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = "Ann&eacute;e:"
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = "Mois:"
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "Administration"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = "R&eacute;sultats de nouvelles pour %s"
@@ -3765,7 +3765,7 @@ toggle_helper_on = "Sur"
 ; ToggleHelper.php line: 75
 toggle_helper_off = "Outre"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = "Moteur de recherche PHP -Yioop! %s"
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/fr_FR/resources/Tokenizer.php b/src/locale/fr_FR/resources/Tokenizer.php
similarity index 99%
rename from locale/fr_FR/resources/Tokenizer.php
rename to src/locale/fr_FR/resources/Tokenizer.php
index 7bd38ef13..96321b23a 100755
--- a/locale/fr_FR/resources/Tokenizer.php
+++ b/src/locale/fr_FR/resources/Tokenizer.php
@@ -30,8 +30,6 @@ namespace seekquarry\yioop\locale\fr_FR\resources;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-
 /**
  * This class has a collection of methods for French locale specific
  * tokenization. In particular, it has a stemmer, a stop word remover (for
diff --git a/locale/fr_FR/resources/locale.js b/src/locale/fr_FR/resources/locale.js
similarity index 100%
rename from locale/fr_FR/resources/locale.js
rename to src/locale/fr_FR/resources/locale.js
diff --git a/locale/fr_FR/resources/suggest_trie.txt.gz b/src/locale/fr_FR/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/fr_FR/resources/suggest_trie.txt.gz
rename to src/locale/fr_FR/resources/suggest_trie.txt.gz
diff --git a/locale/fr_FR/statistics.txt b/src/locale/fr_FR/statistics.txt
similarity index 100%
rename from locale/fr_FR/statistics.txt
rename to src/locale/fr_FR/statistics.txt
diff --git a/locale/general.ini b/src/locale/general.ini
similarity index 100%
rename from locale/general.ini
rename to src/locale/general.ini
diff --git a/locale/he/configure.ini b/src/locale/he/configure.ini
similarity index 92%
rename from locale/he/configure.ini
rename to src/locale/he/configure.ini
index 5ea95f246..d4f298273 100755
--- a/locale/he/configure.ini
+++ b/src/locale/he/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = ""
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "סיסמא / שם משתמש אינו נכון"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "התחבר על מנת להמשך בתהליך"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "סיסמא  אינה נכונה"
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "סיסמא  אינה נכונה"
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "סיסמא  אינה נכונה"
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "שם שמשתמש אינו קיים"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "שם שמשתמש אינו קיים"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "שם תפקיד אינו קיים"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "שם תפקיד נוצר"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "שם שמשתמש אינו קיים"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "שם שמשתמש אינו קיים"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "שם תפקיד אינו קיים"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "שם תפקיד נמחק"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "שם שמשתמש אינו קיים"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "שם שמשתמש אינו קיים"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "בחר פעילות"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "שם תפקיד אינו קיים"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "שם תפקיד קיים במערכת"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "שם תפקיד נוצר"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "שם תפקיד אינו קיים"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "פעילות נמחקה"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "שם תפקיד אינו קיים"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "שם תפקיד נמחק"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = ""
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "השתמש באפשרויות הבאות"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = " השתמש כבררת מחדל כמנוע חיפוש"
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "השתמש באפשרויות הבאות"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "השתמש באפשרויות הבאות"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = " השתמש כבררת מחדל כמנוע חיפוש"
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "השתמש באפשרויות הבאות"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = ""
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = ""
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "פרופייל עודכן"
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "בעיה עם עדכון הפרופייל"
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "פרופייל עודכן"
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "בעיה עם עדכון הפרופייל"
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "בעיה עם עדכון הפרופייל"
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "התנתקות הצליחה"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = ""
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "מחק"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "פעיליות"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/he/resources/Tokenizer.php b/src/locale/he/resources/Tokenizer.php
similarity index 95%
rename from locale/he/resources/Tokenizer.php
rename to src/locale/he/resources/Tokenizer.php
index 54d432ff7..238659811 100755
--- a/locale/he/resources/Tokenizer.php
+++ b/src/locale/he/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\he\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Hebrew specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/he/resources/locale.js b/src/locale/he/resources/locale.js
similarity index 100%
rename from locale/he/resources/locale.js
rename to src/locale/he/resources/locale.js
diff --git a/locale/he/resources/suggest_trie.txt.gz b/src/locale/he/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/he/resources/suggest_trie.txt.gz
rename to src/locale/he/resources/suggest_trie.txt.gz
diff --git a/locale/he/statistics.txt b/src/locale/he/statistics.txt
similarity index 100%
rename from locale/he/statistics.txt
rename to src/locale/he/statistics.txt
diff --git a/locale/hi/configure.ini b/src/locale/hi/configure.ini
similarity index 92%
rename from locale/hi/configure.ini
rename to src/locale/hi/configure.ini
index 9f128774d..b91baa620 100755
--- a/locale/hi/configure.ini
+++ b/src/locale/hi/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "लॉग इन सफल"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "लॉग इन असफल"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "कॉन्फ़िगर करने के लिए लॉगिन करें"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "पासवर्ड एक समान नहीं"
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "पासवर्ड एक समान नहीं"
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "पासवर्ड एक समान नहीं"
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = ""
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = ""
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = ""
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "क्रॉल पुनः आरंभ करें"
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = ""
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = ""
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "लॉग आउट सफल"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = "क्रॉल जानकारी "
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = ""
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/hi/resources/Tokenizer.php b/src/locale/hi/resources/Tokenizer.php
similarity index 99%
rename from locale/hi/resources/Tokenizer.php
rename to src/locale/hi/resources/Tokenizer.php
index d0597ab14..90e2453b5 100755
--- a/locale/hi/resources/Tokenizer.php
+++ b/src/locale/hi/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\hi\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Hindi specific tokenization code. In particular, it has a stemmer,
  * The stemmer is my stab at porting Ljiljana Dolamic (University of Neuchatel,
diff --git a/locale/hi/resources/locale.js b/src/locale/hi/resources/locale.js
similarity index 100%
rename from locale/hi/resources/locale.js
rename to src/locale/hi/resources/locale.js
diff --git a/locale/hi/resources/suggest_trie.txt.gz b/src/locale/hi/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/hi/resources/suggest_trie.txt.gz
rename to src/locale/hi/resources/suggest_trie.txt.gz
diff --git a/locale/hi/statistics.txt b/src/locale/hi/statistics.txt
similarity index 100%
rename from locale/hi/statistics.txt
rename to src/locale/hi/statistics.txt
diff --git a/locale/in_ID/configure.ini b/src/locale/in_ID/configure.ini
similarity index 92%
rename from locale/in_ID/configure.ini
rename to src/locale/in_ID/configure.ini
index 0cf954387..0424c0a82 100755
--- a/locale/in_ID/configure.ini
+++ b/src/locale/in_ID/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "Login berhasil"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "Login tidak berhasil"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = ""
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "Kata sandi tidak sesuai"
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "Kata sandi tidak sesuai"
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "Kata sandi tidak sesuai"
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "Username tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "Username tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "Rolename tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "Rolename telah ditambah"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "Username tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "Username tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "Rolename tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "Rolename telah dihapus"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "Username tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "Username tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "Pilih name aktivitas"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "Rolename tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "Aktivitas telah ditambah"
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "Rolename ditemukan"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "Rolename telah ditambah"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "Rolename tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "Aktivitas telah dihapus"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "Rolename tidak ditemukan"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "Rolename telah dihapus"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = ""
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "Locale telah ditambah"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "Locale tidak ditemukan"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "Locale telah dihapus"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "Locale tidak ditemukan"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "Logout berhasil"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "Administratif"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/in_ID/resources/Tokenizer.php b/src/locale/in_ID/resources/Tokenizer.php
similarity index 96%
rename from locale/in_ID/resources/Tokenizer.php
rename to src/locale/in_ID/resources/Tokenizer.php
index e8528ed72..a4689a0ed 100755
--- a/locale/in_ID/resources/Tokenizer.php
+++ b/src/locale/in_ID/resources/Tokenizer.php
@@ -29,7 +29,6 @@
  */
 namespace seekquarry\yioop\locale\in_ID\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Indonesian specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/in_ID/resources/locale.js b/src/locale/in_ID/resources/locale.js
similarity index 100%
rename from locale/in_ID/resources/locale.js
rename to src/locale/in_ID/resources/locale.js
diff --git a/locale/in_ID/resources/suggest_trie.txt.gz b/src/locale/in_ID/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/in_ID/resources/suggest_trie.txt.gz
rename to src/locale/in_ID/resources/suggest_trie.txt.gz
diff --git a/locale/in_ID/statistics.txt b/src/locale/in_ID/statistics.txt
similarity index 100%
rename from locale/in_ID/statistics.txt
rename to src/locale/in_ID/statistics.txt
diff --git a/locale/it/configure.ini b/src/locale/it/configure.ini
similarity index 92%
rename from locale/it/configure.ini
rename to src/locale/it/configure.ini
index c01c1a3c0..8d75674fd 100755
--- a/locale/it/configure.ini
+++ b/src/locale/it/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "Accesso effettuato!!"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "Utente o Password non corretto!"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "Accedi per continuare la configurazione (utente=root; nessuna password)"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = "Aggiornamenti stato interrotti."
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "Password inserita errata."
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "Password inserita errata."
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "Password inserita errata."
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "L&#039;Utente non esiste"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "L&#039;Utente non esiste"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "Nome Ruolo inesistente"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "Nome Ruolo aggiunto"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "L&#039;Utente non esiste"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "L&#039;Utente non esiste"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "Nome Ruolo inesistente"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "Nome Ruolo cancellato"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "L&#039;Utente non esiste"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "L&#039;Utente non esiste"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "Seleziona Attivit&agrave;"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "Nome Ruolo inesistente"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "Attivit&agrave; aggiunta"
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "Nome Ruolo esistente"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "Nome Ruolo aggiunto"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "Nome Ruolo inesistente"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "Attivit&agrave; cancellata"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "Nome Ruolo inesistente"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "Nome Ruolo cancellato"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "Starting New Crawl!"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "Scansione finita... Serve qualche momento per aggiornare."
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "Scansione ripresa... Serve qualche momento per aggiornare."
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "Scansione cancellata... Serve qualche momento per aggiornare."
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "Cancellazione Scansione fallita!!"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "Usa Scansione come indice"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "Nessuna descrizione per la scansione"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "Usa opzioni seguenti"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = "Usa predefiniti Yioop!"
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "Usa opzioni seguenti"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = "Scansione precedente:"
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "Ampiezza prima"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "Importanza Pagina"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = "URL aggiunti!"
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "Aggiornamento info sito di partenza!"
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "Usa opzioni seguenti"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = "Usa predefiniti Yioop!"
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "Usa opzioni seguenti"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = "Mai"
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = "1 giorno"
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = "2 giorni"
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = "3 giorni"
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = "7 giorni"
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = "14 giorni"
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = "Opzioni Pagina aggiornate!"
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = "Filtro Pagina aggiornato!"
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = "Seleziona un URL precedentemente modificato"
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = "Aggiornamento pagina dei risultati necessita specificare URL!"
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = "Pagina dei risultatai aggiornata!"
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = "Pagina caricata!"
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = "Cambiamenti Unione Scansioni effettuati!"
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = "Seleziona Macchina"
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = "Macchina aggiunta!"
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = "Nome Macchina gi&agrave; esistente; cancellala prima!"
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = "Campi mancanti dal modulo Macchina!"
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = "Nome Macchina inesistente!"
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = "Macchina in uso. Ferma il servizio che sta svolgendo!"
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = "Macchina cancellata!"
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = "Nessun file di log trovato."
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = "Server macchina aggiornato!"
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = "Impossibile svolgere azione!"
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "Lingua aggiunta!"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "Lingua inesistente!"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "Lingua cancellata"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "Lingua inesistente!"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "Stringa Lingua aggiornata!"
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = "Problema aggiornamento database!"
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "Profilo aggiornato!"
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "C&#039;&egrave; stato un problema nell&#039;aggiornamento Profilo!"
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = "Devi usare un percorso assoluto per la Cartella di Lavoro"
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "Cartella di Lavoro creata! Potrebbe essere necessario ri-accedere!"
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "Dai un nome al tuo Robot"
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "Cartella di Lavoro e Profilo creati!"
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "Impossibile aggiornare il file config.php!"
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "Impossibile creare Profilo!"
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = "Cartella di Lavoro non valida! Impossibile creare Profilo!"
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = "Cartella di Lavoro non valida! Impossibile creare Profilo!"
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "Profilo aggiornato!"
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "C&#039;&egrave; stato un problema nell&#039;aggiornamento Profilo!"
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "C&#039;&egrave; stato un problema nell&#039;aggiornamento Profilo!"
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = "Descrivi il tuo Robot"
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = "PHP Versione 5.3 o maggiore"
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = "File configs/config.php non scrivibile dal web server."
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = "La Cartella di Lavoro deve essere scrivibile dal web server. "
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = "La variabile post_max_size nel file php.ini dovrebbe essere minimo 32M"
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = "I seguenti oggetti richiesti sono mancanti: %s"
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = "I seguenti oggetti opzionali sono mancanti: %s"
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = "Controllo passato."
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = "Usando configs/local_config.php la Cartella di Lavoro sopra potrebbe non funzionare."
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "Accesso eseguito!!"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = "Unione Scansioni in uso: %s"
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = "Indice in uso: %s -- Dimensioni: %s pagine/%s URL"
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = "Nessun Indice in uso!"
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = "Nessun Indice in uso!"
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = "Titolo estratto"
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = "Descrizione estratta"
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = "Link estratti"
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = "Percorsi scansionabili ammessi estratti"
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = "Percorsi scansionabili non ammessi estratti"
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = "Ritardo Scansione YioopBot"
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = "Pagina archiviata Yioop... Questa pagina &egrave; stata modificata per aggiungere una direttiva al Robot, creare link assoluti, aggiungere sommari estratti, e evidenziari termini di ricerca."
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = "Questa versione archiviata di %s &egrave; stata ottenuta dal Crawler di Yioop il %s."
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "Amministratore"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "Cancella"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = "Nessuna Scansione precedente"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "Attivit&agrave;"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = "Fine Accesso in un minuto!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = "Acceso"
 ; ToggleHelper.php line: 75
 toggle_helper_off = "Spento"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = "Yioop! Motore di Ricerca in PHP: %s"
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = "Fine Accesso in un minuto!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/it/resources/Tokenizer.php b/src/locale/it/resources/Tokenizer.php
similarity index 99%
rename from locale/it/resources/Tokenizer.php
rename to src/locale/it/resources/Tokenizer.php
index 602e9eb87..3644521fb 100755
--- a/locale/it/resources/Tokenizer.php
+++ b/src/locale/it/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\it\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Italian specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/it/resources/locale.js b/src/locale/it/resources/locale.js
similarity index 100%
rename from locale/it/resources/locale.js
rename to src/locale/it/resources/locale.js
diff --git a/locale/it/resources/suggest_trie.txt.gz b/src/locale/it/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/it/resources/suggest_trie.txt.gz
rename to src/locale/it/resources/suggest_trie.txt.gz
diff --git a/locale/it/statistics.txt b/src/locale/it/statistics.txt
similarity index 100%
rename from locale/it/statistics.txt
rename to src/locale/it/statistics.txt
diff --git a/locale/ja/configure.ini b/src/locale/ja/configure.ini
similarity index 92%
rename from locale/ja/configure.ini
rename to src/locale/ja/configure.ini
index 35fbc748b..8a7d7c6b5 100755
--- a/locale/ja/configure.ini
+++ b/src/locale/ja/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "ログイン成功"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "無効なユーザー名またはパスワード"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = ""
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "パスワードを違います"
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "パスワードを違います"
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "パスワードを違います"
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "ユーザー名は存在しません"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "ユーザー名は存在しません"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "役割は存在しません"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "役割が追加しました"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "ユーザー名は存在しません"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "ユーザー名は存在しません"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "役割は存在しません"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "役割を削除しました"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "ユーザー名は存在しません"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "ユーザー名は存在しません"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "選択アクティビティ名"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "役割は存在しません"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "アクティビティが追加しました"
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "役割が存在します"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "役割が追加しました"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "役割は存在しません"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "アクティビティを削除しました"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "役割は存在しません"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "役割を削除しました"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "新しい検索を始まります"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "検索を停止する。ちょっと待ってください。"
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "検索を再会する。ちょっと待ってください。"
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "検索を削除する。ちょっと待ってください。"
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "検索削除を失敗しました"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "指数のための検索設定する。"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "検索の説明ありません"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "幅優先"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "ページの重要性"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "シッド情報の更新"
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "ローケルが追加しました"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "ローケルは存在しません"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "ローケルを削除しました"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "ローケルは存在しません"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "ローケルストリングを編集しました"
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = "ディータベースの更新ない"
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "プロフィールの変更できました。"
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "プロフィールの変更できない。"
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "作業ディレクトリの設定しました。もう一度ログインしてください。"
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "ボット名を入力してください。"
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "作業ディレクトリとプロフィールの作成しました。"
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "config.phpファイルのできない。更新"
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "プロフィールを作成できない。"
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = "無効な作業ディレクト。プロフィールを作成できない。"
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = "無効な作業ディレクト。プロフィールを作成できない。"
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "プロフィールの変更できました。"
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "プロフィールの変更できない。"
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "プロフィールの変更できない。"
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = "ロボットの説明してください。"
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "ログアウト成功"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = "%sのこのキャッシュされたバージョンは%sのウィオップから入手しました。"
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "管理"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "削除"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = "さっきの検索はありません"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "アクティビティ"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = "自動なログアウト一分ぐらい"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = "自動なログアウト一分ぐらい"
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/ja/resources/Tokenizer.php b/src/locale/ja/resources/Tokenizer.php
similarity index 95%
rename from locale/ja/resources/Tokenizer.php
rename to src/locale/ja/resources/Tokenizer.php
index e6f7f37a1..b1082dc21 100755
--- a/locale/ja/resources/Tokenizer.php
+++ b/src/locale/ja/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\ja\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Japanese specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/ja/resources/locale.js b/src/locale/ja/resources/locale.js
similarity index 100%
rename from locale/ja/resources/locale.js
rename to src/locale/ja/resources/locale.js
diff --git a/locale/ja/statistics.txt b/src/locale/ja/statistics.txt
similarity index 100%
rename from locale/ja/statistics.txt
rename to src/locale/ja/statistics.txt
diff --git a/locale/kn/configure.ini b/src/locale/kn/configure.ini
similarity index 92%
rename from locale/kn/configure.ini
rename to src/locale/kn/configure.ini
index deb4f1f25..7316641dc 100755
--- a/locale/kn/configure.ini
+++ b/src/locale/kn/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "ಒಳಪ್ರವೇಶಣೆ ಸಫಲ"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "ಒಳಪ್ರವೇಶಣೆ ವಿಫಲ, ಬಳಕೆದಾರನ ಹೆಸರು ಅಥವಾ ಪ್ರವೇಶ ಪದ ತಪ್ಪಾಗಿದೆ "
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "ಸಂರಚನೆ ಮುಂದುವರೆಸಲು ಒಳಪ್ರವೇಶಿಸಿ"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "ಬರೆದ ಪ್ರವೇಶ ಪದಗಳು ಹೋಲಲಿಲ್ಲ "
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "ಬರೆದ ಪ್ರವೇಶ ಪದಗಳು ಹೋಲಲಿಲ್ಲ "
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "ಬರೆದ ಪ್ರವೇಶ ಪದಗಳು ಹೋಲಲಿಲ್ಲ "
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "ಈ ಬಳಕೆದಾರನ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "ಈ ಬಳಕೆದಾರನ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "ಈ ಪಾತ್ರದ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "ಈ ಪಾತ್ರದ ಹೆಸರನ್ನು ಸೇರಿಸಲಾಗಿದೆ"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "ಈ ಬಳಕೆದಾರನ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "ಈ ಬಳಕೆದಾರನ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "ಈ ಪಾತ್ರದ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "ಈ ಪಾತ್ರದ ಹೆಸರನ್ನು ಅಳಿಸಲಾಗಿದೆ"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "ಈ ಬಳಕೆದಾರನ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "ಈ ಬಳಕೆದಾರನ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "ಚಟುವಟಿಕೆ ಆಯ್ಕೆ ಮಾಡಿ"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "ಈ ಪಾತ್ರದ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "ಈ ಚಟುವಟಿಕೆಯನ್ನು ಸೇರಿಸಲಾಗಿದೆ"
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "ಈ ಪಾತ್ರದ ಹೆಸರು ಈಗಾಗಲೇ ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇದೆ"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "ಈ ಪಾತ್ರದ ಹೆಸರನ್ನು ಸೇರಿಸಲಾಗಿದೆ"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "ಈ ಪಾತ್ರದ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "ಈ ಚಟುವಟಿಕೆಯನ್ನು ಅಳಿಸಲಾಗಿದೆ"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "ಈ ಪಾತ್ರದ ಹೆಸರು ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "ಈ ಪಾತ್ರದ ಹೆಸರನ್ನು ಅಳಿಸಲಾಗಿದೆ"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "ಹೊಸ ಕ್ರಾವ್ಲ್  ಪ್ರಾರಂಬಿಸುತಿದ್ದಿವಿ"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "ಕ್ರಾವ್ಲನ್ನು ನಿಲ್ಲಿಸುತಿದ್ದಿವಿ...ಈ ತೆರೆ ಸ್ವಲ್ಪ ಕ್ಷಣಗಳ ನಂತರ ಮಾರ್ಪಡುವುದು "
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "ಕ್ರಾವ್ಲನ್ನು ಮರುಚಾಲಿಸುತಿದ್ದಿ...ಈ ತೆರೆ ಸ್ವಲ್ಪ ಕ್ಷಣಗಳ ನಂತರ ಮಾರ್ಪಡುವುದು "
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "ಕ್ರಾವ್ಲನ್ನು ಅಳಿಸುತಿದ್ದಿವಿ...ಈ ತೆರೆ ಸ್ವಲ್ಪ ಕ್ಷಣಗಳ ನಂತರ ಮಾರ್ಪಡುವುದು"
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "ಕ್ರಾವ್ಲನ್ನು ಅಳಿಸಲು ವಿಫಲವಾಗಿದೆ!! "
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "ಸೂಚಿಕೆಯಾಗಿ ಹೊಂದಿಸಲಾಗುತ್ತಿದೆ"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "ಕ್ರಾವ್ಲಿನ ವಿವರಣೆ ಇಲ್ಲ"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "ಐಚ್ಛಿಕ ಆಯ್ಕೆ ಉಪಯೋಗಿಸಿ"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = "ಯೂಪ್ ನ ಪೂರ್ವನಿಯೋಜಿತ ನಿಗದಿಗಳನ್ನು ಉಪಯೋಗಿಸಿ"
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "ಐಚ್ಛಿಕ ಆಯ್ಕೆ ಉಪಯೋಗಿಸಿ"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = "ಮೊದಲಿನ ಕ್ರಾವ್ಲ:"
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "ಅಗಲ ಮೊದಲಾಗಿ"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "ಪುಟ ಪ್ರಾಮುಖ್ಯತೆ"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "ಮೂಲ ವೆಬ್ ಸೈಟಿನ ಮಾಹಿತಿಯನ್ನು ಪರಿಷ್ಕರಿಸಲಾಗುತ್ತಿದೆ"
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "ಐಚ್ಛಿಕ ಆಯ್ಕೆ ಉಪಯೋಗಿಸಿ"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = "ಯೂಪ್ ನ ಪೂರ್ವನಿಯೋಜಿತ ನಿಗದಿಗಳನ್ನು ಉಪಯೋಗಿಸಿ"
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "ಐಚ್ಛಿಕ ಆಯ್ಕೆ ಉಪಯೋಗಿಸಿ"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = "ಕ್ರಾವ್ಲ್ ಮಿಶ್ರಣದಲ್ಲಿ ಬದಲಾವಣೆಯನ್ನು ಉಳಿಸು"
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "ಪ್ರದೇಶದ ಶಿಷ್ಟತೆ ಸೇರಿಸಲಾಗಿದೆ"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "ಈ ಪ್ರದೇಶದ ಶಿಷ್ಟತೆ ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "ಪ್ರದೇಶದ ಶಿಷ್ಟತೆ ಅಳಿಸಲಾಗಿದೆ "
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "ಈ ಪ್ರದೇಶದ ಶಿಷ್ಟತೆ ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "ಪ್ರದೇಶ ಶಿಷ್ಟತೆಯ ಅಕ್ಷರ ಸಮೂಹವನ್ನು ಪರಿಷ್ಕರಿಸಲಾಯಿತು"
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "ಕಾರ್ಯ ನಿರ್ದೇಶಿಕೆಯನ್ನು ನಿಗದಿಪಡಿಸಲಾಗಿದೆ!  ನೀವು ಮರು ಪ್ರವೇಶಿಸಬೇಕಾಗಬಹುದು"
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = "configs/config.php ವೆಬ್ ಸರ್ವರ್ ನಿಂದ ಬರೆಯಲು ಸಶಕ್ತವಲ್ಲ"
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = "ಕಾರ್ಯ ನಿರ್ದೇಶಿಕೆ ವೆಬ್ ಸರ್ವರ್ ನಿಂದ ಬರೆಯಲು ಸಶಕ್ತವಾಗಿರಬೇಕು"
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = "php.ini ಕಡಿತದ ಚರಾಂಶ post_max_size ಕನಿಷ್ಠ ಪಕ್ಷ ೧೬ ಎಂ.ಬಿ. ಇರಬೇಕು"
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = "ಬರುವ ಅವಶ್ಯಕವಸ್ತುಗಳು ತಪ್ಪಿಹೋಗಿದ್ದಾವೆ:"
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = "ಬರುವ ಕಡ್ಡಾಯವಲ್ಲದ ವಸ್ತುಗಳು ತಪ್ಪಿಹೋಗಿದ್ದಾವೆ:"
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = "ಪರಿಶೀಲನೆ ತೇರ್ಗಡೆಯಾಗಿದೆ"
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = "configs/local_config.php ಉಪಯೋಗದಲ್ಲಿದೆ, ಅದರಿಂದ ಮೇಲಿನ ಕಾರ್ಯ ನಿರ್ದೇಶಿಕೆಯನ್ನು ಬದಲಾವಣೆ ನಿಷ್ಕ್ರಿಯವಾಗಬಹುದು "
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = ""
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = ""
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = "ಪಿಹೆಚಪಿ ಶೋಧನಾ ಯಂತ್ರ - ಯೂಪ್!: %s"
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/kn/resources/Tokenizer.php b/src/locale/kn/resources/Tokenizer.php
similarity index 95%
rename from locale/kn/resources/Tokenizer.php
rename to src/locale/kn/resources/Tokenizer.php
index e3228c687..abae3c340 100755
--- a/locale/kn/resources/Tokenizer.php
+++ b/src/locale/kn/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\kn\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Kanada specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/kn/resources/locale.js b/src/locale/kn/resources/locale.js
similarity index 100%
rename from locale/kn/resources/locale.js
rename to src/locale/kn/resources/locale.js
diff --git a/locale/kn/statistics.txt b/src/locale/kn/statistics.txt
similarity index 100%
rename from locale/kn/statistics.txt
rename to src/locale/kn/statistics.txt
diff --git a/locale/ko/configure.ini b/src/locale/ko/configure.ini
similarity index 92%
rename from locale/ko/configure.ini
rename to src/locale/ko/configure.ini
index 640892aa1..bb5d5af22 100755
--- a/locale/ko/configure.ini
+++ b/src/locale/ko/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "로그인 성공!!!"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "로그인 실패!!!"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "관리 (default: u=root, p=)"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "비밀 번호가 일치하지 않습니다."
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "비밀 번호가 일치하지 않습니다."
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "비밀 번호가 일치하지 않습니다."
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "아이디가 존재 하지 않습니다."
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "아이디가 존재 하지 않습니다."
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "사용자 권한 이름이 존재하지 않습니다."
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "사용자 권한 이름을 추가하였습니다."
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "아이디가 존재 하지 않습니다."
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "아이디가 존재 하지 않습니다."
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "사용자 권한 이름이 존재하지 않습니다."
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "사용자 권한이름을 삭제하였습니다."
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "아이디가 존재 하지 않습니다."
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "아이디가 존재 하지 않습니다."
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "엑티비티 이름을 선택해 주십시요."
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "사용자 권한 이름이 존재하지 않습니다."
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "엑티비티를 추가했습니다."
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "동일 권한 이름이 존재 합니다."
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "사용자 권한 이름을 추가하였습니다."
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "사용자 권한 이름이 존재하지 않습니다."
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "엑티비티를 삭제 했습니다."
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "사용자 권한 이름이 존재하지 않습니다."
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "사용자 권한이름을 삭제하였습니다."
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "크롤 시작!!"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "크롤을 중지합니다.  잠시만 기다려 주십시요."
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "크롤을 다시 시작합니다. 잠시만 기다려 주십시요."
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "크롤을 삭제합니다. 잠시만 기다려 주십시요."
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "크롤 삭제 실패!!"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "크롤을 인덱스로써 사용하기 지정"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "크롤에 대한 설명이 존재 하지 않습니다."
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "너비 우선"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "페이지 중요성"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "씨드 사이트 업데이트"
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "로케일 추가!!"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "로케일이 존재하지 않습니다."
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "로케일을 삭제 하였습니다."
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "로케일이 존재하지 않습니다."
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "로케일 지정 문자열을 업데이트 하였습니다."
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = "데이터베이스를 업데이트하는데 문제가 발생했습니다."
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "프로필을 업데이트 했습니다."
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "프로필을 업데이트하는데 문제가 발생했습니다."
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "작업 디렉토리가 지정 됐습니다. 다시 로그인이 필요할수 있습니다."
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "로봇 이름을 정해 주십시요."
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "작업 디렉토리와 프로필이 생성됐습니다."
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "config.php 파일을  업데이트 실패했습니다."
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "프로필을 생성할수 없습니다."
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = "작업 디렉토리가 올바르지 않습니다. 프로필을 생성할수 없습니다."
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = "작업 디렉토리가 올바르지 않습니다. 프로필을 생성할수 없습니다."
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "프로필을 업데이트 했습니다."
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "프로필을 업데이트하는데 문제가 발생했습니다."
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "프로필을 업데이트하는데 문제가 발생했습니다."
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = "당신의 로봇을 기술해 주십시요."
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "로그 아웃 성공!!"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = "현재 캐시 버젼 %s 은 Yioop 크롤 %s 에 의하여 얻어 졌습니다. "
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "관리자"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "삭제"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = "전 크롤들이 없습니다."
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "활동들"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = "1 분내에 자동 로그 아웃 됍니다."
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = "PHP 검색 엔진 - Yioop! : %s"
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = "1 분내에 자동 로그 아웃 됍니다."
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/ko/resources/Tokenizer.php b/src/locale/ko/resources/Tokenizer.php
similarity index 95%
rename from locale/ko/resources/Tokenizer.php
rename to src/locale/ko/resources/Tokenizer.php
index c975a0389..5d3e99050 100755
--- a/locale/ko/resources/Tokenizer.php
+++ b/src/locale/ko/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\ko\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Korean specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/ko/resources/locale.js b/src/locale/ko/resources/locale.js
similarity index 100%
rename from locale/ko/resources/locale.js
rename to src/locale/ko/resources/locale.js
diff --git a/locale/ko/statistics.txt b/src/locale/ko/statistics.txt
similarity index 100%
rename from locale/ko/statistics.txt
rename to src/locale/ko/statistics.txt
diff --git a/locale/nl/configure.ini b/src/locale/nl/configure.ini
similarity index 93%
rename from locale/nl/configure.ini
rename to src/locale/nl/configure.ini
index 557a52a4e..a0f1c9890 100644
--- a/locale/nl/configure.ini
+++ b/src/locale/nl/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = "Cookies die nodig zijn om in te loggen!!"
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = "Account niet actief. Misschien vraag wachtwoord opnieuw in te stellen?"
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "Login Succesvolle!!"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = "Geen Back Button Tijdens Inloggen!"
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "Gebruikersnaam of wachtwoord onjuist!"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "Login om te gaan met de configuratie (standaard: u=wortel, p=)"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = "Status updates zijn gestopt."
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = "Toegang tot account"
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = "sociaal"
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = "crawls"
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = "Systeeminstellingen"
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = "is gelijk aan"
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = "niet gelijken"
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = "bevat"
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = "begint met"
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = "eindigt met"
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = "is gelijk aan"
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = "niet gelijken"
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = "niet sorteren"
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = "oplopend"
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = "aflopend"
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = "Geen berichten Toch"
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = "Wachtwoord is te lang!"
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "Getypte wachtwoorden komen niet overeen."
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = "Ongeldig Wachtwoord!"
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = "Onbekend Image File Type!"
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = "Pictogram Bestand te groot!"
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = "Gebruiker map kon niet worden aangemaakt!"
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = "gebruiker Bijgewerkt"
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = "actief"
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = "inactief"
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = "Banned"
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = "in afwachting van"
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = "uitgenodigd"
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = "actief"
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = "Banned"
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = "Wachtwoord is te lang!"
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "Getypte wachtwoorden komen niet overeen."
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = "Ongeldige gebruikersnaam!"
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = "Gebruiker Bestaat Al!"
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = "gebruiker Toegevoegd"
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = "Kan niet bewerken - dat sername bestaat niet!"
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = "Kan Public User niet bewerken!"
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "Getypte wachtwoorden komen niet overeen."
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = "gebruiker Bijgewerkt"
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = "Filtering door Group!"
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = "Filtering door Rol!"
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "Gebruikersnaam is niet bekend"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = "Kan niet verwijderen Ingebouwde gebruiker!"
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = "gebruiker Verwijderde"
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "Gebruikersnaam is niet bekend"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "Rol bestaat niet"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = "Rolnaam Reeds Toegevoegd!"
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "Rolnaam Toegevoegd"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "Gebruikersnaam is niet bekend"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = "Groep Naam bestaat niet"
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = "Groep Naam Reeds Toegevoegd!"
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = "Groep Naam Toegevoegd"
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "Gebruikersnaam is niet bekend"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "Rol bestaat niet"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "Rolnaam Verwijderde"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "Gebruikersnaam is niet bekend"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = "Groep Naam bestaat niet"
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = "groep Deleted"
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "Gebruikersnaam is niet bekend"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = "Gebruiker Status Bijgewerkt"
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "Kies een activiteit"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "Rol bestaat niet"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "activiteit Toegevoegd"
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "Rol naam bestaat"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "Rolnaam Toegevoegd"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = "Rol Naam Blanco!"
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "Rol bestaat niet"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "activiteit Verwijderde"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "Rol bestaat niet"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "Rolnaam Verwijderde"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = "Rol op de hoogte!"
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "Vanaf Nieuw Crawl!"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "Stoppen kruipen. . .Dit Zal even duren om te vernieuwen."
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "Hervatten kruipen. . .Dit Zal even duren om te vernieuwen."
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "Verwijderen Crawl. . .Dit Zal even duren om te vernieuwen."
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "Wis Crawl!! mislukt"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "Instellen Crawl om te gebruiken als Index"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "Geen beschrijving voor Crawl"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "Gebruik onderstaande opties"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = "Gebruik Yioop! defaults"
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "Gebruik onderstaande opties"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = "Vorige Crawl:"
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = "Urls ge&iuml;njecteerd op %s."
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = "Gebruiker gesuggereerd URLs toegevoegd!"
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = "Geen nieuwe urls in gegevens suggereren"
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "breedte eerste"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "pagina Belang"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = "Urls ge&iuml;njecteerd op %s."
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = "Urls Injected!"
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "Updating Seed Site Info!"
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = "Nieuwe classifier gemaakt."
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = "Een classifier met die naam al bestaat."
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = "Classifier verwijderd."
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = "Geen classifier met die naam."
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = "Geen classifier met die naam."
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = "Finaliseren classifier."
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = "Finaliseren classifier."
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = "Een classifier met die naam al bestaat."
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = "Verzuimd om documenten te laden"
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = "het laden"
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = "Toegevoegd {1} {2} voorbeelden"
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = "Nagelaten om labels te werken."
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = "updating"
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = "Nagelaten om de nauwkeurigheid te werken"
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = "N / A"
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = "geen documenten"
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = "{1} {2} documenten"
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = "in klasse"
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = "Niet In Klasse"
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = "overslaan"
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = "Voorspelling: {1}"
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = "{1} %% vertrouwen, {2} %% onenigheid"
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "Gebruik onderstaande opties"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = "Gebruik Yioop! defaults"
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "Gebruik onderstaande opties"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = "nooit"
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = "1 dagen"
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = "2 dagen"
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = "3 dagen"
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = "7 dagen"
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = "14 dagen"
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = "fundamenteel"
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = "zwaartepunt"
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = "Opties voor de pagina Bijgewerkt!"
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = "Uitvoeren van tests!"
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = "Filter Paginas Bijgewerkt!"
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = "Selecteer een Eerder Bewerkt URL"
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = "Resultaat Pagina update nodig heeft om de URL opgeven!"
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = "Resultaat Pagina bijgewerkt!"
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = "Page Loaded!"
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = "media Kind"
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = "video"
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = "RSS"
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = "Html Feed"
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = "Index / Mix te gebruiken"
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = "Type Bron onbekend!"
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = "Moet mediatype ingesteld!"
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = "Ongeldige URL!"
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = "Alle velden moeten worden ingevuld!"
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = "Media Source toegevoegd!"
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = "Alle velden moeten worden ingevuld!"
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = "Subsearch toegevoegd!"
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = "Bron niet is verdwenen!"
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = "Media Source Deleted!"
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = "Bron niet is verdwenen!"
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = "Subsearch Deleted!"
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = "Subsearch Bijgewerkt!"
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = "Media Source Bijgewerkt!"
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = "Too Many Zoekresultaat Fragmenten!"
 ; SocialComponent.php line: 2479
 social_component_mix_saved = "Crawl Mix Wijzigingen opgeslagen!"
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = "Selecteer Machine"
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = "Machine toegevoegd!"
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = "Machine naam bestaat al; Gelieve Verwijder eerst!"
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = "Ontbrekende of ongeldige Velden Van Machine Form"
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = "Machine Naam bestaat niet!"
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = "Machine gebruikt. Stop aub de dienst draait op het!"
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = "Machine verwijderd!"
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = "Geen Log File Found."
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = "Servers machines Bijgewerkt!"
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = "Niet in staat om actie uit te voeren!"
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = "Select Mode"
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = "Veldwaarden ontbrekende of ongeldige!"
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "Locale toegevoegd!"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "Locale bestaat niet!"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "locale Deleted"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "Locale bestaat niet!"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = "Locale Informatie Bijgewerkt!"
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "Locale Strings Bijgewerkt!"
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = "All Strings"
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = "Ontbrekende Strings"
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = "Probleem bijwerken Database!"
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "Profiel ge&iuml;pdatet!"
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "Er was een probleem updaten profiel!"
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = "Uitschakelen Registratie"
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = "geen Activering"
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = "e-mail Activering"
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = "admin Activering"
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = "tekst Captcha"
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = "hash Captcha"
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = "Captcha image"
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = "normale Authenticatie"
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = "ZKP Authenticatie"
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = "normale Authenticatie"
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = "Instellingen Bijgewerkt!"
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = "Geen instellingen werden veranderd!"
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = "Moet een absoluut pad voor Werk Directory te gebruiken"
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = "Werk Directory kan niet worden opgenomen in Yioop folder!"
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "Werken Directory Set! Het kan nodig zijn om opnieuw in te loggen!"
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "Gelieve Naam Je robot"
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "Working Directory en Profile Gemaakt!"
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "Niet in staat om config.php bestand bij te werken!"
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "Kan geen profiel maak!"
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = "Werk is ongeldig! Kan profiel niet maken!"
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = "Werk is ongeldig! Kan profiel niet maken!"
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = "Geen Resource Folder!"
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = "Ongeldige File Type!"
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = "Bestand te groot!"
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "Profiel ge&iuml;pdatet!"
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "Er was een probleem updaten profiel!"
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = "Reset voltooid"
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "Er was een probleem updaten profiel!"
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = "Beschrijf uw Robot"
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = "PHP versie 5.3 of nieuwer"
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = "configs / config.php niet webserver beschrijfbaar."
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = "Werk map moet beschrijfbaar door web-server te zijn."
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = "php.ini bestand variabele post_max_size moet minstens 2M"
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = "De volgende benodigde onderdelen ontbraken: %s"
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = "De volgende optionele onderdelen ontbraken: %s"
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = "Controleer Geslaagd."
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = "Met behulp van configs / local_config.php dus veranderende werk directory hierboven kan niet werken."
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = "Controleer e-mailadres!"
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = "Geen account aangemaakt - Gebruikersnaam al in gebruik!!"
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = "web"
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "Afmelden Succesvolle!!"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = "Met behulp van Crawl Mix: %s"
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = "Index: %s - Grootte: %s paginas / %s urls"
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = "zoeken"
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = "Geen zoeken Index Set Voor gebruik!"
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = "Geen zoeken Index Set Voor gebruik!"
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = "Download ophalen: %s"
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = "De website in kwestie heeft verzocht deze pagina niet worden gearchiveerd."
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = "Yioop Cache"
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = "Deze afbeelding verscheen op de pagina:"
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = "onttrokken Titel"
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = "Ge&iuml;xtraheerd Beschrijving"
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = "Ge&iuml;xtraheerd Links"
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = "Ge&iuml;xtraheerd toegestaan te kruipen Paths"
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = "Ge&iuml;xtraheerd Verworpen te kruipen Paths"
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = "YioopBot Crawl Delay"
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = "Yioop Cache Pagina ... Deze pagina is aangepast om een robots richtlijn toe te voegen, maakt links absolute, voeg gewonnen samenvattingen, en om zoektermen te markeren."
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = "Yioop Cache"
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = "Deze cached versie van %s werd verkregen door het Yioop crawler op %s."
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = "Download ophalen: %s"
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = "Toggle Ge&iuml;xtraheerd Headers en Samenvattingen"
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = "toggle Geschiedenis"
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = "Alle cache versies - Change Jaar en / of maanden naar links zien"
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = "jaar:"
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = "maand:"
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = "Afmelden Succesvolle"
 ; StaticController.php line: 147
 static_controller_complete_title = "Yioop! -%S"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "admin"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "verwijderen"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = "Geen Vorige Crawls"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "activiteiten"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = "mijn Feeds"
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = "Automatisch uitloggen in One Minute!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = "Nieuws Resultaten voor %s"
@@ -3765,7 +3765,7 @@ toggle_helper_on = "op"
 ; ToggleHelper.php line: 75
 toggle_helper_off = "af"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = "PHP Search Engine - Yioop! :%S"
@@ -4310,19 +4310,19 @@ wiki_view_wiki = "wiki"
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = "Automatisch uitloggen in One Minute!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = "Instellingen woord Filter Opgeslagen!"
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = "Standaardinstellingen hersteld!"
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = "Voorkeur woord Filter"
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = "fabrieksinstellingen"
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = "Opslaan"
diff --git a/locale/nl/resources/Tokenizer.php b/src/locale/nl/resources/Tokenizer.php
similarity index 99%
rename from locale/nl/resources/Tokenizer.php
rename to src/locale/nl/resources/Tokenizer.php
index 4be3f09ff..d900de695 100755
--- a/locale/nl/resources/Tokenizer.php
+++ b/src/locale/nl/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\nl\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This class has a collection of methods for Dutch locale specific
  * tokenization. In particular, it has a stemmer, .
diff --git a/locale/nl/resources/locale.js b/src/locale/nl/resources/locale.js
similarity index 100%
rename from locale/nl/resources/locale.js
rename to src/locale/nl/resources/locale.js
diff --git a/locale/nl/statistics.txt b/src/locale/nl/statistics.txt
similarity index 100%
rename from locale/nl/statistics.txt
rename to src/locale/nl/statistics.txt
diff --git a/locale/pl/configure.ini b/src/locale/pl/configure.ini
similarity index 91%
rename from locale/pl/configure.ini
rename to src/locale/pl/configure.ini
index 9a35b99ef..784eff447 100755
--- a/locale/pl/configure.ini
+++ b/src/locale/pl/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = ""
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = ""
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = ""
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = ""
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = ""
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = ""
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = ""
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = ""
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = ""
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = ""
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = ""
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/pl/resources/Tokenizer.php b/src/locale/pl/resources/Tokenizer.php
similarity index 95%
rename from locale/pl/resources/Tokenizer.php
rename to src/locale/pl/resources/Tokenizer.php
index 9eb6db3b7..92e4e2353 100755
--- a/locale/pl/resources/Tokenizer.php
+++ b/src/locale/pl/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\pl\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Polish specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/pl/resources/locale.js b/src/locale/pl/resources/locale.js
similarity index 100%
rename from locale/pl/resources/locale.js
rename to src/locale/pl/resources/locale.js
diff --git a/locale/pl/resources/suggest_trie.txt.gz b/src/locale/pl/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/pl/resources/suggest_trie.txt.gz
rename to src/locale/pl/resources/suggest_trie.txt.gz
diff --git a/locale/pl/statistics.txt b/src/locale/pl/statistics.txt
similarity index 100%
rename from locale/pl/statistics.txt
rename to src/locale/pl/statistics.txt
diff --git a/locale/pt/configure.ini b/src/locale/pt/configure.ini
similarity index 91%
rename from locale/pt/configure.ini
rename to src/locale/pt/configure.ini
index e1a824c50..e9979b240 100755
--- a/locale/pt/configure.ini
+++ b/src/locale/pt/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = ""
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = ""
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = ""
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = ""
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = ""
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = ""
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = ""
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = ""
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = ""
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = ""
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = ""
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/pt/resources/Tokenizer.php b/src/locale/pt/resources/Tokenizer.php
similarity index 99%
rename from locale/pt/resources/Tokenizer.php
rename to src/locale/pt/resources/Tokenizer.php
index 8c52187b7..fed8407bb 100755
--- a/locale/pt/resources/Tokenizer.php
+++ b/src/locale/pt/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\pt\resources;

-if (!defined('BASE_DIR')) { echo "BAD REQUEST"; exit(); }
 /**
  * This class has a collection of methods for Portuguese locale specific
  * tokenization. In particular, it has a stemmer implementing the
diff --git a/locale/pt/resources/locale.js b/src/locale/pt/resources/locale.js
similarity index 100%
rename from locale/pt/resources/locale.js
rename to src/locale/pt/resources/locale.js
diff --git a/locale/pt/resources/suggest_trie.txt.gz b/src/locale/pt/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/pt/resources/suggest_trie.txt.gz
rename to src/locale/pt/resources/suggest_trie.txt.gz
diff --git a/locale/pt/statistics.txt b/src/locale/pt/statistics.txt
similarity index 100%
rename from locale/pt/statistics.txt
rename to src/locale/pt/statistics.txt
diff --git a/locale/ru/configure.ini b/src/locale/ru/configure.ini
similarity index 91%
rename from locale/ru/configure.ini
rename to src/locale/ru/configure.ini
index fe57ec196..7a8e5df20 100755
--- a/locale/ru/configure.ini
+++ b/src/locale/ru/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = ""
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = ""
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = ""
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = ""
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = ""
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = ""
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = ""
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = ""
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = ""
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = ""
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = ""
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/ru/resources/Tokenizer.php b/src/locale/ru/resources/Tokenizer.php
similarity index 89%
rename from locale/ru/resources/Tokenizer.php
rename to src/locale/ru/resources/Tokenizer.php
index 9ad9d5cfc..1d3c189ab 100755
--- a/locale/ru/resources/Tokenizer.php
+++ b/src/locale/ru/resources/Tokenizer.php
@@ -28,16 +28,6 @@
  */
 namespace seekquarry\yioop\locale\ru\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/**
- * Russian specific tokenization code. Typically, tokenizer.php
- * either contains a stemmer for the language in question or
- * it specifies how many characters in a char gram
- *
- * @author Chris Pollett
- * @package seek_quarry\locale
- */
-define('CHAR_LENGTH', 2);
 /**
  * This class has a collection of methods for Russian locale specific
  * tokenization. In particular, it has a stemmer, a stop word remover (for
@@ -54,6 +44,10 @@ define('CHAR_LENGTH', 2);
  */
 class Tokenizer
 {
+    /**
+     * Num bytes of Russian unicode char.
+     */
+    const CHAR_LENGTH = 2;
     /**
      * Words we don't want to be stemmed
      * @var array
@@ -151,7 +145,7 @@ class Tokenizer
             PREG_OFFSET_CAPTURE);
         $len = strlen($word);
         $rv_index = isset($matches[0][1]) ? $matches[0][1] +
-            CHAR_LENGTH : $len;
+            self::CHAR_LENGTH : $len;
         if ($rv_index != $len) {
             $start = substr($word, 0, $rv_index);
             $rv = substr($word, $rv_index);
@@ -174,8 +168,10 @@ class Tokenizer
         foreach ($perfective1 as $suffix) {
             $len = strlen($suffix);
             if (substr($word, -$len) == $suffix &&
-                (substr($word, -$len -CHAR_LENGTH, CHAR_LENGTH) == 'а' ||
-                substr($word, -$len - CHAR_LENGTH, CHAR_LENGTH) == 'я')) {
+                (substr($word, -$len - self::CHAR_LENGTH,
+                    self::CHAR_LENGTH) == 'а' ||
+                substr($word, -$len - self::CHAR_LENGTH,
+                    self::CHAR_LENGTH) == 'я')) {
                 return substr($word, 0, -$len);
             }
         }
@@ -211,8 +207,10 @@ class Tokenizer
             foreach ($participle1 as $suffix) {
                 $len = strlen($suffix);
                 if (substr($word, -$len) == $suffix &&
-                    (substr($word, -$len - CHAR_LENGTH, CHAR_LENGTH) =='а'
-                    || substr($word,-$len - CHAR_LENGTH, CHAR_LENGTH) =='я')) {
+                    (substr($word, -$len - self::CHAR_LENGTH,
+                        self::CHAR_LENGTH) =='а' ||
+                    substr($word, -$len - self::CHAR_LENGTH,
+                        self::CHAR_LENGTH) =='я')) {
                     $word = substr($word, 0, -$len);
                 }
             }
@@ -230,8 +228,10 @@ class Tokenizer
         foreach ($verb1 as $suffix) {
             $len = strlen($suffix);
             if (substr($word,-$len) == $suffix &&
-                (substr($word,-$len - CHAR_LENGTH, CHAR_LENGTH) == 'а' ||
-                substr($word, -$len - CHAR_LENGTH, CHAR_LENGTH) == 'я')) {
+                (substr($word,-$len - self::CHAR_LENGTH,
+                    self::CHAR_LENGTH) == 'а' ||
+                substr($word, -$len - self::CHAR_LENGTH,
+                    self::CHAR_LENGTH) == 'я')) {
                 return substr($word, 0, -$len);
             }
         }
@@ -266,8 +266,8 @@ class Tokenizer
      */
     private static function step2($word)
     {
-        if (substr($word, -CHAR_LENGTH, CHAR_LENGTH) == 'и') {
-            $word = substr($word, 0, -CHAR_LENGTH);
+        if (substr($word, -self::CHAR_LENGTH, self::CHAR_LENGTH) == 'и') {
+            $word = substr($word, 0, -self::CHAR_LENGTH);
         }
         return $word;
     }
@@ -286,7 +286,7 @@ class Tokenizer
             PREG_OFFSET_CAPTURE);
         $len = strlen($word);
         $r1_index = isset($matches[0][1]) ? $matches[0][1] +
-            CHAR_LENGTH : $len;
+            self::CHAR_LENGTH : $len;
         if ($r1_index != $len) {
             $r1 = substr($word , $r1_index);
         }
@@ -294,7 +294,7 @@ class Tokenizer
             preg_match("/[$vowel][^$vowel]/u", $r1, $matches,
                 PREG_OFFSET_CAPTURE);
             $r2_index = isset($matches[0][1]) ? $matches[0][1] +
-                2 * CHAR_LENGTH : $len;
+                2 * self::CHAR_LENGTH : $len;
             if ($r2_index != $len) {
                 $r2 = substr($r1, $r2_index);
             }
@@ -316,8 +316,8 @@ class Tokenizer
      */
     private static function step4($word)
     {
-        if (substr($word, -CHAR_LENGTH * 2) == 'нн') {
-            $word = substr($word, 0,  -CHAR_LENGTH);
+        if (substr($word, -self::CHAR_LENGTH * 2) == 'нн') {
+            $word = substr($word, 0,  -self::CHAR_LENGTH);
         } else {
             $superlative=array('ейш', 'ейше');
             foreach ($superlative as $suffix) {
@@ -326,16 +326,16 @@ class Tokenizer
                     $word = substr($word, 0, - $len);
                 }
             }
-            if (substr($word, -CHAR_LENGTH * 2) == 'нн') {
-                $word = substr($word, 0, -CHAR_LENGTH);
+            if (substr($word, -self::CHAR_LENGTH * 2) == 'нн') {
+                $word = substr($word, 0, -self::CHAR_LENGTH);
             }
         }
         /* should there be a guard flag? can't think of a russian word
          that ends with ейшь or ннь anyways, though the algorithm states
          this is an "otherwise" case
         */
-        if (substr($word, -CHAR_LENGTH, CHAR_LENGTH) == 'ь') {
-            $word = substr($word, 0, strlen($word) - CHAR_LENGTH);
+        if (substr($word, -self::CHAR_LENGTH, self::CHAR_LENGTH) == 'ь') {
+            $word = substr($word, 0, strlen($word) - self::CHAR_LENGTH);
         }
         return $word;
     }
diff --git a/locale/ru/resources/locale.js b/src/locale/ru/resources/locale.js
similarity index 100%
rename from locale/ru/resources/locale.js
rename to src/locale/ru/resources/locale.js
diff --git a/locale/ru/resources/suggest_trie.txt.gz b/src/locale/ru/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/ru/resources/suggest_trie.txt.gz
rename to src/locale/ru/resources/suggest_trie.txt.gz
diff --git a/locale/ru/statistics.txt b/src/locale/ru/statistics.txt
similarity index 100%
rename from locale/ru/statistics.txt
rename to src/locale/ru/statistics.txt
diff --git a/locale/te/configure.ini b/src/locale/te/configure.ini
similarity index 94%
rename from locale/te/configure.ini
rename to src/locale/te/configure.ini
index 403f88249..4e70df95e 100644
--- a/locale/te/configure.ini
+++ b/src/locale/te/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = "లాగిన్ అవడానికి కుకీలు అవసరము!!"
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = "ఖాతా ఆక్టివ్ గా లేదు. పాస్&zwnj;వర్డ్ రీసెట్ చెయ్యమని అడగవచ్చు "
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "లాగిన్ విజయవంతం"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = "లాగిన్ అయ్యేటప్పుడు బ్యాక్ బటన్ నోక్కకూడదు!"
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "యూజర్ పేరు లేదా పాస్&zwnj;వర్డ్ సరి లేదు!"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "కాన్ఫిగరేషన్ కొరకు లాగిన్ చేయండి"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = "స్టేటస్ అప్డేట్స్ ఆగిపోయినవి. "
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = "ఖాతా సదుపాయం"
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = "సోషల్"
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = "క్రాల్స్"
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = "సిస్టమ్ సెట్టింగులు"
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = "సమానం"
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = "సమానం కాదు"
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = "కలిగిఉన్నది"
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = "దీనితో ప్రారంభమవుతుంది"
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = "దీనితో ముగుస్తుంది"
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = "సమానం"
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = "సమానం కాదు"
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = "క్రమం లో లేదు "
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = "ఆరోహణ క్రమం "
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = "అవరోహణ క్రమం"
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = "ఇంకా పోస్ట్లు ఏవీ లేవు"
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = "పాస్&zwnj;వర్డ్ చాలా పొడవుగా ఉంది!"
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "పాస్&zwnj;వర్డ్ ఒకలాగ లేవు"
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = "చెల్లని పాస్&zwnj;వర్డ్!"
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = "తెలియని ఇమేజ్ ఫైలు రకం!"
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = "ఐకాన్ ఫైల్ చాలా పెద్దగా వుంది!"
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = "యూజర్ ఫోల్డర్ సృష్టించుట కుదరదు!"
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = "యూజర్ అప్డేట్ అయినది"
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = "ఆక్టివ్"
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = "ఆక్టివ్ లో లేదు "
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = "నిషేధించారు"
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = "పెండింగ్"
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = "ఆహ్వానించబడినది"
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = "ఆక్టివ్"
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = "నిషేధించారు"
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = "పాస్&zwnj;వర్డ్ చాలా పొడవుగా ఉంది!"
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "పాస్&zwnj;వర్డ్ ఒకలాగ లేవు"
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = "చెల్లని యూజర్ పేరు!"
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = "యూజర్ ఇప్పటికే ఉంది!"
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = "యూజర్ ఆడ్ చేయబడింది"
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = "పబ్లిక్ యూజర్ ఎడిట్ చేయలేరు!"
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "పాస్&zwnj;వర్డ్ ఒకలాగ లేవు"
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = "యూజర్ అప్డేట్ అయినది"
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = "గ్రూప్ పేరు తో ఫిల్టర్ చేయబడినది!"
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = "రోల్ పేరు తో ఫిల్టర్ చేయబడినది!  "
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "యూజర్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = "బిల్ట్-ఇన్ యూజర్ ని డిలీట్ చేయలేరు! "
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = "యూజర్ తీసి వేయబడినది "
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "యూజర్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "రోల్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = "రోల్ పేరు ఇంతకు ముందే ఆడ్ చేయబడినది!"
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "రోల్ పేరు క్రియేట్ చేయబడింది"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "యూజర్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = "ఈ గ్రూప్ పేరు లేదు "
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = "గ్రూప్ పేరు ఇది వరకే జోడించబడింది"
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = "గ్రూప్ పేరు జోడించబడింది "
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "యూజర్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "రోల్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "రోల్ పేరు డిలీట్ చేయబడింది"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "యూజర్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = "ఈ గ్రూప్ పేరు లేదు "
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = "గ్రూప్ తీసి వేయబడినది"
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "యూజర్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = "యూజర్ స్టేటస్ అప్డేట్ అయినది"
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "యాక్టివిటి  ఎంచుకోండి"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "రోల్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "యాక్టివిటి జోడించారు"
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "రోల్ పేరు ఇదివరకే ఉన్నది"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "రోల్ పేరు క్రియేట్ చేయబడింది"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = "రోల్ పేరు ఖాళీగా వున్నది!"
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "రోల్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "యాక్టివిటి డిలీట్ చేయబడింది"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "రోల్ పేరు లేదు"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "రోల్ పేరు డిలీట్ చేయబడింది"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = "రోల్ అప్డేట్ చేయబడింది!"
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "కొత్త క్రాల్ మొదలు అవుతున్నది"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "క్రాల్ ఆగుతున్నది ... కొంత నమయం పట్టవచ్చు"
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "క్రాల్ తిరిగి  మొదలు అవుతున్నది ... కొంత నమయం పట్టవచ్చు"
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "క్రాల్ తొలగించ బడుతోంది ... కొంత నమయం పట్టవచ్చు"
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "డిలీట్ క్రాల్ విజయవంతం కాలేదు"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "క్రాల్ ని సూచిక గా ఉపయోగించడానికి ఏర్పాటు చేయబడినది"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "క్రాల్ కు వివరణ లేదు"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "కింది ఆప్సన్స్ ఉపయొగిచండి"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = "యూప్ డిఫాల్టస్ ఉపయొగిచండి"
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "కింది ఆప్సన్స్ ఉపయొగిచండి"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = "ముందటి క్రాల్"
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = "యుఆరెల్స్ దీని పై  ఇంజెక్ట్ చేయబడినవి %s."
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = "యూజర్ సజెస్ట్ చేసిన యుఆరెల్స్ ఆడ్ చేయబడినవి!"
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = "సూచించిన డేటా లో క్రొత్త యుఆరెల్స్ ఏమీ లేవు "
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "బ్రెడ్త్-ఫస్ట్"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "పేజ్ ప్రాముఖ్యత"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = "యుఆరెల్స్ దీని పై  ఇంజెక్ట్ చేయబడినవి %s."
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = "యుఆరెల్స్ ఇంజెక్ట్ చేయబడినవి!"
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "అప్డేటింగ్ సీడ్ సైట్ ఇన్ఫో!"
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = "క్రొత్త క్లాసిఫయ్యర్ సృష్టించబడినది."
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = "ఆ పేరు తో క్లాసిఫయ్యర్ ఇంతకుముందే వుంది."
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = "క్లాసిఫయ్యర్ డిలీట్ చేయబడినది."
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = "ఆ పేరు తో క్లాసిఫయ్యర్ ఏమీ లేదు"
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = "ఆ పేరు తో క్లాసిఫయ్యర్ ఏమీ లేదు"
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = "క్లాసిఫయ్యర్ ఖరారు చేయబడినది."
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = "క్లాసిఫయ్యర్ ఖరారు చేయబడినది."
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = "ఆ పేరు తో క్లాసిఫయ్యర్ ఇంతకుముందే వుంది."
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = "డాక్యుమెంట్స్ లోడ్  ఫెయిల్ అయినది"
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = "లోడ్ అవుతోంది"
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = "జోడించిన {1}{2} ఉదాహరణలు"
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = "లేబెల్స్ అప్డేట్ చెయ్యబడలేదు."
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = "అప్డేట్ అవుతోంది"
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = "అప్డేట్ ఆక్యురసీ ఫెయిల్ అయినది "
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = "N/A"
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = "డాక్యుమెంట్స్ ఎమీ లేవు"
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = "{1}{2} డాక్యుమెంట్స్"
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = "ఇన్ క్లాస్"
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = "నాట్ ఇన్ క్లాస్"
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = "దాట వేయి"
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = "అంచనా: {1}"
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = "{1}%% విశ్వాసం,{2}%% అసమ్మతి"
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "కింది ఆప్సన్స్ ఉపయొగిచండి"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = "యూప్ డిఫాల్టస్ ఉపయొగిచండి"
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "కింది ఆప్సన్స్ ఉపయొగిచండి"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = "ఎప్పుడూ కాదు"
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = "1 రోజు"
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = "2 రోజులు"
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = "3 రోజులు"
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = "7 రోజులు"
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = "14 రోజులు"
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = "ప్రాథమిక"
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = "సెన్ట్రోయిడ్"
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = "పేజ్ ఆప్షన్లు అప్డేట్ అయినవి!"
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = "టెస్ట్లు నడుస్తున్నవి!"
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = "ఫిల్టర్ పేజీలు నవీకరించబడినవి!"
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = "ఇంతకముందు ఎడిట్ చేసిన యుఆరెల్ ని ఎంచుకోండి"
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = "ఫలితాల పేజీ అప్డేట్ కోసం యుఆర్ఎల్ పేర్కొనండి!"
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = "ఫలితాల పేజీలు అప్డేట్ అయినవి!"
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = "పేజ్ లోడ్ అయినది!"
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = "మీడియా రకం"
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = "వీడియో "
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = "ఆర్ ఎస్ ఎస్ "
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = "హెచ్ టి యమ్ ఎల్ ఫీడ్ "
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = "సూచిక/మిక్స్ ఉపయోగించడానికి"
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = "సోర్స్ టైపు ఇంకా సెట్ చేయలేదు!"
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = "మీడియా సెట్ టైప్ చేయాలి!"
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = "చెల్లని యుఆర్ఎల్!"
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = "అన్ని ఖాళీలను భర్తీ చేయాలి!"
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = "మీడియా సోర్సు ఆడ్ చేయడమైనది!"
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = "అన్ని ఖాళీలను భర్తీ చేయాలి!"
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = "సబ్ సెర్చ్ ఆడ్ చేయడమైనది!"
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = "సోర్స్ డిలీట్ చెయ్యబడలేదు!"
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = "మీడియా సోర్సు డిలీట్ చేయడమైనది!"
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = "సోర్స్ డిలీట్ చెయ్యబడలేదు!"
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = "సబ్ సెర్చ్ డిలీట్ చేయడమైనది!"
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = "సబ్ సెర్చ్ అప్డేట్ చేయడమైనది!"
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = "మీడియా సోర్సు అప్డేట్ చేయడమైనది!"
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = "చాలా శోధన ఫలిత
 ; SocialComponent.php line: 2479
 social_component_mix_saved = "క్రాల్ మిక్స్ మార్పులు సేవ్ చేయబడినవి!"
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = "మెషిన్ ఎంపిక చేయి"
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = "మెషిన్ ఆడ్ చేయబడినది!"
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = "మెషిన్ పేరు ఇదివరకే ఉన్నది;దయచేసి మొదట తొలగించండి!"
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = "మెషిన్ ఫార్మ్ లో ఖాళీలు వున్నవి!"
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = "మెషిన్ పేరు సరిఅయినది కాదు!"
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = "మెషిన్ ఉపయోగంలో వున్నది. దయచేసి మొదట సర్వీసెస్ ని ఆపండి!"
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = "మెషిన్ డిలీట్ చేయబడినది!"
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = "లాగ్ ఫైల్ కనపడలేదు."
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = "మెషిన్ సర్వర్స్ అప్డేట్ చేయబడినవి!"
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = "ఏ ఏక్సన్ చేయుట కుదరలేదు!"
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = "మోడ్ ఎంచుకోండి"
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = "ఫీల్డ్  వేల్యూస్ మిస్సింగ్ లేదా చెల్లదు!"
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "లొకేల్ ఆడ్ చేయబడినది!"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "లొకేల్ పేరు లేదు!"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "లొకేల్ డిలీట్ చేయబడినది"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "లొకేల్ పేరు లేదు!"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = "లొకేల్ సమాచారం అప్డేట్ చేయబడినది!"
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "లొకేల్ స్ట్రింగ్స్ అప్డేట్ చేయబడినవి!  "
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = "అన్ని స్ట్రింగ్లు "
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = "మిస్సింగ్ స్ట్రింగ్స్"
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = "డేటాబేస్ నవీకరణలో సమస్య!"
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "ప్రొఫైల్ అప్డేట్ చేయబడినది!"
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "ప్రొఫైల్ నవీకరణలో సమస్య వున్నది! "
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = "రిజిస్ట్రేషన్ డిసేబుల్"
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = "నో ఏక్టివేషన్"
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = "ఇమెయిల్ ఏక్టివేషన్"
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = "అడ్మిన్  ఏక్టివేషన్"
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = "కేప్త్చపదం"
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = "హాష్ కేప్త్చ"
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = "కేప్త్చ చిత్రం"
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = "సాధారణ ఆతేంటికేషణ్"
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = "ZKP ఆతేంటికేషణ్"
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = "సాధారణ ఆతేంటికేషణ్"
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = "సెట్టింగ్స్ అప్డేట్ చెయ్యబడినవి!"
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = "ఏ సెట్టింగులు మార్చబడలేదు!"
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = "వర్క్ డైరెక్టరీ కోసం సరైన పాత్ ఉపయోగించాలి"
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = "వర్క్ డైరెక్టరీ yioop ఫోల్డర్ లో ఉండకూడదు!"
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "వర్క్ డైరెక్టరీ సెట్  చేయండి! మీరు తిరిగి లాగిన్ చేయాలి!"
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "దయచేసి మీ రోబోట్ కి పేరు పెట్టండి"
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "వర్కింగ్ డైరెక్టరీ మరియు ప్రొఫైల్ క్రియేట్ చేయబడినది!"
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "config.php ఫైల్ అప్డేట్ చేయుట సాధ్యపడలేదు!"
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "ప్రొఫైల్ తయారు చేయుట సాధ్యపడలేదు!"
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = "వర్క్ డైరెక్టరీ చెల్లదు! ప్రొఫైల్ సృష్టించలేరు!"
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = "వర్క్ డైరెక్టరీ చెల్లదు! ప్రొఫైల్ సృష్టించలేరు!"
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = "రిసోర్స్ ఫోల్డర్ లేదు!"
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = "చెల్లని ఫైల్ రకం!"
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = "చాలా పెద్ద ఫైలు!"
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "ప్రొఫైల్ అప్డేట్ చేయబడినది!"
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "ప్రొఫైల్ నవీకరణలో సమస్య వున్నది! "
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = "రీసెట్ పూర్తి అయినది"
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "ప్రొఫైల్ నవీకరణలో సమస్య వున్నది! "
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = "మీ రోబోట్ ని దయచేసి వివరించండి"
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = "PHP వెర్షన్ 5.3 లేదా ఇంకా క్రొత్తది"
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = "క్రింది అవసరమైన అంశాలు మిస్ అయినవి: %s"
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = "క్రింది ఆప్షనల్ అంశాలు మిస్ అయినవి: %s"
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = "ఇ-మెయిల్ చిరునామ
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = "ఖాతా సృస్టించలేదు - యూజర్ పేరు వాడుకలో వున్నది!!"
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = "వెబ్"
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "లాగౌట్ విజయవంతం"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = "మిక్స్ క్రాల్ ఉపయోగించబడుతోంది: %s"
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = "సూచిక: %s -- పరిమాణము: %s పేజీలు /%s యుఆర్ఎల్ లు"
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = "అన్వేషించు"
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = "శోధన సూచిక సెట్ అయి లేదు "
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = "శోధన సూచిక సెట్ అయి లేదు "
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = "డౌన్లోడ్ ఫెచ్చర్: %s"
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = "ఈ వెబ్ సైట్ ఈ పేజీ ఆర్కైవ్ చేయరాదని  అభ్యర్థించారు "
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = "Yioop కాష్"
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = "ఈ చిత్రం  కనిపించిన పేజి:"
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = "సేకరించిన శీర్షిక "
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = "సేకరించిన వివరణ "
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = "సేకరించిన లింకులు "
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = "సేకరించిన అనుమతి ఉన్న క్రాల్  మార్గాలు"
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = "సేకరించిన అనుమతి లేని క్రాల్  మార్గాలు"
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = "యూప్ బాట్ క్రాల్ ఆలస్యం"
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = "యూప్కా ష్ పేజ్ ... ఈ పేజీకి, ఒక రోబోట్ ఆదేశం జోడించండి లింకులు సంపూర్ణ తయారు, సేకరించిన సారాంశాలు జోడించడానికి మరియు ప్రశ్న నిబంధనలు హైలైట్ కు మార్చబడింది"
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = "Yioop కాష్"
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = "ఈ కేషెడ్ వెర్షన్ %s యూప్ క్రాలర్ ద్వారా పొందారు %s"
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = "డౌన్లోడ్ ఫెచ్చర్: %s"
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = "టాగుల్ చరిత్ర"
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = "సంవత్సరం:"
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = "నెల:"
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = "లాగ్అవుట్ విజయ
 ; StaticController.php line: 147
 static_controller_complete_title = "Yioop! -%s"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "అడ్మిన్ "
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "తొలగించు"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = "మునుపటి క్రాల్స్ ఏమి లేవు"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "చర్యలు"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = "ఒక నిమిషం లో ఆటో లాగ్అవుట్ అవుతుంది!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = "ఒక నిమిషం లో ఆటో లాగ్అవుట్ అవుతుంది!!"
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = "వర్డ్ ఫ్యాక్టరీ సెట్టింగులు సేవ్ చేయబడినవి! "
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = "డీఫాల్ట్స్ పునరుద్ధరించబడినవి! "
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = "వర్డ్ ఫిల్టర్ ప్రాధాన్యతలు "
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = "ఫ్యాక్టరీ సెట్టింగులు "
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = "సేవ్ చేయి"
diff --git a/locale/te/resources/Tokenizer.php b/src/locale/te/resources/Tokenizer.php
similarity index 95%
rename from locale/te/resources/Tokenizer.php
rename to src/locale/te/resources/Tokenizer.php
index af098787e..5824d5789 100755
--- a/locale/te/resources/Tokenizer.php
+++ b/src/locale/te/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\locale\te\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Telugu specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/te/resources/locale.js b/src/locale/te/resources/locale.js
similarity index 100%
rename from locale/te/resources/locale.js
rename to src/locale/te/resources/locale.js
diff --git a/locale/te/resources/suggest_trie.txt.gz b/src/locale/te/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/te/resources/suggest_trie.txt.gz
rename to src/locale/te/resources/suggest_trie.txt.gz
diff --git a/locale/te/statistics.txt b/src/locale/te/statistics.txt
similarity index 100%
rename from locale/te/statistics.txt
rename to src/locale/te/statistics.txt
diff --git a/locale/th/configure.ini b/src/locale/th/configure.ini
similarity index 91%
rename from locale/th/configure.ini
rename to src/locale/th/configure.ini
index d982e544d..e7a141115 100755
--- a/locale/th/configure.ini
+++ b/src/locale/th/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = ""
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = ""
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = ""
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = ""
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = ""
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = ""
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = ""
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = ""
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = ""
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = ""
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = ""
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/th/resources/Tokenizer.php b/src/locale/th/resources/Tokenizer.php
similarity index 95%
rename from locale/th/resources/Tokenizer.php
rename to src/locale/th/resources/Tokenizer.php
index e6d1481d0..070c70c72 100755
--- a/locale/th/resources/Tokenizer.php
+++ b/src/locale/th/resources/Tokenizer.php
@@ -28,7 +28,6 @@
  */
 namespace seekquarry\yioop\Locale\th\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Thai specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/th/resources/locale.js b/src/locale/th/resources/locale.js
similarity index 100%
rename from locale/th/resources/locale.js
rename to src/locale/th/resources/locale.js
diff --git a/locale/th/statistics.txt b/src/locale/th/statistics.txt
similarity index 100%
rename from locale/th/statistics.txt
rename to src/locale/th/statistics.txt
diff --git a/locale/tr/configure.ini b/src/locale/tr/configure.ini
similarity index 91%
rename from locale/tr/configure.ini
rename to src/locale/tr/configure.ini
index ef7a108a2..956efca03 100755
--- a/locale/tr/configure.ini
+++ b/src/locale/tr/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = ""
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = ""
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = ""
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = ""
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = ""
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = ""
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = ""
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = ""
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = ""
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = ""
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = ""
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = ""
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = ""
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = ""
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = ""
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = ""
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = ""
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = ""
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = ""
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = ""
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = ""
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = ""
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = ""
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = ""
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = ""
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = ""
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = ""
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = ""
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = ""
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = ""
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = ""
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = ""
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = ""
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = ""
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = ""
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/tr/resources/Tokenizer.php b/src/locale/tr/resources/Tokenizer.php
similarity index 93%
rename from locale/tr/resources/Tokenizer.php
rename to src/locale/tr/resources/Tokenizer.php
index 328de34e5..56e18abcb 100755
--- a/locale/tr/resources/Tokenizer.php
+++ b/src/locale/tr/resources/Tokenizer.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -31,7 +29,6 @@ namespace Seekquarry\Yioop;
  */
 namespace seekquarry\yioop\locale\tr\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Turkish specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/tr/resources/locale.js b/src/locale/tr/resources/locale.js
similarity index 100%
rename from locale/tr/resources/locale.js
rename to src/locale/tr/resources/locale.js
diff --git a/locale/tr/resources/suggest_trie.txt.gz b/src/locale/tr/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/tr/resources/suggest_trie.txt.gz
rename to src/locale/tr/resources/suggest_trie.txt.gz
diff --git a/locale/tr/statistics.txt b/src/locale/tr/statistics.txt
similarity index 100%
rename from locale/tr/statistics.txt
rename to src/locale/tr/statistics.txt
diff --git a/locale/vi_VN/configure.ini b/src/locale/vi_VN/configure.ini
similarity index 92%
rename from locale/vi_VN/configure.ini
rename to src/locale/vi_VN/configure.ini
index 00fec2982..5729beb69 100755
--- a/locale/vi_VN/configure.ini
+++ b/src/locale/vi_VN/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "Đăng nhập th&agrave;nh c&ocirc;ng"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "T&ecirc;n đăng nhập họăc khẩu kh&ocirc;ng đ&uacute;ng"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "đăng nhập để cấu h&igrave;nh"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = ""
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "Những mật khẩu đ&atilde; nhập kh&ocirc;ng tr&ugrave;ng nhau"
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "Những mật khẩu đ&atilde; nhập kh&ocirc;ng tr&ugrave;ng nhau"
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "Những mật khẩu đ&atilde; nhập kh&ocirc;ng tr&ugrave;ng nhau"
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "T&ecirc;n sử dụng kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "T&ecirc;n sử dụng kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "Chức vụ kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "Cộng th&ecirc;m chức vụ "
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "T&ecirc;n sử dụng kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "T&ecirc;n sử dụng kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "Chức vụ kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "X&oacute;a chức vụ"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "T&ecirc;n sử dụng kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "T&ecirc;n sử dụng kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "Lựa chọn họat động"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "Chức vụ kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "Bổ sung t&ecirc;n hoạt động "
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "Chức vụ đ&atilde; đựơc d&ugrave;ng"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "Cộng th&ecirc;m chức vụ "
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "Chức vụ kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "X&oacute;a t&ecirc;n hoạt động"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "Chức vụ kh&ocirc;ng tồn tại"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "X&oacute;a chức vụ"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "Bắt đầu sự b&ograve; mới"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "Ngừng thu thập dữ liệu"
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "Tiếp tục thu thập dữ liệu"
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "X&oacute;a thu thập dữ liệu th&agrave;nh c&ocirc;ng"
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "X&oacute;a thu thập dữ liệu kh&ocirc;ng th&agrave;nh c&ocirc;ng"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "Thiết lập thu thập dữ liệu để sử dụng l&agrave;m chỉ mục"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "Kh&ocirc;ng c&oacute; sự m&ocirc; tả n&agrave;o"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "Sử dụng dưới đ&acirc;y"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = "Sử dụng mặc định"
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "Sử dụng dưới đ&acirc;y"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = "trước thu thập dữ liệu"
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "Bề rộng đầu ti&ecirc;n"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "Trang quan trọng"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = ""
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "Cập nhật th&ocirc;ng tin trang mạng lươi hạt giống"
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "Sử dụng dưới đ&acirc;y"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = "Sử dụng mặc định"
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "Sử dụng dưới đ&acirc;y"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = ""
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = ""
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = ""
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = ""
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = ""
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = ""
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = ""
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = ""
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = ""
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = ""
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = ""
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = ""
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = ""
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = ""
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = ""
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = ""
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = ""
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = "Kết hợp đ&atilde; được lưu dữ"
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = ""
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = ""
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = ""
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = ""
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = ""
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = ""
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = ""
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = ""
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = ""
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "Miền địa phương th&ecirc;m v&agrave;o"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "Miền địa phương kh&ocirc;ng tồn tại"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "X&oacute;a miền địa phương"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "Miền địa phương kh&ocirc;ng tồn tại"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "Chuỗi Địa phương được cập nhật"
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = "Vấn đề cập nhật cơ sở dữ liệu"
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = "Hồ sơ được cập nhật"
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = "C&oacute; sự trở ngaị về việc cập nhật hồ sơ "
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = ""
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "C&ocirc;ng việc thiết lập thư mục bị đ&ocirc;ng cứng (Bạn c&oacute; thể cần phải đăng nhập)"
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "Đặt t&ecirc;n cho r&ocirc; b&ocirc; của bạn"
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "Thư mục l&agrave;m việc v&agrave; hồ sơ được tạo ra"
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "Kh&ocirc;ng thể cập nhật hồ sơ config.php"
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "Kh&ocirc;ng thể tạo hồ sơ"
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = "C&ocirc;ng t&aacute;c thư mục kh&ocirc;ng hợp lệ"
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = "C&ocirc;ng t&aacute;c thư mục kh&ocirc;ng hợp lệ"
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = "Hồ sơ được cập nhật"
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = "C&oacute; sự trở ngaị về việc cập nhật hồ sơ "
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = "C&oacute; sự trở ngaị về việc cập nhật hồ sơ "
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = "Diễn tả r&ocirc; b&ocirc; của bạn"
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = ""
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = ""
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = ""
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = ""
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = ""
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = ""
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = "Kiểm tra được th&ocirc;ng qua"
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = ""
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = "Tho&aacute;t th&agrave;nh c&ocirc;ng"
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = "Bằng c&aacute;ch sử dụng kết hợp thu thập dữ liệu %s"
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = "Sử dụng chỉ số %s"
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = "T&igrave;m Kiếm"
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = "Kh&ocirc;ng c&oacute; chỉ mục t&igrave;m kiếm thiết lập để sử dụng"
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = "Kh&ocirc;ng c&oacute; chỉ mục t&igrave;m kiếm thiết lập để sử dụng"
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = "Trang gốc n&agrave;y: %s đ&atilde; t&igrave;m được bởi c&ocirc;ng cụ t&igrave;m kiẽm Yioop v&agrave;o ng&agrave;y %s."
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "Quản trị"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = "Xo&aacute;"
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = "Những hoạt động"
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = "Tự động tho&aacute;t trong một ph&uacute;t"
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = "Tự động tho&aacute;t trong một ph&uacute;t"
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/vi_VN/resources/Tokenizer.php b/src/locale/vi_VN/resources/Tokenizer.php
similarity index 94%
rename from locale/vi_VN/resources/Tokenizer.php
rename to src/locale/vi_VN/resources/Tokenizer.php
index b1b6f5930..6eecc22c0 100755
--- a/locale/vi_VN/resources/Tokenizer.php
+++ b/src/locale/vi_VN/resources/Tokenizer.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -30,7 +28,6 @@ namespace Seekquarry\Yioop;
  */
 namespace seekquarry\yioop\locale\vi_VN\resources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Vietnamese specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/vi_VN/resources/locale.js b/src/locale/vi_VN/resources/locale.js
similarity index 100%
rename from locale/vi_VN/resources/locale.js
rename to src/locale/vi_VN/resources/locale.js
diff --git a/locale/vi_VN/resources/suggest_trie.txt.gz b/src/locale/vi_VN/resources/suggest_trie.txt.gz
similarity index 100%
rename from locale/vi_VN/resources/suggest_trie.txt.gz
rename to src/locale/vi_VN/resources/suggest_trie.txt.gz
diff --git a/locale/vi_VN/statistics.txt b/src/locale/vi_VN/statistics.txt
similarity index 100%
rename from locale/vi_VN/statistics.txt
rename to src/locale/vi_VN/statistics.txt
diff --git a/locale/zh_CN/configure.ini b/src/locale/zh_CN/configure.ini
similarity index 92%
rename from locale/zh_CN/configure.ini
rename to src/locale/zh_CN/configure.ini
index 51764872b..b10d66050 100755
--- a/locale/zh_CN/configure.ini
+++ b/src/locale/zh_CN/configure.ini
@@ -26,509 +26,509 @@
 ;
 [strings]
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers
+; /Applications/MAMP/htdocs/git/yioop/src//controllers
 ;
-; AdminController.php line: 98
+; AdminController.php line: 97
 admin_controller_need_cookies = ""
 ;
-; AdminController.php line: 148
+; AdminController.php line: 147
 admin_controller_account_not_active = ""
 ;
-; AdminController.php line: 154
+; AdminController.php line: 153
 admin_controller_login_successful = "登入成功"
 ;
-; AdminController.php line: 173
+; AdminController.php line: 172
 admin_controller_no_back_button = ""
 ;
-; AdminController.php line: 187
+; AdminController.php line: 186
 admin_controller_login_failed = "登入失敗"
 ;
-; AdminController.php line: 193
+; AdminController.php line: 192
 admin_controller_login_to_config = "登入管理介面"
 ;
-; AdminController.php line: 197
+; AdminController.php line: 196
 admin_controller_status_updates_stopped = "管理員終止更新"
 ;
-; AdminController.php line: 344
+; AdminController.php line: 343
 admin_controller_account_access = ""
 ;
-; AdminController.php line: 345
+; AdminController.php line: 344
 admin_controller_social = ""
 ;
-; AdminController.php line: 346
+; AdminController.php line: 345
 admin_controller_crawl_settings = ""
 ;
-; AdminController.php line: 347
+; AdminController.php line: 346
 admin_controller_system_settings = ""
 ;
-; AdminController.php line: 348
+; AdminController.php line: 347
 admin_controller_advertisement = ""
 ;
-; AdminController.php line: 522
+; AdminController.php line: 521
 admin_controller_equal = ""
 ;
-; AdminController.php line: 523
+; AdminController.php line: 522
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 524
+; AdminController.php line: 523
 admin_controller_contains = ""
 ;
-; AdminController.php line: 525
+; AdminController.php line: 524
 admin_controller_begins_with = ""
 ;
-; AdminController.php line: 526
+; AdminController.php line: 525
 admin_controller_ends_with = ""
 ;
-; AdminController.php line: 529
+; AdminController.php line: 528
 admin_controller_equal = ""
 ;
-; AdminController.php line: 530
+; AdminController.php line: 529
 admin_controller_not_equal = ""
 ;
-; AdminController.php line: 533
+; AdminController.php line: 532
 admin_controller_no_sort = ""
 ;
-; AdminController.php line: 534
+; AdminController.php line: 533
 admin_controller_sort_ascending = ""
 ;
-; AdminController.php line: 535
+; AdminController.php line: 534
 admin_controller_sort_descending = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//controllers/components
+; /Applications/MAMP/htdocs/git/yioop/src//controllers/components
 ;
-; AccountaccessComponent.php line: 143
+; AccountaccessComponent.php line: 142
 accountaccess_component_no_posts_yet = ""
 ;
-; AccountaccessComponent.php line: 157
+; AccountaccessComponent.php line: 156
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 166
+; AccountaccessComponent.php line: 165
 accountaccess_component_passwords_dont_match = "密碼錯誤"
 ;
-; AccountaccessComponent.php line: 173
+; AccountaccessComponent.php line: 172
 accountaccess_component_invalid_password = ""
 ;
-; AccountaccessComponent.php line: 215
+; AccountaccessComponent.php line: 214
 accountaccess_component_unknown_imagetype = ""
 ;
-; AccountaccessComponent.php line: 220
+; AccountaccessComponent.php line: 219
 accountaccess_component_icon_too_big = ""
 ;
-; AccountaccessComponent.php line: 229
+; AccountaccessComponent.php line: 228
 accountaccess_component_no_user_folder = ""
 ;
-; AccountaccessComponent.php line: 238
+; AccountaccessComponent.php line: 237
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 281
+; AccountaccessComponent.php line: 280
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 282
+; AccountaccessComponent.php line: 281
 accountaccess_component_inactive_status = ""
 ;
-; AccountaccessComponent.php line: 283
+; AccountaccessComponent.php line: 282
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 286
+; AccountaccessComponent.php line: 285
 accountaccess_component_request_join = ""
 ;
-; AccountaccessComponent.php line: 287
+; AccountaccessComponent.php line: 286
 accountaccess_component_invited = ""
 ;
-; AccountaccessComponent.php line: 288
+; AccountaccessComponent.php line: 287
 accountaccess_component_active_status = ""
 ;
-; AccountaccessComponent.php line: 289
+; AccountaccessComponent.php line: 288
 accountaccess_component_banned_status = ""
 ;
-; AccountaccessComponent.php line: 334
+; AccountaccessComponent.php line: 333
 accountaccess_component_passwords_too_long = ""
 ;
-; AccountaccessComponent.php line: 339
+; AccountaccessComponent.php line: 338
 accountaccess_component_passwords_dont_match = "密碼錯誤"
 ;
-; AccountaccessComponent.php line: 343
+; AccountaccessComponent.php line: 342
 accountaccess_component_invalid_username = ""
 ;
-; AccountaccessComponent.php line: 347
+; AccountaccessComponent.php line: 346
 accountaccess_component_user_exists = ""
 ;
-; AccountaccessComponent.php line: 376
+; AccountaccessComponent.php line: 375
 accountaccess_component_user_added = ""
 ;
-; AccountaccessComponent.php line: 385
+; AccountaccessComponent.php line: 384
 accountaccess_component_user_doesnt_exist = ""
 ;
-; AccountaccessComponent.php line: 392
+; AccountaccessComponent.php line: 391
 accountaccess_component_cant_edit_public_user = ""
 ;
-; AccountaccessComponent.php line: 434
+; AccountaccessComponent.php line: 433
 accountaccess_component_passwords_dont_match = "密碼錯誤"
 ;
-; AccountaccessComponent.php line: 440
+; AccountaccessComponent.php line: 439
 accountaccess_component_user_updated = ""
 ;
-; AccountaccessComponent.php line: 446
+; AccountaccessComponent.php line: 445
 accountaccess_component_user_filter_group = ""
 ;
-; AccountaccessComponent.php line: 450
+; AccountaccessComponent.php line: 449
 accountaccess_component_user_filter_role = ""
 ;
-; AccountaccessComponent.php line: 461
+; AccountaccessComponent.php line: 460
 accountaccess_component_username_doesnt_exists = "此使用者不存在"
 ;
-; AccountaccessComponent.php line: 466
+; AccountaccessComponent.php line: 465
 accountaccess_component_cant_delete_builtin = ""
 ;
-; AccountaccessComponent.php line: 471
+; AccountaccessComponent.php line: 470
 accountaccess_component_user_deleted = ""
 ;
-; AccountaccessComponent.php line: 480
+; AccountaccessComponent.php line: 479
 accountaccess_component_username_doesnt_exists = "此使用者不存在"
 ;
-; AccountaccessComponent.php line: 485
+; AccountaccessComponent.php line: 484
 accountaccess_component_rolename_doesnt_exists = "無此暱稱"
 ;
-; AccountaccessComponent.php line: 491
+; AccountaccessComponent.php line: 490
 accountaccess_component_rolename_already_added = ""
 ;
-; AccountaccessComponent.php line: 497
+; AccountaccessComponent.php line: 496
 accountaccess_component_rolename_added = "增加暱稱"
 ;
-; AccountaccessComponent.php line: 507
+; AccountaccessComponent.php line: 506
 accountaccess_component_username_doesnt_exists = "此使用者不存在"
 ;
-; AccountaccessComponent.php line: 512
+; AccountaccessComponent.php line: 511
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 518
+; AccountaccessComponent.php line: 517
 accountaccess_component_groupname_already_added = ""
 ;
-; AccountaccessComponent.php line: 526
+; AccountaccessComponent.php line: 525
 accountaccess_component_groupname_added = ""
 ;
-; AccountaccessComponent.php line: 536
+; AccountaccessComponent.php line: 535
 accountaccess_component_username_doesnt_exists = "此使用者不存在"
 ;
-; AccountaccessComponent.php line: 541
+; AccountaccessComponent.php line: 540
 accountaccess_component_rolename_doesnt_exists = "無此暱稱"
 ;
-; AccountaccessComponent.php line: 550
+; AccountaccessComponent.php line: 549
 accountaccess_component_rolename_deleted = "刪除暱稱"
 ;
-; AccountaccessComponent.php line: 560
+; AccountaccessComponent.php line: 559
 accountaccess_component_username_doesnt_exists = "此使用者不存在"
 ;
-; AccountaccessComponent.php line: 565
+; AccountaccessComponent.php line: 564
 accountaccess_component_groupname_doesnt_exists = ""
 ;
-; AccountaccessComponent.php line: 574
+; AccountaccessComponent.php line: 573
 accountaccess_component_group_deleted = ""
 ;
-; AccountaccessComponent.php line: 591
+; AccountaccessComponent.php line: 590
 accountaccess_component_username_doesnt_exists = "此使用者不存在"
 ;
-; AccountaccessComponent.php line: 597
+; AccountaccessComponent.php line: 596
 accountaccess_component_userstatus_updated = ""
 ;
-; AccountaccessComponent.php line: 760
+; AccountaccessComponent.php line: 759
 accountaccess_component_select_activityname = "選擇活動名稱"
 ;
-; AccountaccessComponent.php line: 786
+; AccountaccessComponent.php line: 785
 accountaccess_component_rolename_doesnt_exists = "無此暱稱"
 ;
-; AccountaccessComponent.php line: 802
+; AccountaccessComponent.php line: 801
 accountaccess_component_activity_added = "活動名稱已加入"
 ;
-; AccountaccessComponent.php line: 811
+; AccountaccessComponent.php line: 810
 accountaccess_component_rolename_exists = "此暱稱已存在"
 ;
-; AccountaccessComponent.php line: 817
+; AccountaccessComponent.php line: 816
 accountaccess_component_rolename_added = "增加暱稱"
 ;
-; AccountaccessComponent.php line: 821
+; AccountaccessComponent.php line: 820
 accountaccess_component_rolename_blank = ""
 ;
-; AccountaccessComponent.php line: 830
+; AccountaccessComponent.php line: 829
 accountaccess_component_rolename_doesnt_exists = "無此暱稱"
 ;
-; AccountaccessComponent.php line: 848
+; AccountaccessComponent.php line: 847
 accountaccess_component_activity_deleted = "活動已刪除"
 ;
-; AccountaccessComponent.php line: 856
+; AccountaccessComponent.php line: 855
 accountaccess_component_rolename_doesnt_exists = "無此暱稱"
 ;
-; AccountaccessComponent.php line: 861
+; AccountaccessComponent.php line: 860
 accountaccess_component_rolename_deleted = "刪除暱稱"
 ;
-; AccountaccessComponent.php line: 893
+; AccountaccessComponent.php line: 892
 accountaccess_component_role_updated = ""
 ;
-; AdvertisementComponent.php line: 74
+; AdvertisementComponent.php line: 73
 advertisement_component_fields_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 81
+; AdvertisementComponent.php line: 80
 advertisement_component_date_cannot_be_empty = ""
 ;
-; AdvertisementComponent.php line: 87
+; AdvertisementComponent.php line: 86
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 105
+; AdvertisementComponent.php line: 104
 advertisement_component_start_date_greater = ""
 ;
-; AdvertisementComponent.php line: 111
+; AdvertisementComponent.php line: 110
 advertisement_component_end_date_too_late = ""
 ;
-; AdvertisementComponent.php line: 117
+; AdvertisementComponent.php line: 116
 advertisement_component_correct_date = ""
 ;
-; AdvertisementComponent.php line: 222
+; AdvertisementComponent.php line: 221
 advertisement_component_enter_keywords = ""
 ;
-; AdvertisementComponent.php line: 247
+; AdvertisementComponent.php line: 246
 advertisement_component_budget_less = ""
 ;
-; AdvertisementComponent.php line: 299
+; AdvertisementComponent.php line: 298
 advertisement_component_ad_created = ""
 ;
-; AdvertisementComponent.php line: 307
+; AdvertisementComponent.php line: 306
 advertisement_component_advertisement_doesnt_exists = ""
 ;
-; AdvertisementComponent.php line: 367
+; AdvertisementComponent.php line: 366
 advertisement_component_ad_updated = ""
 ;
-; CrawlComponent.php line: 95
+; CrawlComponent.php line: 92
 crawl_component_starting_new_crawl = "開始新的搜尋"
 ;
-; CrawlComponent.php line: 110
+; CrawlComponent.php line: 107
 crawl_component_stop_crawl = "停止搜尋,需要一段時間更新"
 ;
-; CrawlComponent.php line: 139
+; CrawlComponent.php line: 136
 crawl_component_resume_crawl = "回復搜尋,需要一段時間更新"
 ;
-; CrawlComponent.php line: 148
+; CrawlComponent.php line: 145
 crawl_component_delete_crawl_success = "刪除搜尋,需要一段時間更新"
 ;
-; CrawlComponent.php line: 152
+; CrawlComponent.php line: 149
 crawl_component_delete_crawl_fail = "刪除搜尋失敗"
 ;
-; CrawlComponent.php line: 161
+; CrawlComponent.php line: 158
 crawl_component_set_index = "設置索引"
 ;
-; CrawlComponent.php line: 195
+; CrawlComponent.php line: 192
 crawl_component_no_description = "沒有任何項目"
 ;
-; CrawlComponent.php line: 342
+; CrawlComponent.php line: 339
 crawl_component_use_below = "以下使用者"
 ;
-; CrawlComponent.php line: 343
+; CrawlComponent.php line: 340
 crawl_component_use_defaults = "使用者預設"
 ;
-; CrawlComponent.php line: 346
+; CrawlComponent.php line: 343
 crawl_component_use_below = "以下使用者"
 ;
-; CrawlComponent.php line: 350
+; CrawlComponent.php line: 347
 crawl_component_previous_crawl = "前一搜尋"
 ;
-; CrawlComponent.php line: 421
+; CrawlComponent.php line: 418
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 435
+; CrawlComponent.php line: 432
 crawl_component_add_suggest = ""
 ;
-; CrawlComponent.php line: 439
+; CrawlComponent.php line: 436
 crawl_component_no_new_suggests = ""
 ;
-; CrawlComponent.php line: 485
+; CrawlComponent.php line: 482
 crawl_component_breadth_first = "深度優先"
 ;
-; CrawlComponent.php line: 487
+; CrawlComponent.php line: 484
 crawl_component_page_importance = "網頁重要性"
 ;
-; CrawlComponent.php line: 551
+; CrawlComponent.php line: 548
 crawl_component_added_urls = ""
 ;
-; CrawlComponent.php line: 561
+; CrawlComponent.php line: 558
 crawl_component_urls_injected = "插入網址"
 ;
-; CrawlComponent.php line: 571
+; CrawlComponent.php line: 568
 crawl_component_update_seed_info = "更新種子資訊"
 ;
-; CrawlComponent.php line: 625
+; CrawlComponent.php line: 622
 crawl_component_new_classifier = ""
 ;
-; CrawlComponent.php line: 629
+; CrawlComponent.php line: 626
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 652
+; CrawlComponent.php line: 649
 crawl_component_classifier_deleted = ""
 ;
-; CrawlComponent.php line: 656
+; CrawlComponent.php line: 653
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 667
+; CrawlComponent.php line: 664
 crawl_component_no_classifier = ""
 ;
-; CrawlComponent.php line: 685
+; CrawlComponent.php line: 682
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 711
+; CrawlComponent.php line: 708
 crawl_component_finalizing_classifier = ""
 ;
-; CrawlComponent.php line: 757
+; CrawlComponent.php line: 754
 crawl_component_classifier_exists = ""
 ;
-; CrawlComponent.php line: 766
+; CrawlComponent.php line: 763
 crawl_component_load_failed = ""
 ;
-; CrawlComponent.php line: 768
+; CrawlComponent.php line: 765
 crawl_component_loading = ""
 ;
-; CrawlComponent.php line: 770
+; CrawlComponent.php line: 767
 crawl_component_added_examples = ""
 ;
-; CrawlComponent.php line: 772
+; CrawlComponent.php line: 769
 crawl_component_label_update_failed = ""
 ;
-; CrawlComponent.php line: 774
+; CrawlComponent.php line: 771
 crawl_component_updating = ""
 ;
-; CrawlComponent.php line: 776
+; CrawlComponent.php line: 773
 crawl_component_acc_update_failed = ""
 ;
-; CrawlComponent.php line: 778
+; CrawlComponent.php line: 775
 crawl_component_na = ""
 ;
-; CrawlComponent.php line: 780
+; CrawlComponent.php line: 777
 crawl_component_no_docs = ""
 ;
-; CrawlComponent.php line: 782
+; CrawlComponent.php line: 779
 crawl_component_num_docs = ""
 ;
-; CrawlComponent.php line: 784
+; CrawlComponent.php line: 781
 crawl_component_in_class = ""
 ;
-; CrawlComponent.php line: 786
+; CrawlComponent.php line: 783
 crawl_component_not_in_class = ""
 ;
-; CrawlComponent.php line: 788
+; CrawlComponent.php line: 785
 crawl_component_skip = ""
 ;
-; CrawlComponent.php line: 790
+; CrawlComponent.php line: 787
 crawl_component_prediction = ""
 ;
-; CrawlComponent.php line: 792
+; CrawlComponent.php line: 789
 crawl_component_scores = ""
 ;
-; CrawlComponent.php line: 835
+; CrawlComponent.php line: 832
 crawl_component_use_below = "以下使用者"
 ;
-; CrawlComponent.php line: 836
+; CrawlComponent.php line: 833
 crawl_component_use_defaults = "使用者預設"
 ;
-; CrawlComponent.php line: 838
+; CrawlComponent.php line: 835
 crawl_component_use_below = "以下使用者"
 ;
-; CrawlComponent.php line: 846
+; CrawlComponent.php line: 843
 crawl_component_recrawl_never = "取消重新搜尋"
 ;
-; CrawlComponent.php line: 847
+; CrawlComponent.php line: 844
 crawl_component_recrawl_1day = "每日重新搜尋"
 ;
-; CrawlComponent.php line: 848
+; CrawlComponent.php line: 845
 crawl_component_recrawl_2day = "兩日重新搜尋"
 ;
-; CrawlComponent.php line: 849
+; CrawlComponent.php line: 846
 crawl_component_recrawl_3day = "三日重新搜尋"
 ;
-; CrawlComponent.php line: 850
+; CrawlComponent.php line: 847
 crawl_component_recrawl_7day = "一週重新搜尋"
 ;
-; CrawlComponent.php line: 851
+; CrawlComponent.php line: 848
 crawl_component_recrawl_14day = "兩週重新搜尋"
 ;
-; CrawlComponent.php line: 859
+; CrawlComponent.php line: 856
 crawl_component_basic = ""
 ;
-; CrawlComponent.php line: 860
+; CrawlComponent.php line: 857
 crawl_component_centroid = ""
 ;
-; CrawlComponent.php line: 861
+; CrawlComponent.php line: 858
 crawl_component_graph_based = ""
 ;
-; CrawlComponent.php line: 1148
+; CrawlComponent.php line: 1145
 crawl_component_page_options_updated = "更新頁面選項"
 ;
-; CrawlComponent.php line: 1176
+; CrawlComponent.php line: 1173
 crawl_component_page_options_running_tests = ""
 ;
-; CrawlComponent.php line: 1356
+; CrawlComponent.php line: 1354
 crawl_component_results_editor_update = "編輯者更新結果"
 ;
-; CrawlComponent.php line: 1371
+; CrawlComponent.php line: 1369
 crawl_component_edited_pages = "編輯頁面"
 ;
-; CrawlComponent.php line: 1384
+; CrawlComponent.php line: 1382
 crawl_component_results_editor_need_url = "需要網址"
 ;
-; CrawlComponent.php line: 1390
+; CrawlComponent.php line: 1388
 crawl_component_results_editor_page_updated = "更新頁面"
 ;
-; CrawlComponent.php line: 1403
+; CrawlComponent.php line: 1401
 crawl_component_results_editor_page_loaded = "載入頁面"
 ;
-; CrawlComponent.php line: 1434
+; CrawlComponent.php line: 1432
 crawl_component_media_kind = "多媒體類別"
 ;
-; CrawlComponent.php line: 1435
+; CrawlComponent.php line: 1433
 crawl_component_video = "影片"
 ;
-; CrawlComponent.php line: 1436
+; CrawlComponent.php line: 1434
 crawl_component_rss_feed = "RSS"
 ;
-; CrawlComponent.php line: 1437
+; CrawlComponent.php line: 1435
 crawl_component_html_feed = ""
 ;
-; CrawlComponent.php line: 1451
+; CrawlComponent.php line: 1449
 crawl_component_sources_indexes = ""
 ;
-; CrawlComponent.php line: 1506
+; CrawlComponent.php line: 1504
 crawl_component_no_source_type = ""
 ;
-; CrawlComponent.php line: 1520
+; CrawlComponent.php line: 1518
 crawl_component_missing_type = ""
 ;
-; CrawlComponent.php line: 1534
+; CrawlComponent.php line: 1532
 crawl_component_invalid_url = ""
 ;
-; CrawlComponent.php line: 1541
+; CrawlComponent.php line: 1539
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1558
+; CrawlComponent.php line: 1556
 crawl_component_media_source_added = "增加多媒體"
 ;
-; CrawlComponent.php line: 1571
+; CrawlComponent.php line: 1569
 crawl_component_missing_fields = ""
 ;
-; CrawlComponent.php line: 1579
+; CrawlComponent.php line: 1577
 crawl_component_subsearch_added = ""
 ;
-; CrawlComponent.php line: 1585
+; CrawlComponent.php line: 1583
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1591
+; CrawlComponent.php line: 1589
 crawl_component_media_source_deleted = "刪除多媒體"
 ;
-; CrawlComponent.php line: 1598
+; CrawlComponent.php line: 1596
 crawl_component_no_delete_source = ""
 ;
-; CrawlComponent.php line: 1605
+; CrawlComponent.php line: 1603
 crawl_component_subsearch_deleted = ""
 ;
-; CrawlComponent.php line: 1640
+; CrawlComponent.php line: 1638
 crawl_component_subsearch_updated = ""
 ;
-; CrawlComponent.php line: 1715
+; CrawlComponent.php line: 1713
 crawl_component_media_source_updated = ""
 ;
 ; SocialComponent.php line: 87
@@ -1149,196 +1149,196 @@ social_component_too_many_fragments = ""
 ; SocialComponent.php line: 2479
 social_component_mix_saved = ""
 ;
-; SystemComponent.php line: 84
+; SystemComponent.php line: 82
 system_component_select_machine = ""
 ;
-; SystemComponent.php line: 150
+; SystemComponent.php line: 148
 system_component_machine_added = "加入"
 ;
-; SystemComponent.php line: 154
+; SystemComponent.php line: 152
 system_component_machine_exists = "已存在"
 ;
-; SystemComponent.php line: 158
+; SystemComponent.php line: 156
 system_component_machine_incomplete = "未完成"
 ;
-; SystemComponent.php line: 165
+; SystemComponent.php line: 163
 system_component_machine_doesnt_exists = "不存在"
 ;
-; SystemComponent.php line: 186
+; SystemComponent.php line: 184
 system_component_stop_service_first = "停止服務"
 ;
-; SystemComponent.php line: 192
+; SystemComponent.php line: 190
 system_component_machine_deleted = "刪除"
 ;
-; SystemComponent.php line: 207
+; SystemComponent.php line: 205
 system_component_updatemode_toggled = ""
 ;
-; SystemComponent.php line: 253
+; SystemComponent.php line: 251
 system_component_no_machine_log = "無紀錄"
 ;
-; SystemComponent.php line: 277
+; SystemComponent.php line: 275
 system_component_machine_servers_updated = "服務更新"
 ;
-; SystemComponent.php line: 281
+; SystemComponent.php line: 279
 system_component_machine_no_action = "無動作"
 ;
-; SystemComponent.php line: 317
+; SystemComponent.php line: 315
 system_component_select_mode = ""
 ;
-; SystemComponent.php line: 359
+; SystemComponent.php line: 357
 system_component_locale_missing_info = ""
 ;
-; SystemComponent.php line: 366
+; SystemComponent.php line: 364
 system_component_locale_added = "增加語言"
 ;
-; SystemComponent.php line: 373
+; SystemComponent.php line: 371
 system_component_localename_doesnt_exists = "語言不存在"
 ;
-; SystemComponent.php line: 378
+; SystemComponent.php line: 376
 system_component_localename_deleted = "刪除語言"
 ;
-; SystemComponent.php line: 384
+; SystemComponent.php line: 382
 system_component_localename_doesnt_exists = "語言不存在"
 ;
-; SystemComponent.php line: 413
+; SystemComponent.php line: 411
 system_component_locale_updated = ""
 ;
-; SystemComponent.php line: 443
+; SystemComponent.php line: 441
 system_component_localestrings_updated = "語言更新"
 ;
-; SystemComponent.php line: 454
+; SystemComponent.php line: 452
 system_component_all_strings = ""
 ;
-; SystemComponent.php line: 455
+; SystemComponent.php line: 453
 system_component_missing_strings = ""
 ;
-; SystemComponent.php line: 558
+; SystemComponent.php line: 556
 system_component_configure_no_change_db = ""
 ;
-; SystemComponent.php line: 563
+; SystemComponent.php line: 561
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 566
+; SystemComponent.php line: 564
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 588
+; SystemComponent.php line: 597
 system_component_configure_disable_registration = ""
 ;
-; SystemComponent.php line: 590
+; SystemComponent.php line: 599
 system_component_configure_no_activation = ""
 ;
-; SystemComponent.php line: 592
+; SystemComponent.php line: 601
 system_component_configure_email_activation = ""
 ;
-; SystemComponent.php line: 594
+; SystemComponent.php line: 603
 system_component_configure_admin_activation = ""
 ;
-; SystemComponent.php line: 598
+; SystemComponent.php line: 607
 system_component_configure_no_advertisements = ""
 ;
-; SystemComponent.php line: 600
+; SystemComponent.php line: 609
 system_component_configure_yioop_advertisements = ""
 ;
-; SystemComponent.php line: 602
+; SystemComponent.php line: 611
 system_component_configure_external_advertisements = ""
 ;
-; SystemComponent.php line: 682
+; SystemComponent.php line: 691
 captchasettings_element_text_captcha = ""
 ;
-; SystemComponent.php line: 684
+; SystemComponent.php line: 693
 captchasettings_element_hash_captcha = ""
 ;
-; SystemComponent.php line: 686
+; SystemComponent.php line: 695
 captchasettings_element_image_captcha = ""
 ;
-; SystemComponent.php line: 691
+; SystemComponent.php line: 700
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 693
+; SystemComponent.php line: 702
 serversettings_element_zkp_authentication = ""
 ;
-; SystemComponent.php line: 698
+; SystemComponent.php line: 707
 serversettings_element_normal_authentication = ""
 ;
-; SystemComponent.php line: 723
+; SystemComponent.php line: 732
 system_component_settings_updated = ""
 ;
-; SystemComponent.php line: 726
+; SystemComponent.php line: 735
 system_component_no_update_settings = ""
 ;
-; SystemComponent.php line: 793
+; SystemComponent.php line: 802
 system_component_configure_use_absolute_path = "使用絕對路徑"
 ;
-; SystemComponent.php line: 798
+; SystemComponent.php line: 807
 system_component_configure_configure_diff_base_dir = ""
 ;
-; SystemComponent.php line: 823
+; SystemComponent.php line: 832
 system_component_configure_work_dir_set = "工作目錄配置"
 ;
-; SystemComponent.php line: 834
+; SystemComponent.php line: 843
 system_component_name_your_bot = "取名"
 ;
-; SystemComponent.php line: 859
+; SystemComponent.php line: 868
 system_component_configure_work_profile_made = "工作設置已建立"
 ;
-; SystemComponent.php line: 863
+; SystemComponent.php line: 872
 system_component_configure_no_set_config = "無設置"
 ;
-; SystemComponent.php line: 870
+; SystemComponent.php line: 879
 system_component_configure_no_create_profile = "未建立簡歷"
 ;
-; SystemComponent.php line: 877
+; SystemComponent.php line: 886
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 884
+; SystemComponent.php line: 893
 system_component_configure_work_dir_invalid = ""
 ;
-; SystemComponent.php line: 905
+; SystemComponent.php line: 914
 system_component_no_resource_folder = ""
 ;
-; SystemComponent.php line: 919
+; SystemComponent.php line: 928
 system_component_invalid_filetype = ""
 ;
-; SystemComponent.php line: 924
+; SystemComponent.php line: 933
 system_component_file_too_big = ""
 ;
-; SystemComponent.php line: 947
+; SystemComponent.php line: 956
 system_component_configure_profile_change = ""
 ;
-; SystemComponent.php line: 951
+; SystemComponent.php line: 960
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1000
+; SystemComponent.php line: 1010
 system_component_configure_reset_completed = ""
 ;
-; SystemComponent.php line: 1004
+; SystemComponent.php line: 1014
 system_component_configure_no_change_profile = ""
 ;
-; SystemComponent.php line: 1037
+; SystemComponent.php line: 1047
 system_component_describe_robot = ""
 ;
-; SystemComponent.php line: 1102
+; SystemComponent.php line: 1112
 system_component_php_version = "PHP版本"
 ;
-; SystemComponent.php line: 1110
+; SystemComponent.php line: 1120
 system_component_no_write_config_php = "PHP未寫入"
 ;
-; SystemComponent.php line: 1115
+; SystemComponent.php line: 1125
 system_component_no_write_work_dir = "未寫入目錄"
 ;
-; SystemComponent.php line: 1120
+; SystemComponent.php line: 1130
 system_component_post_size_small = "張貼小容量"
 ;
-; SystemComponent.php line: 1126
+; SystemComponent.php line: 1136
 system_component_missing_required = "缺少必要項目"
 ;
-; SystemComponent.php line: 1149
+; SystemComponent.php line: 1159
 system_component_missing_optional = "缺少選擇項目"
 ;
-; SystemComponent.php line: 1154
+; SystemComponent.php line: 1164
 system_component_check_passed = "通過檢查"
 ;
-; SystemComponent.php line: 1159
+; SystemComponent.php line: 1169
 system_component_using_local_config = "使用當地語言"
 ;
 ; MachineController.php line: 196
@@ -1470,82 +1470,82 @@ register_controller_check_email = ""
 ; RegisterController.php line: 1077
 register_controller_user_already_exists = ""
 ;
-; SearchController.php line: 251
+; SearchController.php line: 252
 search_controller_web = ""
 ;
-; SearchController.php line: 312
+; SearchController.php line: 313
 search_controller_logout_successful = ""
 ;
-; SearchController.php line: 517
+; SearchController.php line: 518
 search_controller_mix_info = ""
 ;
-; SearchController.php line: 523
+; SearchController.php line: 524
 search_controller_crawl_info = ""
 ;
-; SearchController.php line: 559
+; SearchController.php line: 560
 search_controller_search = ""
 ;
-; SearchController.php line: 663
+; SearchController.php line: 664
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 666
+; SearchController.php line: 667
 search_controller_no_index_set = ""
 ;
-; SearchController.php line: 1328
+; SearchController.php line: 1329
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1337
+; SearchController.php line: 1338
 search_controller_no_archive_page = ""
 ;
-; SearchController.php line: 1387
+; SearchController.php line: 1388
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1392
+; SearchController.php line: 1393
 search_controller_original_page = ""
 ;
-; SearchController.php line: 1409
+; SearchController.php line: 1410
 search_controller_extracted_title = ""
 ;
-; SearchController.php line: 1411
+; SearchController.php line: 1412
 search_controller_extracted_description = ""
 ;
-; SearchController.php line: 1413
+; SearchController.php line: 1414
 search_controller_extracted_links = ""
 ;
-; SearchController.php line: 1418
+; SearchController.php line: 1419
 search_controller_extracted_allow_paths = ""
 ;
-; SearchController.php line: 1424
+; SearchController.php line: 1425
 search_controller_extracted_disallow_paths = ""
 ;
-; SearchController.php line: 1430
+; SearchController.php line: 1431
 search_controller_crawl_delay = ""
 ;
-; SearchController.php line: 1494
+; SearchController.php line: 1495
 search_controller_cache_comment = ""
 ;
-; SearchController.php line: 1505
+; SearchController.php line: 1506
 search_controller_yioop_cache = ""
 ;
-; SearchController.php line: 1540
+; SearchController.php line: 1541
 search_controller_cached_version = ""
 ;
-; SearchController.php line: 1635
+; SearchController.php line: 1636
 search_controller_download_fetcher = ""
 ;
-; SearchController.php line: 1653
+; SearchController.php line: 1654
 search_controller_header_summaries = ""
 ;
-; SearchController.php line: 1767
+; SearchController.php line: 1768
 search_controller_history = ""
 ;
-; SearchController.php line: 1937
+; SearchController.php line: 1938
 search_controller_all_cached = ""
 ;
-; SearchController.php line: 1968
+; SearchController.php line: 1969
 search_controller_year = ""
 ;
-; SearchController.php line: 1969
+; SearchController.php line: 1970
 search_controller_month = ""
 ;
 ; SettingsController.php line: 115
@@ -1560,7 +1560,7 @@ static_controller_logout_successful = ""
 ; StaticController.php line: 147
 static_controller_complete_title = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views
+; /Applications/MAMP/htdocs/git/yioop/src//views
 ;
 ; AdminView.php line: 72
 admin_view_admin = "管理者"
@@ -1697,7 +1697,7 @@ crawlstatus_view_delete = ""
 ; CrawlstatusView.php line: 267
 crawlstatus_view_no_previous_crawl = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/elements
+; /Applications/MAMP/htdocs/git/yioop/src//views/elements
 ;
 ; ActivityElement.php line: 56
 activity_element_activities = ""
@@ -3649,7 +3649,7 @@ group_view_myfeeds = ""
 ; GroupView.php line: 143
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/helpers
+; /Applications/MAMP/htdocs/git/yioop/src//views/helpers
 ;
 ; FeedsHelper.php line: 65
 feeds_helper_view_feed_results = ""
@@ -3765,7 +3765,7 @@ toggle_helper_on = ""
 ; ToggleHelper.php line: 75
 toggle_helper_off = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//views/layouts
+; /Applications/MAMP/htdocs/git/yioop/src//views/layouts
 ;
 ; RssLayout.php line: 65
 rss_layout_title = ""
@@ -4310,19 +4310,19 @@ wiki_view_wiki = ""
 ; WikiView.php line: 159
 adminview_auto_logout_one_minute = ""
 ;
-; /Applications/MAMP/htdocs/git/yioop//library/indexing_plugins
+; /Applications/MAMP/htdocs/git/yioop/src//library/indexing_plugins
 ;
-; WordfilterPlugin.php line: 355
+; WordfilterPlugin.php line: 356
 wordfilter_plugin_settings_saved = ""
 ;
-; WordfilterPlugin.php line: 364
+; WordfilterPlugin.php line: 365
 wordfilter_plugin_defaults_restored = ""
 ;
-; WordfilterPlugin.php line: 468
+; WordfilterPlugin.php line: 469
 wordfilter_plugin_preferences = ""
 ;
-; WordfilterPlugin.php line: 472
+; WordfilterPlugin.php line: 473
 wordfilter_plugin_factory_settings = ""
 ;
-; WordfilterPlugin.php line: 484
+; WordfilterPlugin.php line: 485
 wordfilter_plugin_save = ""
diff --git a/locale/zh_CN/resources/Tokenizer.php b/src/locale/zh_CN/resources/Tokenizer.php
similarity index 96%
rename from locale/zh_CN/resources/Tokenizer.php
rename to src/locale/zh_CN/resources/Tokenizer.php
index 06e24f976..9812c62b4 100755
--- a/locale/zh_CN/resources/Tokenizer.php
+++ b/src/locale/zh_CN/resources/Tokenizer.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -32,7 +30,6 @@ namespace seekquarry\yioop\locale\zh_CN\resources;

 use seekquarry\yioop\library\PhraseParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Chinese specific tokenization code. Typically, tokenizer.php
  * either contains a stemmer for the language in question or
diff --git a/locale/zh_CN/resources/locale.js b/src/locale/zh_CN/resources/locale.js
similarity index 100%
rename from locale/zh_CN/resources/locale.js
rename to src/locale/zh_CN/resources/locale.js
diff --git a/locale/zh_CN/resources/segment_word_grams.ftr b/src/locale/zh_CN/resources/segment_word_grams.ftr
similarity index 100%
rename from locale/zh_CN/resources/segment_word_grams.ftr
rename to src/locale/zh_CN/resources/segment_word_grams.ftr
diff --git a/locale/zh_CN/statistics.txt b/src/locale/zh_CN/statistics.txt
similarity index 100%
rename from locale/zh_CN/statistics.txt
rename to src/locale/zh_CN/statistics.txt
diff --git a/models/ActivityModel.php b/src/models/ActivityModel.php
similarity index 97%
rename from models/ActivityModel.php
rename to src/models/ActivityModel.php
index 536aac15d..843c92a33 100755
--- a/models/ActivityModel.php
+++ b/src/models/ActivityModel.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\models;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This is class is used to handle
  * db results related to Administration Activities
@@ -116,7 +115,7 @@ class ActivityModel extends Model
             " WHERE TRANSLATION_ID=:id AND LOCALE_ID=:locale_id " .
             $db->limitOffset(1);
             // maybe do left join at some point
-        while($activities[$i] = $db->fetchArray($result)) {
+        while ($activities[$i] = $db->fetchArray($result)) {
             $id = $activities[$i]['TRANSLATION_ID'];
             $result_sub =  $db->execute($sub_sql,
                 [":id" => $id, ":locale_id" => $locale_id]);
@@ -134,4 +133,3 @@ class ActivityModel extends Model
         return $activities;
     }
 }
- ?>
diff --git a/models/AdkeywordModel.php b/src/models/AdkeywordModel.php
similarity index 87%
rename from models/AdkeywordModel.php
rename to src/models/AdkeywordModel.php
index e5aaa13b0..af0d099b6 100644
--- a/models/AdkeywordModel.php
+++ b/src/models/AdkeywordModel.php
@@ -30,8 +30,6 @@
  */
 namespace seekquarry\yioop\models;

-
-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This class is used to handle
  * database statements related to Advertisement_keyword
@@ -39,7 +37,7 @@ if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
  * @author Pushkar Umaranikar
  * @package seek_quarry\model
  */
-class AdKeywordModel extends Model
+class AdkeywordModel extends Model
 {
     /**
      * Associations of the form
@@ -63,7 +61,7 @@ class AdKeywordModel extends Model
      * @param mixed $args any additional arguments which should be used to
      *     determine these tables (in this case none)
      */
-    public function selectCallback($args = NULL)
+    public function selectCallback($args = null)
     {
         return "ID, KEYWORD, BID_AMOUNT, BID_DATE";
     }
@@ -73,7 +71,7 @@ class AdKeywordModel extends Model
      * @param mixed $args any additional arguments which should be used to
      *     determine these tables (in this case none)
      */
-    public function fromCallback($args = NULL)
+    public function fromCallback($args = null)
     {
         return "ADVERTISEMENT_KEYWORD";
     }
@@ -83,7 +81,7 @@ class AdKeywordModel extends Model
      * @param mixed $args any additional arguments which should be used to
      *     determine these tables (in this case none)
      */
-    public function whereCallback($args = NULL)
+    public function whereCallback($args = null)
     {
         return "";
     }
@@ -97,8 +95,8 @@ class AdKeywordModel extends Model
         $db = $this->db;
         $sql = "INSERT INTO ADVERTISEMENT_KEYWORD(KEYWORD, BID_AMOUNT, BID_DATE)
             VALUES (?, ?, ?)";
-        for ($i=0; $i< count($adv_keyword); $i++ ) {
-           $result = $db->execute($sql, [$adv_keyword[$i]['KEYWORD'],
+        for ($i=0; $i< count($adv_keyword); $i++) {
+            $result = $db->execute($sql, [$adv_keyword[$i]['KEYWORD'],
                $adv_keyword[$i]['BID_AMOUNT'], $adv_keyword[$i]['BID_DATE']]);
         }
     }
@@ -124,7 +122,7 @@ class AdKeywordModel extends Model
         $db = $this->db;
         $sql = "SELECT KEYWORD FROM ADVERTISEMENT_KEYWORD WHERE KEYWORD=? AND
             BID_DATE= ?";
-        $result = $db->execute($sql,array($keyword, $bid_date));
+        $result = $db->execute($sql, array($keyword, $bid_date));
         if ($result) {
             if ($mix = $db->fetchArray($result)) {
                 return true;
@@ -140,12 +138,12 @@ class AdKeywordModel extends Model
      * @param date $bid_date date associated with keyword
      * @return integer value representing bid amount
      */
-    public function getBidAmount($keyword,$bid_date)
+    public function getBidAmount($keyword, $bid_date)
     {
         $db = $this->db;
         $sql= "SELECT BID_AMOUNT FROM ADVERTISEMENT_KEYWORD WHERE KEYWORD=? AND
             BID_DATE=?";
-        $result = $db->execute($sql, [$keyword,$bid_date]);
+        $result = $db->execute($sql, [$keyword, $bid_date]);
         if (!$result) {
             return false;
         }
@@ -159,7 +157,7 @@ class AdKeywordModel extends Model
      * @param integer $bid_amount associated with keyword
      * @param date $bid_date associated with keyword
      */
-    public function updateBidAmount($keyword,$bid_amount,$bid_date,$is_new)
+    public function updateBidAmount($keyword, $bid_amount, $bid_date, $is_new)
     {
         $db = $this->db;
         ($is_new) ?
@@ -167,6 +165,6 @@ class AdKeywordModel extends Model
                AND BID_DATE=?":
         $sql= "UPDATE ADVERTISEMENT_KEYWORD SET BID_AMOUNT= BID_AMOUNT +? WHERE
                KEYWORD=? AND BID_DATE=?";
-        $result = $db->execute($sql,array($bid_amount,$keyword,$bid_date));
+        $result = $db->execute($sql, array($bid_amount, $keyword, $bid_date));
     }
 }
diff --git a/models/AdmetadataModel.php b/src/models/AdmetadataModel.php
similarity index 87%
rename from models/AdmetadataModel.php
rename to src/models/AdmetadataModel.php
index 20b056716..11800d998 100644
--- a/models/AdmetadataModel.php
+++ b/src/models/AdmetadataModel.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\models;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This class is used to handle
  * database statements related to Advertisement Metadata
@@ -38,7 +37,7 @@ if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
  * @author Pushkar Umaranikar
  * @package seek_quarry\model
  */
-class AdMetaDataModel extends Model
+class AdmetadataModel extends Model
 {
     /**
      * Associations of the form
@@ -62,7 +61,7 @@ class AdMetaDataModel extends Model
      * @param mixed $args any additional arguments which should be used to
      *     determine these tables (in this case none)
      */
-    public function selectCallback($args = NULL)
+    public function selectCallback($args = null)
     {
         return "AD_ID, CLICKS, IMPRESSIONS";
     }
@@ -72,7 +71,7 @@ class AdMetaDataModel extends Model
      * @param mixed $args any additional arguments which should be used to
      *     determine these tables (in this case none)
      */
-    public function fromCallback($args = NULL)
+    public function fromCallback($args = null)
     {
         return "ADVERTISEMENT_METADATA";
     }
@@ -82,7 +81,7 @@ class AdMetaDataModel extends Model
      * @param mixed $args any additional arguments which should be used to
      *     determine these tables (in this case none)
      */
-    public function whereCallback($args = NULL)
+    public function whereCallback($args = null)
     {
         return "";
     }
@@ -96,7 +95,7 @@ class AdMetaDataModel extends Model
     {
         $db = $this->db;
         $sql = "SELECT AD_ID FROM ADVERTISEMENT_METADATA WHERE AD_ID = ?";
-        $result = $db->execute($sql,array($ad_id));
+        $result = $db->execute($sql, array($ad_id));
         if ($result) {
             if ($mix = $db->fetchArray($result)) {
                 return true;
@@ -111,7 +110,7 @@ class AdMetaDataModel extends Model
      * @param string $ad_id of an advertisement
      * @param boolean $is_new Checks if advertisement is newly created or not
      */
-    public function addImpression($ad_id,$is_new)
+    public function addImpression($ad_id, $is_new)
     {
         $db = $this->db;
         $clicks = 0;
@@ -119,12 +118,12 @@ class AdMetaDataModel extends Model
         if ($is_new) {
             $sql = "INSERT INTO ADVERTISEMENT_METADATA
             (AD_ID,CLICKS,IMPRESSIONS) VALUES (?, ?, ?)";
-         $result = $db->execute($sql,array(
-             $ad_id,$clicks,$impressions));
+            $result = $db->execute($sql, array(
+             $ad_id, $clicks, $impressions));
         } else {
             $sql= "UPDATE ADVERTISEMENT_METADATA SET
             IMPRESSIONS= IMPRESSIONS +1 WHERE AD_ID = ?";
-            $result = $db->execute($sql,array($ad_id));
+            $result = $db->execute($sql, array($ad_id));
         }
     }
     /**
@@ -137,7 +136,6 @@ class AdMetaDataModel extends Model
         $db = $this->db;
         $sql = "UPDATE ADVERTISEMENT_METADATA SET CLICKS = CLICKS + 1 WHERE
         AD_ID = ?";
-        $result = $db->execute($sql,array($ad_id));
+        $result = $db->execute($sql, array($ad_id));
     }
 }
-?>
diff --git a/models/AdvertisementModel.php b/src/models/AdvertisementModel.php
similarity index 89%
rename from models/AdvertisementModel.php
rename to src/models/AdvertisementModel.php
index a3d51ab77..b9416a630 100644
--- a/models/AdvertisementModel.php
+++ b/src/models/AdvertisementModel.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\models;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This class is used to handle
  * database statements related to Advertisements
@@ -64,7 +63,7 @@ class AdvertisementModel extends Model
      * @param mixed $args any additional arguments which should be used to
      *     determine these tables (in this case none)
      */
-    public function selectCallback($args = NULL)
+    public function selectCallback($args = null)
     {
         return "DISTINCT AD_NAME, AD_DESTINATION, AD_KEYWORDS,
         STATUS, AD_BUDGET";
@@ -75,7 +74,7 @@ class AdvertisementModel extends Model
      * @param mixed $args any additional arguments which should be used to
      *     determine these tables (in this case none)
      */
-    public function fromCallback($args = NULL)
+    public function fromCallback($args = null)
     {
         return " ADVERTISEMENT ";
     }
@@ -85,14 +84,14 @@ class AdvertisementModel extends Model
      * @param mixed $args any additional arguments which should be used to
      *     determine these tables (in this case none)
      */
-    public function whereCallback($args = NULL)
+    public function whereCallback($args = null)
     {
         return "USER_ID = '".$args['USER_ID']."'";
     }
     public function postQueryCallback($rows)
     {
-       return $rows = $this->getAdvertisements($rows);
-       return $rows;
+        return $rows = $this->getAdvertisements($rows);
+        return $rows;
     }
     /**
      * Adds newly created advertisement
@@ -144,16 +143,18 @@ class AdvertisementModel extends Model
      * @param object $advertisement_advertisement to be updated
      * @param string $ad_ids comma separated list of advertisement ids
      */
-    public function updateAdvertisement($advertisement,$ad_ids)
+    public function updateAdvertisement($advertisement, $ad_ids)
     {
         $sql = "UPDATE ADVERTISEMENT SET ";
         $comma ="";
         $params = [];
-        if ($advertisement == []) {return; }
+        if ($advertisement == []) {
+            return;
+        }
         foreach ($advertisement as $field => $value) {
             $sql .= "$comma $field=? ";
             $comma = ",";
-                $params[] = $value;
+            $params[] = $value;
         }
         $sql .= " WHERE AD_ID IN($ad_ids)";
         $db = $this->db;
@@ -190,7 +191,7 @@ class AdvertisementModel extends Model
         $relevant_ads = [];
         $i=0;
         while ($row[$i] = $db->fetchArray($result)) {
-            array_push($relevant_ads,$row[$i]);
+            array_push($relevant_ads, $row[$i]);
         }
         return $relevant_ads;
     }
@@ -210,7 +211,7 @@ class AdvertisementModel extends Model
         $advertisements = [];
         $i = 0;
         while ($row[$i] = $db->fetchArray($result)) {
-            array_push($advertisements,$row[$i]);
+            array_push($advertisements, $row[$i]);
         }
         return $advertisements;
     }
@@ -224,7 +225,7 @@ class AdvertisementModel extends Model
     public function getImpressions($ad_ids)
     {
         $db = $this->db;
-        $ids = join(',',$ad_ids);
+        $ids = join(',', $ad_ids);
         $sql = "SELECT SUM(IMPRESSIONS) AS IMPRESSIONS FROM
               ADVERTISEMENT_METADATA WHERE AD_ID IN ($ids)";
         $result = $db->execute($sql);
@@ -239,16 +240,16 @@ class AdvertisementModel extends Model
      * @param string $ad_keywords comma separated list of keywords
      * @return array of advertisement ids
      */
-    public function getAdvertisementIds($ad_name,$ad_destination,$ad_keywords)
+    public function getAdvertisementIds($ad_name, $ad_destination, $ad_keywords)
     {
         $db = $this->db;
         $sql = "SELECT * FROM ADVERTISEMENT WHERE AD_NAME=? AND
                AD_DESTINATION=? AND AD_KEYWORDS=?";
-        $result = $db->execute($sql, [$ad_name,$ad_destination, $ad_keywords]);
+        $result = $db->execute($sql, [$ad_name, $ad_destination, $ad_keywords]);
         $i = 0;
         $ad_ids = [];
-        while($row[$i] = $db->fetchArray($result)) {
-            array_push($ad_ids,$row[$i]['AD_ID']);
+        while ($row[$i] = $db->fetchArray($result)) {
+            array_push($ad_ids, $row[$i]['AD_ID']);
         }
         return $ad_ids;
     }
@@ -266,15 +267,15 @@ class AdvertisementModel extends Model
             $temp_advdestination = $row['AD_DESTINATION'];
             $temp_adkeywords = $row['AD_KEYWORDS'];
             $ad_ids = $this->getAdvertisementIds(
-                $temp_advname,$temp_advdestination, $temp_adkeywords);
+                $temp_advname, $temp_advdestination, $temp_adkeywords);
             $impressions = $this -> getImpressions($ad_ids);
             $ad_dates = $this -> getAdvertisementdatesByIds($ad_ids);
             usort($ad_dates, [NS . "AdvertisementModel", "sortByDate"]);
             $row['START_DATE'] = $ad_dates[0];
             $row['END_DATE'] = $ad_dates[count($ad_dates)-1];
-            $row['AD_IDS'] = join(',',$ad_ids);
+            $row['AD_IDS'] = join(',', $ad_ids);
             $row['IMPRESSIONS'] = $impressions;
-            array_push($modified_rows,$row);
+            array_push($modified_rows, $row);
         }
         return $modified_rows;
     }
@@ -284,7 +285,7 @@ class AdvertisementModel extends Model
      * @param array of advertisement ids
      * @param integer value representing advertisement status
      */
-    public function deactivateAdvertisement($ad_ids,$status)
+    public function deactivateAdvertisement($ad_ids, $status)
     {
         $db = $this ->db;
         $sql = "UPDATE ADVERTISEMENT SET STATUS= ? WHERE AD_ID IN ($ad_ids)";
@@ -301,12 +302,12 @@ class AdvertisementModel extends Model
     public function getAdvertisementdatesByIds($ad_ids)
     {
         $db = $this ->db;
-        $ids = join(',',$ad_ids);
+        $ids = join(',', $ad_ids);
         $sql = "SELECT AD_DATE FROM ADVERTISEMENT WHERE AD_ID IN ($ids)";
         $result = $db->execute($sql);
         $ad_dates = [];
-        while($row = $db->fetchArray($result)) {
-            array_push($ad_dates,$row['AD_DATE']);
+        while ($row = $db->fetchArray($result)) {
+            array_push($ad_dates, $row['AD_DATE']);
         }
         return $ad_dates;
     }
diff --git a/models/CaptchaModel.php b/src/models/CaptchaModel.php
similarity index 91%
rename from models/CaptchaModel.php
rename to src/models/CaptchaModel.php
index a55698227..6d17a5aab 100755
--- a/models/CaptchaModel.php
+++ b/src/models/CaptchaModel.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\models;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This is class is used to handle the
  * captcha settings for Yioop
@@ -50,13 +49,13 @@ class CaptchaModel extends Model
     {
         $image = @imagecreatetruecolor(195, 35);
         // defines background color, random lines color and text color
-        $bg_color = imagecolorallocate($image, mt_rand(0,255), 255, 0);
+        $bg_color = imagecolorallocate($image, mt_rand(0, 255), 255, 0);
         imagefill($image, 0, 0, $bg_color);
         $lines_color = imagecolorallocate($image, 0x99, 0xCC, 0x99);
         $text_color = imagecolorallocate($image, mt_rand(0, 255), 0, 255);
         // draws random lines
-        for ($i = 0; $i < 4; $i++){
-            imageline($image, 0, rand(0,35), 195, rand(0,35),
+        for ($i = 0; $i < 4; $i++) {
+            imageline($image, 0, rand(0, 35), 195, rand(0, 35),
                 $lines_color);
         }
         $captcha_letter_array = str_split($captcha_text);
@@ -75,4 +74,3 @@ class CaptchaModel extends Model
         return $data_url;
     }
 }
- ?>
diff --git a/models/CrawlModel.php b/src/models/CrawlModel.php
similarity index 95%
rename from models/CrawlModel.php
rename to src/models/CrawlModel.php
index ec1bc18d0..457bfb320 100755
--- a/models/CrawlModel.php
+++ b/src/models/CrawlModel.php
@@ -38,8 +38,6 @@ use seekquarry\yioop\library\IndexArchiveBundle;
 use seekquarry\yioop\library\IndexManager;
 use seekquarry\yioop\library\UrlParser;

-
-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /** used to prevent cache page requests from being logged*/
 if (!defined("POST_PROCESSING") && !defined("NO_LOGGING")) {
     define("NO_LOGGING", true);
@@ -54,7 +52,7 @@ if (!defined("POST_PROCESSING") && !defined("NO_LOGGING")) {
  * @author Chris Pollett
  * @package seek_quarry\model
  */
-class CrawlModel extends ParallelModel implements CrawlConstants
+class CrawlModel extends ParallelModel
 {
     /**
      * Used to map between search crawl mix form variables and database columns
@@ -235,7 +233,7 @@ class CrawlModel extends ParallelModel implements CrawlConstants
         $sql = "SELECT TIMESTAMP, NAME FROM CRAWL_MIXES WHERE OWNER_ID=?";
         $result = $this->db->execute($sql, [$user_id]);
         $rows = [];
-        while($row = $this->db->fetchArray($result)) {
+        while ($row = $this->db->fetchArray($result)) {
             if ($with_components) {
                 $mix = $this->getCrawlMix($row['TIMESTAMP'], true);
                 $row['FRAGMENTS'] = $mix['FRAGMENTS'];
@@ -269,7 +267,7 @@ class CrawlModel extends ParallelModel implements CrawlConstants
             " TIMESTAMP = ?";
         $result = $db->execute($sql, [$timestamp]);
         $mix['FRAGMENTS'] = [];
-        while($row = $db->fetchArray($result)) {
+        while ($row = $db->fetchArray($result)) {
             $mix['FRAGMENTS'][$row['FRAGMENT_ID']]['RESULT_BOUND'] =
                 $row['RESULT_BOUND'];
         }
@@ -282,7 +280,7 @@ class CrawlModel extends ParallelModel implements CrawlConstants
             $result = $db->execute($sql, $params);
             $mix['COMPONENTS'] = [];
             $count = 0;
-            while($row =  $db->fetchArray($result)) {
+            while ($row =  $db->fetchArray($result)) {
                 $mix['FRAGMENTS'][$fragment_id]['COMPONENTS'][$count] =$row;
                 $count++;
             }
@@ -403,9 +401,8 @@ class CrawlModel extends ParallelModel implements CrawlConstants
      */
     public function deleteCrawlMixIteratorState($timestamp)
     {
-        global $INDEXING_PLUGINS;
         L\setLocaleObject(L\getLocaleTag());
-        $search_controller = new SearchController($INDEXING_PLUGINS);
+        $search_controller = new SearchController();
         $search_controller->clearQuerySavepoint($timestamp);

         $archive_dir = WORK_DIRECTORY."/schedules/".
@@ -454,7 +451,7 @@ class CrawlModel extends ParallelModel implements CrawlConstants
         }
         if (!isset($info["general"]["summarizer_option"])) {
             $info["general"]["summarizer_option"] = "";
-            }
+        }
         $n = [];
         $n[] = <<<EOT
 ; ***** BEGIN LICENSE BLOCK *****
@@ -550,7 +547,9 @@ EOT;
         $n[] = "[indexing_plugins]";
         if (isset($info["indexing_plugins"]['plugins'])) {
             foreach ($info["indexing_plugins"]['plugins'] as $plugin) {
-                if ($plugin == "") { continue; }
+                if ($plugin == "") {
+                    continue;
+                }
                 $n[] = "plugins[] = '$plugin';";
             }
         }
@@ -596,7 +595,7 @@ EOT;
             $info = IndexArchiveBundle::getArchiveInfo($dir);
             if (!isset($info['DESCRIPTION']) ||
                 $info['DESCRIPTION'] == null ||
-                strstr($info['DESCRIPTION'], "Archive created") ) {
+                strstr($info['DESCRIPTION'], "Archive created")) {
                 return $seed_info;
             }
             $index_info = unserialize($info['DESCRIPTION']);
@@ -689,7 +688,7 @@ EOT;
                         $new_info[$type][$type_info[1]];
                 }
             }
-            if (isset($new_info['indexing_plugins']['plugins']) ) {
+            if (isset($new_info['indexing_plugins']['plugins'])) {
                 $index_info[self::INDEXING_PLUGINS] =
                     $new_info['indexing_plugins']['plugins'];
             }
@@ -845,7 +844,7 @@ EOT;
             //get rid of cache info on Name machine
             $mask = CRAWL_DIR."/cache/".self::network_crawllist_base_name.
                 "*.txt";
-            array_map( "unlink", glob( $mask ) );
+            array_map("unlink", glob($mask));
             $delete_files = [
                 CRAWL_DIR."/cache/".self::network_base_name.
                     "$timestamp.txt",
@@ -887,7 +886,7 @@ EOT;
             " CRAWL_TIMESTAMP='$timestamp'";
         $result = $this->db->execute($sql);
         $rows = [];
-        while($rows[] =  $this->db->fetchArray($result)) ;
+        while ($rows[] =  $this->db->fetchArray($result)) ;

         foreach ($rows as $row) {
             $this->deleteCrawlMix($row['TIMESTAMP']);
@@ -927,7 +926,9 @@ EOT;
         if ($seed_info != null) {
             $scheduler_info[self::HASH_SEEN_URLS] = [];
             foreach ($seed_info['seed_sites']['url'] as $site) {
-                if ($site[0] == "#") { continue; } //ignore comments in file
+                if ($site[0] == "#") {
+                    continue;
+                } //ignore comments in file
                 $site_parts = preg_split("/\s+/", $site);
                 if (strlen($site_parts[0]) > 0) {
                     $scheduler_info[self::TO_CRAWL][] = [$site_parts[0], 1.0];
@@ -983,7 +984,7 @@ EOT;
             $cache_file = CRAWL_DIR."/cache/".self::network_crawllist_base_name.
                 "$arg.txt";
             if ($cache && file_exists($cache_file) && filemtime($cache_file)
-                + 300 > time() ) {
+                + 300 > time()) {
                 return unserialize(file_get_contents($cache_file));
             }
             $list_strings = $this->execMachines("getCrawlList",
@@ -1017,7 +1018,7 @@ EOT;
                 isset($index_info[self::CRAWL_TYPE]) &&
                 $index_info[self::CRAWL_TYPE] == self::ARCHIVE_CRAWL) {
                 continue;
-            } else if ($return_recrawls  &&
+            } elseif ($return_recrawls  &&
                 isset($index_info[self::CRAWL_TYPE]) &&
                 $index_info[self::CRAWL_TYPE] == self::ARCHIVE_CRAWL) {
                 $crawl['DESCRIPTION'] = "RECRAWL::";
@@ -1026,14 +1027,16 @@ EOT;
                 self::schedule_data_base_name.$crawl['CRAWL_TIME'];
             $crawl['RESUMABLE'] = false;
             if (is_dir($sched_path)) {
-            $sched_dir = opendir($sched_path);
-                while( ($name = readdir($sched_dir)) !==  false) {
+                $sched_dir = opendir($sched_path);
+                while (($name = readdir($sched_dir)) !==  false) {
                     $sub_path = "$sched_path/$name";
                     if (!is_dir($sub_path) || $name == '.' ||
-                        $name == '..') {continue; }
+                        $name == '..') {
+                        continue;
+                    }
                     $sub_dir = opendir($sub_path);
                     $i = 0;
-                    while(($sub_name = readdir($sub_dir)) !==  false && $i < 5){
+                    while (($sub_name = readdir($sub_dir)) !==  false && $i < 5) {
                         if ($sub_name[0] == 'A' && $sub_name[1] == 't') {
                             $crawl['RESUMABLE'] = true;
                             break 2;
@@ -1148,14 +1151,14 @@ EOT;
                crawl not active (do check for both scheduler and indexer) */
             if (filemtime(
                 CRAWL_DIR."/schedules/crawl_status.txt") +
-                    CRAWL_TIME_OUT < time() ) {
+                    CRAWL_TIME_OUT < time()) {
                 return true;
             }
             $schedule_status_exists =
                 file_exists(CRAWL_DIR."/schedules/schedule_status.txt");
             if ($schedule_status_exists &&
                 filemtime(CRAWL_DIR."/schedules/schedule_status.txt") +
-                    CRAWL_TIME_OUT < time() ) {
+                    CRAWL_TIME_OUT < time()) {
                 return true;
             }
         }
@@ -1302,7 +1305,7 @@ EOT;
                     if (isset($a_status[$field])) {
                         if ($status[$field] == "" ||
                             in_array($status[$field], ["BEGIN_CRAWL",
-                                "RESUME_CRAWL"] )) {
+                                "RESUME_CRAWL"])) {
                             $status[$field] = $a_status[$field];
                         }
                     }
@@ -1392,7 +1395,7 @@ EOT;
             chmod($dir, 0777);
         }
         $count = count($inject_urls);
-        if ($count > 0 ) {
+        if ($count > 0) {
             $now = time();
             $schedule_data = [];
             $schedule_data[self::SCHEDULE_TIME] =
@@ -1423,40 +1426,39 @@ EOT;
      */
      public function countWords($words, $machine_urls = null)
      {
-        if ($machine_urls != null && !$this->isSingleLocalhost($machine_urls)) {
-            $count_strings = $this->execMachines("countWords", $machine_urls,
+         if ($machine_urls != null && !$this->isSingleLocalhost($machine_urls)) {
+             $count_strings = $this->execMachines("countWords", $machine_urls,
                 serialize(array($words, $this->index_name)));
-            $word_counts = [];
-            foreach ($count_strings as $count_string) {
-                $a_word_counts = unserialize(L\webdecode(
+             $word_counts = [];
+             foreach ($count_strings as $count_string) {
+                 $a_word_counts = unserialize(L\webdecode(
                         $count_string[self::PAGE]));
-                if (is_array($a_word_counts)) {
-                    foreach ($a_word_counts as $word => $count) {
-                        $word_counts[$word] = (isset($word_counts[$word])) ?
+                 if (is_array($a_word_counts)) {
+                     foreach ($a_word_counts as $word => $count) {
+                         $word_counts[$word] = (isset($word_counts[$word])) ?
                             $word_counts[$word] + $count : $count;
-                    }
-                }
-            }
-            return $word_counts;
-        }
-        $index_archive = IndexManager::getIndex($this->index_name);
-        $hashes = [];
-        $lookup = [];
-        foreach ($words as $word) {
-            $tmp = L\crawlHash($word);
-            $hashes[] = $tmp;
-            $lookup[$tmp] = $word;
-        }
-        $word_key_counts =
+                     }
+                 }
+             }
+             return $word_counts;
+         }
+         $index_archive = IndexManager::getIndex($this->index_name);
+         $hashes = [];
+         $lookup = [];
+         foreach ($words as $word) {
+             $tmp = L\crawlHash($word);
+             $hashes[] = $tmp;
+             $lookup[$tmp] = $word;
+         }
+         $word_key_counts =
             $index_archive->countWordKeys($hashes);
-        $phrases = [];
-        $word_counts = [];
-        if (is_array($word_key_counts ) && count($word_key_counts ) > 0) {
-            foreach ($word_key_counts as $word_key =>$count) {
-                $word_counts[$lookup[$word_key]] = $count;
-            }
-        }
-        return $word_counts;
+         $phrases = [];
+         $word_counts = [];
+         if (is_array($word_key_counts) && count($word_key_counts) > 0) {
+             foreach ($word_key_counts as $word_key =>$count) {
+                 $word_counts[$lookup[$word_key]] = $count;
+             }
+         }
+         return $word_counts;
      }
-
 }
diff --git a/models/CronModel.php b/src/models/CronModel.php
similarity index 96%
rename from models/CronModel.php
rename to src/models/CronModel.php
index de0787f66..16af68195 100644
--- a/models/CronModel.php
+++ b/src/models/CronModel.php
@@ -32,9 +32,6 @@ namespace seekquarry\yioop\models;

 use seekquarry\yioop\library\FetchUrl;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** For crawlHash function */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * Used to remember the last time the web app ran periodic activities
  *
@@ -133,5 +130,3 @@ class CronModel extends Model
         set_error_handler(NS_LIB . "yioop_error_handler");
     }
 }
-
- ?>
diff --git a/models/GroupModel.php b/src/models/GroupModel.php
similarity index 95%
rename from models/GroupModel.php
rename to src/models/GroupModel.php
index fc9cd9364..a0eaa1f39 100644
--- a/models/GroupModel.php
+++ b/src/models/GroupModel.php
@@ -34,9 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\MediaConstants;
 use seekquarry\yioop\library\WikiParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** For crawlHash function */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * This is class is used to handle
  * db results related to Group Administration. Groups are collections of
@@ -170,8 +167,8 @@ class GroupModel extends Model implements MediaConstants
             " G.GROUP_ID = UG.GROUP_ID $like $limit";
         $result = $db->execute($sql, $param_array);
         $i = 0;
-        while($users[$i] = $db->fetchArray($result)) {
-           $i++;
+        while ($users[$i] = $db->fetchArray($result)) {
+            $i++;
         }
         unset($users[$i]); //last one will be null
         return $users;
@@ -236,7 +233,7 @@ class GroupModel extends Model implements MediaConstants
         $sql = "SELECT G.GROUP_ID AS GROUP_ID FROM ".
             " GROUPS G WHERE G.GROUP_NAME = ?";
         $result = $db->execute($sql, [$group_name]);
-        if (!$row = $db->fetchArray($result) ) {
+        if (!$row = $db->fetchArray($result)) {
             $last_id = -1;
         }
         $last_id = $row['GROUP_ID'];
@@ -297,7 +294,7 @@ class GroupModel extends Model implements MediaConstants
             $params[] = $status;
         }
         $result = $db->execute($sql, $params);
-        if (!$row = $db->fetchArray($result) ) {
+        if (!$row = $db->fetchArray($result)) {
             return false;
         }
         if ($row['NUM'] <= 0) {
@@ -331,7 +328,7 @@ class GroupModel extends Model implements MediaConstants
         $sql = "SELECT G.GROUP_ID AS GROUP_ID FROM ".
             "GROUPS G WHERE G.GROUP_NAME = ? ";
         $result = $db->execute($sql, [$group_name]);
-        if (!$row = $db->fetchArray($result) ) {
+        if (!$row = $db->fetchArray($result)) {
             return -1;
         }
         return $row['GROUP_ID'];
@@ -369,9 +366,13 @@ class GroupModel extends Model implements MediaConstants
         $groups = [];
         $sql = "SELECT REGISTER_TYPE FROM GROUPS G WHERE GROUP_ID=?";
         $result = $db->execute($sql, [$group_id]);
-        if (!$result) { return false; }
+        if (!$result) {
+            return false;
+        }
         $row = $db->fetchArray($result);
-        if (!$row) { return false; }
+        if (!$row) {
+            return false;
+        }
         return $row['REGISTER_TYPE'];
     }
     /**
@@ -390,7 +391,7 @@ class GroupModel extends Model implements MediaConstants
     {
         $db = $this->db;
         $group = $this->getRows(0, 1,
-            $total_rows, [["group_id","=", $group_id, ""]], $user_id);
+            $total_rows, [["group_id", "=", $group_id, ""]], $user_id);
         if (!is_numeric($user_id)) { //Postgres strict about types so being safe
             $user_id = PUBLIC_USER_ID;
         }
@@ -466,7 +467,7 @@ class GroupModel extends Model implements MediaConstants
             " ORDER BY G.GROUP_NAME $limit";
         $result = $db->execute($sql, $param_array);
         $i = 0;
-        while($groups[$i] = $db->fetchArray($result)) {
+        while ($groups[$i] = $db->fetchArray($result)) {
             $i++;
         }
         unset($groups[$i]); //last one will be null
@@ -540,7 +541,7 @@ class GroupModel extends Model implements MediaConstants
         $sql = "SELECT COUNT(*) AS NUM FROM USER_GROUP UG, GROUPS G WHERE
             UG.USER_ID != G.OWNER_ID AND UG.USER_ID=? AND UG.GROUP_ID=?";
         $result = $db->execute($sql, [$user_id, $group_id]);
-        if (!$row = $db->fetchArray($result) ) {
+        if (!$row = $db->fetchArray($result)) {
             return false;
         }
         if ($row['NUM'] <= 0) {
@@ -571,7 +572,9 @@ class GroupModel extends Model implements MediaConstants
         $db = $this->db;
         $sql = "SELECT * FROM GROUP_ITEM WHERE ID=? " . $db->limitOffset(1);
         $result = $db->execute($sql, [$item_id]);
-        if (!$result) { return false; }
+        if (!$result) {
+            return false;
+        }
         $row = $db->fetchArray($result);
         return $row;
     }
@@ -597,10 +600,12 @@ class GroupModel extends Model implements MediaConstants
             $params[] = $exclude_id;
         }
         $result = $db->execute($sql, $params);
-        if (!$result) { return false; }
+        if (!$result) {
+            return false;
+        }
         $i = 0;
         $rows = [];
-        while($rows[$i] = $db->fetchArray($result)) {
+        while ($rows[$i] = $db->fetchArray($result)) {
             $i++;
         }
         unset($rows[$i]); //last one will be null
@@ -706,9 +711,9 @@ class GroupModel extends Model implements MediaConstants
         $limit = $db->limitOffset($limit, $num);
         $any_fields = ["access", "register"];
         $is_thread = false;
-        foreach($search_array as $search_item) {
-            if($search_item[0] == 'parent_id') {
-                if($search_item[2] > 0) {
+        foreach ($search_array as $search_item) {
+            if ($search_item[0] == 'parent_id') {
+                if ($search_item[2] > 0) {
                     $is_thread = true;
                 }
                 break;
@@ -725,7 +730,7 @@ class GroupModel extends Model implements MediaConstants
             $non_public_where = " (UG.USER_ID='$user_id' OR ".
                 " G.REGISTER_TYPE IN ('".PUBLIC_JOIN."','".
                 PUBLIC_BROWSE_REQUEST_JOIN."') ) AND ";
-            if(!$is_thread) {
+            if (!$is_thread) {
                 $non_public_where .=
                  "TYPE = " . STANDARD_GROUP_ITEM. " AND ";
             }
@@ -785,12 +790,12 @@ class GroupModel extends Model implements MediaConstants
         $i = 0;
         $read_only = ($user_id == PUBLIC_GROUP_ID);
         if ($read_only) {
-            while($groups[$i] = $db->fetchArray($result)) {
+            while ($groups[$i] = $db->fetchArray($result)) {
                 $groups[$i]["MEMBER_ACCESS"] = GROUP_READ;
                 $i++;
             }
         } else {
-            while($groups[$i] = $db->fetchArray($result)) {
+            while ($groups[$i] = $db->fetchArray($result)) {
                 $i++;
             }
         }
@@ -818,9 +823,9 @@ class GroupModel extends Model implements MediaConstants
         $db = $this->db;
         $any_fields = ["access", "register"];
         $is_thread = false;
-        foreach($search_array as $search_item) {
-            if($search_item[0] == 'parent_id') {
-                if($search_item[2] > 0) {
+        foreach ($search_array as $search_item) {
+            if ($search_item[0] == 'parent_id') {
+                if ($search_item[2] > 0) {
                     $is_thread = true;
                 }
                 break;
@@ -837,7 +842,7 @@ class GroupModel extends Model implements MediaConstants
             $non_public_where = " (UG.USER_ID='$user_id' OR ".
                 " G.REGISTER_TYPE IN ('".PUBLIC_JOIN."','".
                 PUBLIC_BROWSE_REQUEST_JOIN."') ) AND ";
-            if(!$is_thread) {
+            if (!$is_thread) {
                 $non_public_where .=
                  "TYPE = " . STANDARD_GROUP_ITEM. " AND ";
             }
@@ -903,9 +908,13 @@ class GroupModel extends Model implements MediaConstants
         $sql = "SELECT COUNT(*) AS NUM FROM GROUP_ITEM_VOTE WHERE USER_ID = ?
             AND ITEM_ID = ?";
         $result = $db->execute($sql, [$user_id, $post_id]);
-        if (!$result) { return false; }
+        if (!$result) {
+            return false;
+        }
         $row = $db->fetchArray($result);
-        if (!$row || !isset($row['NUM'])) { return false; }
+        if (!$row || !isset($row['NUM'])) {
+            return false;
+        }
         return ($row['NUM'] > 0);
     }
     /**
@@ -1008,7 +1017,9 @@ class GroupModel extends Model implements MediaConstants
         $sql = "SELECT ID FROM GROUP_PAGE WHERE GROUP_ID = ?
             AND TITLE=? AND LOCALE_TAG= ?";
         $result = $db->execute($sql, [$group_id, $page_name, $locale_tag]);
-        if (!$result) { return false; }
+        if (!$result) {
+            return false;
+        }
         $row = $db->fetchArray($result);
         if ($row) {
             return $row["ID"];
@@ -1043,7 +1054,9 @@ class GroupModel extends Model implements MediaConstants
                 WHERE GROUP_ID = ? AND TITLE=? AND LOCALE_TAG = ?";
         }
         $result = $db->execute($sql, [$group_id, $name, $locale_tag]);
-        if (!$result) { return false; }
+        if (!$result) {
+            return false;
+        }
         $row = $db->fetchArray($result);
         if (!$row) {
             return false;
@@ -1063,7 +1076,9 @@ class GroupModel extends Model implements MediaConstants
         $sql = "SELECT GROUP_ID, LOCALE_TAG, TITLE AS PAGE_NAME FROM GROUP_PAGE
             WHERE DISCUSS_THREAD = ?";
         $result = $db->execute($sql,  [$page_thread_id]);
-        if (!$result) { return false; }
+        if (!$result) {
+            return false;
+        }
         $row = $db->fetchArray($result);
         if (!$row) {
             return false;
@@ -1082,7 +1097,9 @@ class GroupModel extends Model implements MediaConstants
         $sql = "SELECT GROUP_ID, LOCALE_TAG, TITLE AS PAGE_NAME FROM GROUP_PAGE
             WHERE ID = ?";
         $result = $db->execute($sql, [$page_id]);
-        if (!$result) { return false; }
+        if (!$result) {
+            return false;
+        }
         $row = $db->fetchArray($result);
         if (!$row) {
             return false;
@@ -1105,7 +1122,9 @@ class GroupModel extends Model implements MediaConstants
             GROUP_PAGE_HISTORY HP WHERE HP.PAGE_ID = ?
             AND HP.PUBDATE=? AND HP.PAGE_ID=GP.ID";
         $result = $db->execute($sql, [$page_id, $pubdate]);
-        if (!$result) { return false; }
+        if (!$result) {
+            return false;
+        }
         $row = $db->fetchArray($result);
         if (!isset($row["PAGE"])) {
             return false;
@@ -1148,7 +1167,7 @@ class GroupModel extends Model implements MediaConstants
             $result = $db->execute($sql, [$page_id]);
             $i = 0;
             if ($result) {
-                while($pages[$i] = $db->fetchArray($result)) {
+                while ($pages[$i] = $db->fetchArray($result)) {
                     $i++;
                 }
                 unset($pages[$i]); //last one will be null
@@ -1182,7 +1201,7 @@ class GroupModel extends Model implements MediaConstants
         $thumb_path = "$thumb_prefix_path/$thumb_page_folder";
         if (file_exists($group_path) && file_exists($thumb_path)) {
             return [$group_path, $thumb_path];
-        } else if (!$create) {
+        } elseif (!$create) {
             return false;
         }
         if (!file_exists(APP_DIR) && !mkdir(APP_DIR)) {
@@ -1197,7 +1216,7 @@ class GroupModel extends Model implements MediaConstants
         if (!file_exists($thumb_prefix_path) && !mkdir($thumb_prefix_path)) {
             return false;
         }
-        if ((file_exists($group_path) || mkdir($group_path) ) &&
+        if ((file_exists($group_path) || mkdir($group_path)) &&
             (file_exists($thumb_path) || mkdir($thumb_path))) {
             return [$group_path, $thumb_path];
         }
@@ -1221,7 +1240,7 @@ class GroupModel extends Model implements MediaConstants
             list($folder, $thumb_folder) = $default_folders;
         }
         if (!preg_match_all('/\(\(resource:(.+?)\|(.+?)\)\)/ui',
-            $parsed_page, $matches)){
+            $parsed_page, $matches)) {
             return $parsed_page;
         }
         $num_matches = count($matches[0]);
@@ -1244,7 +1263,7 @@ class GroupModel extends Model implements MediaConstants
                     list($current_folder, $current_thumb_folder) =
                         $current_folders;
                 }
-            } else if (!$default_folders) {
+            } elseif (!$default_folders) {
                 continue;
             } else {
                 $resource_name = $resource_namespace_name;
@@ -1264,7 +1283,7 @@ class GroupModel extends Model implements MediaConstants
                     " alt='$resource_description' />";
                 $parsed_page = preg_replace('/'.preg_quote($match_string).'/u',
                     $replace_string, $parsed_page);
-            } else if (in_array($mime_type, ['video/mp4', 'video/ogg',
+            } elseif (in_array($mime_type, ['video/mp4', 'video/ogg',
                 'video/avi', 'video/quicktime', 'video/x-flv',
                 'video/x-ms-wmv', 'video/webm', 'application/ogg'])) {
                 $replace_string = "<video style='width:100%' ".
@@ -1292,7 +1311,7 @@ class GroupModel extends Model implements MediaConstants
                 $parsed_page = preg_replace('/'.
                     preg_quote($match_string, '/').'/u',
                     $replace_string, $parsed_page);
-            } else if (in_array($mime_type, ['audio/basic', 'audio/L24',
+            } elseif (in_array($mime_type, ['audio/basic', 'audio/L24',
                 'audio/mp4', 'audio/mpeg', 'audio/ogg', 'audio/opus',
                 'audio/vorbis', 'audio/vnd.rn-realaudio', 'audio/vnd.wave',
                 'audio/webm'])) {
@@ -1324,7 +1343,9 @@ class GroupModel extends Model implements MediaConstants
     {
         $folders = $this->getGroupPageResourcesFolders($group_id,
             $page_id);
-        if (!$folders) {return false; }
+        if (!$folders) {
+            return false;
+        }
         list($folder, $thumb_folder) = $folders;
         $file_name = "$folder/$resource_name";
         $thumb_name = "$thumb_folder/$resource_name.jpg";
@@ -1348,7 +1369,9 @@ class GroupModel extends Model implements MediaConstants
     {
         $folders = $this->getGroupPageResourcesFolders($group_id,
             $page_id);
-        if (!$folders) {return false; }
+        if (!$folders) {
+            return false;
+        }
         list($folder, $thumb_folder) = $folders;
         if ($folder && file_exists($folder)) {
             $this->db->unlinkRecursive($folder);
@@ -1373,7 +1396,9 @@ class GroupModel extends Model implements MediaConstants
     {
         $folders = $this->getGroupPageResourcesFolders($group_id,
             $page_id);
-        if (!$folders) {return false; }
+        if (!$folders) {
+            return false;
+        }
         list($folder, $thumb_folder) = $folders;
         $old_file_name = "$folder/$old_resource_name";
         $old_thumb_name = "$thumb_folder/$old_resource_name.jpg";
@@ -1407,7 +1432,9 @@ class GroupModel extends Model implements MediaConstants
     {
         $folders = $this->getGroupPageResourcesFolders($group_id, $page_id,
             true);
-        if (!$folders) {return false; }
+        if (!$folders) {
+            return false;
+        }
         list($folder, $thumb_folder) = $folders;
         $file_size = filesize($tmp_name);
         if (!move_uploaded_file($tmp_name, "$folder/$file_name")) {
@@ -1423,7 +1450,7 @@ class GroupModel extends Model implements MediaConstants
         }
         if (defined('FFMPEG') && in_array($mime_type, [
             'video/mp4', 'video/webm', 'video/ogg', 'video/avi',
-            'video/quicktime']) ) {
+            'video/quicktime'])) {
             $make_thumb_string =
                 FFMPEG." -i \"$folder/$file_name\" -vframes 1 -map 0:v:0".
                 " -vf \"scale=".THUMB_DIM.":".THUMB_DIM."\" ".
@@ -1439,10 +1466,10 @@ class GroupModel extends Model implements MediaConstants
                 $video_directory =
                     $convert_folder."/". L\crawlHash($file_name) . time();
                 mkdir($video_directory);
-                if (!file_exists($video_directory) && !mkdir($video_directory)){
+                if (!file_exists($video_directory) && !mkdir($video_directory)) {
                     return;
                 }
-                if(file_exists($video_directory)) {
+                if (file_exists($video_directory)) {
                     $split_file = $video_directory . self::SPLIT_FILE;
                     file_put_contents($split_file, "split this!");
                     $file_info = $video_directory . self::FILE_INFO;
@@ -1467,7 +1494,9 @@ class GroupModel extends Model implements MediaConstants
     public function getGroupPageResourceUrls($group_id, $page_id)
     {
         $folders = $this->getGroupPageResourcesFolders($group_id, $page_id);
-        if (!$folders) {return false; }
+        if (!$folders) {
+            return false;
+        }
         list($folder, $thumb_folder) = $folders;
         $folder_len = strlen($folder) + 1;
         $thumb_len = strlen($thumb_folder) + 1;
@@ -1508,7 +1537,9 @@ class GroupModel extends Model implements MediaConstants
     public function getGroupPageResourceUrl($group_id, $page_id, $resource_name)
     {
         $folders = $this->getGroupPageResourcesFolders($group_id, $page_id);
-        if (!$folders) {return false; }
+        if (!$folders) {
+            return false;
+        }
         list($folder, ) = $folders;
         return "./?c=resource&amp;a=get&amp;f=resources".
             "&amp;g=$group_id&amp;p=$page_id&amp;n=$resource_name";
@@ -1573,7 +1604,7 @@ class GroupModel extends Model implements MediaConstants
             $i = 0;
             if ($result) {
                 $seperator_len = strlen("END_HEAD_VARS");
-                while($pages[$i] = $db->fetchArray($result)) {
+                while ($pages[$i] = $db->fetchArray($result)) {
                     $head_pos = strpos($pages[$i]['DESCRIPTION'],
                         "END_HEAD_VARS");
                     if ($head_pos) {
@@ -1583,7 +1614,7 @@ class GroupModel extends Model implements MediaConstants
                             if (preg_match('/page_alias\=(.+)/', $head,
                                 $matches)) {
                                 $pages[$i]['ALIAS'] = $matches[1];
-                            } else if ($pages[$i]['TYPE'] == 'page_alias') {
+                            } elseif ($pages[$i]['TYPE'] == 'page_alias') {
                                 $pages[$i]['TYPE'] = "standard";
                             }
                         } else {
@@ -1595,11 +1626,12 @@ class GroupModel extends Model implements MediaConstants
                         } else {
                             $pages[$i]['DESCRIPTION'] = mb_substr(
                                 $pages[$i]['DESCRIPTION'], $head_pos +
-                                $seperator_len, MIN_SNIPPET_LENGTH);
+                                $seperator_len, self::MIN_SNIPPET_LENGTH);
                         }
                     } else {
                         $pages[$i]['DESCRIPTION'] = mb_substr(
-                            $pages[$i]['DESCRIPTION'], 0, MIN_SNIPPET_LENGTH);
+                            $pages[$i]['DESCRIPTION'], 0,
+                            self::MIN_SNIPPET_LENGTH);
                         $pages[$i]['TYPE'] = "standard";
                     }

diff --git a/models/LocaleModel.php b/src/models/LocaleModel.php
similarity index 96%
rename from models/LocaleModel.php
rename to src/models/LocaleModel.php
index bad34897e..af689bc5c 100755
--- a/models/LocaleModel.php
+++ b/src/models/LocaleModel.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\models;
 use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Function for comparing two locale arrays by locale tag so can sort
  *
@@ -43,7 +42,8 @@ if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
  * @return int -1, 0, or 1 depending on which is alphabetically smaller or if
  *     they are the same size
  */
-function lessThanLocale($a, $b) {
+function lessThanLocale($a, $b)
+{
     if ($a["LOCALE_TAG"] == $b["LOCALE_TAG"]) {
         return 0;
     }
@@ -112,6 +112,10 @@ class LocaleModel extends Model
      * @var array
      */
     public $any_fields = ["mode", "active"];
+    /**
+     * Poor man's singleton to hold the locale for the current session
+     */
+    public static $current_locale = null;
     /**
      * {@inheritDoc}
      *
@@ -228,7 +232,7 @@ class LocaleModel extends Model
         $result = $db->execute($sql);
         $i = 0;
         $locales = [];
-        while($locales[$i] = $db->fetchArray($result)) {
+        while ($locales[$i] = $db->fetchArray($result)) {
             /*
                 the statistics text file contains info used to calculate
                 what fraction of strings have been translated
@@ -270,7 +274,6 @@ class LocaleModel extends Model
                         file_get_contents("$tag_prefix/statistics.txt"));
             }
             $i++;
-
         }
         unset($locales[$i]); //last one will be null
         usort($locales, NS . "Models\\lessThanLocale");
@@ -291,7 +294,7 @@ class LocaleModel extends Model
         $sql = "SELECT COUNT(*) AS NUM FROM LOCALE WHERE
             LOCALE_TAG=? ";
         $result = $db->execute($sql, $params);
-        if (!$row = $db->fetchArray($result) ) {
+        if (!$row = $db->fetchArray($result)) {
             return false;
         }
         if ($row['NUM'] <= 0) {
@@ -312,7 +315,7 @@ class LocaleModel extends Model
         $sql = "SELECT * FROM LOCALE WHERE
             LOCALE_TAG=? ";
         $result = $db->execute($sql, $params);
-        if (!$row = $db->fetchArray($result) ) {
+        if (!$row = $db->fetchArray($result)) {
             return "";
         }
         return $row;
@@ -330,7 +333,7 @@ class LocaleModel extends Model
         $sql = "SELECT LOCALE_NAME FROM LOCALE WHERE
             LOCALE_TAG=? ";
         $result = $db->execute($sql, $params);
-        if (!$row = $db->fetchArray($result) ) {
+        if (!$row = $db->fetchArray($result)) {
             return "";
         }
         return $row["LOCALE_NAME"];
@@ -431,7 +434,7 @@ class LocaleModel extends Model
                 "ON T.TRANSLATION_ID = TL.TRANSLATION_ID";
         }
         $result = $this->db->execute($sql, [$locale_tag]);
-        while($row = $this->db->fetchArray($result)) {
+        while ($row = $this->db->fetchArray($result)) {
             $data[$row['MSG_ID']] = $row['MSG_STRING'];
         }
         return $data;
@@ -491,10 +494,15 @@ class LocaleModel extends Model
      *     current locale where all %s have been replaced by the corresponding
      *     parameter values. Returns false if no translation
      */
-    public function translate($arr) {
-        if (!is_array($arr)) {return; }
+    public function translate($arr)
+    {
+        if (!is_array($arr)) {
+            return;
+        }
         $num_args = count($arr);
-        if ($num_args < 1) {return; }
+        if ($num_args < 1) {
+            return;
+        }
         $msg_id = $arr[0];

         $args = array_slice($arr, 1);
@@ -527,8 +535,7 @@ class LocaleModel extends Model
      */
     public function getLocaleDirection()
     {
-        switch ($this->writing_mode)
-        {
+        switch ($this->writing_mode) {
             case "lr-tb":
                 return "ltr";
             break;
@@ -553,8 +560,7 @@ class LocaleModel extends Model
      */
     public function getBlockProgression()
     {
-        switch ($this->writing_mode)
-        {
+        switch ($this->writing_mode) {
             case "lr-tb":
                 return "tb";
             break;
@@ -728,7 +734,7 @@ EOT;
         $n[] = ";\n; Strings to translate on various pages\n;";
         $n[] = "[strings]";
         foreach ($strings as $string) {
-            if ( isset($string[0]) && $string[0] == ";") {
+            if (isset($string[0]) && $string[0] == ";") {
                 $n[] = $string;
             } else {
                 $old_configure['strings'] = isset($old_configure['strings']) ?
@@ -787,12 +793,12 @@ EOT;
     {
         $new_translation = $this->isTranslated($string_id, $new_configure);
         $old_translation = $this->isTranslated($string_id, $old_configure);
-        if ($new_translation || ( isset($new_configure[$string_id]) &&
-            $new_configure[$string_id] === "" && $old_translation )) {
+        if ($new_translation || (isset($new_configure[$string_id]) &&
+            $new_configure[$string_id] === "" && $old_translation)) {
             $translation = $new_configure[$string_id];
-        } else if ($this->isTranslated($string_id, $old_configure)) {
+        } elseif ($this->isTranslated($string_id, $old_configure)) {
             $translation = $old_configure[$string_id];
-        } else if ($this->isTranslated($string_id, $fallback_configure)) {
+        } elseif ($this->isTranslated($string_id, $fallback_configure)) {
             $translation = $fallback_configure[$string_id];
         } else {
             $translation = $default_value;
@@ -828,7 +834,8 @@ EOT;
      *     extensions for example: .txt.gz .thtml .php ,etc
      */
     public function updateLocaleSubFolder($locale_pages_path,
-        $fallback_pages_path, $file_extensions) {
+        $fallback_pages_path, $file_extensions)
+    {
         $change = false;
         if (!file_exists($locale_pages_path)) {
             mkdir($locale_pages_path);
@@ -907,13 +914,13 @@ EOT;
             }
             $cur_path = $dir . '/' . $obj;
             if (is_dir($cur_path)) {
-                 $dir_strings =
+                $dir_strings =
                     $this->traverseExtractRecursive($cur_path, $extensions);
-                 if (count($dir_strings) > 0) {
-                      $strings[] = ";";
-                      $strings[] = "; $cur_path";
-                      $strings = array_merge($strings, $dir_strings);
-                 }
+                if (count($dir_strings) > 0) {
+                    $strings[] = ";";
+                    $strings[] = "; $cur_path";
+                    $strings = array_merge($strings, $dir_strings);
+                }
             }
             if (is_file($cur_path)) {
                 $path_parts = pathinfo($cur_path);
@@ -939,4 +946,3 @@ EOT;
         return $strings;
     }
 }
- ?>
diff --git a/models/MachineModel.php b/src/models/MachineModel.php
similarity index 95%
rename from models/MachineModel.php
rename to src/models/MachineModel.php
index 8aff50e8a..aab3b2a9a 100644
--- a/models/MachineModel.php
+++ b/src/models/MachineModel.php
@@ -35,9 +35,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\CrawlDaemon;
 use seekquarry\yioop\library\FetchUrl;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** For crawlHash function */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * This is class is used to handle
  * db results related to Machine Administration
@@ -118,7 +115,7 @@ class MachineModel extends Model
         $sql = "SELECT COUNT(*) AS NUM FROM MACHINE WHERE
             $field=? ";
         $result = $db->execute($sql, $params);
-        if (!$row = $db->fetchArray($result) ) {
+        if (!$row = $db->fetchArray($result)) {
             return false;
         }
         if ($row['NUM'] <= 0) {
@@ -157,7 +154,6 @@ class MachineModel extends Model
     {
         $sql = "DELETE FROM MACHINE WHERE NAME=?";
         $this->db->execute($sql, [$machine_name]);
-
     }
     /**
      *  Returns all the machine names stored in the DB
@@ -170,12 +166,11 @@ class MachineModel extends Model
         $sql = "SELECT * FROM MACHINE ORDER BY NAME DESC";
         $result = $this->db->execute($sql);
         $i = 0;
-        while($machines[$i] = $this->db->fetchArray($result)) {
+        while ($machines[$i] = $this->db->fetchArray($result)) {
             $i++;
         }
         unset($machines[$i]); //last one will be null
         return $machines;
-
     }
     /**
      * Returns the statuses of machines in the machine table of their
@@ -213,7 +208,9 @@ class MachineModel extends Model
         }
         $sql = "SELECT * FROM ACTIVE_PROCESS";
         $result = $this->db->execute($sql);
-        if (!$result) { return $machines; }
+        if (!$result) {
+            return $machines;
+        }
         $active_fetchers = [];
         $name_server_updater_on = false;
         while ($row = $this->db->fetchArray($result)) {
@@ -226,12 +223,12 @@ class MachineModel extends Model
                         $machines[$i]["STATUSES"][$row['TYPE']][
                             $row['ID']] = 0;
                     }
-                    if($machines[$i]['URL'] == NAME_SERVER && $row['TYPE'] ==
+                    if ($machines[$i]['URL'] == NAME_SERVER && $row['TYPE'] ==
                         "MediaUpdater") {
                         $name_server_updater_on = true;
                     }
                 }
-                if($row['NAME'] == "NAME_SERVER" && $row['TYPE'] ==
+                if ($row['NAME'] == "NAME_SERVER" && $row['TYPE'] ==
                     "MediaUpdater" && $row["ID"] == 0) {
                     $name_server_updater_on = true;
                 }
@@ -247,7 +244,7 @@ class MachineModel extends Model
         $machines['NAME_SERVER']['MediaUpdater'] = 0;
         if (isset($name_server_statuses['MediaUpdater'])) {
             $machines['NAME_SERVER']['MediaUpdater'] = 1;
-            if(isset($name_server_statuses['MediaUpdater'][-1]) &&
+            if (isset($name_server_statuses['MediaUpdater'][-1]) &&
                 $name_server_statuses['MediaUpdater'][-1]) {
                 $machines['NAME_SERVER']['MEDIA_UPDATER_TURNED_ON'] = 1;
             }
@@ -301,7 +298,7 @@ class MachineModel extends Model
      *
      * @param string $machine_name name of machine
      * @param string $action "start" or "stop"
-     * @param int $id
+     * @param int $id
      * @param string $type
      */
     public function update($machine_name, $action, $id, $type)
@@ -309,7 +306,7 @@ class MachineModel extends Model
         $db = $this->db;
         $time = time();
         $session = md5($time . AUTH_KEY);
-        if($machine_name == "NAME_SERVER") {
+        if ($machine_name == "NAME_SERVER") {
             $row = ["URL" => NAME_SERVER, "PARENT" => ""];
         } else {
             $sql = "SELECT URL, PARENT FROM MACHINE WHERE NAME=?";
@@ -362,4 +359,3 @@ class MachineModel extends Model
         }
     }
 }
-
diff --git a/models/Model.php b/src/models/Model.php
similarity index 94%
rename from models/Model.php
rename to src/models/Model.php
index f1b208b91..f1fe5abf6 100755
--- a/models/Model.php
+++ b/src/models/Model.php
@@ -36,17 +36,9 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\FetchUrl;
 use seekquarry\yioop\library\UrlParser;

-
-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**  For crawlHash function  */
 require_once BASE_DIR."/library/Utility.php";

-define("SCORE_PRECISION", 4);
-define("TITLE_LENGTH", 20);
-define("MAX_TITLE_LENGTH", 20);
-define("SNIPPET_LENGTH_LEFT", 60);
-define("SNIPPET_LENGTH_RIGHT", 50);
-define("MIN_SNIPPET_LENGTH", 100);
 /**
  *
  * This is a base class for all models
@@ -58,6 +50,12 @@ define("MIN_SNIPPET_LENGTH", 100);
  */
 class Model implements CrawlConstants
 {
+    const SCORE_PRECISION = 4;
+    const SNIPPET_TITLE_LENGTH = 20;
+    const MAX_SNIPPET_TITLE_LENGTH = 20;
+    const SNIPPET_LENGTH_LEFT = 60;
+    const SNIPPET_LENGTH_RIGHT = 50;
+    const MIN_SNIPPET_LENGTH = 100;
     /**
      * Default maximum character length of a search summary
      */
@@ -158,15 +156,15 @@ class Model implements CrawlConstants
                 $page[self::TITLE] = "";
             }
             $page[self::TITLE] = strip_tags($page[self::TITLE]);
-            if (strlen($page[self::TITLE]) == 0 ) {
-                $offset =
-                    min(mb_strlen($page[self::DESCRIPTION]), TITLE_LENGTH);
+            if (strlen($page[self::TITLE]) == 0) {
+                $offset = min(mb_strlen($page[self::DESCRIPTION]),
+                    self::SNIPPET_TITLE_LENGTH);
                 $end_title = mb_strpos($page[self::DESCRIPTION], " ", $offset);
                 $ellipsis = "";
-                if ($end_title > TITLE_LENGTH) {
+                if ($end_title > self::SNIPPET_TITLE_LENGTH) {
                     $ellipsis = "...";
-                    if ($end_title > MAX_TITLE_LENGTH) {
-                        $end_title = MAX_TITLE_LENGTH;
+                    if ($end_title > self::MAX_SNIPPET_TITLE_LENGTH) {
+                        $end_title = self::MAX_SNIPPET_TITLE_LENGTH;
                     }
                 }
                 $page[self::TITLE] =
@@ -196,7 +194,7 @@ class Model implements CrawlConstants
                         $page[self::DESCRIPTION]), 0, $description_length);
             }
             $page[self::SCORE] = mb_substr($page[self::SCORE], 0,
-                SCORE_PRECISION);
+                self::SCORE_PRECISION);
             $pages[$i] = $page;
         }
         $output['TOTAL_ROWS'] = $results['TOTAL_ROWS'];
@@ -235,7 +233,7 @@ class Model implements CrawlConstants
             $len = mb_strlen($text_source);
             $offset = 0;
             $words = $start_words;
-            if (strlen($text_source) < MIN_SNIPPET_LENGTH) {
+            if (strlen($text_source) < self::MIN_SNIPPET_LENGTH) {
                 if (!isset($snippet_hash[$text_source])) {
                     $found = false;
                     foreach ($words as $word) {
@@ -271,18 +269,20 @@ class Model implements CrawlConstants
             $high = 0;
             sort($word_locations);
             foreach ($word_locations as $pos) {
-                if ($pos < $high) continue;
-                $pre_low = max($pos - SNIPPET_LENGTH_LEFT, 0);
-                if ($pre_low < mb_strlen($text_source)){
+                if ($pos < $high) {
+                    continue;
+                }
+                $pre_low = max($pos - self::SNIPPET_LENGTH_LEFT, 0);
+                if ($pre_low < mb_strlen($text_source)) {
                     $low = mb_stripos($text_source, " ", $pre_low);
                 }
                 if ($low > $pos) {
                     $low = $pre_low;
                 }
-                $pre_high = min($pos + SNIPPET_LENGTH_RIGHT, $len);
+                $pre_high = min($pos + self::SNIPPET_LENGTH_RIGHT, $len);
                 $high = mb_stripos($text_source, " ",
                     max(min($pre_high - 10, 0), min($pos, $len)));
-                if ($high > $pre_high + 10){
+                if ($high > $pre_high + 10) {
                     $high = $pre_high;
                 }
                 $cur_snippet = trim(
@@ -292,7 +292,9 @@ class Model implements CrawlConstants
                     $ellipsis = " ... ";
                     $snippet_hash[$cur_snippet] = true;
                 }
-                if (strlen($snippet_string) >= $description_length) break 2;
+                if (strlen($snippet_string) >= $description_length) {
+                    break 2;
+                }
             }
         }
         return $snippet_string;
@@ -365,7 +367,7 @@ class Model implements CrawlConstants
         if ($index_timestamp >= 0) {
             $index_archive_name= self::index_data_base_name.$index_timestamp;
             if (file_exists(
-                CRAWL_DIR."/cache/$index_archive_name/no_network.txt")){
+                CRAWL_DIR."/cache/$index_archive_name/no_network.txt")) {
                 return true;
             }
         }
@@ -473,15 +475,15 @@ class Model implements CrawlConstants
                     break;
                     case "CONTAINS":
                          $where .= "UPPER($field_name) LIKE UPPER('%".
-                            $db->escapeString( $value)."%')";
+                            $db->escapeString($value)."%')";
                     break;
                     case "BEGINS WITH":
                          $where .= "UPPER($field_name) LIKE UPPER('".
-                            $db->escapeString( $value)."%')";
+                            $db->escapeString($value)."%')";
                     break;
                     case "ENDS WITH":
                          $where .= "UPPER($field_name) LIKE UPPER('%".
-                            $db->escapeString( $value)."')";
+                            $db->escapeString($value)."')";
                     break;
                 }
                 $where_and = " AND ";
@@ -545,7 +547,7 @@ class Model implements CrawlConstants
         $rows = [];
         $row_callback = false;
         if ($result) {
-            while($rows[$i] = $db->fetchArray($result)) {
+            while ($rows[$i] = $db->fetchArray($result)) {
                 $rows[$i] = $this->rowCallback($rows[$i], $args);
                 $i++;
             }
diff --git a/models/ParallelModel.php b/src/models/ParallelModel.php
similarity index 96%
rename from models/ParallelModel.php
rename to src/models/ParallelModel.php
index e421a8324..0b71ea979 100755
--- a/models/ParallelModel.php
+++ b/src/models/ParallelModel.php
@@ -39,9 +39,6 @@ use seekquarry\yioop\library\IndexShard;
 use seekquarry\yioop\library\index_bundle_iterators\WordIterator;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** For crawlHash function */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * Base class of models that need access to data from multiple queue servers
  * Subclasses include @see CrawlModel and @see PhraseModel.
@@ -49,7 +46,7 @@ require_once BASE_DIR."/library/Utility.php";
  * @author Chris Pollett
  * @package seek_quarry\model
  */
-class ParallelModel extends Model implements CrawlConstants
+class ParallelModel extends Model
 {
     /**
      * Stores the name of the current index archive to use to get search
@@ -179,17 +176,17 @@ class ParallelModel extends Model implements CrawlConstants
                     if (isset($summaries[$lookup])) {
                         if (isset($summary[self::DESCRIPTION])) {
                             $description = trim($summary[self::DESCRIPTION]);
-                            if (!isset($summaries[$lookup][self::DESCRIPTION])){
+                            if (!isset($summaries[$lookup][self::DESCRIPTION])) {
                                 $summaries[$lookup][self::DESCRIPTION] = "";
                             }
-                            if (!isset($description_hash[$description])){
+                            if (!isset($description_hash[$description])) {
                                 $summaries[$lookup][self::DESCRIPTION] =
                                     $ellipsis . $description;
                                 $ellipsis = " .. ";
                                 $description_hash[$description] = true;
                             }
                         }
-                        foreach ($summary as $attr => $value){
+                        foreach ($summary as $attr => $value) {
                             if ($attr !=self::DESCRIPTION &&
                                 !isset($summaries[$lookup][$attr])) {
                                 $summaries[$lookup][$attr] = $value;
@@ -241,7 +238,7 @@ class ParallelModel extends Model implements CrawlConstants
                 $index_archive = IndexManager::getIndex($index_name);
                 $offset_gen_arr =
                     $this->lookupSummaryOffsetGeneration($url, $index_name);
-                if ($offset_gen_arr !== false){
+                if ($offset_gen_arr !== false) {
                     list($summary_offset, $generation) = $offset_gen_arr;
                 } else {
                     return false;
@@ -294,7 +291,9 @@ class ParallelModel extends Model implements CrawlConstants
                             }
                         }
                     }
-                    if (!$page || $page == []) {continue;}
+                    if (!$page || $page == []) {
+                        continue;
+                    }
                     $copy = false;
                     if ($summary == []) {
                         if (isset($page[self::DESCRIPTION])) {
@@ -304,13 +303,13 @@ class ParallelModel extends Model implements CrawlConstants
                         }
                         $ellipsis = " .. ";
                         $summary = $page;
-                    } else if (isset($page[self::DESCRIPTION])) {
+                    } elseif (isset($page[self::DESCRIPTION])) {
                         $description = trim($page[self::DESCRIPTION]);
                         if (!isset($summary[self::DESCRIPTION])) {
                             $summary[
                                 self::DESCRIPTION] = "";
                         }
-                        if (!isset($description_hash[$description])){
+                        if (!isset($description_hash[$description])) {
                             $summary[self::DESCRIPTION] .=
                                 $ellipsis . $description;
                             $ellipsis = " .. ";
@@ -325,7 +324,7 @@ class ParallelModel extends Model implements CrawlConstants
                         break;
                     }
                     if ($copy) {
-                        foreach ($page as $attr => $value){
+                        foreach ($page as $attr => $value) {
                             if ($attr !=self::DESCRIPTION &&
                                 !isset($summary[$attr])) {
                                 $summary[$attr] = $value;
@@ -406,7 +405,9 @@ class ParallelModel extends Model implements CrawlConstants
            It's important to quit early in the case that the timestamp is
            empty, as this could result in deleting all SavePoint* files below.
         */
-        if (!$save_timestamp) return;
+        if (!$save_timestamp) {
+            return;
+        }

         if ($machine_urls != null && !$this->isSingleLocalhost($machine_urls)) {
             $this->execMachines("clearQuerySavePoint", $machine_urls,
@@ -482,14 +483,13 @@ class ParallelModel extends Model implements CrawlConstants
      */
      public function getCurrentMachine()
      {
-        $current_machine_path = WORK_DIRECTORY .
+         $current_machine_path = WORK_DIRECTORY .
             "/schedules/current_machine_info.txt";
-        if(file_exists($current_machine_path)) {
-            $current_machine = file_get_contents($current_machine_path);
-        } else {
-            $current_machine = NAME_SERVER;
-        }
-        return $current_machine;
+         if (file_exists($current_machine_path)) {
+             $current_machine = file_get_contents($current_machine_path);
+         } else {
+             $current_machine = NAME_SERVER;
+         }
+         return $current_machine;
      }
 }
-
diff --git a/models/PhraseModel.php b/src/models/PhraseModel.php
similarity index 95%
rename from models/PhraseModel.php
rename to src/models/PhraseModel.php
index 0e7b16c26..774ff4752 100755
--- a/models/PhraseModel.php
+++ b/src/models/PhraseModel.php
@@ -37,7 +37,7 @@ use seekquarry\yioop\library\IndexManager;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\Thesaurus;
 use seekquarry\yioop\library\index_bundle_iterators as I;
-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
+
 /**
  * logging is done during crawl not through web,
  * so it will not be used in the phrase model
@@ -140,16 +140,16 @@ class PhraseModel extends ParallelModel
                     $pattern = "/(\s)(weight:(\S)+)/";
                     preg_match_all($pattern, $query, $matches);
                     if (isset($matches[2][0])) {
-                        $base_weight = substr($matches[2][0],strlen("weight:"));
+                        $base_weight = substr($matches[2][0], strlen("weight:"));
                         $disjunct_string =
-                            preg_replace($pattern,"", $disjunct_string);
+                            preg_replace($pattern, "", $disjunct_string);
                     }
                     $pattern = "/(\s)(w:(\S)+)/";
                     preg_match_all($pattern, $query, $matches);
                     if (isset($matches[2][0])) {
-                        $base_weight = substr($matches[2][0],strlen("w:"));
+                        $base_weight = substr($matches[2][0], strlen("w:"));
                         $disjunct_string =
-                            preg_replace($pattern,"", $disjunct_string);
+                            preg_replace($pattern, "", $disjunct_string);
                     }
                     $pipe2 = "";
                     if (isset($fragment['COMPONENTS'])) {
@@ -240,8 +240,8 @@ class PhraseModel extends ParallelModel
         $query_parts = [];
         $last_part = null;
         for ($i = 0;  $i < $num_parts ; $i++) {
-           if (isset($presentation_parts[$i][0])  &&
-                ($trimmed = trim($presentation_parts[$i][0])) != "" ) {
+            if (isset($presentation_parts[$i][0])  &&
+                ($trimmed = trim($presentation_parts[$i][0])) != "") {
                 $to_return = (isset($presentation_parts[$i][1])) ?
                     $presentation_parts[$i][1]: 1;
                 $query_parts[$trimmed][] =
@@ -252,11 +252,11 @@ class PhraseModel extends ParallelModel
                 } else {
                     $count ++;
                 }
-           }
+            }
         }
         $results_high = $low + $results_per_page;
         $num_phrases = count($query_parts);
-        if ($num_phrases > 0 ) {
+        if ($num_phrases > 0) {
             $num_last_parts = count($query_parts[$last_part]);
             if ($query_parts[$last_part][$num_last_parts - 1][0] +
                 $query_parts[$last_part][$num_last_parts - 1][1] < $low) {
@@ -266,7 +266,7 @@ class PhraseModel extends ParallelModel
         }
         $qpart = 0;
         if (is_string($save_timestamp)) {
-            $save_parts = explode("-",$save_timestamp);
+            $save_parts = explode("-", $save_timestamp);
             if (isset($save_parts[1])) {
                 $qpart = intval($save_parts[1]);
                 $save_timestamp = intval($save_parts[0]);
@@ -284,15 +284,21 @@ class PhraseModel extends ParallelModel
             $start_flag = false;
             $num_bounds = 0;
             foreach ($pre_result_bounds as $bound) {
-                if ($bound[0] > $results_high) { break; }
+                if ($bound[0] > $results_high) {
+                    break;
+                }
                 //rest of presentation after what we'll return so break
                 $phrase_high =  $bound[0] + $bound[1];
-                if ($phrase_high < $low) { continue; }
+                if ($phrase_high < $low) {
+                    continue;
+                }
                 // this part of presentation is before what we'll return so skip
                 $result_bounds[] = $bound;
                 $num_bounds++;
             }
-            if ($num_bounds == 0) { continue;}
+            if ($num_bounds == 0) {
+                continue;
+            }
             $is_last_part = ($phrase == $last_part);
             if ($is_last_part &&
                 $result_bounds[$num_bounds - 1][0] +
@@ -332,7 +338,9 @@ class PhraseModel extends ParallelModel
                     $delim = " ";
                     foreach ($disjunct_phrases as $disjunct) {
                         $check = trim($disjunct);
-                        if (isset($repeat_check[$check])) { continue; }
+                        if (isset($repeat_check[$check])) {
+                            continue;
+                        }
                         $repeat_check[$check] = true;
                         $phrase .= $delim . $this->guessSemantics(" ".
                             $disjunct);
@@ -381,14 +389,14 @@ class PhraseModel extends ParallelModel
                     for ($i = $bound[0];
                         $i < min($bound[0] + $bound[1], $results_high);
                         $i++) {
-                         if (isset($out_results['PAGES'][$out_count])) {
+                        if (isset($out_results['PAGES'][$out_count])) {
                             $results['PAGES'][$i] =
                                 $out_results['PAGES'][$out_count];
                             $out_count++;
-                         }
+                        }
                     }
                 }
-                if ($is_last_part && isset($out_results['TOTAL_ROWS'])){
+                if ($is_last_part && isset($out_results['TOTAL_ROWS'])) {
                     $total_rows = $out_results['TOTAL_ROWS'];
                 }
             }
@@ -404,7 +412,7 @@ class PhraseModel extends ParallelModel
              */
             $results['SAVE_POINT'] = $out_results['SAVE_POINT'];
         }
-        if (isset($results['PAGES'])){
+        if (isset($results['PAGES'])) {
             ksort($results['PAGES']);
             $results["PAGES"] = array_values($results["PAGES"]);
         }
@@ -420,12 +428,12 @@ class PhraseModel extends ParallelModel
         }
         if (isset($total_rows)) {
             $results['TOTAL_ROWS'] = $total_rows;
-        } else if (isset($results['PAGES'])) {
+        } elseif (isset($results['PAGES'])) {
             $results['TOTAL_ROWS'] = count($results['PAGES']);
         }

         if ($format) {
-            if (count($format_words) == 0 ){
+            if (count($format_words) == 0) {
                 $format_words = null;
             }
         } else {
@@ -434,7 +442,7 @@ class PhraseModel extends ParallelModel
         $description_length = self::DEFAULT_DESCRIPTION_LENGTH;
         if (isset($this->additional_meta_words) &&
             is_array($this->additional_meta_words)) {
-            foreach ($this->additional_meta_words as $meta_word => $length){
+            foreach ($this->additional_meta_words as $meta_word => $length) {
                 $pattern = "/$meta_word/";
                 if (preg_match($pattern, $input_phrase)) {
                     $description_length = $length;
@@ -446,10 +454,10 @@ class PhraseModel extends ParallelModel
             $results['TOTAL_ROWS'] > 0) {
             $output = $this->formatPageResults($results, $format_words,
                 $description_length);
-             if (isset($out_results['THESAURUS_VARIANTS']) ) {
+            if (isset($out_results['THESAURUS_VARIANTS'])) {
                 $output['THESAURUS_VARIANTS'] =
                     $out_results['THESAURUS_VARIANTS'];
-             }
+            }
         } else {
             $output = $results;
         }
@@ -563,18 +571,18 @@ class PhraseModel extends ParallelModel
                 $locale_tag."<br />";
             $this->query_info['QUERY'] .=
                 "$in3<i>Stemmed/Char-grammed Words</i>:<br />";
-            foreach ($base_words as $word){
+            foreach ($base_words as $word) {
                 $this->query_info['QUERY'] .= "$in4$word<br />";
             }
             $this->query_info['QUERY'] .= "$in3<i>Meta Words</i>:<br />";
-            foreach ($found_metas as $word){
+            foreach ($found_metas as $word) {
                 $this->query_info['QUERY'] .= "$in4$word<br />";
             }
             $this->query_info['QUERY'] .= "$in3<i>Quoted Word Locs</i>:<br />";
-            foreach ($quote_positions as $quote_position){
+            foreach ($quote_positions as $quote_position) {
                 $this->query_info['QUERY'] .= "$in4(";
                 $comma = "";
-                foreach ($quote_position as $pos => $len){
+                foreach ($quote_position as $pos => $len) {
                     $this->query_info['QUERY'] .= "$comma $pos => $len";
                     $comma = ",";
                 }
@@ -671,9 +679,13 @@ class PhraseModel extends ParallelModel
         $count = count($pre_format_words);
         for ($i = 0; $i < $count; $i++) {
             $flag = true;
-            if ($pre_format_words[$i] == "") continue;
+            if ($pre_format_words[$i] == "") {
+                continue;
+            }
             for ($j = 0; $j < $count; $j++) {
-                if ($j == $i) continue;
+                if ($j == $i) {
+                    continue;
+                }
                 $hay = mb_strtolower($pre_format_words[$j]);
                 $needle = mb_strtolower($pre_format_words[$i]);
                 if ($hay == $needle && $j > $i) {
@@ -722,7 +734,7 @@ class PhraseModel extends ParallelModel
         foreach ($meta_words as $meta_word) {
             $pattern = "/(\s)($meta_word(\S)+)/";
             preg_match_all($pattern, $phrase, $matches);
-            if (!in_array($meta_word, ['i:','index:', 'w:','weight:', '\-'] )) {
+            if (!in_array($meta_word, ['i:', 'index:', 'w:', 'weight:', '\-'])) {
                 $matches = $matches[2];
                 $found_metas = array_merge($found_metas, $matches);
                 if (in_array($meta_word, PhraseParser::$materialized_metas)) {
@@ -731,7 +743,7 @@ class PhraseModel extends ParallelModel
                     foreach ($matches as $pre_material_match) {
                         $match_kinds = explode(":", $pre_material_match);
                         if (!in_array($match_kinds[1], ["all"]) &&
-                            !isset($match_kinds[2])){
+                            !isset($match_kinds[2])) {
                             $found_materialized_metas[] = $pre_material_match;
                             if ($seen_match_count > 0 &&
                                 !isset($seen_matches[$pre_material_match])) {
@@ -743,20 +755,19 @@ class PhraseModel extends ParallelModel
                         }
                     }
                 }
-            } else if ($meta_word == '\-') {
+            } elseif ($meta_word == '\-') {
                 if (count($matches[0]) > 0) {
                     foreach ($matches[2] as $disallowed) {
                         $disallow_phrases[] = substr($disallowed, 1);
                     }
                 }
-            } else if ($meta_word == 'i:' || $meta_word == 'index:') {
+            } elseif ($meta_word == 'i:' || $meta_word == 'index:') {
                 if (isset($matches[2][0])) {
-                    $index_name = substr($matches[2][0],strlen($meta_word));
+                    $index_name = substr($matches[2][0], strlen($meta_word));
                 }
-            } else if ($meta_word == 'w:' || $meta_word == 'weight:') {
-
+            } elseif ($meta_word == 'w:' || $meta_word == 'weight:') {
                 if (isset($matches[2][0])) {
-                    $weight = substr($matches[2][0],strlen($meta_word));
+                    $weight = substr($matches[2][0], strlen($meta_word));
                 }
             }
             $phrase_string = preg_replace($pattern, "", $phrase_string);
@@ -797,7 +808,7 @@ class PhraseModel extends ParallelModel
         if ($len > 4) {
             foreach ($domain_suffixes as $suffix) {
                 $phrase = $this->endMatch($phrase, $suffix, "site:", "",
-                    [":","@"]);
+                    [":", "@"]);
             }
             $phrase = $this->beginMatch($phrase, "www.", "site:www.");
             $phrase = $this->beginMatch($phrase, "http:", "site:http:");
@@ -813,8 +824,7 @@ class PhraseModel extends ParallelModel
         $main_tag = substr($tag, 0, 2);
         if ($len == 1) {
             $letter = "";
-            switch ($main_tag)
-            {
+            switch ($main_tag) {
                 case 'ar':
                     $letter = "سالة";
                 break;
@@ -978,10 +988,12 @@ class PhraseModel extends ParallelModel
         foreach ($matches as $match) {
             $match = substr($match, strlen($cond_token));
             $match_parts = explode("!", $match);
-            if (count($match_parts) < 2) continue;
+            if (count($match_parts) < 2) {
+                continue;
+            }
             if (stristr($result_phrase, $match_parts[0]) !== false) {
                 $result_phrase .= " ".str_replace("+", " ", $match_parts[1]);
-            } else if (isset($match_parts[2])) {
+            } elseif (isset($match_parts[2])) {
                 $result_phrase .= " ".str_replace("+", " ", $match_parts[2]);
             }
         }
@@ -1121,9 +1133,9 @@ class PhraseModel extends ParallelModel
         $num_retrieved = 0;
         $pages = [];
         if (is_object($query_iterator)) {
-            while($num_retrieved < $to_retrieve &&
+            while ($num_retrieved < $to_retrieve &&
                 is_array($next_docs =
-                    $query_iterator->nextDocsWithWord()) ) {
+                    $query_iterator->nextDocsWithWord())) {
                 $pages += $next_docs;
                 $num_retrieved = count($pages);
             }
@@ -1203,12 +1215,12 @@ class PhraseModel extends ParallelModel
             usort($pages, NS_LIB ."orderCallback");
             if ($use_proximity) {
                 for ($i = 0; $i < $result_count; $i++) {
-                   $pages[$i][self::SCORE] = $pages[$i]["OUT_SCORE"];
+                    $pages[$i][self::SCORE] = $pages[$i]["OUT_SCORE"];
                 }
             } else {
                 for ($i = 0; $i < $result_count; $i++) {
-                   $pages[$i][self::PROXIMITY] = 1;
-                   $pages[$i][self::SCORE] = $pages[$i]["OUT_SCORE"];
+                    $pages[$i][self::PROXIMITY] = 1;
+                    $pages[$i][self::SCORE] = $pages[$i]["OUT_SCORE"];
                 }
             }
             $sort_time = L\changeInMicrotime($sort_start);
@@ -1260,11 +1272,13 @@ class PhraseModel extends ParallelModel
         }
         $out_pages = [];
         $cur_limit = $limit;
-        while(count($out_pages) < $to_get_count && $get_pages) {
+        while (count($out_pages) < $to_get_count && $get_pages) {
             $out_pages = array_merge($out_pages,
                 $this->getSummariesFromOffsets($get_pages, $queue_servers,
                 $raw, $groups_with_docs));
-            if ($save_timestamp_name != "") {break;}
+            if ($save_timestamp_name != "") {
+                break;
+            }
             $cur_limit += $num;
             $get_pages = array_slice($pages, $cur_limit, $num);
         }
@@ -1383,7 +1397,7 @@ class PhraseModel extends ParallelModel
                 } else {
                     $machine_id = (isset($page[self::MACHINE_ID])) ?
                         $page[self::MACHINE_ID] :$this->current_machine;
-                        $lookups[$key][] =
+                    $lookups[$key][] =
                             [$machine_id, $key,
                                 $page[self::CRAWL_TIME],
                                 $page[self::GENERATION],
@@ -1409,9 +1423,9 @@ class PhraseModel extends ParallelModel
                 if (isset($tmp_url[1])) {
                     $lookup_url = trim($tmp_url[1]);
                 }
-            } else if (isset($summaries[$hash_url][self::HASH])){
+            } elseif (isset($summaries[$hash_url][self::HASH])) {
                 $hash_parts = explode('|', $summaries[$hash_url][self::HASH]);
-                if (isset($hash_parts[3]) ) {
+                if (isset($hash_parts[3])) {
                     $lookup_url = $hash_parts[1];
                 }
             }
@@ -1441,7 +1455,7 @@ class PhraseModel extends ParallelModel
                 if (isset($pre_page[self::ROBOT_METAS])) {
                     if (!in_array("NOINDEX", $pre_page[self::ROBOT_METAS])
                          &&
-                        !in_array("NONE", $pre_page[self::ROBOT_METAS])){
+                        !in_array("NONE", $pre_page[self::ROBOT_METAS])) {
                         $out_pages[] = $pre_page;
                     }
                 } else {
@@ -1512,8 +1526,8 @@ class PhraseModel extends ParallelModel
                     //name server might still have news
             }
             $num_servers = count($queue_servers);
-            if ( (!isset($this->index_name) || !$this->index_name) &&
-                isset($word_structs[0]["INDEX_NAME"]) ) {
+            if ((!isset($this->index_name) || !$this->index_name) &&
+                isset($word_structs[0]["INDEX_NAME"])) {
                 $index_name = $word_structs[0]["INDEX_NAME"];
             } else {
                 $index_name = $this->index_name;
@@ -1538,7 +1552,9 @@ class PhraseModel extends ParallelModel
                 $save_count = 0;
             }
             foreach ($word_structs as $word_struct) {
-                if (!is_array($word_struct)) { continue;}
+                if (!is_array($word_struct)) {
+                    continue;
+                }
                 $word_keys = $word_struct["KEYS"];
                 $distinct_word_keys = [];
                 $seen_keys = [];
@@ -1561,10 +1577,12 @@ class PhraseModel extends ParallelModel
                 $total_iterators = count($distinct_word_keys);
                 $word_iterators = [];
                 $word_iterator_map = [];
-                if ($num_word_keys < 1) {continue;}
+                if ($num_word_keys < 1) {
+                    continue;
+                }
                 $sum = 0;
                 for ($i = 0; $i < $total_iterators; $i++) {
-                    $current_key = (is_string($distinct_word_keys[$i]) ) ?
+                    $current_key = (is_string($distinct_word_keys[$i])) ?
                         $distinct_word_keys[$i] : (is_string(
                         $distinct_word_keys[$i][0]) ? $distinct_word_keys[$i][0]
                         : $distinct_word_keys[$i][0][0]);
@@ -1582,7 +1600,7 @@ class PhraseModel extends ParallelModel
                             is_array($distinct_word_keys[$i][0][0])) {
                             $distinct_keys = [
                                 $distinct_word_keys[$i][0][1]];
-                        } else if (isset($distinct_word_keys[$i][0]) &&
+                        } elseif (isset($distinct_word_keys[$i][0]) &&
                             is_array($distinct_word_keys[$i][0])) {
                             $distinct_keys = $distinct_word_keys[$i];
                         } else {
@@ -1625,7 +1643,7 @@ class PhraseModel extends ParallelModel
                                     $mask, -1, -1, NUM_DISTINCT_GENERATIONS);
                                 if ($info !== false && $old_info !== false) {
                                     $info = array_merge($info, $old_info);
-                                } else if ($old_info !== false) {
+                                } elseif ($old_info !== false) {
                                     $info = $old_info;
                                 }
                             }
@@ -1664,14 +1682,14 @@ class PhraseModel extends ParallelModel
                     }
                     foreach ($word_keys as $index => $key) {
                         if (isset($distinct_word_keys[$i]) &&
-                            $key == $distinct_word_keys[$i]){
+                            $key == $distinct_word_keys[$i]) {
                             $word_iterator_map[$index] = $i;
                         }
                     }
                 }
                 $num_disallow_keys = count($disallow_keys);
                 if ($num_disallow_keys > 0) {
-                for ($i = 0; $i < $num_disallow_keys; $i++) {
+                    for ($i = 0; $i < $num_disallow_keys; $i++) {
                         $disallow_iterator =
                             new I\WordIterator($disallow_keys[$i], $index_name,
                                 false, $filter);
@@ -1706,13 +1724,13 @@ class PhraseModel extends ParallelModel
         $num_iterators = count($iterators); //if network_flag should be 1
         if ($num_iterators < 1) {
             return null;
-        } else if ($num_iterators == 1) {
+        } elseif ($num_iterators == 1) {
             $union_iterator = $iterators[0];
         } else {
             $union_iterator = new I\UnionIterator($iterators);
         }
         $raw = intval($raw);
-        if ($raw > 0 ) {
+        if ($raw > 0) {
             $group_iterator = $union_iterator;
         } else {
             $group_iterator =
@@ -1723,9 +1741,9 @@ class PhraseModel extends ParallelModel
             $union_iterator->results_per_block =
                 ceil(SERVER_ALPHA *
                     $group_iterator->results_per_block/$num_servers);
-        } else if ($save_timestamp_name != "") {
+        } elseif ($save_timestamp_name != "") {
             $group_iterator->save_iterators = $iterators;
-        } else if ($min_group_flag && !$min_group_override) {
+        } elseif ($min_group_flag && !$min_group_override) {
             $group_iterator->results_per_block = max(MIN_RESULTS_TO_GROUP/20,
                 1);
             $to_retrieve = -1;
diff --git a/models/ProfileModel.php b/src/models/ProfileModel.php
similarity index 95%
rename from models/ProfileModel.php
rename to src/models/ProfileModel.php
index b1a5595e2..ab59b519a 100755
--- a/models/ProfileModel.php
+++ b/src/models/ProfileModel.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\models;
 use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\datasources\Sqlite3Manager;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This is class is used to handle
  * getting and saving the Profile.php of the current search engine instance
@@ -287,7 +286,6 @@ class ProfileModel extends Model
      */
     public function makeWorkDirectory($directory)
     {
-
         $to_make_dirs = [$directory, "$directory/app",
             "$directory/archives", "$directory/cache",
             "$directory/classifiers", "$directory/data", "$directory/feeds",
@@ -297,7 +295,7 @@ class ProfileModel extends Model
         $dir_status = [];
         foreach ($to_make_dirs as $dir) {
             $dir_status[$dir] = $this->createIfNecessaryDirectory($dir);
-            if ( $dir_status[$dir] < 0) {
+            if ($dir_status[$dir] < 0) {
                 return false;
             }
         }
@@ -373,7 +371,6 @@ namespace seekquarry\yioop\models;
  * @copyright 2009-2012
  * @filesource
  */
-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 EOT;
         $base_url = NAME_SERVER;
         if (defined("BASE_URL")) {
@@ -399,7 +396,7 @@ EOT;
         foreach ($this->profile_fields as $field) {
             if (isset($new_profile_data[$field])) {
                 if (!$reset && in_array($field,
-                    ['LOGO','M_LOGO', 'FAVICON', 'SEARCHBAR_PATH',
+                    ['LOGO', 'M_LOGO', 'FAVICON', 'SEARCHBAR_PATH',
                     'BACKGROUND_IMAGE'])) {
                     if (isset($new_profile_data[$field]['name']) &&
                         isset($new_profile_data[$field]['tmp_name'])) {
@@ -409,9 +406,9 @@ EOT;
                         $profile[$field] = "./?c=resource&amp;a=get&amp;" .
                             "f=resources&amp;n=" .
                             $new_profile_data[$field]['name'];
-                    } else if (isset($old_profile_data[$field])) {
+                    } elseif (isset($old_profile_data[$field])) {
                         $profile[$field] = $old_profile_data[$field];
-                    } else if (defined($field)) {
+                    } elseif (defined($field)) {
                         $profile[$field] =  constant($field);
                     } else {
                         $profile[$field] = "";
@@ -419,12 +416,12 @@ EOT;
                 } else {
                     $profile[$field] = $new_profile_data[$field];
                 }
-            } else if (isset($old_profile_data[$field])) {
+            } elseif (isset($old_profile_data[$field])) {
                 $profile[$field] = $old_profile_data[$field];
-            } else if (defined($field)) {
-                    $profile[$field] = constant($field);
+            } elseif (defined($field)) {
+                $profile[$field] = constant($field);
             } else {
-                    $profile[$field] = "";
+                $profile[$field] = "";
             }
             if (!$profile[$field] && isset($not_null_fields[$field])) {
                 $profile[$field] = $not_null_fields[$field];
@@ -440,7 +437,9 @@ EOT;
                     $profile[$field] = UrlParser::getPath(NAME_SERVER);
                 }
             }
-            if (in_array($field, $file_fields)) {continue;}
+            if (in_array($field, $file_fields)) {
+                continue;
+            }
             if ($field != "DEBUG_LEVEL") {
                 $profile[$field] = "\"{$profile[$field]}\"";
             }
@@ -502,7 +501,9 @@ EOT;
     public function migrateDatabaseIfNecessary($dbinfo, $skip_list = [])
     {
         $test_dbm = $this->testDatabaseManager($dbinfo);
-        if ($test_dbm === false || $test_dbm === true) {return $test_dbm; }
+        if ($test_dbm === false || $test_dbm === true) {
+            return $test_dbm;
+        }

         $this->initializeSql($test_dbm, $dbinfo);
         $copy_tables = array_diff(array_keys($this->create_statements),
@@ -512,14 +513,18 @@ EOT;
         }
         $default_dbm = new Sqlite3Manager();
         $default_dbm->connect("", "", "", BASE_DIR."/data/default.db");
-        if (!$default_dbm) {return false;}
+        if (!$default_dbm) {
+            return false;
+        }
         foreach ($copy_tables as $table_or_index) {
             if ($table_or_index != "CURRENT_WEB_INDEX" &&
                 stristr($table_or_index, "_INDEX")) {
                 continue;
             }
             if (!DatasourceManager::copyTable($table_or_index, $default_dbm,
-                $table_or_index, $test_dbm)) {return false;}
+                $table_or_index, $test_dbm)) {
+                return false;
+            }
         }
         if (stristr($dbinfo["DB_HOST"], "pgsql") !== false) {
             /* For postgres count initial values of SERIAL sequences
@@ -558,7 +563,9 @@ EOT;
         $this->initializeSQL($dbm, $dbinfo);
         $create_statements = $this->create_statements;
         foreach ($create_statements as $table_or_index => $statement) {
-            if (in_array($table_or_index, $skip_list)) { continue; }
+            if (in_array($table_or_index, $skip_list)) {
+                continue;
+            }
             if (!$result = $dbm->execute($statement)) {
                 echo $statement." ERROR!";
                 return false;
@@ -581,7 +588,9 @@ EOT;
      */
     public function testDatabaseManager($dbinfo)
     {
-        if (!isset($dbinfo['DBMS'])) {return false;}
+        if (!isset($dbinfo['DBMS'])) {
+            return false;
+        }
         $dbms_manager = NS_DATASOURCES . ucfirst($dbinfo['DBMS'])."Manager";
         $test_dbm = new $dbms_manager();
         $fields = ['DB_HOST', 'DB_USER', 'DB_PASSWORD', 'DB_NAME'];
@@ -592,13 +601,15 @@ EOT;
         }
         $host = $dbinfo['DB_HOST'];
             // for postgres database needs to already exists
-        $host = str_ireplace("database=".$dbinfo['DB_NAME'],"",
+        $host = str_ireplace("database=".$dbinfo['DB_NAME'], "",
             $host); // informix, ibm (use connection string DSN)
-        $host = str_replace(";;",";", $host);
+        $host = str_replace(";;", ";", $host);
         $host = trim($host);
         $conn = $test_dbm->connect($host, $dbinfo['DB_USER'],
             $dbinfo['DB_PASSWORD'], "");
-        if ($conn === false) {return false;}
+        if ($conn === false) {
+            return false;
+        }
         //check if can select db or if not create it
         $q = "";
         if (isset($test_dbm->special_quote)) {
@@ -638,10 +649,14 @@ EOT;
     public function setWorkDirectoryConfigFile($directory)
     {
         $config = file_get_contents(BASE_DIR."/configs/Config.php");
-        $start_machine_section = strpos($config,'/*+++ The next block of code');
-        if ($start_machine_section === false) return false;
+        $start_machine_section = strpos($config, '/*+++ The next block of code');
+        if ($start_machine_section === false) {
+            return false;
+        }
         $end_machine_section = strpos($config, '/*++++++*/');
-        if ($end_machine_section === false) return false;
+        if ($end_machine_section === false) {
+            return false;
+        }
         $out = substr($config,  0, $start_machine_section);
         $out .= "/*+++ The next block of code is machine edited, change at \n".
             "your own risk, please use configure web page instead +++*/\n";
@@ -662,14 +677,15 @@ EOT;
     {
         $profile = [];
         $profile_string = @file_get_contents($work_directory.PROFILE_FILE_NAME);
-        $file_fields = $this->file_fields;;
+        $file_fields = $this->file_fields;
+        ;
         foreach ($this->profile_fields as $field) {
             if (!in_array($field, $file_fields)) {
                 $profile[$field] = $this->matchDefine($field, $profile_string);
                 if ($field == "AD_LOCATION" && $profile[$field] == "") {
                     $profile[$field] = "none";
                 }
-            } else if ($field == "AUXILIARY_CSS"){
+            } elseif ($field == "AUXILIARY_CSS") {
                 $css_file = APP_DIR . "/css/auxiliary.css";
                 if (file_exists($css_file)) {
                     $profile[$field] = file_get_contents($css_file);
@@ -694,10 +710,9 @@ EOT;
             $string, $match);
         $match = (isset($match[1])) ? trim($match[1]) : "";
         $len = strlen($match);
-        if ( $len >=2 && ($match[0] == '"' || $match[0] == "'")) {
+        if ($len >=2 && ($match[0] == '"' || $match[0] == "'")) {
             $match = substr($match, 1, strlen($match) - 2);
         }
         return $match;
     }
-
 }
diff --git a/models/RoleModel.php b/src/models/RoleModel.php
similarity index 96%
rename from models/RoleModel.php
rename to src/models/RoleModel.php
index 861071999..089bcbd36 100644
--- a/models/RoleModel.php
+++ b/src/models/RoleModel.php
@@ -32,9 +32,6 @@ namespace seekquarry\yioop\models;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** For crawlHash function */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * This is class is used to handle
  * db results related to Role Administration
@@ -90,7 +87,7 @@ class RoleModel extends Model
             "FROM TRANSLATION_LOCALE ".
             "WHERE TRANSLATION_ID=? AND LOCALE_ID=? " . $db->limitOffset(1);
             // maybe do left join at some point
-        while($activities[$i] = $db->fetchArray($result)) {
+        while ($activities[$i] = $db->fetchArray($result)) {
             $id = $activities[$i]['TRANSLATION_ID'];
             $result_sub =  $db->execute($sub_sql, [$id, $locale_id]);
             $translate = $db->fetchArray($result_sub);
@@ -139,7 +136,7 @@ class RoleModel extends Model
             " AND R.ROLE_ID = UR.ROLE_ID $like  ORDER BY R.NAME ASC $limit";
         $result = $db->execute($sql, $param_array);
         $i = 0;
-        while($roles[$i] = $db->fetchArray($result)) {
+        while ($roles[$i] = $db->fetchArray($result)) {
             $i++;
         }
         unset($roles[$i]); //last one will be null
@@ -185,7 +182,7 @@ class RoleModel extends Model
         $sql = "SELECT COUNT(*) AS NUM FROM USER_ROLE UR WHERE
             UR.USER_ID=? AND UR.ROLE_ID=?";
         $result = $db->execute($sql, $params);
-        if (!$row = $db->fetchArray($result) ) {
+        if (!$row = $db->fetchArray($result)) {
             return false;
         }
         if ($row['NUM'] <= 0) {
@@ -226,7 +223,7 @@ class RoleModel extends Model
         $db = $this->db;
         $sql = "SELECT R.ROLE_ID AS ROLE_ID FROM ROLE R WHERE R.NAME = ? ";
         $result = $db->execute($sql, [$role_name]);
-        if (!$row = $db->fetchArray($result) ) {
+        if (!$row = $db->fetchArray($result)) {
             return -1;
         }
         return $row['ROLE_ID'];
@@ -293,4 +290,3 @@ class RoleModel extends Model
         $this->db->execute($sql, [$role_id, $activity_id]);
     }
 }
-
diff --git a/models/SearchfiltersModel.php b/src/models/SearchfiltersModel.php
similarity index 96%
rename from models/SearchfiltersModel.php
rename to src/models/SearchfiltersModel.php
index 66385fe59..822f39cca 100644
--- a/models/SearchfiltersModel.php
+++ b/src/models/SearchfiltersModel.php
@@ -32,9 +32,6 @@ namespace seekquarry\yioop\models;

 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/**  For crawlHash */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * This class manages the persistence to disk of a set of urls to be
  * filtered from all search results returned by Yioop!
@@ -42,7 +39,7 @@ require_once BASE_DIR."/library/Utility.php";
  * @author Chris Pollett
  * @package seek_quarry\model
  */
-class SearchfiltersModel extends Model implements CrawlConstants
+class SearchfiltersModel extends Model
 {
     /**
      * Directory in which to put filter
diff --git a/models/SigninModel.php b/src/models/SigninModel.php
similarity index 89%
rename from models/SigninModel.php
rename to src/models/SigninModel.php
index 01f558c08..d15353878 100755
--- a/models/SigninModel.php
+++ b/src/models/SigninModel.php
@@ -32,9 +32,6 @@ namespace seekquarry\yioop\models;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** For the crawlCrypt function */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * This is class is used to handle
  * db results needed for a user to login
@@ -81,7 +78,7 @@ class SigninModel extends Model
             }
             $result = $db->execute($sql, [$username]);
             $i++;
-        } while(!$result && $i < 2);
+        } while (!$result && $i < 2);
         return $result;
     }
     /**
@@ -144,15 +141,15 @@ class SigninModel extends Model
      * @param string $user_id the userid to look up
      * @return string the corresponding username
      */
-   function getUserName($user_id)
+   public function getUserName($user_id)
    {
-        $db = $this->db;
-        $sql = "SELECT USER_NAME FROM USERS WHERE USER_ID = ? " .
+       $db = $this->db;
+       $sql = "SELECT USER_NAME FROM USERS WHERE USER_ID = ? " .
             $db->limitOffset(1);
-        $result = $db->execute($sql, [$user_id]);
-        $row = $db->fetchArray($result);
-        $username = $row['USER_NAME'];
-        return $username;
+       $result = $db->execute($sql, [$user_id]);
+       $row = $db->fetchArray($result);
+       $username = $row['USER_NAME'];
+       return $username;
    }
      /**
      * Get the email associated with a given user_id
@@ -160,15 +157,15 @@ class SigninModel extends Model
      * @param string $user_id the userid to look up
      * @return string the corresponding email
      */
-   function getEmail($user_id)
+   public function getEmail($user_id)
    {
-        $db = $this->db;
-        $sql = "SELECT EMAIL FROM USERS WHERE
+       $db = $this->db;
+       $sql = "SELECT EMAIL FROM USERS WHERE
             USER_ID = ?  " . $db->limitOffset(1);
-        $result = $db->execute($sql, [$user_id]);
-        $row = $db->fetchArray($result);
-        $email = $row['EMAIL'];
-        return $email;
+       $result = $db->execute($sql, [$user_id]);
+       $row = $db->fetchArray($result);
+       $email = $row['EMAIL'];
+       return $email;
    }
     /**
      * Changes the email of a given user
@@ -195,7 +192,7 @@ class SigninModel extends Model
     {
         $sql = "UPDATE USERS SET PASSWORD=? WHERE USER_NAME = ? ";
         $result = $this->db->execute($sql,
-            [L\crawlCrypt($password), $username] );
+            [L\crawlCrypt($password), $username]);
         return $result != false;
     }
     /**
@@ -208,7 +205,7 @@ class SigninModel extends Model
     public function changePasswordZKP($username, $password)
     {
         $sql = "UPDATE USERS SET ZKP_PASSWORD=? WHERE USER_NAME = ? ";
-        $result = $this->db->execute($sql, [$password, $username] );
+        $result = $this->db->execute($sql, [$password, $username]);
         return $result != false;
     }
 }
diff --git a/models/SourceModel.php b/src/models/SourceModel.php
similarity index 96%
rename from models/SourceModel.php
rename to src/models/SourceModel.php
index 950365832..1ff6b8de6 100644
--- a/models/SourceModel.php
+++ b/src/models/SourceModel.php
@@ -37,7 +37,6 @@ use seekquarry\yioop\library\IndexShard;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to manage data related to video, news, and other search sources
  * Also, used to manage data about available subsearches seen in SearchView
@@ -100,7 +99,7 @@ class SourceModel extends ParallelModel
         }
         $i = 0;
         $result = $db->execute($sql, $params);
-        while($sources[$i] = $db->fetchArray($result)) {
+        while ($sources[$i] = $db->fetchArray($result)) {
             $i++;
         }
         unset($sources[$i]); //last one will be null
@@ -135,7 +134,7 @@ class SourceModel extends ParallelModel
         $sql = "SELECT DISTINCT URL FROM MACHINE";
         $result = $db->execute($sql);
         $machine_hashes = [];
-        while($row = $db->fetchArray($result)) {
+        while ($row = $db->fetchArray($result)) {
             $machine_hashes[] = L\crawlHash($row['URL']);
         }
         return $machine_hashes;
@@ -240,7 +239,7 @@ class SourceModel extends ParallelModel
             "FROM TRANSLATION_LOCALE ".
             " WHERE TRANSLATION_ID=? AND LOCALE_ID=? " . $db->limitOffset(1);
             // maybe do left join at some point
-        while($subsearches[$i] = $db->fetchArray($result)) {
+        while ($subsearches[$i] = $db->fetchArray($result)) {
             $id = $subsearches[$i]["TRANSLATION_ID"];
             $result_sub =  $db->execute($sub_sql, [$id, $locale_id]);
             $translate = false;
@@ -355,23 +354,23 @@ class SourceModel extends ParallelModel
      *      a list of news sources (distributed case) or whether this is the
      *      non-distributed case and data should be gotten from local machine
      */
-    public function updateFeedItems($age = ONE_WEEK,$media_mode = "name_server")
+    public function updateFeedItems($age = ONE_WEEK, $media_mode = "name_server")
     {
         $feeds = $this->getNewsSources(false, $media_mode);
-        if(!is_array($feeds)) {
+        if (!is_array($feeds)) {
             L\crawlLog("This media updater is NOT responsible for any feeds!");
             return;
         }
         L\crawlLog("This media updater is responsible for the feeds:");
         $i = 1;
-        foreach($feeds as $feed) {
+        foreach ($feeds as $feed) {
             L\crawlLog("  $i. ".$feed["NAME"]);
             $i++;
         }
         $num_feeds = count($feeds);
         $feeds_one_go = self::MAX_FEEDS_ONE_GO;
         $limit = 0;
-        while($limit < $num_feeds) {
+        while ($limit < $num_feeds) {
             $feeds_batch = array_slice($feeds, $limit, $feeds_one_go);
             $this->updateFeedItemsOneGo($feeds, $age);
             $limit += $feeds_one_go;
@@ -405,13 +404,13 @@ class SourceModel extends ParallelModel
             if (isset($pre_feeds[0][self::PAGE])) {
                 $feeds = unserialize(L\webdecode($pre_feeds[0][self::PAGE]));
             }
-         } else {
+        } else {
             $db = $this->db;
             $sql = "SELECT * FROM MEDIA_SOURCE WHERE (TYPE='rss'
                  OR TYPE='html')";
             $result = $db->execute($sql);
             $i = 0;
-            while($feeds[$i] = $this->db->fetchArray($result)) {
+            while ($feeds[$i] = $this->db->fetchArray($result)) {
                 $aux_parts = explode("###",
                         html_entity_decode($feeds[$i]['AUX_INFO']));
                 if ($feeds[$i]['TYPE'] == 'html') {
@@ -420,7 +419,7 @@ class SourceModel extends ParallelModel
                     $feeds[$i]['LINK_PATH']) =
                         $aux_parts;
                     $offset = 5;
-                } else if ($feeds[$i]['TYPE'] == 'rss') {
+                } elseif ($feeds[$i]['TYPE'] == 'rss') {
                     $offset = 0;
                 }
                 if (isset($aux_parts[$offset])) {
@@ -491,7 +490,7 @@ class SourceModel extends ParallelModel
                     $lang = $languages->item(0)->textContent;
                     $db->execute($sql, [$lang, $feed['TIMESTAMP']]);
                 }
-            } else if (isset($feed["LANGUAGE"]) && $feed["LANGUAGE"] != "") {
+            } elseif (isset($feed["LANGUAGE"]) && $feed["LANGUAGE"] != "") {
                 $lang = $feed["LANGUAGE"];
             } else {
                 $lang = DEFAULT_LOCALE;
@@ -621,11 +620,15 @@ class SourceModel extends ParallelModel
     {
         $nodes = [];
         $dom_xpath = new \DOMXPath($dom);
-        if (!$dom_xpath) { return []; }
+        if (!$dom_xpath) {
+            return [];
+        }
         $tags = $dom_xpath->query($query);
-        if (!$tags) {return []; }
+        if (!$tags) {
+            return [];
+        }
         $i = 0;
-        while($item = $tags->item($i)) {
+        while ($item = $tags->item($i)) {
             $tmp_dom = new \DOMDocument;
             $tmp_dom->formatOutput = true;
             $node = $tmp_dom->importNode($item, true);
@@ -656,10 +659,14 @@ class SourceModel extends ParallelModel
             return false;
         }
         $pre_feeds = $this->getNewsSources();
-        if (!$pre_feeds) { return false; }
+        if (!$pre_feeds) {
+            return false;
+        }
         $feeds = [];
         foreach ($pre_feeds as $pre_feed) {
-            if (!isset($pre_feed['NAME'])) { continue; }
+            if (!isset($pre_feed['NAME'])) {
+                continue;
+            }
             $feeds[$pre_feed['NAME']] = $pre_feed;
         }
         $db = $this->db;
@@ -673,11 +680,13 @@ class SourceModel extends ParallelModel
             L\crawlLog("..still deleting. Making new index".
                 " of non-pruned items.");
             $i = 0;
-            while($item = $db->fetchArray($result)) {
+            while ($item = $db->fetchArray($result)) {
                 L\crawlTimeoutLog("..have added %s non-pruned items to index.",
                     $i);
                 $i++;
-                if (!isset($item['SOURCE_NAME'])) { continue; }
+                if (!isset($item['SOURCE_NAME'])) {
+                    continue;
+                }
                 $source_name = $item['SOURCE_NAME'];
                 if (isset($feeds[$source_name])) {
                     $lang = $feeds[$source_name]['LANGUAGE'];
@@ -690,7 +699,7 @@ class SourceModel extends ParallelModel
                 $raw_guid = L\unbase64Hash($item["GUID"]);
                 $doc_keys = L\crawlHash($item["LINK"], true) .
                     $raw_guid."d". substr(L\crawlHash(
-                    UrlParser::getHost($item["LINK"])."/",true), 1);
+                    UrlParser::getHost($item["LINK"])."/", true), 1);
                 $meta_ids = $this->calculateMetas($lang, $item['PUBDATE'],
                     $source_name, $item["GUID"]);
                 $prune_shard->addDocumentWords($doc_keys, $item['PUBDATE'],
@@ -719,7 +728,9 @@ class SourceModel extends ParallelModel
     public function addFeedItemIfNew($item, $source_name, $lang, $age)
     {
         if (!isset($item["link"]) || !isset($item["title"]) ||
-            !isset($item["description"])) { return false; }
+            !isset($item["description"])) {
+            return false;
+        }
         if (!isset($item["guid"]) || $item["guid"] == "") {
             $item["guid"] = L\crawlHash($item["link"]);
         } else {
@@ -733,7 +744,7 @@ class SourceModel extends ParallelModel
             $item["pubdate"] = time();
         } else {
             $item["pubdate"] = strtotime($item["pubdate"]);
-            if($item["pubdate"] < 0) {
+            if ($item["pubdate"] < 0) {
                 $item["pubdate"] = time();
             }
         }
@@ -784,7 +795,7 @@ class SourceModel extends ParallelModel
         if ($lang != "") {
             $lang_parts = explode("-", $lang);
             $meta_ids[] = 'lang:'.$lang_parts[0];
-            if (isset($lang_parts[1])){
+            if (isset($lang_parts[1])) {
                 $meta_ids[] = 'lang:'.$lang;
             }
         }
@@ -818,4 +829,3 @@ class SourceModel extends ParallelModel
         return $file_name;
     }
 }
-
diff --git a/models/UserModel.php b/src/models/UserModel.php
similarity index 99%
rename from models/UserModel.php
rename to src/models/UserModel.php
index 2cce6beaa..d4fa304da 100755
--- a/models/UserModel.php
+++ b/src/models/UserModel.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\models;
 use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\Processors\ImageProcessor;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This class is used to handle
  * database statements related to User Administration
@@ -124,7 +123,7 @@ class UserModel extends Model
             "FROM TRANSLATION_LOCALE ".
             "WHERE TRANSLATION_ID=? AND LOCALE_ID=? $limit_offset";
             // maybe do left join at some point
-        while($activities[$i] = $this->db->fetchArray($result)) {
+        while ($activities[$i] = $this->db->fetchArray($result)) {
             $id = $activities[$i]['TRANSLATION_ID'];
             $result_sub =  $db->execute($sub_sql, [$id, $locale_id]);
             $translate = $db->fetchArray($result_sub);
@@ -452,7 +451,9 @@ class UserModel extends Model
         $sql = "UPDATE USERS SET ";
         $comma ="";
         $params = [];
-        if ($user == []) {return; }
+        if ($user == []) {
+            return;
+        }
         foreach ($user as $field => $value) {
             $sql .= "$comma $field=? ";
             $comma = ",";
diff --git a/models/VisitorModel.php b/src/models/VisitorModel.php
similarity index 96%
rename from models/VisitorModel.php
rename to src/models/VisitorModel.php
index 8c5c728c2..e6cdbfe3a 100644
--- a/models/VisitorModel.php
+++ b/src/models/VisitorModel.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\models;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to keep track of ip address of failed account creation and login
  * attempts
@@ -64,13 +63,12 @@ class VisitorModel extends Model
             AND PAGE_NAME=:page_name " . $db->limitOffset(1);
         $result = $this->db->execute($sql, [":address" => $ip_address,
             ":page_name" => $page_name]);
-        if (!$result || !$row = $this->db->fetchArray($result))
-        {
+        if (!$result || !$row = $this->db->fetchArray($result)) {
             return false;
         }
         $now = time();
         if ($row['FORGET_AGE'] > 0 &&
-            ($now - $row["END_TIME"]) > $row['FORGET_AGE']){
+            ($now - $row["END_TIME"]) > $row['FORGET_AGE']) {
             $this->removeVisitor($ip_address, $page_name);
             return false;
         }
@@ -134,4 +132,3 @@ class VisitorModel extends Model
             ":ip_address" => $ip_address, ":page_name" => $page_name]);
     }
 }
- ?>
diff --git a/models/datasources/DatasourceManager.php b/src/models/datasources/DatasourceManager.php
similarity index 92%
rename from models/datasources/DatasourceManager.php
rename to src/models/datasources/DatasourceManager.php
index b505ab907..ccca807f9 100755
--- a/models/datasources/DatasourceManager.php
+++ b/src/models/datasources/DatasourceManager.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\models\datasources;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**  For timer function, if debug level set to include query statistics */
 require_once BASE_DIR."/library/Utility.php";
 /**
@@ -58,7 +57,8 @@ abstract class DatasourceManager
      */
     public $total_time;
     /** Sets up the query_log for query statistics */
-    public function __construct() {
+    public function __construct()
+    {
         $this->query_log = [];
         $this->total_time = 0;
     }
@@ -74,13 +74,13 @@ abstract class DatasourceManager
      * @return mixed return false if not successful and some kind of
      *     connection object/identifier otherwise
      */
-    abstract function connect($db_host = DB_HOST,
+    abstract public function connect($db_host = DB_HOST,
         $db_user = DB_USER, $db_password = DB_PASSWORD, $db_name = DB_NAME);
     /**
      * Closes connections to DBMS
      *
      */
-    abstract function disconnect();
+    abstract public function disconnect();
     /**
      * Hook Method for execute(). Executes the sql command on the database
      *
@@ -91,14 +91,14 @@ abstract class DatasourceManager
      *      the $sql to be executes
      * @return mixed false if query fails, resource or true otherwise
      */
-    abstract function exec($sql, $params = []);
+    abstract public function exec($sql, $params = []);
     /**
      * Returns the number of rows affected by the last sql statement
      *
      * @return int the number of rows affected by the last
      * insert, update, delete
      */
-    abstract function affectedRows();
+    abstract public function affectedRows();
     /**
      * Returns the ID generated by the last insert statement
      * if table has an auto increment key column
@@ -106,7 +106,7 @@ abstract class DatasourceManager
      * @param string $table_name of table of last insert
      * @return string  the ID of the insert
      */
-    abstract function insertID($table_name = "");
+    abstract public function insertID($table_name = "");
     /**
      * Returns the next row from the provided result set
      *
@@ -114,7 +114,7 @@ abstract class DatasourceManager
      * @return array the next row from the result set as an
      *      associative array in the form column_name => value
      */
-    abstract function fetchArray($result);
+    abstract public function fetchArray($result);
     /**
      * Used to escape strings before insertion in the
      * database to avoid SQL injection
@@ -122,7 +122,7 @@ abstract class DatasourceManager
      * @param string $str  string to escape
      * @return string a string which is safe to insert into the db
      */
-    abstract function escapeString($str);
+    abstract public function escapeString($str);
     /**
      * Executes the supplied sql command on the database, depending on debug
      * levels computes query statistics
@@ -209,13 +209,12 @@ abstract class DatasourceManager
             }
             chmod($destination_dir, 0777);
         }
-        while(false !== ( $obj = readdir($dh)) ) {
-            if (( $obj != '.' ) && ( $obj != '..' )) {
-                if ( is_dir($source_dir . '/' . $obj) ) {
+        while (false !== ($obj = readdir($dh))) {
+            if (($obj != '.') && ($obj != '..')) {
+                if (is_dir($source_dir . '/' . $obj)) {
                     $this->copyRecursive($source_dir . '/' .
                         $obj, $destination_dir . '/' . $obj);
-                }
-                else {
+                } else {
                     copy($source_dir . '/' .
                         $obj, $destination_dir . '/' . $obj);
                     chmod($destination_dir . '/' . $obj, 0777);
@@ -284,14 +283,14 @@ abstract class DatasourceManager
         if (stristr($dbinfo['DBMS'], 'pdo')) {
             if (stristr($dbinfo['DB_HOST'], 'SQLITE')) {
                 $auto_increment = "";
-            } else if (stristr($dbinfo['DB_HOST'], 'PGSQL')) { //POSTGRES
+            } elseif (stristr($dbinfo['DB_HOST'], 'PGSQL')) { //POSTGRES
                 $auto_increment = "";
-            } else if (stristr($dbinfo['DB_HOST'], 'OCI')) { // ORACLE
+            } elseif (stristr($dbinfo['DB_HOST'], 'OCI')) { // ORACLE
                 $auto_increment = "DEFAULT SYS_GUID()";
-            } else if (stristr($dbinfo['DB_HOST'], 'IBM')) { //DB2
+            } elseif (stristr($dbinfo['DB_HOST'], 'IBM')) { //DB2
                 $auto_increment = "GENERATED ALWAYS AS IDENTITY ".
                     "(START WITH 1 INCREMENT BY 1)";
-            } else if (stristr($dbinfo['DB_HOST'], 'DBLIB')) { //MS SQL
+            } elseif (stristr($dbinfo['DB_HOST'], 'DBLIB')) { //MS SQL
                 $auto_increment = "IDENTITY (1,1)";
             }
         }
@@ -358,9 +357,10 @@ abstract class DatasourceManager
     public static function copyTable($from_table, $from_dbm, $to_table, $to_dbm)
     {
         $sql = "SELECT * FROM $from_table";
-        if (($result = $from_dbm->execute($sql)) === false) {return false;}
-        while($row = $from_dbm->fetchArray($result))
-        {
+        if (($result = $from_dbm->execute($sql)) === false) {
+            return false;
+        }
+        while ($row = $from_dbm->fetchArray($result)) {
             $statement = "INSERT INTO $to_table VALUES (";
             $comma ="";
             foreach ($row as $col=> $value) {
@@ -368,7 +368,9 @@ abstract class DatasourceManager
                 $comma = ",";
             }
             $statement .= ")";
-            if (($to_dbm->execute($statement)) === false) {return false;}
+            if (($to_dbm->execute($statement)) === false) {
+                return false;
+            }
         }
         return true;
     }
diff --git a/models/datasources/MysqlManager.php b/src/models/datasources/MysqlManager.php
similarity index 98%
rename from models/datasources/MysqlManager.php
rename to src/models/datasources/MysqlManager.php
index bf32e6108..1f412cf9e 100755
--- a/models/datasources/MysqlManager.php
+++ b/src/models/datasources/MysqlManager.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\models\datasources;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Mysql DatasourceManager
  *
@@ -93,4 +92,3 @@ class MysqlManager extends PdoManager
         return $this->pdo;
     }
 }
-
diff --git a/models/datasources/PdoManager.php b/src/models/datasources/PdoManager.php
similarity index 99%
rename from models/datasources/PdoManager.php
rename to src/models/datasources/PdoManager.php
index 747dd220e..00857410c 100644
--- a/models/datasources/PdoManager.php
+++ b/src/models/datasources/PdoManager.php
@@ -34,7 +34,6 @@ use PDO;
 use PDOException;
 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Pdo DatasourceManager
  *
@@ -202,6 +201,4 @@ class PdoManager extends DatasourceManager
             pair of quotes we need to strip inner quotes
         */
     }
-
 }
-
diff --git a/models/datasources/Sqlite3Manager.php b/src/models/datasources/Sqlite3Manager.php
similarity index 98%
rename from models/datasources/Sqlite3Manager.php
rename to src/models/datasources/Sqlite3Manager.php
index 7e6a83e24..d61ab0507 100644
--- a/models/datasources/Sqlite3Manager.php
+++ b/src/models/datasources/Sqlite3Manager.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\models\datasources;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * SQLite3 DatasourceManager
  *
@@ -84,4 +83,3 @@ class Sqlite3Manager extends PdoManager
         return $this->pdo;
     }
 }
-
diff --git a/privacy.php b/src/privacy.php
similarity index 97%
rename from privacy.php
rename to src/privacy.php
index 54544cfbb..dd9f15251 100755
--- a/privacy.php
+++ b/src/privacy.php
@@ -39,5 +39,5 @@ $_REQUEST['p'] = "privacy";
 /**
  * load in main entry point
  */
-include("index.php");
+include(__DIR__."/index.php");

diff --git a/resources/adv-logo.png b/src/resources/adv-logo.png
similarity index 100%
rename from resources/adv-logo.png
rename to src/resources/adv-logo.png
diff --git a/resources/anonymous.png b/src/resources/anonymous.png
similarity index 100%
rename from resources/anonymous.png
rename to src/resources/anonymous.png
diff --git a/resources/blank.png b/src/resources/blank.png
similarity index 100%
rename from resources/blank.png
rename to src/resources/blank.png
diff --git a/resources/collapse.png b/src/resources/collapse.png
similarity index 100%
rename from resources/collapse.png
rename to src/resources/collapse.png
diff --git a/resources/drag.png b/src/resources/drag.png
similarity index 100%
rename from resources/drag.png
rename to src/resources/drag.png
diff --git a/resources/expand.png b/src/resources/expand.png
similarity index 100%
rename from resources/expand.png
rename to src/resources/expand.png
diff --git a/resources/file-icon.png b/src/resources/file-icon.png
similarity index 100%
rename from resources/file-icon.png
rename to src/resources/file-icon.png
diff --git a/resources/grouped.png b/src/resources/grouped.png
similarity index 100%
rename from resources/grouped.png
rename to src/resources/grouped.png
diff --git a/resources/list.png b/src/resources/list.png
similarity index 100%
rename from resources/list.png
rename to src/resources/list.png
diff --git a/resources/locked.png b/src/resources/locked.png
similarity index 100%
rename from resources/locked.png
rename to src/resources/locked.png
diff --git a/resources/m-yioop.png b/src/resources/m-yioop.png
similarity index 100%
rename from resources/m-yioop.png
rename to src/resources/m-yioop.png
diff --git a/resources/new_thread.png b/src/resources/new_thread.png
similarity index 100%
rename from resources/new_thread.png
rename to src/resources/new_thread.png
diff --git a/resources/play.png b/src/resources/play.png
similarity index 100%
rename from resources/play.png
rename to src/resources/play.png
diff --git a/resources/search-button.png b/src/resources/search-button.png
similarity index 100%
rename from resources/search-button.png
rename to src/resources/search-button.png
diff --git a/resources/unlocked.png b/src/resources/unlocked.png
similarity index 100%
rename from resources/unlocked.png
rename to src/resources/unlocked.png
diff --git a/resources/wiki_button_images/empty.png b/src/resources/wiki_button_images/empty.png
similarity index 100%
rename from resources/wiki_button_images/empty.png
rename to src/resources/wiki_button_images/empty.png
diff --git a/resources/wiki_button_images/wikibtn-bold.png b/src/resources/wiki_button_images/wikibtn-bold.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-bold.png
rename to src/resources/wiki_button_images/wikibtn-bold.png
diff --git a/resources/wiki_button_images/wikibtn-bullets.png b/src/resources/wiki_button_images/wikibtn-bullets.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-bullets.png
rename to src/resources/wiki_button_images/wikibtn-bullets.png
diff --git a/resources/wiki_button_images/wikibtn-centeraligned.png b/src/resources/wiki_button_images/wikibtn-centeraligned.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-centeraligned.png
rename to src/resources/wiki_button_images/wikibtn-centeraligned.png
diff --git a/resources/wiki_button_images/wikibtn-definitionlist.png b/src/resources/wiki_button_images/wikibtn-definitionlist.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-definitionlist.png
rename to src/resources/wiki_button_images/wikibtn-definitionlist.png
diff --git a/resources/wiki_button_images/wikibtn-hr.png b/src/resources/wiki_button_images/wikibtn-hr.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-hr.png
rename to src/resources/wiki_button_images/wikibtn-hr.png
diff --git a/resources/wiki_button_images/wikibtn-hyperlink.png b/src/resources/wiki_button_images/wikibtn-hyperlink.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-hyperlink.png
rename to src/resources/wiki_button_images/wikibtn-hyperlink.png
diff --git a/resources/wiki_button_images/wikibtn-italic.png b/src/resources/wiki_button_images/wikibtn-italic.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-italic.png
rename to src/resources/wiki_button_images/wikibtn-italic.png
diff --git a/resources/wiki_button_images/wikibtn-leftaligned.png b/src/resources/wiki_button_images/wikibtn-leftaligned.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-leftaligned.png
rename to src/resources/wiki_button_images/wikibtn-leftaligned.png
diff --git a/resources/wiki_button_images/wikibtn-nowiki.png b/src/resources/wiki_button_images/wikibtn-nowiki.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-nowiki.png
rename to src/resources/wiki_button_images/wikibtn-nowiki.png
diff --git a/resources/wiki_button_images/wikibtn-numbers.png b/src/resources/wiki_button_images/wikibtn-numbers.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-numbers.png
rename to src/resources/wiki_button_images/wikibtn-numbers.png
diff --git a/resources/wiki_button_images/wikibtn-rightaligned.png b/src/resources/wiki_button_images/wikibtn-rightaligned.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-rightaligned.png
rename to src/resources/wiki_button_images/wikibtn-rightaligned.png
diff --git a/resources/wiki_button_images/wikibtn-search-widget.png b/src/resources/wiki_button_images/wikibtn-search-widget.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-search-widget.png
rename to src/resources/wiki_button_images/wikibtn-search-widget.png
diff --git a/resources/wiki_button_images/wikibtn-slide.png b/src/resources/wiki_button_images/wikibtn-slide.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-slide.png
rename to src/resources/wiki_button_images/wikibtn-slide.png
diff --git a/resources/wiki_button_images/wikibtn-strike.png b/src/resources/wiki_button_images/wikibtn-strike.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-strike.png
rename to src/resources/wiki_button_images/wikibtn-strike.png
diff --git a/resources/wiki_button_images/wikibtn-table.png b/src/resources/wiki_button_images/wikibtn-table.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-table.png
rename to src/resources/wiki_button_images/wikibtn-table.png
diff --git a/resources/wiki_button_images/wikibtn-underline.png b/src/resources/wiki_button_images/wikibtn-underline.png
similarity index 100%
rename from resources/wiki_button_images/wikibtn-underline.png
rename to src/resources/wiki_button_images/wikibtn-underline.png
diff --git a/resources/yioop.png b/src/resources/yioop.png
similarity index 100%
rename from resources/yioop.png
rename to src/resources/yioop.png
diff --git a/robots.txt b/src/robots.txt
similarity index 100%
rename from robots.txt
rename to src/robots.txt
diff --git a/scripts/basic.js b/src/scripts/basic.js
similarity index 100%
rename from scripts/basic.js
rename to src/scripts/basic.js
diff --git a/scripts/big_int.js b/src/scripts/big_int.js
similarity index 100%
rename from scripts/big_int.js
rename to src/scripts/big_int.js
diff --git a/scripts/classifiers.js b/src/scripts/classifiers.js
similarity index 100%
rename from scripts/classifiers.js
rename to src/scripts/classifiers.js
diff --git a/scripts/hash_captcha.js b/src/scripts/hash_captcha.js
similarity index 100%
rename from scripts/hash_captcha.js
rename to src/scripts/hash_captcha.js
diff --git a/scripts/help.js b/src/scripts/help.js
similarity index 100%
rename from scripts/help.js
rename to src/scripts/help.js
diff --git a/scripts/history.js b/src/scripts/history.js
similarity index 100%
rename from scripts/history.js
rename to src/scripts/history.js
diff --git a/scripts/mix.js b/src/scripts/mix.js
similarity index 100%
rename from scripts/mix.js
rename to src/scripts/mix.js
diff --git a/scripts/sha1.js b/src/scripts/sha1.js
similarity index 100%
rename from scripts/sha1.js
rename to src/scripts/sha1.js
diff --git a/scripts/slidy.js b/src/scripts/slidy.js
similarity index 100%
rename from scripts/slidy.js
rename to src/scripts/slidy.js
diff --git a/scripts/suggest.js b/src/scripts/suggest.js
similarity index 100%
rename from scripts/suggest.js
rename to src/scripts/suggest.js
diff --git a/scripts/wiki.js b/src/scripts/wiki.js
similarity index 100%
rename from scripts/wiki.js
rename to src/scripts/wiki.js
diff --git a/scripts/zkp.js b/src/scripts/zkp.js
similarity index 100%
rename from scripts/zkp.js
rename to src/scripts/zkp.js
diff --git a/terms.php b/src/terms.php
similarity index 97%
rename from terms.php
rename to src/terms.php
index 6fda36670..6dccf61f6 100755
--- a/terms.php
+++ b/src/terms.php
@@ -35,6 +35,4 @@ namespace seekquarry\yioop;

 $_REQUEST['c'] = "static";
 $_REQUEST['p'] = "terms";
-
-require_once("index.php");
-
+require_once(__DIR__."/index.php");
diff --git a/views/AdminView.php b/src/views/AdminView.php
similarity index 98%
rename from views/AdminView.php
rename to src/views/AdminView.php
index fa2c518f9..1181e95de 100755
--- a/views/AdminView.php
+++ b/src/views/AdminView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * View responsible for drawing the admin pages of the SeekQuarry search engine
  * site.
diff --git a/views/ApiView.php b/src/views/ApiView.php
similarity index 96%
rename from views/ApiView.php
rename to src/views/ApiView.php
index eeda59e86..eadd3039d 100644
--- a/views/ApiView.php
+++ b/src/views/ApiView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * View used to draw and allow editing of wiki page when not in the admin view
  * (so activities panel on side is not present.) This is also used to draw
diff --git a/views/CrawlstatusView.php b/src/views/CrawlstatusView.php
similarity index 99%
rename from views/CrawlstatusView.php
rename to src/views/CrawlstatusView.php
index 92220d305..586feacaa 100755
--- a/views/CrawlstatusView.php
+++ b/src/views/CrawlstatusView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This view is used to display information about
  * crawls that have been made by this seek_quarry instance
diff --git a/views/FeedstatusView.php b/src/views/FeedstatusView.php
similarity index 96%
rename from views/FeedstatusView.php
rename to src/views/FeedstatusView.php
index 331168886..7b05b7e47 100644
--- a/views/FeedstatusView.php
+++ b/src/views/FeedstatusView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This view is used to display information about
  * crawls that have been made by this seek_quarry instance
diff --git a/views/FetchView.php b/src/views/FetchView.php
similarity index 96%
rename from views/FetchView.php
rename to src/views/FetchView.php
index 5a45652d0..a4844509e 100755
--- a/views/FetchView.php
+++ b/src/views/FetchView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This view is displayed by the fetch_controller.php
  * to send information to a fetcher about things like
diff --git a/views/GroupView.php b/src/views/GroupView.php
similarity index 98%
rename from views/GroupView.php
rename to src/views/GroupView.php
index cc931211f..033ef01cb 100644
--- a/views/GroupView.php
+++ b/src/views/GroupView.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\views;

 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * View used to draw and allow editing of group feeds when not in the admin view
  * (so activities panel on side is not present.) This is also used to draw
diff --git a/views/MachinestatusView.php b/src/views/MachinestatusView.php
similarity index 99%
rename from views/MachinestatusView.php
rename to src/views/MachinestatusView.php
index 4b42b64be..3a4177c2e 100644
--- a/views/MachinestatusView.php
+++ b/src/views/MachinestatusView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This view is used to display information about
  * the on/off state of the queue_servers and fetchers managed by
diff --git a/views/NocacheView.php b/src/views/NocacheView.php
similarity index 97%
rename from views/NocacheView.php
rename to src/views/NocacheView.php
index 3c0696d18..b671bfa2b 100755
--- a/views/NocacheView.php
+++ b/src/views/NocacheView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This view is drawn when someone clicks
  * on the cached link of a web-page for which
diff --git a/views/RecoverView.php b/src/views/RecoverView.php
similarity index 99%
rename from views/RecoverView.php
rename to src/views/RecoverView.php
index e4f119bc8..799bc21fb 100644
--- a/views/RecoverView.php
+++ b/src/views/RecoverView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This View is responsible for drawing the
  * screen for recovering a forgotten password
diff --git a/views/RegisterView.php b/src/views/RegisterView.php
similarity index 99%
rename from views/RegisterView.php
rename to src/views/RegisterView.php
index b8d8002f8..23849736c 100755
--- a/views/RegisterView.php
+++ b/src/views/RegisterView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Draws the page that allows a user to register for an account
  *
diff --git a/views/RssView.php b/src/views/RssView.php
similarity index 98%
rename from views/RssView.php
rename to src/views/RssView.php
index 5bf69c540..3700d40c6 100644
--- a/views/RssView.php
+++ b/src/views/RssView.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\views;

 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Web page used to present search results
  * It is also contains the search box for
diff --git a/views/SearchView.php b/src/views/SearchView.php
similarity index 99%
rename from views/SearchView.php
rename to src/views/SearchView.php
index 1c60303d2..698a46e1d 100755
--- a/views/SearchView.php
+++ b/src/views/SearchView.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\views;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Web page used to present search results
  * It is also contains the search box for
diff --git a/views/SettingsView.php b/src/views/SettingsView.php
similarity index 97%
rename from views/SettingsView.php
rename to src/views/SettingsView.php
index 083201b1f..a8716d1f2 100755
--- a/views/SettingsView.php
+++ b/src/views/SettingsView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  *
  * Draws the view on which people can control
@@ -113,7 +112,7 @@ if (count($data['LANGUAGES']) > 1) { ?>
 </form>
 </div>
 <div class="setting-footer"><a
-    href="javascript:window.external.AddSearchProvider('<?=SEARCHBAR_PATH
+    href="javascript:window.external.AddSearchProvider('<?= SEARCHBAR_PATH
     ?>')"><?= tl('settings_install_search_plugin')
 ?></a>.</div>
 </div>
diff --git a/views/SigninView.php b/src/views/SigninView.php
similarity index 98%
rename from views/SigninView.php
rename to src/views/SigninView.php
index f0995f047..d602caaab 100755
--- a/views/SigninView.php
+++ b/src/views/SigninView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This View is responsible for drawing the login
  * screen for the admin panel of the Seek Quarry app
diff --git a/views/StaticView.php b/src/views/StaticView.php
similarity index 98%
rename from views/StaticView.php
rename to src/views/StaticView.php
index 62eca6bba..d72944405 100644
--- a/views/StaticView.php
+++ b/src/views/StaticView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This View is responsible for drawing forward-facing wiki pages in
  * a more static cleaned up way
diff --git a/views/StatisticsView.php b/src/views/StatisticsView.php
similarity index 99%
rename from views/StatisticsView.php
rename to src/views/StatisticsView.php
index 8cd83cfa4..1ec95f484 100644
--- a/views/StatisticsView.php
+++ b/src/views/StatisticsView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Draws a view displaying statistical information about a
  * web crawl such as number of hosts visited, distribution of
diff --git a/views/SuggestView.php b/src/views/SuggestView.php
similarity index 99%
rename from views/SuggestView.php
rename to src/views/SuggestView.php
index 453bfd31e..81877b27b 100644
--- a/views/SuggestView.php
+++ b/src/views/SuggestView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * View responsible for drawing the form where a user can suggest a URL
  *
diff --git a/views/View.php b/src/views/View.php
similarity index 98%
rename from views/View.php
rename to src/views/View.php
index b6f5642fa..40cd2510a 100644
--- a/views/View.php
+++ b/src/views/View.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /** import a  tl function into Controller Namespace */
 function tl()
 {
diff --git a/views/WikiView.php b/src/views/WikiView.php
similarity index 99%
rename from views/WikiView.php
rename to src/views/WikiView.php
index 5696e6d86..10d0be91f 100644
--- a/views/WikiView.php
+++ b/src/views/WikiView.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * View used to draw and allow editing of wiki page when not in the admin view
  * (so activities panel on side is not present.) This is also used to draw
diff --git a/views/elements/ActivityElement.php b/src/views/elements/ActivityElement.php
similarity index 98%
rename from views/elements/ActivityElement.php
rename to src/views/elements/ActivityElement.php
index 0936a8c6c..b1acf9524 100755
--- a/views/elements/ActivityElement.php
+++ b/src/views/elements/ActivityElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This element is used to display the list of available activities
  * in the AdminView
diff --git a/views/elements/ApiElement.php b/src/views/elements/ApiElement.php
similarity index 98%
rename from views/elements/ApiElement.php
rename to src/views/elements/ApiElement.php
index 4e0d40a78..eba71a74d 100644
--- a/views/elements/ApiElement.php
+++ b/src/views/elements/ApiElement.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\views\elements;

 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) { echo "BAD REQUEST"; exit(); }
 /**
  * Element responsible for drawing wiki pages in either admin or wiki view
  * It is also responsible for rendering wiki history pages, and listings of
diff --git a/views/elements/ConfigureElement.php b/src/views/elements/ConfigureElement.php
similarity index 99%
rename from views/elements/ConfigureElement.php
rename to src/views/elements/ConfigureElement.php
index ef66e0cd0..fa1ca435b 100644
--- a/views/elements/ConfigureElement.php
+++ b/src/views/elements/ConfigureElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for drawing the screen used to set up the search engine
  *
diff --git a/views/elements/CrawloptionsElement.php b/src/views/elements/CrawloptionsElement.php
similarity index 99%
rename from views/elements/CrawloptionsElement.php
rename to src/views/elements/CrawloptionsElement.php
index 415fcf032..c3907d9a9 100644
--- a/views/elements/CrawloptionsElement.php
+++ b/src/views/elements/CrawloptionsElement.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\views\elements;

 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for displaying options about how a crawl will be
  * performed. For instance, what are the seed sites for the crawl, what
diff --git a/views/elements/DisplayadvertisementElement.php b/src/views/elements/DisplayadvertisementElement.php
similarity index 98%
rename from views/elements/DisplayadvertisementElement.php
rename to src/views/elements/DisplayadvertisementElement.php
index 3f87abee4..3318ff95d 100644
--- a/views/elements/DisplayadvertisementElement.php
+++ b/src/views/elements/DisplayadvertisementElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for displaying the advertisement
  * on the search results page
diff --git a/views/elements/EditclassifierElement.php b/src/views/elements/EditclassifierElement.php
similarity index 99%
rename from views/elements/EditclassifierElement.php
rename to src/views/elements/EditclassifierElement.php
index 7bfdf6622..dd6fdaf0e 100644
--- a/views/elements/EditclassifierElement.php
+++ b/src/views/elements/EditclassifierElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This element renders the initial edit page for a classifier, where the user
  * can update the classifier label and find documents to label and add to the
diff --git a/views/elements/EditlocalesElement.php b/src/views/elements/EditlocalesElement.php
similarity index 98%
rename from views/elements/EditlocalesElement.php
rename to src/views/elements/EditlocalesElement.php
index cc0d68a9c..088cf3cf2 100644
--- a/views/elements/EditlocalesElement.php
+++ b/src/views/elements/EditlocalesElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for displaying the form where users can input string
  * translations for a given locale
diff --git a/views/elements/EditmixElement.php b/src/views/elements/EditmixElement.php
similarity index 98%
rename from views/elements/EditmixElement.php
rename to src/views/elements/EditmixElement.php
index f885d3696..01f160d56 100644
--- a/views/elements/EditmixElement.php
+++ b/src/views/elements/EditmixElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for displaying info about a given crawl mix
  *
diff --git a/views/elements/Element.php b/src/views/elements/Element.php
similarity index 97%
rename from views/elements/Element.php
rename to src/views/elements/Element.php
index 8f32fc8fb..e6e0458d5 100755
--- a/views/elements/Element.php
+++ b/src/views/elements/Element.php
@@ -1,6 +1,4 @@
 <?php
-namespace seekquarry\yioop\views\elements;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -30,7 +28,8 @@ namespace seekquarry\yioop\views\elements;
  * @copyright 2009 - 2015
  * @filesource
  */
-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
+namespace seekquarry\yioop\views\elements;
+
 /** import a  tl function into Controller Namespace */
 function tl()
 {
diff --git a/views/elements/FooterElement.php b/src/views/elements/FooterElement.php
similarity index 98%
rename from views/elements/FooterElement.php
rename to src/views/elements/FooterElement.php
index 282f7e907..ce4cebee8 100755
--- a/views/elements/FooterElement.php
+++ b/src/views/elements/FooterElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for drawing footer links on search view and static view
  * pages
diff --git a/views/elements/GroupfeedElement.php b/src/views/elements/GroupfeedElement.php
similarity index 99%
rename from views/elements/GroupfeedElement.php
rename to src/views/elements/GroupfeedElement.php
index 9e3baa469..7d75a9842 100644
--- a/views/elements/GroupfeedElement.php
+++ b/src/views/elements/GroupfeedElement.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\views\elements;
 use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for draw the feeds a user is subscribed to
  *
diff --git a/views/elements/HelpElement.php b/src/views/elements/HelpElement.php
similarity index 98%
rename from views/elements/HelpElement.php
rename to src/views/elements/HelpElement.php
index 36844d22d..71adfcbbc 100644
--- a/views/elements/HelpElement.php
+++ b/src/views/elements/HelpElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) { echo "BAD REQUEST"; exit(); }
 /**
  * This element is used to display the list of available activities
  * in the AdminView
diff --git a/views/elements/LanguageElement.php b/src/views/elements/LanguageElement.php
similarity index 97%
rename from views/elements/LanguageElement.php
rename to src/views/elements/LanguageElement.php
index 7dba6a7c3..d576356d1 100755
--- a/views/elements/LanguageElement.php
+++ b/src/views/elements/LanguageElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element used to display available languages in the settings view
  *
diff --git a/views/elements/MachinelogElement.php b/src/views/elements/MachinelogElement.php
similarity index 98%
rename from views/elements/MachinelogElement.php
rename to src/views/elements/MachinelogElement.php
index b20df22dd..3bcabffce 100644
--- a/views/elements/MachinelogElement.php
+++ b/src/views/elements/MachinelogElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for displaying the queue_server or fetcher log
  * of a machine
diff --git a/views/elements/ManageaccountElement.php b/src/views/elements/ManageaccountElement.php
similarity index 98%
rename from views/elements/ManageaccountElement.php
rename to src/views/elements/ManageaccountElement.php
index aea1bb8f4..574389a6f 100755
--- a/views/elements/ManageaccountElement.php
+++ b/src/views/elements/ManageaccountElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for displaying the user account features
  * that someone can modify for their own SeekQuarry/Yioop account.
@@ -61,7 +60,7 @@ class ManageaccountElement extends Element
             (isset($data['EDIT_USER'])) ? "&amp;edit=false":"&amp;edit=true");
         $edit_or_no_text = tl('manageaccount_element_edit_or_no_text');
         $edit_or_no_img = (isset($data['EDIT_USER'])) ?
-            "Resources/unlocked.png" : "Resources/locked.png";
+            "resources/unlocked.png" : "resources/locked.png";
         $password_or_no_url = $base_url .(
             (isset($data['EDIT_PASSWORD'])) ? "&amp;edit_pass=false":
             "&amp;edit_pass=true");
diff --git a/views/elements/ManageadvertisementsElement.php b/src/views/elements/ManageadvertisementsElement.php
similarity index 99%
rename from views/elements/ManageadvertisementsElement.php
rename to src/views/elements/ManageadvertisementsElement.php
index 8fba890ff..5c0a97656 100644
--- a/views/elements/ManageadvertisementsElement.php
+++ b/src/views/elements/ManageadvertisementsElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for displaying advertisements information
  * that someone can create, view, and modify for their own
diff --git a/views/elements/ManageclassifiersElement.php b/src/views/elements/ManageclassifiersElement.php
similarity index 99%
rename from views/elements/ManageclassifiersElement.php
rename to src/views/elements/ManageclassifiersElement.php
index 74f667e93..b93d7668f 100644
--- a/views/elements/ManageclassifiersElement.php
+++ b/src/views/elements/ManageclassifiersElement.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\views\elements;

 use seekquarry\yioop\library\classifiers\Classifier;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This element renders the page that lists classifiers, provides a form to
  * create new ones, and provides per-classifier action links to edit, finalize,
diff --git a/views/elements/ManagecrawlsElement.php b/src/views/elements/ManagecrawlsElement.php
similarity index 98%
rename from views/elements/ManagecrawlsElement.php
rename to src/views/elements/ManagecrawlsElement.php
index bb5ebe780..d9492f0d9 100755
--- a/views/elements/ManagecrawlsElement.php
+++ b/src/views/elements/ManagecrawlsElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for displaying info about starting, stopping, deleting,
  * and using a crawl. It makes use of the CrawlStatusView
diff --git a/views/elements/ManagegroupsElement.php b/src/views/elements/ManagegroupsElement.php
similarity index 99%
rename from views/elements/ManagegroupsElement.php
rename to src/views/elements/ManagegroupsElement.php
index cdeacc603..4fd27544d 100755
--- a/views/elements/ManagegroupsElement.php
+++ b/src/views/elements/ManagegroupsElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to draw the admin screen on which users can create groups, delete
  * groups and add and delete users and roles to a group
diff --git a/views/elements/ManagelocalesElement.php b/src/views/elements/ManagelocalesElement.php
similarity index 99%
rename from views/elements/ManagelocalesElement.php
rename to src/views/elements/ManagelocalesElement.php
index 6082bb780..64cf1eb42 100644
--- a/views/elements/ManagelocalesElement.php
+++ b/src/views/elements/ManagelocalesElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This Element is responsible for drawing screens in the Admin View related
  * to localization. Namely, the ability to create, delete, and text writing mode
diff --git a/views/elements/ManagemachinesElement.php b/src/views/elements/ManagemachinesElement.php
similarity index 99%
rename from views/elements/ManagemachinesElement.php
rename to src/views/elements/ManagemachinesElement.php
index b4bb956bc..78d060e0d 100644
--- a/views/elements/ManagemachinesElement.php
+++ b/src/views/elements/ManagemachinesElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to draw the admin screen on which admin users can add/delete
  * and manage machines which might act as fetchers or queue_servers.
diff --git a/views/elements/ManagerolesElement.php b/src/views/elements/ManagerolesElement.php
similarity index 99%
rename from views/elements/ManagerolesElement.php
rename to src/views/elements/ManagerolesElement.php
index 3f9e67255..f282e187f 100644
--- a/views/elements/ManagerolesElement.php
+++ b/src/views/elements/ManagerolesElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to draw the admin screen on which admin users can create roles, delete
  * roles and add and delete activitiess from roles
diff --git a/views/elements/ManageusersElement.php b/src/views/elements/ManageusersElement.php
similarity index 99%
rename from views/elements/ManageusersElement.php
rename to src/views/elements/ManageusersElement.php
index 099b46ce7..0102cb975 100644
--- a/views/elements/ManageusersElement.php
+++ b/src/views/elements/ManageusersElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for drawing the activity screen for User manipulation
  * in the AdminView.
diff --git a/views/elements/MixcrawlsElement.php b/src/views/elements/MixcrawlsElement.php
similarity index 99%
rename from views/elements/MixcrawlsElement.php
rename to src/views/elements/MixcrawlsElement.php
index e05497052..6dab8b98c 100644
--- a/views/elements/MixcrawlsElement.php
+++ b/src/views/elements/MixcrawlsElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for displaying info to allow a user to create
  * a crawl mix or edit an existing one
diff --git a/views/elements/MoreoptionsElement.php b/src/views/elements/MoreoptionsElement.php
similarity index 99%
rename from views/elements/MoreoptionsElement.php
rename to src/views/elements/MoreoptionsElement.php
index 50abe1906..cdfbd90be 100644
--- a/views/elements/MoreoptionsElement.php
+++ b/src/views/elements/MoreoptionsElement.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\views\elements;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for drawing the page with more
  * search source options, create account, and tool info
diff --git a/views/elements/PageoptionsElement.php b/src/views/elements/PageoptionsElement.php
similarity index 99%
rename from views/elements/PageoptionsElement.php
rename to src/views/elements/PageoptionsElement.php
index 3221d0eb1..f7b21e4aa 100644
--- a/views/elements/PageoptionsElement.php
+++ b/src/views/elements/PageoptionsElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This element is used to render the Page Options admin activity
  * This activity lets a user control the amount of web pages downloaded,
@@ -49,7 +48,6 @@ class PageOptionsElement extends Element
      */
     public function render($data)
     {
-        global $INDEXED_FILE_TYPES;
     ?>
         <div class="current-activity">
         <form id="pageoptionsForm" method="post" action='?'>
diff --git a/views/elements/ResultseditorElement.php b/src/views/elements/ResultseditorElement.php
similarity index 98%
rename from views/elements/ResultseditorElement.php
rename to src/views/elements/ResultseditorElement.php
index 485b43acc..30359e3f6 100644
--- a/views/elements/ResultseditorElement.php
+++ b/src/views/elements/ResultseditorElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element used to control how urls are filtered out of search results
  * (if desired) after a crawl has already been performed.
diff --git a/views/elements/SearchsourcesElement.php b/src/views/elements/SearchsourcesElement.php
similarity index 99%
rename from views/elements/SearchsourcesElement.php
rename to src/views/elements/SearchsourcesElement.php
index 35fae4439..a44ce49b6 100644
--- a/views/elements/SearchsourcesElement.php
+++ b/src/views/elements/SearchsourcesElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Contains the forms for managing search sources for video, news, etc.
  * Also, contains form for managing subsearches which appear in SearchView
diff --git a/views/elements/SecurityElement.php b/src/views/elements/SecurityElement.php
similarity index 98%
rename from views/elements/SecurityElement.php
rename to src/views/elements/SecurityElement.php
index ce7125144..1f8fb3b06 100755
--- a/views/elements/SecurityElement.php
+++ b/src/views/elements/SecurityElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element used to handle configurations of Yioop related to authentication,
  * captchas, and recovery of missing passwords
diff --git a/views/elements/ServersettingsElement.php b/src/views/elements/ServersettingsElement.php
similarity index 99%
rename from views/elements/ServersettingsElement.php
rename to src/views/elements/ServersettingsElement.php
index a46a75ee2..c1874547c 100644
--- a/views/elements/ServersettingsElement.php
+++ b/src/views/elements/ServersettingsElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element used to draw forms to set up the various external servers
  * that might be connected with a Yioop installation
diff --git a/views/elements/SigninElement.php b/src/views/elements/SigninElement.php
similarity index 98%
rename from views/elements/SigninElement.php
rename to src/views/elements/SigninElement.php
index 40f606ae8..9fc7bff0e 100755
--- a/views/elements/SigninElement.php
+++ b/src/views/elements/SigninElement.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\views\elements;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for drawing links to settings and login panels
  *
diff --git a/views/elements/SubsearchElement.php b/src/views/elements/SubsearchElement.php
similarity index 98%
rename from views/elements/SubsearchElement.php
rename to src/views/elements/SubsearchElement.php
index 4b8dc1ce5..306d073af 100644
--- a/views/elements/SubsearchElement.php
+++ b/src/views/elements/SubsearchElement.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\elements;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for drawing links to common subsearches
  *
diff --git a/views/elements/WikiElement.php b/src/views/elements/WikiElement.php
similarity index 99%
rename from views/elements/WikiElement.php
rename to src/views/elements/WikiElement.php
index fb04be89c..0797721b6 100644
--- a/views/elements/WikiElement.php
+++ b/src/views/elements/WikiElement.php
@@ -32,8 +32,8 @@ namespace seekquarry\yioop\views\elements;

 use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\CrawlConstants;
+use seekquarry\yioop\models\Model;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Element responsible for drawing wiki pages in either admin or wiki view
  * It is also responsible for rendering wiki history pages, and listings of
@@ -630,7 +630,7 @@ class WikiElement extends Element implements CrawlConstants
         if ($data['PAGES'] != []) {
             foreach ($data['PAGES'] as $page) {
                 $ellipsis = (mb_strlen($page["DESCRIPTION"]) >
-                    MIN_SNIPPET_LENGTH) ? "..." : "";
+                    Model::MIN_SNIPPET_LENGTH) ? "..." : "";
                 if ($page['TYPE'] == 'page_alias' && isset($page['ALIAS'])) {
                     $page["DESCRIPTION"] = tl('wiki_element_redirect_to').
                         " <a href='$base_query&amp;".
diff --git a/views/helpers/DisplayresultsHelper.php b/src/views/helpers/DisplayresultsHelper.php
similarity index 97%
rename from views/helpers/DisplayresultsHelper.php
rename to src/views/helpers/DisplayresultsHelper.php
index 1ba4a6083..82fbc2edf 100644
--- a/views/helpers/DisplayresultsHelper.php
+++ b/src/views/helpers/DisplayresultsHelper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This is a helper class used to handle
  * displaying a web page summary. If the summary has recipe data
diff --git a/views/helpers/FeedsHelper.php b/src/views/helpers/FeedsHelper.php
similarity index 99%
rename from views/helpers/FeedsHelper.php
rename to src/views/helpers/FeedsHelper.php
index aed96f46c..e34602e2f 100644
--- a/views/helpers/FeedsHelper.php
+++ b/src/views/helpers/FeedsHelper.php
@@ -33,8 +33,6 @@ namespace seekquarry\yioop\views\helpers;
 use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\UrlParser;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-
 /**
  * Helper used to draw links and snippets for RSS feeds
  *
diff --git a/views/helpers/FiletypeHelper.php b/src/views/helpers/FiletypeHelper.php
similarity index 98%
rename from views/helpers/FiletypeHelper.php
rename to src/views/helpers/FiletypeHelper.php
index ce7f34487..f650863d7 100644
--- a/views/helpers/FiletypeHelper.php
+++ b/src/views/helpers/FiletypeHelper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This is a helper class is used to handle
  * used to render the filetype based on
diff --git a/views/helpers/FileuploadHelper.php b/src/views/helpers/FileuploadHelper.php
similarity index 98%
rename from views/helpers/FileuploadHelper.php
rename to src/views/helpers/FileuploadHelper.php
index 2c3fa7569..7778cd867 100644
--- a/views/helpers/FileuploadHelper.php
+++ b/src/views/helpers/FileuploadHelper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This helper is used to render a drag and drop file upload region
  *
diff --git a/views/helpers/HelpbuttonHelper.php b/src/views/helpers/HelpbuttonHelper.php
similarity index 99%
rename from views/helpers/HelpbuttonHelper.php
rename to src/views/helpers/HelpbuttonHelper.php
index 7abdec620..73c85bd2b 100644
--- a/views/helpers/HelpbuttonHelper.php
+++ b/src/views/helpers/HelpbuttonHelper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This is a helper class is used to
  * draw help button for context sensitive
diff --git a/views/helpers/Helper.php b/src/views/helpers/Helper.php
similarity index 96%
rename from views/helpers/Helper.php
rename to src/views/helpers/Helper.php
index 40376eff0..81647ed9b 100755
--- a/views/helpers/Helper.php
+++ b/src/views/helpers/Helper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /** import a  tl function into Controller Namespace */
 function tl()
 {
diff --git a/views/helpers/ImagesHelper.php b/src/views/helpers/ImagesHelper.php
similarity index 98%
rename from views/helpers/ImagesHelper.php
rename to src/views/helpers/ImagesHelper.php
index 973082c52..abfd4d889 100644
--- a/views/helpers/ImagesHelper.php
+++ b/src/views/helpers/ImagesHelper.php
@@ -32,7 +32,6 @@ namespace seekquarry\yioop\views\helpers;

 use seekquarry\yioop\library\CrawlConstants;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Helper used to draw thumbnails strips for images
  *
diff --git a/views/helpers/OptionsHelper.php b/src/views/helpers/OptionsHelper.php
similarity index 97%
rename from views/helpers/OptionsHelper.php
rename to src/views/helpers/OptionsHelper.php
index 763bdc360..8e5be34f1 100755
--- a/views/helpers/OptionsHelper.php
+++ b/src/views/helpers/OptionsHelper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This is a helper class is used to handle
  * draw select options form elements
diff --git a/views/helpers/PaginationHelper.php b/src/views/helpers/PaginationHelper.php
similarity index 98%
rename from views/helpers/PaginationHelper.php
rename to src/views/helpers/PaginationHelper.php
index 7e17a5189..28f848264 100755
--- a/views/helpers/PaginationHelper.php
+++ b/src/views/helpers/PaginationHelper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This is a helper class is used to handle
  * pagination of search results
diff --git a/views/helpers/PagingtableHelper.php b/src/views/helpers/PagingtableHelper.php
similarity index 99%
rename from views/helpers/PagingtableHelper.php
rename to src/views/helpers/PagingtableHelper.php
index 8c9a7fd5c..24ed6772e 100644
--- a/views/helpers/PagingtableHelper.php
+++ b/src/views/helpers/PagingtableHelper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to create links to go backward/forwards and search a database
  * tables. HTML table with data representing a
diff --git a/views/helpers/SearchformHelper.php b/src/views/helpers/SearchformHelper.php
similarity index 99%
rename from views/helpers/SearchformHelper.php
rename to src/views/helpers/SearchformHelper.php
index 7df69f45b..f1e4f195a 100644
--- a/views/helpers/SearchformHelper.php
+++ b/src/views/helpers/SearchformHelper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to draw the form to do advanced search for items in a user, group,
  * locale, etc folder
diff --git a/views/helpers/ToggleHelper.php b/src/views/helpers/ToggleHelper.php
similarity index 98%
rename from views/helpers/ToggleHelper.php
rename to src/views/helpers/ToggleHelper.php
index 11ed24917..03b858556 100644
--- a/views/helpers/ToggleHelper.php
+++ b/src/views/helpers/ToggleHelper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * This is a helper class is used to draw
  * an On-Off switch in a web page
diff --git a/views/helpers/VideourlHelper.php b/src/views/helpers/VideourlHelper.php
similarity index 98%
rename from views/helpers/VideourlHelper.php
rename to src/views/helpers/VideourlHelper.php
index 994e83811..12ca979c3 100644
--- a/views/helpers/VideourlHelper.php
+++ b/src/views/helpers/VideourlHelper.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\helpers;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Helper used to draw thumbnails for video sites
  *
diff --git a/views/layouts/ApiLayout.php b/src/views/layouts/ApiLayout.php
similarity index 96%
rename from views/layouts/ApiLayout.php
rename to src/views/layouts/ApiLayout.php
index 65cda0bd2..bf81cd300 100644
--- a/views/layouts/ApiLayout.php
+++ b/src/views/layouts/ApiLayout.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\layouts;

-if (!defined('BASE_DIR')) { echo "BAD REQUEST"; exit(); }
 /**
  * Layout used for the seek_quarry Website
  * including pages such as search landing page
diff --git a/views/layouts/Layout.php b/src/views/layouts/Layout.php
similarity index 97%
rename from views/layouts/Layout.php
rename to src/views/layouts/Layout.php
index 8f189412b..7a44f1785 100755
--- a/views/layouts/Layout.php
+++ b/src/views/layouts/Layout.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\layouts;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /** import a  tl function into Controller Namespace */
 function tl()
 {
diff --git a/views/layouts/RssLayout.php b/src/views/layouts/RssLayout.php
similarity index 94%
rename from views/layouts/RssLayout.php
rename to src/views/layouts/RssLayout.php
index d78f0ab20..9561c795c 100644
--- a/views/layouts/RssLayout.php
+++ b/src/views/layouts/RssLayout.php
@@ -32,9 +32,6 @@ namespace seekquarry\yioop\views\layouts;

 use seekquarry\yioop\library as L;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/**  For getLocaleTag function  */
-require_once BASE_DIR."/library/LocaleFunctions.php";
 /**
  * Layout used for the seek_quarry Website
  * including pages such as search landing page
@@ -66,7 +63,7 @@ xmlns:atom="http://www.w3.org/2005/Atom"
         <title><?=tl('rss_layout_title',
              mb_convert_encoding(html_entity_decode(
              urldecode($data['QUERY'])), "UTF-8")) ?></title>
-        <language><?= L\getLocaleTag() ?></language>
+        <language><?= L\getLocaleTag()l ?></language>
         <link><?=NAME_SERVER
         ?>?f=rss&amp;q=<?= $data['QUERY'] ?>&amp;<?php
         ?>its=<?= $data['its'] ?></link>
diff --git a/views/layouts/WebLayout.php b/src/views/layouts/WebLayout.php
similarity index 99%
rename from views/layouts/WebLayout.php
rename to src/views/layouts/WebLayout.php
index bba5c2c65..2ba98f85f 100755
--- a/views/layouts/WebLayout.php
+++ b/src/views/layouts/WebLayout.php
@@ -30,7 +30,6 @@
  */
 namespace seekquarry\yioop\views\layouts;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Layout used for the seek_quarry Website
  * including pages such as search landing page
diff --git a/yioopbar.xml b/src/yioopbar.xml
similarity index 100%
rename from yioopbar.xml
rename to src/yioopbar.xml
diff --git a/tests/BloomFilterFileTest.php b/tests/BloomFilterFileTest.php
index 61ce68ade..a19a4bd42 100755
--- a/tests/BloomFilterFileTest.php
+++ b/tests/BloomFilterFileTest.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\tests;
 use seekquarry\yioop\library\BloomFilterFile;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to test that the BloomFilterFile class provides the basic functionality
  * of a persistent set. I.e., we can insert things into it, and we can do
diff --git a/tests/BtreeTest.php b/tests/BtreeTest.php
index 73b3332af..ab8388825 100644
--- a/tests/BtreeTest.php
+++ b/tests/BtreeTest.php
@@ -35,23 +35,6 @@ use seekquarry\yioop\library\BTree;
 use seekquarry\yioop\library\UnitTest;
 use seekquarry\yioop\models\Model;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/**
- * Load crawlHash
- */
-require_once BASE_DIR."/library/Utility.php";
-/**
- * Test directory to hold btree used for these unit tests
- */
-define('BTREE_TEST_DIR', WORK_DIRECTORY."/btree_test");
-/**
- * Minimum degree of BTree
- */
-define('DEGREE', 2);
-/**
- * Number of key value pairs to insert for unit tests
- */
-define('NUM_VALS', 25);
 /**
  * Used to test insert, lookup,  and deletion of key-value pairs on the B-Tree.
  *
@@ -60,12 +43,24 @@ define('NUM_VALS', 25);
  */
 class BTreeTest extends UnitTest
 {
+    /**
+     * Number of key value pairs to insert for unit tests
+     */
+    const NUM_VALS = 25;
+    /**
+     * Minimum degree of BTree
+     */
+    const DEGREE = 2;
+    /**
+     * Test directory to hold btree used for these unit tests
+     */
+    public static $test_dir =  WORK_DIRECTORY."/btree_test";
     /**
      * Minimum degree is set to 2 and the number of key-value pairs is set to 25
      */
     public function setUp()
     {
-        $this->test_objects['FILE1'] = new BTree(BTREE_TEST_DIR, DEGREE);
+        $this->test_objects['FILE1'] = new BTree(self::$test_dir, self::DEGREE);
     }

     /**
@@ -74,7 +69,7 @@ class BTreeTest extends UnitTest
     public function tearDown()
     {
         $model = new Model();
-        $model->db->unlinkRecursive(BTREE_TEST_DIR);
+        $model->db->unlinkRecursive(self::$test_dir);
     }
     /**
      * Test to check that an empty B-Tree is not saved to disk.
@@ -85,15 +80,15 @@ class BTreeTest extends UnitTest
      */
     public function emptyBTreeNoSaveTestCase()
     {
-        $all_files = glob(BTREE_TEST_DIR.'/*.txt');
+        $all_files = glob(self::$test_dir.'/*.txt');
         $this->assertEqual(0, count($all_files), 'Empty B-Tree not saved
             saved to disk');
         $this->test_objects['FILE1']->insert(array(1, 1));
-        $all_files = glob(BTREE_TEST_DIR.'/*.txt');
+        $all_files = glob(self::$test_dir.'/*.txt');
         $this->assertEqual(2, count($all_files), 'Non-empty B-Tree successfully
             saved to disk');
         $this->test_objects['FILE1']->remove(1);
-        $all_files = glob(BTREE_TEST_DIR.'/*.txt');
+        $all_files = glob(self::$test_dir.'/*.txt');
         $this->assertEqual(0, count($all_files), 'Empty B-Tree not saved
             saved to disk');
     }
@@ -105,7 +100,7 @@ class BTreeTest extends UnitTest
     {
         //Insert values
         $key_value_pairs = [];
-        for ($i = 1; $i <= NUM_VALS; $i++) {
+        for ($i = 1; $i <= self::NUM_VALS; $i++) {
             $value = L\crawlHash(rand(1, 1000), true);
             $key = L\crawlHash($value, true);
             $this->test_objects['FILE1']->insert(array($key, $value));
@@ -131,7 +126,7 @@ class BTreeTest extends UnitTest
     public function deleteFromLeafNodeTestCase()
     {
         //Insert values
-        for ($i = 1; $i <= NUM_VALS; $i++) {
+        for ($i = 1; $i <= self::NUM_VALS; $i++) {
             $this->test_objects['FILE1']->insert(array($i, $i));
         }
         //Keys in leaf nodes
@@ -155,14 +150,14 @@ class BTreeTest extends UnitTest
     public function deleteFromInternalNodeTestCase()
     {
         //Insert values
-        for ($i = 1; $i <= NUM_VALS; $i++) {
+        for ($i = 1; $i <= self::NUM_VALS; $i++) {
             $value = L\crawlHash(rand(1, 1000), true);
             $key = L\crawlHash($value, true);
             $this->test_objects['FILE1']->insert(array($key, $value));
         }

         $deleted = [];
-        for ($i = 1; $i <= NUM_VALS - 10; $i++) {
+        for ($i = 1; $i <= self::NUM_VALS - 10; $i++) {
             $internal_key = $this->test_objects['FILE1']->root->keys[0][0];
             $this->test_objects['FILE1']->remove($internal_key);
             $this->assertEqual(null,
@@ -181,7 +176,7 @@ class BTreeTest extends UnitTest
     {
         //Insert values
         $key_value_pairs = [];
-        for ($i = 1; $i <= NUM_VALS; $i++) {
+        for ($i = 1; $i <= self::NUM_VALS; $i++) {
             $value = L\crawlHash(rand(1, 1000), true);
             $key = L\crawlHash($value, true);
             $this->test_objects['FILE1']->insert(array($key, $value));
@@ -189,8 +184,8 @@ class BTreeTest extends UnitTest
         }
         //Delete Values
         $deleted = [];
-        for ($i = 1; $i <= NUM_VALS; $i++) {
-            $index = mt_rand(0, NUM_VALS - 1);
+        for ($i = 1; $i <= self::NUM_VALS; $i++) {
+            $index = mt_rand(0, self::NUM_VALS - 1);
             $key = $key_value_pairs[$index][0];
             $this->test_objects['FILE1']->remove($key);
             $deleted[] = $key;
diff --git a/tests/DeTokenizerTest.php b/tests/DeTokenizerTest.php
index 654ef00ad..0824f8e82 100644
--- a/tests/DeTokenizerTest.php
+++ b/tests/DeTokenizerTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Code used to test the German stemming algorithm. The inputs for the
  * algorithm are words in
@@ -72,7 +71,7 @@ class DeTokenizerTest extends UnitTest
      */
     public function stemmerTestCase()
     {
-        $stem_dir = BASE_DIR.'/tests/test_files/german_stemmer';
+        $stem_dir = PARENT_DIR.'/tests/test_files/german_stemmer';
         //Test word set from snowball
         $test_words = file("$stem_dir/input_vocabulary.txt");
         //Stem word set from snowball for comparing results
diff --git a/tests/DocxProcessorTest.php b/tests/DocxProcessorTest.php
index 74e253ea9..cd26a120b 100644
--- a/tests/DocxProcessorTest.php
+++ b/tests/DocxProcessorTest.php
@@ -35,7 +35,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\processors\DocxProcessor;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * UnitTest for the DocxProcessor class. It is used to process
  * docx files which are a zip of an xml-based format
@@ -51,7 +50,7 @@ class DocxProcessorTest extends UnitTest implements CrawlConstants
     public function setUp()
     {
         $processor = new DocxProcessor();
-        $filename = BASE_DIR . "/tests/test_files/test.docx";
+        $filename = PARENT_DIR . "/tests/test_files/test.docx";
         $page = file_get_contents($filename);
         $url = "";
         $summary = [];
diff --git a/tests/EnTokenizerTest.php b/tests/EnTokenizerTest.php
index 17973335f..8fb237610 100644
--- a/tests/EnTokenizerTest.php
+++ b/tests/EnTokenizerTest.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -36,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Code used to test the English stemming algorithm. The inputs for the
  * algorithm are words in
@@ -75,7 +72,7 @@ class EnTokenizerTest extends UnitTest
      */
     public function stemmerTestCase()
     {
-        $stem_dir = BASE_DIR.'/tests/test_files/english_stemmer';
+        $stem_dir = PARENT_DIR.'/tests/test_files/english_stemmer';
         //Test word set from snowball
         $test_words = file("$stem_dir/input_vocabulary.txt");
         //Stem word set from snowball for comparing results
diff --git a/tests/EpubProcessorTest.php b/tests/EpubProcessorTest.php
index 66e00716e..22c0da1ce 100644
--- a/tests/EpubProcessorTest.php
+++ b/tests/EpubProcessorTest.php
@@ -35,7 +35,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\processors\EpubProcessor;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * UnitTest for the EpubProcessor class. An EpubProcessor is used to process
  * a .epub (ebook publishing standard) file and extract summary from it. This
@@ -55,7 +54,7 @@ class EpubProcessorTest extends UnitTest implements CrawlConstants
     {
         $epub_object = new EpubProcessor();
         $url = "http://www.yioop.com/TestEpubYioop.epub";
-        $filename = BASE_DIR."/tests/test_files/TestEpubYioop.epub";
+        $filename = PARENT_DIR."/tests/test_files/TestEpubYioop.epub";
         $page = file_get_contents($filename);
         $summary = $epub_object->process($page, $url);
         $this->test_objects['summary'] = $summary;
diff --git a/tests/EsTokenizerTest.php b/tests/EsTokenizerTest.php
index 7de41f1e6..2a8865aea 100644
--- a/tests/EsTokenizerTest.php
+++ b/tests/EsTokenizerTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Code used to test the French stemming algorithm. The inputs for the
  * algorithm are words in
@@ -72,7 +71,7 @@ class EsTokenizerTest extends UnitTest
      */
     public function stemmerTestCase()
     {
-        $stem_dir = BASE_DIR.'/tests/test_files/spanish_stemmer';
+        $stem_dir = PARENT_DIR.'/tests/test_files/spanish_stemmer';
         //Test word set from snowball
         $test_words = file("$stem_dir/input_vocabulary.txt");
         //Stem word set from snowball for comparing results
diff --git a/tests/FaTokenizerTest.php b/tests/FaTokenizerTest.php
index d238471d2..dff24d3db 100644
--- a/tests/FaTokenizerTest.php
+++ b/tests/FaTokenizerTest.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -36,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Code used to test the Persian stemming algorithm. The inputs for the
  * algorithm came from the sample text file for the Hamshahri Collection
@@ -75,7 +72,7 @@ class FaTokenizerTest extends UnitTest
      */
     public function stemmerTestCase()
     {
-        $stem_dir = BASE_DIR.'/tests/test_files/persian_stemmer';
+        $stem_dir = PARENT_DIR.'/tests/test_files/persian_stemmer';
         //Test word set from snowball
         $test_words = file("$stem_dir/input_vocabulary.txt");
         //Stem word set from snowball for comparing results
diff --git a/tests/FrTokenizerTest.php b/tests/FrTokenizerTest.php
index 1b1de1833..b7ce568c2 100644
--- a/tests/FrTokenizerTest.php
+++ b/tests/FrTokenizerTest.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -36,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Code used to test the French stemming algorithm. The inputs for the
  * algorithm are words in
@@ -74,7 +71,7 @@ class FrTokenizerTest extends UnitTest
      */
     public function stemmerTestCase()
     {
-        $stem_dir = BASE_DIR.'/tests/test_files/french_stemmer';
+        $stem_dir = PARENT_DIR.'/tests/test_files/french_stemmer';
         //Test word set from snowball
         $test_words = file("$stem_dir/input_vocabulary.txt");
         //Stem word set from snowball for comparing results
diff --git a/tests/HashTableTest.php b/tests/HashTableTest.php
index e5b645087..ea2d3650e 100755
--- a/tests/HashTableTest.php
+++ b/tests/HashTableTest.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -36,11 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\HashTable;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/**
- * Load the crawlHash function
- */
-require_once BASE_DIR.'/library/Utility.php';
 /**
  * Used to test that the HashTable class properly stores key value pairs,
  * handles insert, deletes, collisions okay. It should also detect when
diff --git a/tests/HiTokenizerTest.php b/tests/HiTokenizerTest.php
index e12d81728..222b5f6ac 100644
--- a/tests/HiTokenizerTest.php
+++ b/tests/HiTokenizerTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Code used to test the Hindi stemming algorithm. The inputs for the
  * algorithm came from the sample text file for the
@@ -72,7 +71,7 @@ class HiTokenizerTest extends UnitTest
      */
     public function stemmerTestCase()
     {
-        $stem_dir = BASE_DIR.'/tests/test_files/hindi_stemmer';
+        $stem_dir = PARENT_DIR.'/tests/test_files/hindi_stemmer';
         //Test word set from snowball
         $test_words = file("$stem_dir/input_vocabulary.txt");
         //Stem word set from snowball for comparing results
diff --git a/tests/IndexShardTest.php b/tests/IndexShardTest.php
index 2f0003b1e..caba53323 100644
--- a/tests/IndexShardTest.php
+++ b/tests/IndexShardTest.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -37,12 +35,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\IndexShard;
 use seekquarry\yioop\library\UnitTest;

-
-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/**
- * Load the library for crawlHash
- */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * Used to test that the IndexShard class can properly add new documents
  * and retrieve those documents by word. Checks that doc offsets can be
diff --git a/tests/ItTokenizerTest.php b/tests/ItTokenizerTest.php
index 68a14e879..30b5a8cc8 100644
--- a/tests/ItTokenizerTest.php
+++ b/tests/ItTokenizerTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * My code for testing the Italian stemming algorithm. The inputs for the
  * algorithm are words in
@@ -72,7 +71,7 @@ class ItTokenizerTest extends UnitTest
      */
     public function stemmerTestCase()
     {
-        $stem_dir = BASE_DIR.'/tests/test_files/italian_stemmer';
+        $stem_dir = PARENT_DIR.'/tests/test_files/italian_stemmer';

         //Test word set from snowball
         $test_words = file("$stem_dir/input_vocabulary.txt");
diff --git a/tests/ManyUserExperiment.php b/tests/ManyUserExperiment.php
index c1d0b692e..a7a6f9a4e 100644
--- a/tests/ManyUserExperiment.php
+++ b/tests/ManyUserExperiment.php
@@ -49,9 +49,10 @@ if (isset($_SERVER['DOCUMENT_ROOT']) && strlen($_SERVER['DOCUMENT_ROOT']) > 0) {
  * Calculate base directory of script
  * @ignore
  */
-define("BASE_DIR", substr(
+define("PARENT_DIR", substr(
     dirname(realpath($_SERVER['PHP_SELF'])), 0,
     -strlen("/tests")));
+define("BASE_DIR", PARENT_DIR . "/src");
 require_once BASE_DIR.'/configs/Config.php';
 /** For class autoload **/
 require_once BASE_DIR ."/vendor/autoload.php";
diff --git a/tests/NlTokenizerTest.php b/tests/NlTokenizerTest.php
index 03b3c1b5f..3662674ff 100644
--- a/tests/NlTokenizerTest.php
+++ b/tests/NlTokenizerTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Code used to test the Dutch stemming algorithm. The inputs for the
  * algorithm are words in
@@ -72,7 +71,7 @@ class NlTokenizerTest extends UnitTest
      */
     public function stemmerTestCase()
     {
-        $stem_dir = BASE_DIR.'/tests/test_files/dutch_stemmer';
+        $stem_dir = PARENT_DIR.'/tests/test_files/dutch_stemmer';
         //Test word set from snowball
         $test_words = file("$stem_dir/input_vocabulary.txt");
         //Stem word set from snowball for comparing results
diff --git a/tests/PdfProcessorTest.php b/tests/PdfProcessorTest.php
index fe01e5dd0..03a7d5bb0 100644
--- a/tests/PdfProcessorTest.php
+++ b/tests/PdfProcessorTest.php
@@ -35,7 +35,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\processors\PdfProcessor;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * UnitTest for the PdfProcessor class. A PdfProcessor is used to process
  * a .pdf file and extract summary from it. This
@@ -55,7 +54,7 @@ class PdfProcessorTest extends UnitTest implements CrawlConstants
     {
         $pdf_object = new PdfProcessor();
         $url = "http://www.yioop.com/test.pdf";
-        $filename = BASE_DIR."/tests/test_files/test.pdf";
+        $filename = PARENT_DIR."/tests/test_files/test.pdf";
         $page = file_get_contents($filename);
         $summary = $pdf_object->process($page, $url);
         $this->test_objects['summary'] = $summary;
diff --git a/tests/PhantomjsUiTest.php b/tests/PhantomjsUiTest.php
index 9d507ec34..f4d860341 100644
--- a/tests/PhantomjsUiTest.php
+++ b/tests/PhantomjsUiTest.php
@@ -26,7 +26,6 @@ namespace seekquarry\yioop\tests;

 use seekquarry\yioop\library\JavascriptUnitTest;

- if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to test the UI using PhantomJs.
  *
diff --git a/tests/PhraseParserTest.php b/tests/PhraseParserTest.php
index 4c861f8eb..e89aecc63 100644
--- a/tests/PhraseParserTest.php
+++ b/tests/PhraseParserTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to test that the PhraseParser class. Want to make sure bigram
  * extracting works correctly
diff --git a/tests/PptxProcessorTest.php b/tests/PptxProcessorTest.php
index a5ca5269c..a58205309 100644
--- a/tests/PptxProcessorTest.php
+++ b/tests/PptxProcessorTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\processors\PptxProcessor;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * UnitTest for the PptxProcessor class. It is used to process
  * pptx files which are a zip of an xml-based format
@@ -51,7 +50,7 @@ class PptxProcessorTest extends UnitTest implements CrawlConstants
     {
         $processor = new PptxProcessor();
         $url = "";
-        $filename = BASE_DIR . "/tests/test_files/test.pptx";
+        $filename = PARENT_DIR . "/tests/test_files/test.pptx";
         $page = file_get_contents($filename);
         $summary = [];
         $summary = $processor->process($page, $url);
diff --git a/tests/PriorityQueueTest.php b/tests/PriorityQueueTest.php
index c3215c205..a2efb2254 100755
--- a/tests/PriorityQueueTest.php
+++ b/tests/PriorityQueueTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\PriorityQueue;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to test the PriorityQueue class that is used to figure out which URL
  * to crawl next
diff --git a/tests/PtTokenizerTest.php b/tests/PtTokenizerTest.php
index b8b00303d..6bcfe1679 100644
--- a/tests/PtTokenizerTest.php
+++ b/tests/PtTokenizerTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Code used to test the Portuguese stemming algorithm. The inputs for the
  * algorithm are words in
@@ -73,7 +72,7 @@ class PtTokenizerTest extends UnitTest
      */
     public function stemmerTestCase()
     {
-        $stem_dir = BASE_DIR.'/tests/test_files/portuguese_stemmer';
+        $stem_dir = PARENT_DIR.'/tests/test_files/portuguese_stemmer';
         //Test word set from snowball
         $test_words = file("$stem_dir/input_vocabulary.txt");
         //Stem word set from snowball for comparing results
diff --git a/tests/QueueServerTest.php b/tests/QueueServerTest.php
index 40a5d1da6..d9e5a90a1 100644
--- a/tests/QueueServerTest.php
+++ b/tests/QueueServerTest.php
@@ -33,9 +33,6 @@ namespace seekquarry\yioop\tests;
 use seekquarry\yioop\executables\QueueServer;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/** Load search engine-wide configuration file */
-require_once BASE_DIR.'/configs/Config.php';
 define("UNIT_TEST_MODE", true);
 /**
  * Used to test functions related to scheduling websites to crawl for
diff --git a/tests/RuTokenizerTest.php b/tests/RuTokenizerTest.php
index 9e3f8c9c2..6854b1d50 100644
--- a/tests/RuTokenizerTest.php
+++ b/tests/RuTokenizerTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\PhraseParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Code used to test the Russian stemming algorithm. The inputs for the
  * algorithm are words in
@@ -72,7 +71,7 @@ class RuTokenizerTest extends UnitTest
      */
     public function stemmerTestCase()
     {
-        $stem_dir = BASE_DIR.'/tests/test_files/russian_stemmer';
+        $stem_dir = PARENT_DIR.'/tests/test_files/russian_stemmer';
         //Test word set from snowball
         $test_words = file("$stem_dir/input_vocabulary.txt");
         //Stem word set from snowball for comparing results
diff --git a/tests/StringArrayTest.php b/tests/StringArrayTest.php
index a88383069..e1c9d0616 100644
--- a/tests/StringArrayTest.php
+++ b/tests/StringArrayTest.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\tests;
 use seekquarry\yioop\library\StringArray;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to test that the StringArray class properly stores/retrieves values,
  * and can handle loading and saving
diff --git a/tests/SummarizerTest.php b/tests/SummarizerTest.php
index a4b75d881..882b40c91 100644
--- a/tests/SummarizerTest.php
+++ b/tests/SummarizerTest.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\tests;
 use seekquarry\yioop\library\summarizers\Summarizer;
 use seekquarry\yioop\library\UnitTest;

-if(!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Code used to test the summarizer algorithms.
  *
@@ -75,7 +74,7 @@ class SummarizerTest extends UnitTest
      */
     public function getAdditionalWeightTestCase()
     {
-        $summarizer_dir = BASE_DIR.'/tests/test_files/summarizer';
+        $summarizer_dir = PARENT_DIR.'/tests/test_files/summarizer';
         $terms_and_html_tags = file("$summarizer_dir/summarizer_input.txt");
         $return_values_to_compare =
             file("$summarizer_dir/summarizer_result.txt");
diff --git a/tests/TrieTest.php b/tests/TrieTest.php
index 63fc56345..cc8f826dd 100755
--- a/tests/TrieTest.php
+++ b/tests/TrieTest.php
@@ -33,8 +33,6 @@ namespace seekquarry\yioop\tests;
 use seekquarry\yioop\library\Trie;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-
 /**
  * Used to test that the Trie class properly stores words that
  * could be used for an autosuggest dictionary
diff --git a/tests/UrlParserTest.php b/tests/UrlParserTest.php
index 1760c3d34..084f44f09 100644
--- a/tests/UrlParserTest.php
+++ b/tests/UrlParserTest.php
@@ -33,7 +33,6 @@ namespace seekquarry\yioop\tests;
 use seekquarry\yioop\library\UrlParser;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to test that the UrlParser class. For now, want to see that the
  * method canonicalLink is working correctly and that
diff --git a/tests/UtilityTest.php b/tests/UtilityTest.php
index dd8070210..8ac2046b5 100644
--- a/tests/UtilityTest.php
+++ b/tests/UtilityTest.php
@@ -1,6 +1,4 @@
 <?php
-namespace Seekquarry\Yioop;
-
 /**
  * SeekQuarry/Yioop --
  * Open Source Pure PHP Search Engine, Crawler, and Indexer
@@ -35,11 +33,6 @@ namespace seekquarry\yioop\tests;
 use seekquarry\yioop\library as L;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-/**
- * Load the library for un\packPosting
- */
-require_once BASE_DIR."/library/Utility.php";
 /**
  * Used to test the various methods in utility, in particular, those
  * related to posting lists.
diff --git a/tests/WebArchiveTest.php b/tests/WebArchiveTest.php
index d5e08af9a..9803f23f2 100755
--- a/tests/WebArchiveTest.php
+++ b/tests/WebArchiveTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library\WebArchive;
 use seekquarry\yioop\library\UnitTest;
 use seekquarry\yioop\library\compressors\GzipCompressor;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * UnitTest for the WebArchive class. A web archive is used to store
  * array-based objects persistently to a file. This class tests storing and
diff --git a/tests/WebQueueBundleTest.php b/tests/WebQueueBundleTest.php
index 13d317cb5..46c0fbad3 100644
--- a/tests/WebQueueBundleTest.php
+++ b/tests/WebQueueBundleTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\WebQueueBundle;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * UnitTest for the WebQueueBundle class.
  *
diff --git a/tests/XlsxProcessorTest.php b/tests/XlsxProcessorTest.php
index 79fd4c328..675d62643 100644
--- a/tests/XlsxProcessorTest.php
+++ b/tests/XlsxProcessorTest.php
@@ -34,7 +34,6 @@ use seekquarry\yioop\library\CrawlConstants;
 use seekquarry\yioop\library\processors\XlsxProcessor;
 use seekquarry\yioop\library\UnitTest;

-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
 /**
  * Used to test that the XlsxProcessor class provides the basic functionality
  * of getting the tile, description, languages and links
diff --git a/tests/index.php b/tests/index.php
index c52d8cad3..859842c3e 100644
--- a/tests/index.php
+++ b/tests/index.php
@@ -41,13 +41,18 @@ use seekquarry\yioop\library\BrowserRunner;
 /** Calculate base directory of script
  * @ignore
  */
-define("BASE_DIR", substr($_SERVER['SCRIPT_FILENAME'], 0,
+define("PARENT_DIR", substr($_SERVER['SCRIPT_FILENAME'], 0,
     -strlen("tests/index.php")));
+define("BASE_DIR", PARENT_DIR . "/src");
 header("X-FRAME-OPTIONS: DENY"); //prevent click jacking
 /** Load search engine wide configuration file */
 require_once BASE_DIR.'/configs/Config.php';
 /** For class autoload **/
-require_once BASE_DIR ."/vendor/autoload.php";
+require_once PARENT_DIR ."/vendor/autoload.php";
+/**
+ * Load the crawlHash function
+ */
+require_once BASE_DIR.'/library/Utility.php';
 if (!PROFILE || !DISPLAY_TESTS) {echo "BAD REQUEST"; exit();}
 /**
  * NO_CACHE means don't try to use memcache
diff --git a/vendor/autoload.php b/vendor/autoload.php
index 82dbc501f..bc47950c1 100644
--- a/vendor/autoload.php
+++ b/vendor/autoload.php
@@ -1,31 +1,33 @@
 <?php
-if (!defined('BASE_DIR')) {echo "BAD REQUEST"; exit();}
-
 /**
  * @return void
  */
 spl_autoload_register(function ($class) {
     // project-specific namespace prefix
-    $prefix = 'seekquarry\\yioop\\';
+    $prefix = 'seekquarry\\yioop\\tests';
     // does the class use the namespace prefix?
     $len = strlen($prefix);
     if (strncmp($prefix, $class, $len) !== 0) {
+        $prefix = 'seekquarry\\yioop';
+        $len = strlen($prefix);
         // no, move to the next registered autoloader
-        return;
+        if (strncmp($prefix, $class, $len) !== 0) {
+            return;
+        } else {
+            $check_dirs = ["crawls/app", "src"];
+        }
+    } else {
+        $check_dirs = ["tests"];
     }
     // get the relative class name
     $relative_class = substr($class, $len);
     // use forward-slashes, add ./php
     $unixify_class_name = "/".str_replace('\\', '/', $relative_class) . '.php';
-    // check app_dir for overrides to class
-    $app_file = APP_DIR . $unixify_class_name;
-    if(file_exists($app_file)) {
-        require_once $app_file;
-    } else {
-        //otherwise, try to find class in base_dir
-        $file = BASE_DIR . $unixify_class_name;
+    foreach($check_dirs as $dir) {
+        $file = __DIR__ . "/../$dir" . $unixify_class_name;
         if (file_exists($file)) {
             require_once $file;
+            break;
         }
     }
 });
ViewGit