<?php

namespace Transvision;

$tmx_target2 = Utils::getRepoStrings($locale2, $check['repo']);
if ($search->isPerfectMatch()) {
    $locale3_strings = preg_grep($search->getRegex(), $tmx_target2);
} else {
    $locale3_strings = $tmx_target2;
    foreach (Utils::uniqueWords($initial_search) as $word) {
        $search->setRegexSearchTerms($word);
        $locale3_strings = preg_grep($search->getRegex(), $locale3_strings);
    }
}
array_splice($locale3_strings, 200);
foreach (Project::getRepositories() as $repository) {
    $loc_list[$repository] = Project::getRepositoryLocales($repository);
    $target_locales_list2[$repository] = Utils::getHtmlSelectOptions($loc_list[$repository], $locale2);
}
<?php

namespace Transvision;

// Closure to use extra parameters
$get_option = function ($option) use($request) {
    if (isset($request->extra_parameters[$option])) {
        return $request->extra_parameters[$option];
    }
    return false;
};
// Get all strings
$initial_search = urldecode(Utils::cleanString($request->parameters[6]));
$repositories = $request->parameters[3] == 'global' ? Project::getRepositories() : [$request->parameters[3]];
$entities_merged = [];
$source_strings_merged = [];
$target_strings_merged = [];
// Define our regex
$search = (new Search())->setSearchTerms(Utils::cleanString($initial_search))->setRegexWholeWords($get_option('whole_word'))->setRegexCaseInsensitive($get_option('case_sensitive'))->setRegexPerfectMatch($get_option('perfect_match'));
// We loop through all repositories searched and merge results
foreach ($repositories as $repository) {
    $source_strings = Utils::getRepoStrings($request->parameters[4], $repository);
    if ($search->isPerfectMatch()) {
        if ($request->parameters[2] == 'entities') {
            $entities = ShowResults::searchEntities($source_strings, $search->getRegex());
            $source_strings = array_intersect_key($source_strings, array_flip($entities));
        } else {
            $source_strings = preg_grep($search->getRegex(), $source_strings);
            $entities = array_keys($source_strings);
        }
    } else {
<?php

namespace Transvision;

return $json = Project::getRepositories();
Example #4
0
<?php

namespace Transvision;

/* Global variables used across the project */
// Repositories
$repos = Project::getRepositories();
$repos_nice_names = Project::getRepositoriesNames();
$gaia_repos = Project::getGaiaRepositories();
$desktop_repos = Project::getDesktopRepositories();
// Search forms
$form_search_options = ['case_sensitive', 'whole_word', 'perfect_match', 't2t', 'repo', 'search_type'];
$form_checkboxes = array_diff($form_search_options, ['repo', 'search_type']);