forked from CIT/Vmeda.Online
		
	
						commit
						3bb81c7de2
					
				
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@ -39,4 +39,4 @@ e2e/build
 | 
			
		||||
!/desktop/assets/
 | 
			
		||||
!/desktop/electron.js
 | 
			
		||||
src/configconstants.ts
 | 
			
		||||
src/assets/lang
 | 
			
		||||
scripts/local_moodlemobileapp.php
 | 
			
		||||
 | 
			
		||||
@ -16,5 +16,5 @@ script:
 | 
			
		||||
  - npm run build
 | 
			
		||||
 | 
			
		||||
after_success:
 | 
			
		||||
  - chmod +x aot.sh
 | 
			
		||||
  - ./aot.sh
 | 
			
		||||
  - chmod +x scripts/aot.sh
 | 
			
		||||
  - scripts/aot.sh
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										117
									
								
								gulpfile.js
									
									
									
									
									
								
							
							
						
						
									
										117
									
								
								gulpfile.js
									
									
									
									
									
								
							@ -25,17 +25,6 @@ var gulp = require('gulp'),
 | 
			
		||||
        '// See the License for the specific language governing permissions and\n' +
 | 
			
		||||
        '// limitations under the License.\n\n';
 | 
			
		||||
 | 
			
		||||
// Get the names of the JSON files inside a directory.
 | 
			
		||||
function getFilenames(dir) {
 | 
			
		||||
    if (fs.existsSync(dir)) {
 | 
			
		||||
        return fs.readdirSync(dir).filter(function(file) {
 | 
			
		||||
            return file.indexOf('.json') > -1;
 | 
			
		||||
        });
 | 
			
		||||
    } else {
 | 
			
		||||
        return [];
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Copy a property from one object to another, adding a prefix to the key if needed.
 | 
			
		||||
 * @param {Object} target Object to copy the properties to.
 | 
			
		||||
@ -122,71 +111,53 @@ function treatMergedData(data) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Build lang files.
 | 
			
		||||
 * Build lang file.
 | 
			
		||||
 *
 | 
			
		||||
 * @param  {String[]} filenames Names of the language files.
 | 
			
		||||
 * @param  {String} language    Language to translate.
 | 
			
		||||
 * @param  {String[]} langPaths Paths to the possible language files.
 | 
			
		||||
 * @param  {String}   buildDest Path where to leave the built files.
 | 
			
		||||
 * @param  {Function} done      Function to call when done.
 | 
			
		||||
 * @return {Void}
 | 
			
		||||
 */
 | 
			
		||||
function buildLangs(filenames, langPaths, buildDest, done) {
 | 
			
		||||
    if (!filenames || !filenames.length) {
 | 
			
		||||
        // If no filenames supplied, stop. Maybe it's an empty lang folder.
 | 
			
		||||
        done();
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
function buildLang(language, langPaths, buildDest, done) {
 | 
			
		||||
    var filename = language + '.json',
 | 
			
		||||
        data = {},
 | 
			
		||||
        firstFile = null;
 | 
			
		||||
 | 
			
		||||
    var count = 0;
 | 
			
		||||
 | 
			
		||||
    function taskFinished() {
 | 
			
		||||
        count++;
 | 
			
		||||
        if (count == filenames.length) {
 | 
			
		||||
            done();
 | 
			
		||||
    var paths = langPaths.map(function(path) {
 | 
			
		||||
        if (path.slice(-1) != '/') {
 | 
			
		||||
            path = path + '/';
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Now create the build files for each supported language.
 | 
			
		||||
    filenames.forEach(function(filename) {
 | 
			
		||||
        var language = filename.replace('.json', ''),
 | 
			
		||||
            data = {},
 | 
			
		||||
            firstFile = null;
 | 
			
		||||
 | 
			
		||||
        var paths = langPaths.map(function(path) {
 | 
			
		||||
            if (path.slice(-1) != '/') {
 | 
			
		||||
                path = path + '/';
 | 
			
		||||
            }
 | 
			
		||||
            return path + language + '.json';
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
        gulp.src(paths, { allowEmpty: true })
 | 
			
		||||
            .pipe(slash())
 | 
			
		||||
            .pipe(clipEmptyFiles())
 | 
			
		||||
            .pipe(through(function(file) {
 | 
			
		||||
                if (!firstFile) {
 | 
			
		||||
                    firstFile = file;
 | 
			
		||||
                }
 | 
			
		||||
                return treatFile(file, data);
 | 
			
		||||
            }, function() {
 | 
			
		||||
                /* This implementation is based on gulp-jsoncombine module.
 | 
			
		||||
                 * https://github.com/reflog/gulp-jsoncombine */
 | 
			
		||||
                if (firstFile) {
 | 
			
		||||
                    var joinedPath = path.join(firstFile.base, language+'.json');
 | 
			
		||||
 | 
			
		||||
                    var joinedFile = new File({
 | 
			
		||||
                        cwd: firstFile.cwd,
 | 
			
		||||
                        base: firstFile.base,
 | 
			
		||||
                        path: joinedPath,
 | 
			
		||||
                        contents: treatMergedData(data)
 | 
			
		||||
                    });
 | 
			
		||||
 | 
			
		||||
                    this.emit('data', joinedFile);
 | 
			
		||||
                }
 | 
			
		||||
                this.emit('end');
 | 
			
		||||
            }))
 | 
			
		||||
            .pipe(gulp.dest(buildDest))
 | 
			
		||||
            .on('end', taskFinished);
 | 
			
		||||
        return path + language + '.json';
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    gulp.src(paths, { allowEmpty: true })
 | 
			
		||||
        .pipe(slash())
 | 
			
		||||
        .pipe(clipEmptyFiles())
 | 
			
		||||
        .pipe(through(function(file) {
 | 
			
		||||
            if (!firstFile) {
 | 
			
		||||
                firstFile = file;
 | 
			
		||||
            }
 | 
			
		||||
            return treatFile(file, data);
 | 
			
		||||
        }, function() {
 | 
			
		||||
            /* This implementation is based on gulp-jsoncombine module.
 | 
			
		||||
             * https://github.com/reflog/gulp-jsoncombine */
 | 
			
		||||
            if (firstFile) {
 | 
			
		||||
                var joinedPath = path.join(firstFile.base, language+'.json');
 | 
			
		||||
 | 
			
		||||
                var joinedFile = new File({
 | 
			
		||||
                    cwd: firstFile.cwd,
 | 
			
		||||
                    base: firstFile.base,
 | 
			
		||||
                    path: joinedPath,
 | 
			
		||||
                    contents: treatMergedData(data)
 | 
			
		||||
                });
 | 
			
		||||
 | 
			
		||||
                this.emit('data', joinedFile);
 | 
			
		||||
            }
 | 
			
		||||
            this.emit('end');
 | 
			
		||||
        }))
 | 
			
		||||
        .pipe(gulp.dest(buildDest))
 | 
			
		||||
        .on('end', done);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Delete a folder and all its contents.
 | 
			
		||||
@ -206,10 +177,7 @@ function deleteFolderRecursive(path) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// List of app lang files. To be used only if cannot get it from filesystem.
 | 
			
		||||
var appLangFiles = ['ar.json', 'bg.json', 'ca.json', 'cs.json', 'da.json', 'de.json', 'en.json', 'es-mx.json', 'es.json', 'eu.json',
 | 
			
		||||
    'fa.json', 'fr.json', 'he.json', 'hu.json', 'it.json', 'ja.json', 'nl.json', 'pl.json', 'pt-br.json', 'pt.json', 'ro.json',
 | 
			
		||||
    'ru.json', 'sv.json', 'tr.json', 'zh-cn.json', 'zh-tw.json'],
 | 
			
		||||
    paths = {
 | 
			
		||||
var paths = {
 | 
			
		||||
        src: './src',
 | 
			
		||||
        assets: './src/assets',
 | 
			
		||||
        lang: [
 | 
			
		||||
@ -224,10 +192,7 @@ var appLangFiles = ['ar.json', 'bg.json', 'ca.json', 'cs.json', 'da.json', 'de.j
 | 
			
		||||
 | 
			
		||||
// Build the language files into a single file per language.
 | 
			
		||||
gulp.task('lang', function(done) {
 | 
			
		||||
    // Get filenames to know which languages are available.
 | 
			
		||||
    var filenames = getFilenames(paths.lang[0]);
 | 
			
		||||
 | 
			
		||||
    buildLangs(filenames, paths.lang, path.join(paths.assets, 'lang'), done);
 | 
			
		||||
    buildLang('en', paths.lang, path.join(paths.assets, 'lang'), done);
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
// Convert config.json into a TypeScript class.
 | 
			
		||||
@ -299,7 +264,7 @@ gulp.task('default', gulp.parallel('lang', 'config'));
 | 
			
		||||
 | 
			
		||||
gulp.task('watch', function() {
 | 
			
		||||
    var langsPaths = paths.lang.map(function(path) {
 | 
			
		||||
        return path + '*.json';
 | 
			
		||||
        return path + 'en.json';
 | 
			
		||||
    });
 | 
			
		||||
    gulp.watch(langsPaths, { interval: 500 }, gulp.parallel('lang'));
 | 
			
		||||
    gulp.watch(paths.config, { interval: 500 }, gulp.parallel('config'));
 | 
			
		||||
 | 
			
		||||
@ -2,6 +2,18 @@
 | 
			
		||||
 | 
			
		||||
# Compile AOT.
 | 
			
		||||
if [ $TRAVIS_BRANCH == 'integration' ] || [ $TRAVIS_BRANCH == 'master' ] || [ -z $TRAVIS_BRANCH ] ; then
 | 
			
		||||
    cd scripts
 | 
			
		||||
    ./build_lang.sh
 | 
			
		||||
    cd ..
 | 
			
		||||
 | 
			
		||||
    if [ $TRAVIS_BRANCH == 'master' ] && [ ! -z $GIT_TOKEN ] ; then
 | 
			
		||||
        git remote set-url origin https://$GIT_TOKEN@github.com/$TRAVIS_REPO_SLUG.git
 | 
			
		||||
        git fetch -q origin
 | 
			
		||||
        git add src/assets/lang
 | 
			
		||||
        git commit -m 'Update lang files [ci skip]'
 | 
			
		||||
        git push origin HEAD:$TRAVIS_BRANCH
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    sed -ie $'s~throw new Error("No ResourceLoader.*~url = "templates/" + url;\\\nvar resolve;\\\nvar reject;\\\nvar promise = new Promise(function (res, rej) {\\\nresolve = res;\\\nreject = rej;\\\n});\\\nvar xhr = new XMLHttpRequest();\\\nxhr.open("GET", url, true);\\\nxhr.responseType = "text";\\\nxhr.onload = function () {\\\nvar response = xhr.response || xhr.responseText;\\\nvar status = xhr.status === 1223 ? 204 : xhr.status;\\\nif (status === 0) {\\\nstatus = response ? 200 : 0;\\\n}\\\nif (200 <= status \&\& status <= 300) {\\\nresolve(response);\\\n}\\\nelse {\\\nreject("Failed to load " + url);\\\n}\\\n};\\\nxhr.onerror = function () { reject("Failed to load " + url); };\\\nxhr.send();\\\nreturn promise;\\\n~g' node_modules/@angular/platform-browser-dynamic/esm5/platform-browser-dynamic.js
 | 
			
		||||
    sed -ie "s/context\.isProd || hasArg('--minifyJs')/hasArg('--minifyJs')/g" node_modules/@ionic/app-scripts/dist/util/config.js
 | 
			
		||||
    sed -ie "s/context\.isProd || hasArg('--optimizeJs')/hasArg('--optimizeJs')/g" node_modules/@ionic/app-scripts/dist/util/config.js
 | 
			
		||||
@ -17,6 +29,7 @@ if [ ! -z $GIT_ORG ] && [ ! -z $GIT_TOKEN ] ; then
 | 
			
		||||
    git checkout $TRAVIS_BRANCH
 | 
			
		||||
    rm -Rf assets build index.html templates
 | 
			
		||||
    cp -Rf ../$gitfolder/www/* ./
 | 
			
		||||
    rm -Rf assets/countries assets/mimetypes
 | 
			
		||||
    git add .
 | 
			
		||||
    git commit -m "Travis build: $TRAVIS_BUILD_NUMBER"
 | 
			
		||||
    git push https://$GIT_TOKEN@github.com/$GIT_ORG/moodlemobile-phonegapbuild.git
 | 
			
		||||
							
								
								
									
										20
									
								
								scripts/build_lang.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										20
									
								
								scripts/build_lang.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,20 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
source "functions.sh"
 | 
			
		||||
forceLang=$1
 | 
			
		||||
 | 
			
		||||
print_title 'Getting languages'
 | 
			
		||||
git clone https://git.in.moodle.com/moodle/moodle-langpacks.git $LANGPACKSFOLDER
 | 
			
		||||
pushd $LANGPACKSFOLDER
 | 
			
		||||
BRANCHES=($(git br -r --format="%(refname:lstrip=3)" --sort="refname" | grep MOODLE_))
 | 
			
		||||
BRANCH=${BRANCHES[${#BRANCHES[@]}-1]}
 | 
			
		||||
git checkout $BRANCH
 | 
			
		||||
git pull
 | 
			
		||||
popd
 | 
			
		||||
 | 
			
		||||
if [ -z $forceLang ]; then
 | 
			
		||||
    php -f moodle_to_json.php
 | 
			
		||||
else
 | 
			
		||||
    php -f moodle_to_json.php "$forceLang"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
print_ok 'All done!'
 | 
			
		||||
							
								
								
									
										290
									
								
								scripts/create_langindex.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										290
									
								
								scripts/create_langindex.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,290 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
source "functions.sh"
 | 
			
		||||
 | 
			
		||||
#Saves the key and value on a temporary local_moodlemobileapp.php
 | 
			
		||||
function save_local {
 | 
			
		||||
    val=`echo $value | sed "s/\'/\\\\\'/g"`
 | 
			
		||||
    echo "\$string['$key'] = '$val';" >> local_moodlemobileapp.php
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#Saves or updates a key on langindex_old.json
 | 
			
		||||
function save_key {
 | 
			
		||||
    key=$1
 | 
			
		||||
    found=$2
 | 
			
		||||
 | 
			
		||||
    print_ok "$key=$found"
 | 
			
		||||
    echo "{\"$key\": \"$found\"}" > langindex_old.json
 | 
			
		||||
    jq -s '.[0] + .[1]' langindex.json langindex_old.json > langindex_new.json
 | 
			
		||||
    mv langindex_new.json langindex.json
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#Removes a key on langindex_old.json
 | 
			
		||||
function remove_key {
 | 
			
		||||
    key=$1
 | 
			
		||||
    found=$2
 | 
			
		||||
 | 
			
		||||
    print_ok "$key=$found"
 | 
			
		||||
    echo "{\"$key\": \"$found\"}" > langindex_old.json
 | 
			
		||||
    jq -s '.[0] - .[1]' langindex.json langindex_old.json > langindex_new.json
 | 
			
		||||
    mv langindex_new.json langindex.json
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#Check if and i exists in php file
 | 
			
		||||
function exists_in_file {
 | 
			
		||||
    file=$1
 | 
			
		||||
    id=$2
 | 
			
		||||
 | 
			
		||||
    file=`echo $file | sed s/^mod_workshop_assessment/workshopform/1`
 | 
			
		||||
    file=`echo $file | sed s/^mod_assign_/assign/1`
 | 
			
		||||
    file=`echo $file | sed s/^mod_//1`
 | 
			
		||||
 | 
			
		||||
    completeFile="$LANGPACKSFOLDER/en/$file.php"
 | 
			
		||||
    if [ -f "$completeFile" ]; then
 | 
			
		||||
        coincidence=`grep "string\[\'$id\'\]" $completeFile`
 | 
			
		||||
        if [ ! -z "$coincidence" ]; then
 | 
			
		||||
            found=$file
 | 
			
		||||
            return
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
    found=0
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#Checks if a key exists on the original local_moodlemobileapp.php
 | 
			
		||||
function exists_in_mobile {
 | 
			
		||||
    file='local_moodlemobileapp'
 | 
			
		||||
    exists_in_file $file $key
 | 
			
		||||
    if [ $found == 0 ]; then
 | 
			
		||||
        case $type in
 | 
			
		||||
            'addon')
 | 
			
		||||
                mobileid="mma.$component.$plainid"
 | 
			
		||||
                exists_in_file $file $mobileid
 | 
			
		||||
              ;;
 | 
			
		||||
            'core')
 | 
			
		||||
                if [ "$component" == 'moodle' ]; then
 | 
			
		||||
                    mobileid="mm.core.$plainid"
 | 
			
		||||
                elif [ "$component" == 'mainmenu' ]; then
 | 
			
		||||
                    mobileid="mm.sidemenu.$plainid"
 | 
			
		||||
                else
 | 
			
		||||
                    mobileid="mm.$component.$plainid"
 | 
			
		||||
                fi
 | 
			
		||||
                exists_in_file $file $mobileid
 | 
			
		||||
              ;;
 | 
			
		||||
            *)
 | 
			
		||||
                return
 | 
			
		||||
        esac
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ $found != 0 ]; then
 | 
			
		||||
        save_local
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function do_match {
 | 
			
		||||
    match=$1
 | 
			
		||||
    filematch=""
 | 
			
		||||
 | 
			
		||||
    coincidence=`grep "$match" $LANGPACKSFOLDER/en/*.php | wc -l`
 | 
			
		||||
    if [ $coincidence -eq 1 ]; then
 | 
			
		||||
        filematch=`grep "$match" $LANGPACKSFOLDER/en/*.php | cut -d'/' -f5 | cut -d'.' -f1`
 | 
			
		||||
        exists_in_file $filematch $plainid
 | 
			
		||||
    elif [ $coincidence -gt 0 ] && [ "$#" -gt 1 ]; then
 | 
			
		||||
        print_message $2
 | 
			
		||||
        tput setaf 6
 | 
			
		||||
        grep "$match" $LANGPACKSFOLDER/en/*.php
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#Find if the id or the value can be found on files to help providing a solution.
 | 
			
		||||
function find_matches {
 | 
			
		||||
    do_match "string\[\'$plainid\'\] = \'$value\'" "Found EXACT match for $key in the following paths"
 | 
			
		||||
    if [ $coincidence -gt 0 ]; then
 | 
			
		||||
        case=1
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    do_match " = \'$value\'" "Found some string VALUES for $key in the following paths"
 | 
			
		||||
    if [ $coincidence -gt 0 ]; then
 | 
			
		||||
        case=2
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    do_match "string\[\'$plainid\'\]" "Found some string KEYS for $key in the following paths, value $value"
 | 
			
		||||
    if [ $coincidence -gt 0 ]; then
 | 
			
		||||
        case=3
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    print_error "No match found for $key adding to local_moodlemobileapp"
 | 
			
		||||
    save_local
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function find_single_matches {
 | 
			
		||||
    do_match "string\[\'$plainid\'\] = \'$value\'"
 | 
			
		||||
    if [ ! -z $filematch ] && [ $found != 0 ]; then
 | 
			
		||||
        case=1
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    do_match " = \'$value\'"
 | 
			
		||||
    if [ ! -z $filematch ] && [ $filematch != 'local_moodlemobileapp' ]; then
 | 
			
		||||
        case=2
 | 
			
		||||
        print_message "Found some string VALUES for $key in the following paths $filematch"
 | 
			
		||||
        tput setaf 6
 | 
			
		||||
        grep "$match" $LANGPACKSFOLDER/en/*.php
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    do_match "string\[\'$plainid\'\]"
 | 
			
		||||
    if [ ! -z $filematch ] && [ $found != 0 ]; then
 | 
			
		||||
        case=3
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#Tries to gues the file where the id will be found.
 | 
			
		||||
function guess_file {
 | 
			
		||||
    key=$1
 | 
			
		||||
    value=$2
 | 
			
		||||
 | 
			
		||||
    type=`echo $key | cut -d'.' -f1`
 | 
			
		||||
    component=`echo $key | cut -d'.' -f2`
 | 
			
		||||
    plainid=`echo $key | cut -d'.' -f3-`
 | 
			
		||||
 | 
			
		||||
    if [ -z "$plainid" ]; then
 | 
			
		||||
        plainid=$component
 | 
			
		||||
        component='moodle'
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    exists_in_file $component $plainid
 | 
			
		||||
 | 
			
		||||
    if [ $found == 0 ]; then
 | 
			
		||||
        tempid=`echo $plainid | sed s/^mod_//1`
 | 
			
		||||
        if [ $component == 'moodle' ] && [ "$tempid" != "$plainid" ]; then
 | 
			
		||||
            exists_in_file $plainid pluginname
 | 
			
		||||
 | 
			
		||||
            if [ $found != 0 ]; then
 | 
			
		||||
                found=$found/pluginname
 | 
			
		||||
            fi
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    # Not found in file, try in local_moodlemobileapp
 | 
			
		||||
    if [ $found == 0 ]; then
 | 
			
		||||
        exists_in_mobile
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    # Still not found, if only found in one file, use it.
 | 
			
		||||
    if [ $found == 0 ]; then
 | 
			
		||||
        find_single_matches
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    # Last fallback.
 | 
			
		||||
    if [ $found == 0 ]; then
 | 
			
		||||
        exists_in_file 'moodle' $plainid
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ $found == 0 ]; then
 | 
			
		||||
        find_matches
 | 
			
		||||
    else
 | 
			
		||||
        save_key $key $found
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#Finds if there's a better file where to get the id from.
 | 
			
		||||
function find_better_file {
 | 
			
		||||
    key=$1
 | 
			
		||||
    value=$2
 | 
			
		||||
    current=$3
 | 
			
		||||
 | 
			
		||||
    type=`echo $key | cut -d'.' -f1`
 | 
			
		||||
    component=`echo $key | cut -d'.' -f2`
 | 
			
		||||
    plainid=`echo $key | cut -d'.' -f3-`
 | 
			
		||||
 | 
			
		||||
    if [ -z "$plainid" ]; then
 | 
			
		||||
        plainid=$component
 | 
			
		||||
        component='moodle'
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    currentFile=`echo $current | cut -d'/' -f1`
 | 
			
		||||
    currentStr=`echo $current | cut -d'/' -f2-`
 | 
			
		||||
    if [ $currentFile == $current ]; then
 | 
			
		||||
        currentStr=$plainid
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    exists_in_file $component $plainid
 | 
			
		||||
    if [ $found != 0 ] && [ $currentStr == $plainid ]; then
 | 
			
		||||
        if [ $found != $currentFile ]; then
 | 
			
		||||
            print_ok "Key '$key' found in component, no need to replace old '$current'"
 | 
			
		||||
        fi
 | 
			
		||||
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    # Still not found, if only found in one file, use it.
 | 
			
		||||
    if [ $found == 0 ]; then
 | 
			
		||||
        find_single_matches
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ $found != 0 ] && [ $found != $currentFile ] && [ $case -lt 3 ]; then
 | 
			
		||||
        print_message "Indexed string '$key' found in '$found' better than '$current'"
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ $currentFile == 'local_moodlemobileapp' ]; then
 | 
			
		||||
        exists_in_mobile
 | 
			
		||||
    else
 | 
			
		||||
        exists_in_file $currentFile $currentStr
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ $found == 0 ]; then
 | 
			
		||||
        print_error "Indexed string '$key' not found on current place '$current'"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#Parses the file.
 | 
			
		||||
function parse_file {
 | 
			
		||||
    keys=`jq -r 'keys[]' $1`
 | 
			
		||||
    for key in $keys; do
 | 
			
		||||
        # Check if already parsed.
 | 
			
		||||
        exec="jq -r .\"$key\" langindex.json"
 | 
			
		||||
        found=`$exec`
 | 
			
		||||
 | 
			
		||||
        exec="jq -r .\"$key\" $1"
 | 
			
		||||
        value=`$exec`
 | 
			
		||||
        if [ -z "$found" ] || [ "$found" == 'null' ]; then
 | 
			
		||||
            guess_file $key "$value"
 | 
			
		||||
        else
 | 
			
		||||
            find_better_file "$key" "$value" "$found"
 | 
			
		||||
        fi
 | 
			
		||||
    done
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
print_title 'Generating language from code...'
 | 
			
		||||
gulp lang
 | 
			
		||||
 | 
			
		||||
print_title 'Getting languages'
 | 
			
		||||
git clone https://git.in.moodle.com/moodle/moodle-langpacks.git $LANGPACKSFOLDER
 | 
			
		||||
pushd $LANGPACKSFOLDER
 | 
			
		||||
BRANCHES=($(git br -r --format="%(refname:lstrip=3)" --sort="refname" | grep MOODLE_))
 | 
			
		||||
BRANCH=${BRANCHES[${#BRANCHES[@]}-1]}
 | 
			
		||||
git checkout $BRANCH
 | 
			
		||||
git pull
 | 
			
		||||
popd
 | 
			
		||||
 | 
			
		||||
print_title 'Processing file'
 | 
			
		||||
#Create langindex.json if not exists.
 | 
			
		||||
if [ ! -f 'langindex.json' ]; then
 | 
			
		||||
    echo "{}" > langindex.json
 | 
			
		||||
fi
 | 
			
		||||
echo "<?php" > local_moodlemobileapp.php
 | 
			
		||||
 | 
			
		||||
parse_file '../src/assets/lang/en.json'
 | 
			
		||||
 | 
			
		||||
echo
 | 
			
		||||
 | 
			
		||||
jq -S --indent 4 -s '.[0]' langindex.json > langindex_new.json
 | 
			
		||||
mv langindex_new.json langindex.json
 | 
			
		||||
rm langindex_old.json
 | 
			
		||||
 | 
			
		||||
print_ok 'All done!'
 | 
			
		||||
							
								
								
									
										41
									
								
								scripts/functions.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								scripts/functions.sh
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,41 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
LANGPACKSFOLDER='../../moodle-langpacks'
 | 
			
		||||
 | 
			
		||||
function check_success {
 | 
			
		||||
    if [ $? -ne 0 ]; then
 | 
			
		||||
        print_error "$1"
 | 
			
		||||
    elif [ "$#" -gt 1 ]; then
 | 
			
		||||
        print_ok "$2"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function print_success {
 | 
			
		||||
    if [ $? -ne 0 ]; then
 | 
			
		||||
        print_message "$1"
 | 
			
		||||
        $3=0
 | 
			
		||||
    else
 | 
			
		||||
        print_ok "$2"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function print_error {
 | 
			
		||||
    tput setaf 1; echo "  ERROR:  $1"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function print_ok {
 | 
			
		||||
    tput setaf 2; echo "     OK:  $1"
 | 
			
		||||
    echo
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function print_message {
 | 
			
		||||
    tput setaf 3; echo "--------  $1"
 | 
			
		||||
    echo
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function print_title {
 | 
			
		||||
    stepnumber=$(($stepnumber + 1))
 | 
			
		||||
    echo
 | 
			
		||||
    tput setaf 5; echo "$stepnumber $1"
 | 
			
		||||
    tput setaf 5; echo '=================='
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										1591
									
								
								scripts/langindex.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1591
									
								
								scripts/langindex.json
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										152
									
								
								scripts/moodle_to_json.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										152
									
								
								scripts/moodle_to_json.php
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,152 @@
 | 
			
		||||
<?php
 | 
			
		||||
// This file is part of Moodle - http://moodle.org/
 | 
			
		||||
//
 | 
			
		||||
// Moodle 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.
 | 
			
		||||
//
 | 
			
		||||
// Moodle 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 Moodle.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Script for converting moodle strings to json.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
// Check we are in CLI.
 | 
			
		||||
if (isset($_SERVER['REMOTE_ADDR'])) {
 | 
			
		||||
    exit(1);
 | 
			
		||||
}
 | 
			
		||||
define('MOODLE_INTERNAL', 1);
 | 
			
		||||
define('LANGPACKSFOLDER', '../../moodle-langpacks');
 | 
			
		||||
define('ASSETSPATH', '../src/assets/lang/');
 | 
			
		||||
 | 
			
		||||
// Set languages to do. If script is called using a language it will be used as unique.
 | 
			
		||||
if (isset($argv[1]) && !empty($argv[1])) {
 | 
			
		||||
    $languages = explode(',', $argv[1]);
 | 
			
		||||
} else {
 | 
			
		||||
    $languages = array();
 | 
			
		||||
    $files = scandir(ASSETSPATH);
 | 
			
		||||
    foreach ($files as $f) {
 | 
			
		||||
        if (strpos($f, ".json")) {
 | 
			
		||||
            $languages[] = str_replace(".json", "", $f);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    $languages = array_unique($languages);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
if (empty($languages)) {
 | 
			
		||||
    $languages = array('ar', 'bg', 'ca', 'cs', 'da', 'de', 'en', 'es-mx', 'es', 'eu', 'fa', 'fr', 'he', 'hu', 'it', 'ja', 'nl', 'pl', 'pt-br', 'pt', 'ro', 'ru', 'sv', 'tr', 'zh-cn', 'zh-tw');
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Process the index file, just once.
 | 
			
		||||
$keys = file_get_contents('langindex.json');
 | 
			
		||||
$keys = (array) json_decode($keys);
 | 
			
		||||
 | 
			
		||||
foreach ($keys as $key => $value) {
 | 
			
		||||
    $map = new StdClass();
 | 
			
		||||
    if ($value == 'local_moodlemobileapp') {
 | 
			
		||||
        $map->file = $value;
 | 
			
		||||
        $map->string = $key;
 | 
			
		||||
        $exp = explode('.', $key, 3);
 | 
			
		||||
 | 
			
		||||
        $type = $exp[0];
 | 
			
		||||
        if (count($exp) == 3) {
 | 
			
		||||
            $component = $exp[1];
 | 
			
		||||
            $plainid = $exp[2];
 | 
			
		||||
        } else {
 | 
			
		||||
            $component = 'moodle';
 | 
			
		||||
            $plainid = $exp[1];
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        switch($type) {
 | 
			
		||||
            case 'addon':
 | 
			
		||||
                $map->string_local = "mma.$component.$plainid";
 | 
			
		||||
                break;
 | 
			
		||||
            case 'core':
 | 
			
		||||
                if ($component == 'moodle') {
 | 
			
		||||
                    $map->string_local = "mm.core.$plainid";
 | 
			
		||||
                } else if ($component == 'mainmenu') {
 | 
			
		||||
                    $map->string_local = "mm.sidemenu.$plainid";
 | 
			
		||||
                } else {
 | 
			
		||||
                    $map->string_local = "mm.$component.$plainid";
 | 
			
		||||
                }
 | 
			
		||||
                break;
 | 
			
		||||
        }
 | 
			
		||||
    } else {
 | 
			
		||||
        $exp = explode('/', $value, 2);
 | 
			
		||||
        $map->file = $exp[0];
 | 
			
		||||
        if (count($exp) == 2) {
 | 
			
		||||
            $map->string = $exp[1];
 | 
			
		||||
        } else {
 | 
			
		||||
            $exp = explode('.', $key, 3);
 | 
			
		||||
 | 
			
		||||
            if (count($exp) == 3) {
 | 
			
		||||
                $map->string = $exp[2];
 | 
			
		||||
            } else {
 | 
			
		||||
                $map->string = $exp[1];
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    $keys[$key] = $map;
 | 
			
		||||
}
 | 
			
		||||
$total = count ($keys);
 | 
			
		||||
 | 
			
		||||
// Process the languages.
 | 
			
		||||
foreach ($languages as $lang) {
 | 
			
		||||
    $translations = [];
 | 
			
		||||
    $success = 0;
 | 
			
		||||
    $langfoldername = str_replace('-', '_', $lang);
 | 
			
		||||
 | 
			
		||||
    if (!is_dir(LANGPACKSFOLDER.'/'.$langfoldername)) {
 | 
			
		||||
        echo "Cannot translate $langfoldername, folder not found";
 | 
			
		||||
        continue;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    echo "Processing language $lang";
 | 
			
		||||
 | 
			
		||||
    // Add the translation to the array.
 | 
			
		||||
    foreach ($keys as $key => $value) {
 | 
			
		||||
        $file = LANGPACKSFOLDER.'/'.$langfoldername.'/'.$value->file.'.php';
 | 
			
		||||
        // Apply translations.
 | 
			
		||||
        if (!file_exists($file)) {
 | 
			
		||||
            continue;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $string = [];
 | 
			
		||||
        include($file);
 | 
			
		||||
 | 
			
		||||
        if (!isset($string[$value->string])) {
 | 
			
		||||
            if ($value->file != 'local_moodlemobileapp' || !isset($string[$value->string_local])) {
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
            $text = $string[$value->string_local];
 | 
			
		||||
        } else {
 | 
			
		||||
            $text = $string[$value->string];
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($value->file != 'local_moodlemobileapp') {
 | 
			
		||||
            $text = str_replace('$a->', '$a.', $text);
 | 
			
		||||
            $text = str_replace('{$a', '{{$a', $text);
 | 
			
		||||
            $text = str_replace('}', '}}', $text);
 | 
			
		||||
            // Prevent double.
 | 
			
		||||
            $text = str_replace(array('{{{', '}}}'), array('{{', '}}'), $text);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $translations[$key] = $text;
 | 
			
		||||
        $success++;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Sort and save.
 | 
			
		||||
    ksort($translations);
 | 
			
		||||
    file_put_contents(ASSETSPATH.$lang.'.json', str_replace('\/', '/', json_encode($translations, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT)));
 | 
			
		||||
 | 
			
		||||
    $percentage = floor($success/$total *100);
 | 
			
		||||
    echo " -> Processed $success of $total -> $percentage%\n";
 | 
			
		||||
}
 | 
			
		||||
@ -1,4 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badges": "شارات",
 | 
			
		||||
    "expired": "عذراً، تم إغلاق هذا النشاط في {{$a}} وهو غير متوفر الآن."
 | 
			
		||||
}
 | 
			
		||||
@ -1,11 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Елементи на значката",
 | 
			
		||||
    "badges": "Значки",
 | 
			
		||||
    "contact": "Контакт",
 | 
			
		||||
    "expired": "За съжаление тази дейност е затворена от {{$a}} и вече не е достъпна",
 | 
			
		||||
    "expirydate": "Дата на изтичане",
 | 
			
		||||
    "issuancedetails": "Срок на значката",
 | 
			
		||||
    "issuerdetails": "Данни за връчващия",
 | 
			
		||||
    "issuername": "Име на връчващия",
 | 
			
		||||
    "nobadges": "Няма налични значки."
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Detalls de la insígnia",
 | 
			
		||||
    "badges": "Insígnies",
 | 
			
		||||
    "contact": "Contacte",
 | 
			
		||||
    "dateawarded": "Data publicada",
 | 
			
		||||
    "expired": "Aquesta activitat es va tancar el dia {{$a}} i ja no està disponible.",
 | 
			
		||||
    "expirydate": "Data d'expiració",
 | 
			
		||||
    "issuancedetails": "Expiració de la insígnia",
 | 
			
		||||
    "issuerdetails": "Detalls de l'atorgador",
 | 
			
		||||
    "issuername": "Nom de l'atorgador",
 | 
			
		||||
    "nobadges": "No hi ha insígnies disponibles.",
 | 
			
		||||
    "recipientdetails": "Detalls del receptor"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Detaily odznaku",
 | 
			
		||||
    "badges": "Odznaky",
 | 
			
		||||
    "contact": "Kontakt",
 | 
			
		||||
    "dateawarded": "Datum udělení",
 | 
			
		||||
    "expired": "Je nám líto, tato činnost byla uzavřena {{$a}} a není nadále dostupná",
 | 
			
		||||
    "expirydate": "Datum vypršení platnosti",
 | 
			
		||||
    "issuancedetails": "Vypršení platnosti odznaku",
 | 
			
		||||
    "issuerdetails": "Podrobnosti o vydavateli",
 | 
			
		||||
    "issuername": "Jméno vydavatele",
 | 
			
		||||
    "nobadges": "Žádné odznaky nejsou k dispozici.",
 | 
			
		||||
    "recipientdetails": "Podrobnosti o příjemci"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Badgedetaljer",
 | 
			
		||||
    "badges": "Badges",
 | 
			
		||||
    "contact": "Kontakt",
 | 
			
		||||
    "dateawarded": "Udstedelsesdato",
 | 
			
		||||
    "expired": "Beklager, denne aktivitet er lukket d. {{$a}} og er ikke længere tilgængelig",
 | 
			
		||||
    "expirydate": "Udløbsdato",
 | 
			
		||||
    "issuancedetails": "Badge-udløb",
 | 
			
		||||
    "issuerdetails": "Udstederdata",
 | 
			
		||||
    "issuername": "Udsteders navn",
 | 
			
		||||
    "nobadges": "Der er ingen tilgængelige badges.",
 | 
			
		||||
    "recipientdetails": "Modtagerdata"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Grundeinstellungen",
 | 
			
		||||
    "badges": "Auszeichnungen",
 | 
			
		||||
    "contact": "Kontakt",
 | 
			
		||||
    "dateawarded": "Verleihdatum",
 | 
			
		||||
    "expired": "Diese Abstimmung ist seit {{$a}} beendet. Eine Auswahl ist nicht mehr möglich.",
 | 
			
		||||
    "expirydate": "Ablaufdatum",
 | 
			
		||||
    "issuancedetails": "Ablauf festlegen",
 | 
			
		||||
    "issuerdetails": "Verleiher",
 | 
			
		||||
    "issuername": "Verleiher",
 | 
			
		||||
    "nobadges": "Keine Auszeichnungen verfügbar",
 | 
			
		||||
    "recipientdetails": "Empfängerdetails"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Grundeinstellungen",
 | 
			
		||||
    "badges": "Auszeichnungen",
 | 
			
		||||
    "contact": "Kontakt",
 | 
			
		||||
    "dateawarded": "Verleihdatum",
 | 
			
		||||
    "expired": "Diese Abstimmung ist seit {{$a}} beendet. Eine Auswahl ist nicht mehr möglich.",
 | 
			
		||||
    "expirydate": "Ablaufdatum",
 | 
			
		||||
    "issuancedetails": "Ablauf festlegen",
 | 
			
		||||
    "issuerdetails": "Verleiher",
 | 
			
		||||
    "issuername": "Verleiher",
 | 
			
		||||
    "nobadges": "Keine Auszeichnungen verfügbar",
 | 
			
		||||
    "recipientdetails": "Empfängerdetails"
 | 
			
		||||
}
 | 
			
		||||
@ -1,4 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badges": "Βραβεία",
 | 
			
		||||
    "expired": "Η δραστηριότητα αυτή έκλεισε στις {{$a}} και δεν είναι πλέον διαθέσιμη"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Detalles de insignia",
 | 
			
		||||
    "badges": "Insignias",
 | 
			
		||||
    "contact": "Contacto",
 | 
			
		||||
    "dateawarded": "Fecha de emisión",
 | 
			
		||||
    "expired": "Lo sentimos, esta actividad se cerró el {{$a}} y ya no está disponible",
 | 
			
		||||
    "expirydate": "Fecha de caducidad",
 | 
			
		||||
    "issuancedetails": "Caducidad de insignia",
 | 
			
		||||
    "issuerdetails": "Detalles del emisor",
 | 
			
		||||
    "issuername": "Nombre del emisor",
 | 
			
		||||
    "nobadges": "No hay insignias disponibles.",
 | 
			
		||||
    "recipientdetails": "Detalles de receptores"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Detalles de la insignia",
 | 
			
		||||
    "badges": "Insignias",
 | 
			
		||||
    "contact": "Contacto",
 | 
			
		||||
    "dateawarded": "Fecha de la emisión",
 | 
			
		||||
    "expired": "Lo sentimos, esta actividad se cerró el {{$a}} y ya no está disponible",
 | 
			
		||||
    "expirydate": "Fecha de expiración",
 | 
			
		||||
    "issuancedetails": "Caducidad de la insignia",
 | 
			
		||||
    "issuerdetails": "Detalles del emisor",
 | 
			
		||||
    "issuername": "Nombre del emisor",
 | 
			
		||||
    "nobadges": "No hay insignias disponibles",
 | 
			
		||||
    "recipientdetails": "Detalles del destinatario"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Dominaren xehetasunak",
 | 
			
		||||
    "badges": "Dominak",
 | 
			
		||||
    "contact": "Kontaktua",
 | 
			
		||||
    "dateawarded": "Emate-data",
 | 
			
		||||
    "expired": "Sentitzen dugu, jarduera hau {{$a}}(e)an itxi zen eta dagoeneko ez dago eskuragarri.",
 | 
			
		||||
    "expirydate": "Epemugaren data",
 | 
			
		||||
    "issuancedetails": "Dominaren iraungitzea",
 | 
			
		||||
    "issuerdetails": "Emailearen xehetasunak",
 | 
			
		||||
    "issuername": "Emailearen izena",
 | 
			
		||||
    "nobadges": "Ez dago dominarik eskura.",
 | 
			
		||||
    "recipientdetails": "Jasotzailearen zehaztasunak"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "مشخصات مدال",
 | 
			
		||||
    "badges": "مدالها",
 | 
			
		||||
    "contact": "تماس",
 | 
			
		||||
    "dateawarded": "تاریخ صدور",
 | 
			
		||||
    "expired": "با عرض پوزش، این فعالیت در {{$a}} بسته شد و دیگر در دسترس نیست",
 | 
			
		||||
    "expirydate": "تاریخ انقضا",
 | 
			
		||||
    "issuancedetails": "انقضای مدال",
 | 
			
		||||
    "issuerdetails": "مشخصات صادرکننده",
 | 
			
		||||
    "issuername": "نام صادرکننده",
 | 
			
		||||
    "nobadges": "مدالی موجود نیست.",
 | 
			
		||||
    "recipientdetails": "مشخصات دریافتکننده"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Osaamismerkin tiedot",
 | 
			
		||||
    "badges": "Osaamismerkit",
 | 
			
		||||
    "contact": "Yhteystieto",
 | 
			
		||||
    "dateawarded": "Myöntämispäivä",
 | 
			
		||||
    "expired": "Tämä aktiviteeti on suljettu {{$a}} eikä ole enää käytettävissä.",
 | 
			
		||||
    "expirydate": "Vanhenemispäivä",
 | 
			
		||||
    "issuancedetails": "Osaamismerkin vanhentuminen",
 | 
			
		||||
    "issuerdetails": "Osaamismerkin myöntäjän tiedot",
 | 
			
		||||
    "issuername": "Osaamismerkin myöntäjän nimi",
 | 
			
		||||
    "nobadges": "Yhtään osaamismerkkiä ei ole tarjolla",
 | 
			
		||||
    "recipientdetails": "Vastaanottajan tiedot"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Description du badge",
 | 
			
		||||
    "badges": "Badges",
 | 
			
		||||
    "contact": "Contact",
 | 
			
		||||
    "dateawarded": "Date de remise",
 | 
			
		||||
    "expired": "Désolé, cette activité s'est terminée le {{$a}} et n'est plus disponible",
 | 
			
		||||
    "expirydate": "Date d'échéance",
 | 
			
		||||
    "issuancedetails": "Échéance du badge",
 | 
			
		||||
    "issuerdetails": "Détail de l'émetteur",
 | 
			
		||||
    "issuername": "Nom de l'émetteur",
 | 
			
		||||
    "nobadges": "Il n'y a pas de badge disponible.",
 | 
			
		||||
    "recipientdetails": "Infos détenteur"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "פרטי ההישג",
 | 
			
		||||
    "badges": "הישגים",
 | 
			
		||||
    "contact": "ליצירת קשר",
 | 
			
		||||
    "dateawarded": "תאריך הקבלה",
 | 
			
		||||
    "expired": "מצטערים, פעילות זו נסגרה על {{$a}} והיא איננה זמינה יותר",
 | 
			
		||||
    "expirydate": "תאריך תפוגה",
 | 
			
		||||
    "issuancedetails": "מועד תפוגת ההישג",
 | 
			
		||||
    "issuerdetails": "פרטי הגורם אשר העניק את ההישג",
 | 
			
		||||
    "issuername": "שם מעניק ההישג",
 | 
			
		||||
    "nobadges": "אין הישגים זמינים.",
 | 
			
		||||
    "recipientdetails": "פרטי המכותב"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Detalji značke",
 | 
			
		||||
    "badges": "Značke",
 | 
			
		||||
    "contact": "Kontakt",
 | 
			
		||||
    "dateawarded": "Datum izdavanja",
 | 
			
		||||
    "expired": "Nažalost, ova aktivnost je zatvorena od {{$a}} i nije više dostupna",
 | 
			
		||||
    "expirydate": "Datum isteka",
 | 
			
		||||
    "issuancedetails": "Istek značke",
 | 
			
		||||
    "issuerdetails": "Detalji o izdavaču",
 | 
			
		||||
    "issuername": "Ime izdavača",
 | 
			
		||||
    "nobadges": "Nema dostupnih značaka.",
 | 
			
		||||
    "recipientdetails": "Podaci o dobitniku"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Részletek",
 | 
			
		||||
    "badges": "Kitűzők",
 | 
			
		||||
    "contact": "Kapcsolat",
 | 
			
		||||
    "dateawarded": "Kiadás dátuma",
 | 
			
		||||
    "expired": "Ez a tevékenység {{$a}} időpontban lezárult és már nem érhető el",
 | 
			
		||||
    "expirydate": "Lejárat időpontja",
 | 
			
		||||
    "issuancedetails": "A kitűző lejárata",
 | 
			
		||||
    "issuerdetails": "Az adományozó adatai",
 | 
			
		||||
    "issuername": "Az adományozó neve",
 | 
			
		||||
    "nobadges": "Nincs elérhető kitűző.",
 | 
			
		||||
    "recipientdetails": "A megjutalmazott adatai"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Dettagli badge",
 | 
			
		||||
    "badges": "Badge",
 | 
			
		||||
    "contact": "Contatto",
 | 
			
		||||
    "dateawarded": "Data di rilascio",
 | 
			
		||||
    "expired": "Spiacente, questa attività è stata chiusa il {{$a}} e non è più disponibile",
 | 
			
		||||
    "expirydate": "Data di scadenza",
 | 
			
		||||
    "issuancedetails": "Scadenza badge",
 | 
			
		||||
    "issuerdetails": "Dettagli di chi rilascia il badge",
 | 
			
		||||
    "issuername": "Nome di chi rilascia il badge",
 | 
			
		||||
    "nobadges": "Non sono presenti badge.",
 | 
			
		||||
    "recipientdetails": "Dettagli destinatario"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "バッジ詳細",
 | 
			
		||||
    "badges": "バッジ",
 | 
			
		||||
    "contact": "連絡先",
 | 
			
		||||
    "dateawarded": "発効日",
 | 
			
		||||
    "expired": "申し訳ございません、この活動は {{$a}} に終了しているため、これ以上利用することはできません。",
 | 
			
		||||
    "expirydate": "有効期限",
 | 
			
		||||
    "issuancedetails": "バッジ有効期限",
 | 
			
		||||
    "issuerdetails": "発行者詳細",
 | 
			
		||||
    "issuername": "発行者名",
 | 
			
		||||
    "nobadges": "利用できるバッジはありません。",
 | 
			
		||||
    "recipientdetails": "取得者詳細"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "뱃지 세부사항",
 | 
			
		||||
    "badges": "뱃지",
 | 
			
		||||
    "contact": "연락처",
 | 
			
		||||
    "dateawarded": "발행일",
 | 
			
		||||
    "expired": "죄송합니다. 이 활동은 {{$a}} 에 종료되어서 더 이상 사용할 수 없습니다.",
 | 
			
		||||
    "expirydate": "만료일",
 | 
			
		||||
    "issuancedetails": "뱃지 만료기한",
 | 
			
		||||
    "issuerdetails": "발행자 세부정보",
 | 
			
		||||
    "issuername": "발행자 이름",
 | 
			
		||||
    "nobadges": "사용가능한 뱃지가 없습니다.",
 | 
			
		||||
    "recipientdetails": "수신자 세부사항"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Pasiekimo detalės",
 | 
			
		||||
    "badges": "Pasiekimai",
 | 
			
		||||
    "contact": "Kontaktas",
 | 
			
		||||
    "dateawarded": "Suteikimo data",
 | 
			
		||||
    "expired": "Atsiprašome, veikla uždaryta {{$a}} ir nebegalima",
 | 
			
		||||
    "expirydate": "Galiojimo laikas",
 | 
			
		||||
    "issuancedetails": "Pasiekimo galiojimas",
 | 
			
		||||
    "issuerdetails": "Suteikėjo detalesnė informacija",
 | 
			
		||||
    "issuername": "Suteikėjo vardas",
 | 
			
		||||
    "nobadges": "Nėra sukurtų pasiekimų.",
 | 
			
		||||
    "recipientdetails": "Informacija apie gavėją"
 | 
			
		||||
}
 | 
			
		||||
@ -1,3 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "expired": "संपलेला"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Badgedetails",
 | 
			
		||||
    "badges": "Badges",
 | 
			
		||||
    "contact": "Contact",
 | 
			
		||||
    "dateawarded": "Uitgavedatum",
 | 
			
		||||
    "expired": "Sorry, deze activiteit is afgesloten op {{$a}} en is niet meer beschikbaar",
 | 
			
		||||
    "expirydate": "Vervaldatum",
 | 
			
		||||
    "issuancedetails": "Badge verloopt",
 | 
			
		||||
    "issuerdetails": "Details uitgever",
 | 
			
		||||
    "issuername": "Naam uitgever",
 | 
			
		||||
    "nobadges": "Er zijn geen badges beschikbaar.",
 | 
			
		||||
    "recipientdetails": "Details ontvanger"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Utmerkelsesdetaljer",
 | 
			
		||||
    "badges": "Utmerkelser",
 | 
			
		||||
    "contact": "Kontakt",
 | 
			
		||||
    "dateawarded": "Dato tildelt",
 | 
			
		||||
    "expired": "Beklager, denne aktiviteten ble stengt {{$a}} og er ikke tilgjengelig lenger.",
 | 
			
		||||
    "expirydate": "Utløpsdato",
 | 
			
		||||
    "issuancedetails": "Utløpsdato på utmerkelse",
 | 
			
		||||
    "issuerdetails": "Utstederdetaljer",
 | 
			
		||||
    "issuername": "Navn på utsteder",
 | 
			
		||||
    "nobadges": "Det er ingen tilgjengelige utmerkelser.",
 | 
			
		||||
    "recipientdetails": "Mottakerdetaljer"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Szczegóły odznaki",
 | 
			
		||||
    "badges": "Odznaki",
 | 
			
		||||
    "contact": "Kontakt",
 | 
			
		||||
    "dateawarded": "Data wydania",
 | 
			
		||||
    "expired": "Niestety ta aktywność została zamknięta {{$a}} i nie jest już dostępna.",
 | 
			
		||||
    "expirydate": "Data ważności",
 | 
			
		||||
    "issuancedetails": "Wygaśnięcie odznaki",
 | 
			
		||||
    "issuerdetails": "Dane wystawcy",
 | 
			
		||||
    "issuername": "Nazwa wydawcy",
 | 
			
		||||
    "nobadges": "Brak dostępnych odznak",
 | 
			
		||||
    "recipientdetails": "Dane odbiorcy"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Detalhes do emblema",
 | 
			
		||||
    "badges": "Emblemas",
 | 
			
		||||
    "contact": "Contato",
 | 
			
		||||
    "dateawarded": "Data de emissão",
 | 
			
		||||
    "expired": "Esta atividade está encerrada desde {{$a}}",
 | 
			
		||||
    "expirydate": "Data de validade",
 | 
			
		||||
    "issuancedetails": "Expiração do emblema",
 | 
			
		||||
    "issuerdetails": "Detalhes do emissor",
 | 
			
		||||
    "issuername": "Nome do emissor",
 | 
			
		||||
    "nobadges": "Não há emblemas disponíveis.",
 | 
			
		||||
    "recipientdetails": "Detalhes do usuário a receber o emblema"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Detalhes da Medalha",
 | 
			
		||||
    "badges": "Medalhas",
 | 
			
		||||
    "contact": "Contacto",
 | 
			
		||||
    "dateawarded": "Data de emissão",
 | 
			
		||||
    "expired": "Esta atividade terminou em {{$a}} e já não está disponível",
 | 
			
		||||
    "expirydate": "Data de validade",
 | 
			
		||||
    "issuancedetails": "Data de validade da Medalha",
 | 
			
		||||
    "issuerdetails": "Detalhes do emissor",
 | 
			
		||||
    "issuername": "Nome do emissor",
 | 
			
		||||
    "nobadges": "Não existem Medalhas disponíveis.",
 | 
			
		||||
    "recipientdetails": "Detalhes do condecorado"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Detalii ecuson",
 | 
			
		||||
    "badges": "Ecusoane",
 | 
			
		||||
    "contact": "Contact",
 | 
			
		||||
    "dateawarded": "Data emiterii",
 | 
			
		||||
    "expired": "Ne pare rău, această activitate s-a închis la {{$a}} şi nu mai este disponibilă",
 | 
			
		||||
    "expirydate": "Dată de expirare",
 | 
			
		||||
    "issuancedetails": "Expirare ecuson",
 | 
			
		||||
    "issuerdetails": "Detalii emitent",
 | 
			
		||||
    "issuername": "Nume emitent",
 | 
			
		||||
    "nobadges": "Nu există ecusoane disponibile",
 | 
			
		||||
    "recipientdetails": "Detalii recipient"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Подробнее о значке",
 | 
			
		||||
    "badges": "Значки",
 | 
			
		||||
    "contact": "Контакты",
 | 
			
		||||
    "dateawarded": "Дата выдачи",
 | 
			
		||||
    "expired": "Извините, этот элемент курса закрыт {{$a}} и более недоступен",
 | 
			
		||||
    "expirydate": "Дата окончания срока действия",
 | 
			
		||||
    "issuancedetails": "Срок действия значка",
 | 
			
		||||
    "issuerdetails": "Сведения об эмитенте",
 | 
			
		||||
    "issuername": "Наименование эмитента",
 | 
			
		||||
    "nobadges": "Нет доступных значков.",
 | 
			
		||||
    "recipientdetails": "Сведения о получателе"
 | 
			
		||||
}
 | 
			
		||||
@ -1,12 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Подаци о беџу",
 | 
			
		||||
    "badges": "Беџеви",
 | 
			
		||||
    "contact": "Контакт",
 | 
			
		||||
    "dateawarded": "Датум издавања",
 | 
			
		||||
    "expirydate": "Датум истека",
 | 
			
		||||
    "issuancedetails": "Беџ истиче",
 | 
			
		||||
    "issuerdetails": "Подаци о издавачу",
 | 
			
		||||
    "issuername": "Име/назив издавача беџа",
 | 
			
		||||
    "nobadges": "Нема доступних беџева",
 | 
			
		||||
    "recipientdetails": "Детаљи о примаоцу"
 | 
			
		||||
}
 | 
			
		||||
@ -1,12 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Podaci o bedžu",
 | 
			
		||||
    "badges": "Bedževi",
 | 
			
		||||
    "contact": "Kontakt",
 | 
			
		||||
    "dateawarded": "Datum izdavanja",
 | 
			
		||||
    "expirydate": "Datum isteka",
 | 
			
		||||
    "issuancedetails": "Bedž ističe",
 | 
			
		||||
    "issuerdetails": "Podaci o izdavaču",
 | 
			
		||||
    "issuername": "Ime/naziv izdavača bedža",
 | 
			
		||||
    "nobadges": "Nema dostupnih bedževa",
 | 
			
		||||
    "recipientdetails": "Detalji o primaocu"
 | 
			
		||||
}
 | 
			
		||||
@ -1,12 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Detaljer för märke",
 | 
			
		||||
    "badges": "Märken",
 | 
			
		||||
    "contact": "Kontakt",
 | 
			
		||||
    "dateawarded": "Utfärdandedatum",
 | 
			
		||||
    "expired": "Den här aktiviteten är stängd på {{$a}} och den är inte längre tillgänglig.",
 | 
			
		||||
    "expirydate": "Förfallodatum",
 | 
			
		||||
    "issuancedetails": "Förfallande av märke",
 | 
			
		||||
    "issuerdetails": "Utfärdarens detaljer",
 | 
			
		||||
    "issuername": "Utfärdarens namn",
 | 
			
		||||
    "nobadges": "Det finns inga märken tillgängliga."
 | 
			
		||||
}
 | 
			
		||||
@ -1,4 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badges": "Бейҷҳо",
 | 
			
		||||
    "expired": "Бубахшед,ин фаъолият маҳкам карда шудааст {{$a}} ва акнун дастрас нест"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Nişan ayrıntıları",
 | 
			
		||||
    "badges": "Nişanlar",
 | 
			
		||||
    "contact": "İletişim",
 | 
			
		||||
    "dateawarded": "Verilen tarih",
 | 
			
		||||
    "expired": "Üzgünüz, bu etkinlik {{$a}} tarihinde kapandı ve bu etkinliğe artık ulaşılamaz",
 | 
			
		||||
    "expirydate": "Bitiş Tarihi",
 | 
			
		||||
    "issuancedetails": "Rozet sona erme",
 | 
			
		||||
    "issuerdetails": "çıkaran ayrıntıları",
 | 
			
		||||
    "issuername": "Çıkaranın adı",
 | 
			
		||||
    "nobadges": "Uygun nişan bulunmuyor.",
 | 
			
		||||
    "recipientdetails": "Alıcı bilgileri"
 | 
			
		||||
}
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "Детальніше про відзнаку",
 | 
			
		||||
    "badges": "Відзнаки",
 | 
			
		||||
    "contact": "Контакт",
 | 
			
		||||
    "dateawarded": "Дата отримання",
 | 
			
		||||
    "expired": "На жаль, ця діяльність закрита для {{$a}} та більше недоступна",
 | 
			
		||||
    "expirydate": "Дата завершення",
 | 
			
		||||
    "issuancedetails": "Відзнака не актуальна",
 | 
			
		||||
    "issuerdetails": "Деталі присудження",
 | 
			
		||||
    "issuername": "Ім’я видавця",
 | 
			
		||||
    "nobadges": "Немає доступних відзнак.",
 | 
			
		||||
    "recipientdetails": "Деталі отримувача"
 | 
			
		||||
}
 | 
			
		||||
@ -1,12 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "勋章详情",
 | 
			
		||||
    "badges": "勋章",
 | 
			
		||||
    "contact": "联系",
 | 
			
		||||
    "dateawarded": "授予日期",
 | 
			
		||||
    "expirydate": "过期时间",
 | 
			
		||||
    "issuancedetails": "有效期",
 | 
			
		||||
    "issuerdetails": "授勋机构详情",
 | 
			
		||||
    "issuername": "授勋机构名称",
 | 
			
		||||
    "nobadges": "没有可用的勋章",
 | 
			
		||||
    "recipientdetails": "获得者详情"
 | 
			
		||||
}
 | 
			
		||||
@ -1,12 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "badgedetails": "獎章細節",
 | 
			
		||||
    "badges": "獎章",
 | 
			
		||||
    "contact": "聯絡",
 | 
			
		||||
    "dateawarded": "頒發的日期",
 | 
			
		||||
    "expirydate": "失效日期",
 | 
			
		||||
    "issuancedetails": "獎章到期",
 | 
			
		||||
    "issuerdetails": "頒授者細節",
 | 
			
		||||
    "issuername": "頒授者的姓名",
 | 
			
		||||
    "nobadges": "這裡沒有可用的獎章",
 | 
			
		||||
    "recipientdetails": "收件者細節"
 | 
			
		||||
}
 | 
			
		||||
@ -1,7 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "أحداث التقويم",
 | 
			
		||||
    "errorloadevent": "خطأ في تحميل الحدث",
 | 
			
		||||
    "errorloadevents": "خطأ في تحميل الأحداث",
 | 
			
		||||
    "noevents": "لا يوجد أي أحداث",
 | 
			
		||||
    "notifications": "الإشعارات"
 | 
			
		||||
}
 | 
			
		||||
@ -1,7 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Събития от календара",
 | 
			
		||||
    "errorloadevent": "Грешка при зареждането на събитие.",
 | 
			
		||||
    "errorloadevents": "Грешка при зареждането на събитията.",
 | 
			
		||||
    "noevents": "Няма предстоящи дейности",
 | 
			
		||||
    "notifications": "Уведомление"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Esdeveniments del calendari",
 | 
			
		||||
    "defaultnotificationtime": "Hora de notificació per defecte",
 | 
			
		||||
    "errorloadevent": "S'ha produït un error carregant l'esdeveniment.",
 | 
			
		||||
    "errorloadevents": "S'ha produït un error carregant els esdeveniments.",
 | 
			
		||||
    "noevents": "Cap activitat venç properament",
 | 
			
		||||
    "notifications": "Notificacions"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Kalendář událostí",
 | 
			
		||||
    "defaultnotificationtime": "Výchozí čas oznámení",
 | 
			
		||||
    "errorloadevent": "Chyba při načítání události.",
 | 
			
		||||
    "errorloadevents": "Chyba při načítání událostí.",
 | 
			
		||||
    "noevents": "Žádné nadcházející činnosti",
 | 
			
		||||
    "notifications": "Informace"
 | 
			
		||||
}
 | 
			
		||||
@ -1,7 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Kalenderbegivenheder",
 | 
			
		||||
    "errorloadevent": "Fejl ved indlæsning af begivenhed.",
 | 
			
		||||
    "errorloadevents": "Fejl ved indlæsning af begivenheder.",
 | 
			
		||||
    "noevents": "Ingen forestående aktiviteter",
 | 
			
		||||
    "notifications": "Beskeder"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Kalender",
 | 
			
		||||
    "defaultnotificationtime": "Standardmäßige Benachrichtigungszeit",
 | 
			
		||||
    "errorloadevent": "Fehler beim Laden des Kalendereintrags",
 | 
			
		||||
    "errorloadevents": "Fehler beim Laden der Kalendereinträge",
 | 
			
		||||
    "noevents": "Keine anstehenden Aktivitäten fällig",
 | 
			
		||||
    "notifications": "Mitteilungen"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Kalender",
 | 
			
		||||
    "defaultnotificationtime": "Standardmäßige Benachrichtigungszeit",
 | 
			
		||||
    "errorloadevent": "Fehler beim Laden des Kalendereintrags",
 | 
			
		||||
    "errorloadevents": "Fehler beim Laden der Kalendereinträge",
 | 
			
		||||
    "noevents": "Keine Kalendereinträge",
 | 
			
		||||
    "notifications": "Systemmitteilungen"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Ημερολόγιο συμβάντων",
 | 
			
		||||
    "defaultnotificationtime": "Προεπιλεγμένος χρόνος ειδοποίησης",
 | 
			
		||||
    "errorloadevent": "Σφάλμα στην φόρτωση συμβάντου.",
 | 
			
		||||
    "errorloadevents": "Σφάλμα στην φόρτωση συμβάντων.",
 | 
			
		||||
    "noevents": "Καμία δραστηριότητα προσεχώς",
 | 
			
		||||
    "notifications": "Ειδοποιήσεις"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Eventos del calendario",
 | 
			
		||||
    "defaultnotificationtime": "Hora de notificación por defecto",
 | 
			
		||||
    "errorloadevent": "Error al cargar evento.",
 | 
			
		||||
    "errorloadevents": "Error al cargar eventos.",
 | 
			
		||||
    "noevents": "No hay actividades próximas pendientes",
 | 
			
		||||
    "notifications": "Avisos"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Eventos de calendario",
 | 
			
		||||
    "defaultnotificationtime": "Tiempo de notificación por defecto",
 | 
			
		||||
    "errorloadevent": "Error cargando el evento.",
 | 
			
		||||
    "errorloadevents": "Error cargando los eventos.",
 | 
			
		||||
    "noevents": "No hay actividades próximas pendientes",
 | 
			
		||||
    "notifications": "Avisos"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Egutegiko gertakariak",
 | 
			
		||||
    "defaultnotificationtime": "Berezko jakinarazpen-ordua",
 | 
			
		||||
    "errorloadevent": "Errorea gertakaria kargatzean.",
 | 
			
		||||
    "errorloadevents": "Errorea gertakariak kargatzean.",
 | 
			
		||||
    "noevents": "Ez dago ekitaldirik",
 | 
			
		||||
    "notifications": "Jakinarazpenak"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "رویدادهای تقویم",
 | 
			
		||||
    "defaultnotificationtime": "زمان پیشفرض اطلاعرسانی",
 | 
			
		||||
    "errorloadevent": "خطا در بارگیری رویداد.",
 | 
			
		||||
    "errorloadevents": "خطا در بارگیری رویدادها.",
 | 
			
		||||
    "noevents": "هیچ مهلتی برای فعالیتهای آتی وجود ندارد",
 | 
			
		||||
    "notifications": "تذکرات"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Kalenteritapahtumat",
 | 
			
		||||
    "defaultnotificationtime": "Oletusilmoitusaika",
 | 
			
		||||
    "errorloadevent": "Ladattaessa tapahtumaa tapahtui virhe.",
 | 
			
		||||
    "errorloadevents": "Ladattaessa tapahtumia tapahtui virhe.",
 | 
			
		||||
    "noevents": "Ei tulevia aktiviteettien määräaikoja",
 | 
			
		||||
    "notifications": "Ilmoitukset"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Événements du calendrier",
 | 
			
		||||
    "defaultnotificationtime": "Heure de notification par défaut",
 | 
			
		||||
    "errorloadevent": "Erreur de chargement de l'événement",
 | 
			
		||||
    "errorloadevents": "Erreur de chargement des événements",
 | 
			
		||||
    "noevents": "Aucune activité",
 | 
			
		||||
    "notifications": "Notifications"
 | 
			
		||||
}
 | 
			
		||||
@ -1,7 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "אירועי לוח שנה",
 | 
			
		||||
    "errorloadevent": "שגיאה בטעינת האירוע.",
 | 
			
		||||
    "errorloadevents": "שגיאה בטעינת האירועים.",
 | 
			
		||||
    "noevents": "לא קיימות פעילויות עתידיות להן מועד הגשה",
 | 
			
		||||
    "notifications": "עדכונים והודעות"
 | 
			
		||||
}
 | 
			
		||||
@ -1,5 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Događaji u kalendaru",
 | 
			
		||||
    "noevents": "Nema zakazanih budućih aktivnosti",
 | 
			
		||||
    "notifications": "Obavijesti"
 | 
			
		||||
}
 | 
			
		||||
@ -1,4 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "noevents": "Nincs esedékes tevékenység",
 | 
			
		||||
    "notifications": "Értesítések"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Eventi nel calendario",
 | 
			
		||||
    "defaultnotificationtime": "Orario di notifica di default",
 | 
			
		||||
    "errorloadevent": "Si è verificato un errore durante il caricamento degli eventi.",
 | 
			
		||||
    "errorloadevents": "Si è verificato un errore durante il caricamento degli eventi.",
 | 
			
		||||
    "noevents": "Non ci sono attività con date di svolgimento e/o di scadenza programmate in questo periodo.",
 | 
			
		||||
    "notifications": "Notifiche"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "カレンダーイベント",
 | 
			
		||||
    "defaultnotificationtime": "デフォルト通知時間",
 | 
			
		||||
    "errorloadevent": "イベントの読み込み時にエラーがありました。",
 | 
			
		||||
    "errorloadevents": "イベントの読み込み時にエラーがありました。",
 | 
			
		||||
    "noevents": "到来する活動期限はありません。",
 | 
			
		||||
    "notifications": "通知"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "달력 일정",
 | 
			
		||||
    "defaultnotificationtime": "기본 알림 시간",
 | 
			
		||||
    "errorloadevent": "이벤트 올리기 오류",
 | 
			
		||||
    "errorloadevents": "이벤트 올리기 오류",
 | 
			
		||||
    "noevents": "이벤트 없음",
 | 
			
		||||
    "notifications": "시스템공지"
 | 
			
		||||
}
 | 
			
		||||
@ -1,7 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Renginių kalendorius",
 | 
			
		||||
    "errorloadevent": "Klaida įkeliant renginį.",
 | 
			
		||||
    "errorloadevents": "Klaida įkeliant renginius.",
 | 
			
		||||
    "noevents": "Nėra numatytų artėjančių veiklų",
 | 
			
		||||
    "notifications": "Pranešimai"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "दिनदर्शिका कार्यक्रम",
 | 
			
		||||
    "defaultnotificationtime": "सूचना वेळ",
 | 
			
		||||
    "errorloadevent": "कार्यक्रम लोड करताना त्रुटी.",
 | 
			
		||||
    "errorloadevents": "कार्यक्रम लोड करताना त्रुटी.",
 | 
			
		||||
    "noevents": "कोणतेही कार्यक्रम नाहीत",
 | 
			
		||||
    "notifications": "अधिसुचना"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Kalendergebeurtenissen",
 | 
			
		||||
    "defaultnotificationtime": "Standaard notificatietijd",
 | 
			
		||||
    "errorloadevent": "Fout bij het laden van de gebeurtenis.",
 | 
			
		||||
    "errorloadevents": "Fout bij het laden van de gebeurtenissen.",
 | 
			
		||||
    "noevents": "Er zijn geen verwachte activiteiten",
 | 
			
		||||
    "notifications": "Meldingen"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Kalenderhendelser",
 | 
			
		||||
    "defaultnotificationtime": "Standard varslingstid",
 | 
			
		||||
    "errorloadevent": "Feil ved lasting av hendelse",
 | 
			
		||||
    "errorloadevents": "Feil ved lasting av hendelser",
 | 
			
		||||
    "noevents": "Det er ingen aktiviteter som må gjøres i nærmeste fremtid.",
 | 
			
		||||
    "notifications": "Meldinger"
 | 
			
		||||
}
 | 
			
		||||
@ -1,4 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "noevents": "Brak nadchodzących terminów zadań",
 | 
			
		||||
    "notifications": "Powiadomienia"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Eventos do calendário",
 | 
			
		||||
    "defaultnotificationtime": "Tempo de notificação padrão",
 | 
			
		||||
    "errorloadevent": "Erro ao carregar evento.",
 | 
			
		||||
    "errorloadevents": "Erro ao carregar eventos.",
 | 
			
		||||
    "noevents": "Não há atividades pendentes",
 | 
			
		||||
    "notifications": "Avisos"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Eventos do calendário",
 | 
			
		||||
    "defaultnotificationtime": "Hora de notificação predefinida",
 | 
			
		||||
    "errorloadevent": "Erro ao carregar evento.",
 | 
			
		||||
    "errorloadevents": "Erro ao carregar eventos.",
 | 
			
		||||
    "noevents": "Nenhuma atividade programada",
 | 
			
		||||
    "notifications": "Notificações"
 | 
			
		||||
}
 | 
			
		||||
@ -1,7 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Evenimente din calendar",
 | 
			
		||||
    "errorloadevent": "Eroare la încărcarea unui eveniment.",
 | 
			
		||||
    "errorloadevents": "Eroare la încărcarea unor evenimente.",
 | 
			
		||||
    "noevents": "Nu sunt evenimente noi",
 | 
			
		||||
    "notifications": "Notificări"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "События календаря",
 | 
			
		||||
    "defaultnotificationtime": "Время уведомлений по умолчанию",
 | 
			
		||||
    "errorloadevent": "Ошибка при загрузке события",
 | 
			
		||||
    "errorloadevents": "Ошибка при загрузке событий",
 | 
			
		||||
    "noevents": "Окончаний сроков сдачи элементов курса в ближайшее время нет.",
 | 
			
		||||
    "notifications": "Уведомления"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Догађаји у календару",
 | 
			
		||||
    "defaultnotificationtime": "Подразумевано време за слање обавештења",
 | 
			
		||||
    "errorloadevent": "Грешка приликом учитавања догађаја.",
 | 
			
		||||
    "errorloadevents": "Грешка приликом учитавања догађаја.",
 | 
			
		||||
    "noevents": "Нема догађаја",
 | 
			
		||||
    "notifications": "Обавештења"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Događaji u kalendaru",
 | 
			
		||||
    "defaultnotificationtime": "Podrazumevano vreme za slanje obaveštenja",
 | 
			
		||||
    "errorloadevent": "Greška prilikom učitavanja događaja.",
 | 
			
		||||
    "errorloadevents": "Greška prilikom učitavanja događaja.",
 | 
			
		||||
    "noevents": "Nema događaja",
 | 
			
		||||
    "notifications": "Nema događaja"
 | 
			
		||||
}
 | 
			
		||||
@ -1,7 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Kalenderhändelser",
 | 
			
		||||
    "errorloadevent": "Fel vid inläsning av händelse.",
 | 
			
		||||
    "errorloadevents": "Fel vid inläsning av händelser",
 | 
			
		||||
    "noevents": "Inga deadlines för aktiviteter",
 | 
			
		||||
    "notifications": "Administration"
 | 
			
		||||
}
 | 
			
		||||
@ -1,5 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Чорабиниҳои тақвимӣ",
 | 
			
		||||
    "noevents": "Ҳеҷ фаъолияти омадаистода нест",
 | 
			
		||||
    "notifications": "Огоҳиҳо"
 | 
			
		||||
}
 | 
			
		||||
@ -1,4 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "noevents": "Hiç bildiriminiz yok",
 | 
			
		||||
    "notifications": "Bildirimler"
 | 
			
		||||
}
 | 
			
		||||
@ -1,8 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "Події календаря",
 | 
			
		||||
    "defaultnotificationtime": "Час сповіщень за-замовчуванням",
 | 
			
		||||
    "errorloadevent": "Помилка завантаження події.",
 | 
			
		||||
    "errorloadevents": "Помилка завантаження подій.",
 | 
			
		||||
    "noevents": "Наразі, заплановані активності відсутні",
 | 
			
		||||
    "notifications": "Повідомлення"
 | 
			
		||||
}
 | 
			
		||||
@ -1,4 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "noevents": "没有事件",
 | 
			
		||||
    "notifications": "通知"
 | 
			
		||||
}
 | 
			
		||||
@ -1,7 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "calendarevents": "行事曆",
 | 
			
		||||
    "errorloadevent": "載入事件時出現錯誤",
 | 
			
		||||
    "errorloadevents": "載入事件時出現錯誤",
 | 
			
		||||
    "noevents": "沒有事件",
 | 
			
		||||
    "notifications": "通知"
 | 
			
		||||
}
 | 
			
		||||
@ -1,11 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "الأنشطة",
 | 
			
		||||
    "duedate": "تاريخ تقديم مهمة",
 | 
			
		||||
    "errornocompetenciesfound": "لا يوجد أي قدرات موجودة",
 | 
			
		||||
    "myplans": "خططي للتعلم",
 | 
			
		||||
    "nocompetencies": "لا يوجد أي قدرات",
 | 
			
		||||
    "path": "مسار",
 | 
			
		||||
    "progress": "تقدّم الطالب",
 | 
			
		||||
    "status": "الحالة",
 | 
			
		||||
    "template": "قالب"
 | 
			
		||||
}
 | 
			
		||||
@ -1,16 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Дейности",
 | 
			
		||||
    "competencies": "Компетенции",
 | 
			
		||||
    "coursecompetencies": "Компетенции на курса",
 | 
			
		||||
    "duedate": "Краен срок",
 | 
			
		||||
    "learningplans": "Учебни планове",
 | 
			
		||||
    "myplans": "Моите учебни планове",
 | 
			
		||||
    "noplanswerecreated": "Не бяха създадени учебни планове.",
 | 
			
		||||
    "path": "Път",
 | 
			
		||||
    "planstatusactive": "Активен",
 | 
			
		||||
    "planstatuscomplete": "Завършен",
 | 
			
		||||
    "planstatusdraft": "Чернова",
 | 
			
		||||
    "status": "Състояние",
 | 
			
		||||
    "template": "Шаблон",
 | 
			
		||||
    "userplans": "Учебни планове"
 | 
			
		||||
}
 | 
			
		||||
@ -1,45 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Activitats",
 | 
			
		||||
    "competencies": "Competències",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "Competències que més sovint no s'assoleixen en aquest curs",
 | 
			
		||||
    "coursecompetencies": "Competències del curs",
 | 
			
		||||
    "crossreferencedcompetencies": "Competències referenciades",
 | 
			
		||||
    "duedate": "Data de venciment",
 | 
			
		||||
    "errornocompetenciesfound": "No s'han trobat competències",
 | 
			
		||||
    "evidence": "Evidència",
 | 
			
		||||
    "evidence_competencyrule": "La regla de competència s'ha satisfet.",
 | 
			
		||||
    "evidence_coursecompleted": "S'ha completat el curs '{{$a}}'.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "S'ha completat l'activitat '{{$a}}'.",
 | 
			
		||||
    "evidence_courserestored": "La qualificació ha estat restaurada juntament amb el curs «{{$a}}».",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "S'ha enllaçat l'evidència de l'aprenentatge previ «{{$a}}».",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "S'ha desenllaçat l'evidència de l'aprenentatge previ «{{$a}}».",
 | 
			
		||||
    "evidence_manualoverride": "S'ha configurat de forma manual la qualificació de la competència.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "S'ha configurat de forma manual la qualificació de la competència al curs «{{$a}}».",
 | 
			
		||||
    "evidence_manualoverrideinplan": "S'ha configurat de forma manual la qualificació de la competència al pla d'aprenentatge «{{$a}}».",
 | 
			
		||||
    "learningplancompetencies": "Competències del pla d'aprenentatge",
 | 
			
		||||
    "learningplans": "Plans d'aprenentatge",
 | 
			
		||||
    "myplans": "Els meus plans d'aprenentatge",
 | 
			
		||||
    "noactivities": "Cap activitat",
 | 
			
		||||
    "nocompetencies": "No s'han creat competències en aquest marc.",
 | 
			
		||||
    "nocrossreferencedcompetencies": "No hi ha competències amb referències a aquesta.",
 | 
			
		||||
    "noevidence": "Cap evidència",
 | 
			
		||||
    "noplanswerecreated": "No s'ha creat cap pla d'aprenentatge.",
 | 
			
		||||
    "path": "Ruta:",
 | 
			
		||||
    "planstatusactive": "Activa",
 | 
			
		||||
    "planstatuscomplete": "Completat",
 | 
			
		||||
    "planstatusdraft": "Esborrany",
 | 
			
		||||
    "planstatusinreview": "En revisió",
 | 
			
		||||
    "planstatuswaitingforreview": "S'està esperant la revisió",
 | 
			
		||||
    "proficient": "Superada",
 | 
			
		||||
    "progress": "Progrés",
 | 
			
		||||
    "rating": "Qualificació",
 | 
			
		||||
    "reviewstatus": "Estat de la revisió",
 | 
			
		||||
    "status": "Estat",
 | 
			
		||||
    "template": "Plantilla de pla d'aprenentatge",
 | 
			
		||||
    "usercompetencystatus_idle": "Inactiu",
 | 
			
		||||
    "usercompetencystatus_inreview": "En revisió",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "Esperant a ser revisat",
 | 
			
		||||
    "userplans": "Plans d'aprenentatge",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "{{$a.x}} de {{$a.y}} competències superades",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "Heu superat {{$a.x}} de {{$a.y}} competències en aquest curs."
 | 
			
		||||
}
 | 
			
		||||
@ -1,47 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Činnosti",
 | 
			
		||||
    "competencies": "Kompetence",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "Kompetence v tomto kurzu často nejsou dosaženy",
 | 
			
		||||
    "coursecompetencies": "Kompetence kurzu",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "Hodnocení kompetencí v tomto kurzu nemají vliv na studijní plány.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "Hodnocení kompetencí v tomto kurzu jsou okamžitě aktualizovány v studijních plánech.",
 | 
			
		||||
    "crossreferencedcompetencies": "Průřezové kompetence",
 | 
			
		||||
    "duedate": "Termín odevzdání",
 | 
			
		||||
    "errornocompetenciesfound": "Nebyly nalezeny žádné kompetence",
 | 
			
		||||
    "evidence": "Evidence",
 | 
			
		||||
    "evidence_competencyrule": "Bylo splněno pravidlo kompetence.",
 | 
			
		||||
    "evidence_coursecompleted": "Kurz \"{{$a}}\" byl dokončen.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "Byla dokončena aktivita \"{{$a}}\".",
 | 
			
		||||
    "evidence_courserestored": "Hodnocení bylo obnoveno spolu s \"{{$a}}\".",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "Evidence předchozího studia \"{{$a}}\" byla připojena.",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "Evidence předchozího studia \"{{$a}}\" byla odpojena.",
 | 
			
		||||
    "evidence_manualoverride": "Hodnocení kompetence bylo nastaveno manuálně.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "Hodnocení kompetence bylo nastaveno manuálně v kurzu \"{{$a}}\".",
 | 
			
		||||
    "evidence_manualoverrideinplan": "Hodnocení kompetence bylo nastaveno manuálně ve studijním plánu \"{{$a}}\".",
 | 
			
		||||
    "learningplancompetencies": "Kompetence studijního plánu",
 | 
			
		||||
    "learningplans": "Studijní plány",
 | 
			
		||||
    "myplans": "Mé studijní plány",
 | 
			
		||||
    "noactivities": "Žádné činnosti",
 | 
			
		||||
    "nocompetencies": "V tomto rámci nebyly vytvořeny žádné kompetence.",
 | 
			
		||||
    "nocrossreferencedcompetencies": "K této kompetenci nebyly spojeny další průřezové kompetence.",
 | 
			
		||||
    "noevidence": "Bez záznamu",
 | 
			
		||||
    "noplanswerecreated": "Nebyly vytvořeny žádné studijní plány.",
 | 
			
		||||
    "path": "Cesta:",
 | 
			
		||||
    "planstatusactive": "Aktivní",
 | 
			
		||||
    "planstatuscomplete": "Dokončeno",
 | 
			
		||||
    "planstatusdraft": "Návrh",
 | 
			
		||||
    "planstatusinreview": "V revizi",
 | 
			
		||||
    "planstatuswaitingforreview": "Čekání na revizi",
 | 
			
		||||
    "proficient": "Splněno",
 | 
			
		||||
    "progress": "Pokrok",
 | 
			
		||||
    "rating": "Hodnocení",
 | 
			
		||||
    "reviewstatus": "Stav revize",
 | 
			
		||||
    "status": "Stav",
 | 
			
		||||
    "template": "Šablona studijního plánu",
 | 
			
		||||
    "usercompetencystatus_idle": "Nečinný",
 | 
			
		||||
    "usercompetencystatus_inreview": "V revizi",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "Čekání na revizi",
 | 
			
		||||
    "userplans": "Studijní plány",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "máte splněno {{$a.x}} z {{$a.y}} kompetencí",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "V tomto kurzu máte splněno {{$a.x}} z {{$a.y}} kompetencí."
 | 
			
		||||
}
 | 
			
		||||
@ -1,47 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Aktiviteter",
 | 
			
		||||
    "competencies": "Kompetencer",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "Kompetencer der ofte \"halter\" på dette kursus",
 | 
			
		||||
    "coursecompetencies": "Kursuskompetencer",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "Kompetencebedømmelser på dette kursus påvirker ikke læringsplaner.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "Kompetencebedømmelser på dette kursus opdateres straks i læringsplaner.",
 | 
			
		||||
    "crossreferencedcompetencies": "Kryds-refererede kompetencer",
 | 
			
		||||
    "duedate": "Afleveringsdato",
 | 
			
		||||
    "errornocompetenciesfound": "Ingen kompetencer fundet",
 | 
			
		||||
    "evidence": "Vidnesbyrd",
 | 
			
		||||
    "evidence_competencyrule": "Kompetencereglen blev opfyldt.",
 | 
			
		||||
    "evidence_coursecompleted": "Kurset \"{{$a}}\" var fuldført.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "Aktiviteten \"{{$a}}\" var fuldført.",
 | 
			
		||||
    "evidence_courserestored": "Vurderingen blev gendannet sammen med kurset \"{{$a}}\".",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "Vidnesbyrd om forudgående læring \"{{$a}}\" var linket.",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "Link til vidnesbyrd om forudgående læring \"{{$a}}\" var fjernet.",
 | 
			
		||||
    "evidence_manualoverride": "Kompetencevurderingen blev foretaget manuelt.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "Kompetencevurderingen blev foretaget manuelt på kurset \"{{$a}}\".",
 | 
			
		||||
    "evidence_manualoverrideinplan": "Kompetencevurderingen blev foretaget manuelt i læringsplanen \"{{$a}}\".",
 | 
			
		||||
    "learningplancompetencies": "Læringsplankompetencer",
 | 
			
		||||
    "learningplans": "Læringsplaner",
 | 
			
		||||
    "myplans": "Mine læringsplaner",
 | 
			
		||||
    "noactivities": "Ingen aktiviteter",
 | 
			
		||||
    "nocompetencies": "Ingen kompetencer er oprettet i denne ramme.",
 | 
			
		||||
    "nocrossreferencedcompetencies": "Ingen andre kompetencer er krydsrefereret til denne kompetence.",
 | 
			
		||||
    "noevidence": "Ingen vidnesbyrd",
 | 
			
		||||
    "noplanswerecreated": "Der blev ikke oprettet nogen læringsplaner.",
 | 
			
		||||
    "path": "Sti:",
 | 
			
		||||
    "planstatusactive": "Aktiv",
 | 
			
		||||
    "planstatuscomplete": "Fuldført",
 | 
			
		||||
    "planstatusdraft": "Kladde",
 | 
			
		||||
    "planstatusinreview": "I gennemsyn",
 | 
			
		||||
    "planstatuswaitingforreview": "Venter på gennemsyn",
 | 
			
		||||
    "proficient": "Færdighedsniveau",
 | 
			
		||||
    "progress": "Progression",
 | 
			
		||||
    "rating": "Bedømmelse",
 | 
			
		||||
    "reviewstatus": "Status på gennemsyn",
 | 
			
		||||
    "status": "Status",
 | 
			
		||||
    "template": "Læringsplanskabelon",
 | 
			
		||||
    "usercompetencystatus_idle": "Tom",
 | 
			
		||||
    "usercompetencystatus_inreview": "I gennemsyn",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "Afventer gennemsyn",
 | 
			
		||||
    "userplans": "Læringsplaner",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "{{$a.x}} ud af {{$a.y}} kompetencer er på færdighedsniveau",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "Du har opnået færdighedsniveau {{$a.x}} ud af {{$a.y}} kompetencer på dette kursus."
 | 
			
		||||
}
 | 
			
		||||
@ -1,47 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Aktivitäten",
 | 
			
		||||
    "competencies": "Kompetenzen",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "Meist ungeübte Kompetenzen in diesem Kurs",
 | 
			
		||||
    "coursecompetencies": "Kurskompetenzen",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "Kompetenzbewertungen in diesem Kurs beeinflussen keine Lernpläne.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "Kompetenzbewertungen in diesem Kurs werden sofort in den Lernplänen aktualisiert.",
 | 
			
		||||
    "crossreferencedcompetencies": "Querverwiesene Kompetenzen",
 | 
			
		||||
    "duedate": "Fälligkeitsdatum",
 | 
			
		||||
    "errornocompetenciesfound": "Keine Kompetenzen gefunden",
 | 
			
		||||
    "evidence": "Beleg",
 | 
			
		||||
    "evidence_competencyrule": "Die Kompetenzregel wurde erfüllt.",
 | 
			
		||||
    "evidence_coursecompleted": "Der Kurs '{{$a}}' wurde abgeschlossen.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "Die Aktivität '{{$a}}' wurde abgeschlossen.",
 | 
			
		||||
    "evidence_courserestored": "Die Bewertung wurde zusammen mit dem Kurs '{{$a}}' wiederhergestellt.",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "Der Beleg über Vorkenntnisse '{{$a}}' wurde verlinkt.",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "Der Beleg über Vorkenntnisse '{{$a}}' wurde freigegeben.",
 | 
			
		||||
    "evidence_manualoverride": "Die Kompetenzbewertung wurde manuell vergeben.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "Die Kompetenzbewertung wurde manuell im Kurs '{{$a}}' vorgenommen.",
 | 
			
		||||
    "evidence_manualoverrideinplan": "Die Kompetenzbewertung wurde manuell im Lernplan '{{$a}}' vorgenommen.",
 | 
			
		||||
    "learningplancompetencies": "Kompetenzen des Lernplans",
 | 
			
		||||
    "learningplans": "Lernpläne",
 | 
			
		||||
    "myplans": "Meine Lernpläne",
 | 
			
		||||
    "noactivities": "Keine Aktivitäten",
 | 
			
		||||
    "nocompetencies": "Für diesen Kompetenzrahmen wurden keine Kompetenzen angelegt.",
 | 
			
		||||
    "nocrossreferencedcompetencies": "Keine anderen Kompetenzen wurden zu dieser Kompetenz referiert.",
 | 
			
		||||
    "noevidence": "Keine Belege",
 | 
			
		||||
    "noplanswerecreated": "Bisher sind keine Lernpläne angelegt.",
 | 
			
		||||
    "path": "Pfad:",
 | 
			
		||||
    "planstatusactive": "Aktiv",
 | 
			
		||||
    "planstatuscomplete": "Vollständig",
 | 
			
		||||
    "planstatusdraft": "Entwurf",
 | 
			
		||||
    "planstatusinreview": "Überprüfung läuft",
 | 
			
		||||
    "planstatuswaitingforreview": "Überprüfung abwarten",
 | 
			
		||||
    "proficient": "Erfahren",
 | 
			
		||||
    "progress": "Fortschritt",
 | 
			
		||||
    "rating": "Wertung",
 | 
			
		||||
    "reviewstatus": "Überprüfungsstatus",
 | 
			
		||||
    "status": "Status",
 | 
			
		||||
    "template": "Lernplanvorlage",
 | 
			
		||||
    "usercompetencystatus_idle": "Abwarten",
 | 
			
		||||
    "usercompetencystatus_inreview": "Überprüfung läuft",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "Überprüfung abwarten",
 | 
			
		||||
    "userplans": "Lernpläne",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "{{$a.x}} von {{$a.y}} Kompetenzen sind eingeübt",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "Sie sind in {{$a.x}} von {{$a.y}} Kompetenzen geübt."
 | 
			
		||||
}
 | 
			
		||||
@ -1,47 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Aktivitäten",
 | 
			
		||||
    "competencies": "Kompetenzen",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "Meist ungeübte Kompetenzen in diesem Kurs",
 | 
			
		||||
    "coursecompetencies": "Kurskompetenzen",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "Kompetenzbewertungen in diesem Kurs beeinflussen keine Lernpläne.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "Kompetenzbewertungen in diesem Kurs werden sofort in den Lernplänen aktualisiert.",
 | 
			
		||||
    "crossreferencedcompetencies": "Querverwiesene Kompetenzen",
 | 
			
		||||
    "duedate": "Fälligkeitsdatum",
 | 
			
		||||
    "errornocompetenciesfound": "Keine Kompetenzen gefunden",
 | 
			
		||||
    "evidence": "Beleg",
 | 
			
		||||
    "evidence_competencyrule": "Die Kompetenzregel wurde erfüllt.",
 | 
			
		||||
    "evidence_coursecompleted": "Der Kurs '{{$a}}' wurde abgeschlossen.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "Die Aktivität '{{$a}}' wurde abgeschlossen.",
 | 
			
		||||
    "evidence_courserestored": "Die Bewertung wurde zusammen mit dem Kurs '{{$a}}' wiederhergestellt.",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "Der Beleg über Vorkenntnisse '{{$a}}' wurde verlinkt.",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "Der Beleg über Vorkenntnisse '{{$a}}' wurde freigegeben.",
 | 
			
		||||
    "evidence_manualoverride": "Die Kompetenzbewertung wurde manuell vergeben.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "Die Kompetenzbewertung wurde manuell im Kurs '{{$a}}' vorgenommen.",
 | 
			
		||||
    "evidence_manualoverrideinplan": "Die Kompetenzbewertung wurde manuell im Lernplan '{{$a}}' vorgenommen.",
 | 
			
		||||
    "learningplancompetencies": "Kompetenzen des Lernplans",
 | 
			
		||||
    "learningplans": "Lernpläne",
 | 
			
		||||
    "myplans": "Meine Lernpläne",
 | 
			
		||||
    "noactivities": "Keine Aktivitäten",
 | 
			
		||||
    "nocompetencies": "Keine Kompetenzen",
 | 
			
		||||
    "nocrossreferencedcompetencies": "Keine anderen Kompetenzen wurden zu dieser Kompetenz referiert.",
 | 
			
		||||
    "noevidence": "Keine Belege",
 | 
			
		||||
    "noplanswerecreated": "Bisher sind keine Lernpläne angelegt.",
 | 
			
		||||
    "path": "Pfad:",
 | 
			
		||||
    "planstatusactive": "Aktiv",
 | 
			
		||||
    "planstatuscomplete": "Vollständig",
 | 
			
		||||
    "planstatusdraft": "Entwurf",
 | 
			
		||||
    "planstatusinreview": "Überprüfung läuft",
 | 
			
		||||
    "planstatuswaitingforreview": "Überprüfung abwarten",
 | 
			
		||||
    "proficient": "Erfahren",
 | 
			
		||||
    "progress": "Fortschritt",
 | 
			
		||||
    "rating": "Wertung",
 | 
			
		||||
    "reviewstatus": "Überprüfungsstatus",
 | 
			
		||||
    "status": "Status",
 | 
			
		||||
    "template": "Lernplanvorlage",
 | 
			
		||||
    "usercompetencystatus_idle": "Abwarten",
 | 
			
		||||
    "usercompetencystatus_inreview": "Überprüfung läuft",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "Überprüfung abwarten",
 | 
			
		||||
    "userplans": "Lernpläne",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "{{$a.x}} von {{$a.y}} Kompetenzen sind eingeübt",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "Sie sind in {{$a.x}} von {{$a.y}} Kompetenzen geübt."
 | 
			
		||||
}
 | 
			
		||||
@ -1,10 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Δραστηριότητες",
 | 
			
		||||
    "duedate": "Καταληκτική ημερομηνία",
 | 
			
		||||
    "errornocompetenciesfound": "Δεν βρέθηκαν ικανότητες",
 | 
			
		||||
    "nocompetencies": "Δεν βρέθηκαν ικανότητες",
 | 
			
		||||
    "path": "Διαδρομή",
 | 
			
		||||
    "progress": "Πρόοδος μαθητών",
 | 
			
		||||
    "status": "Επιτρέπεται η πρόσβαση στους επισκέπτες",
 | 
			
		||||
    "template": "Πρότυπο"
 | 
			
		||||
}
 | 
			
		||||
@ -1,47 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Actividades",
 | 
			
		||||
    "competencies": "Competencias",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "Las competencias que con más frecuencia no están dominadas en este curso",
 | 
			
		||||
    "coursecompetencies": "Competencias del curso",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "Las valoraciones de competencia en este curso no afectan a los planes de aprendizaje.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "Las valoraciones de competencia en este curso son actualizadas inmediatamente dentro de planes de aprendizaje.",
 | 
			
		||||
    "crossreferencedcompetencies": "Competencias con referencias-cruzadas",
 | 
			
		||||
    "duedate": "Fecha de entrega",
 | 
			
		||||
    "errornocompetenciesfound": "No se encontraron competencias",
 | 
			
		||||
    "evidence": "Evidencia",
 | 
			
		||||
    "evidence_competencyrule": "Se cumplió la regla de la competencia.",
 | 
			
		||||
    "evidence_coursecompleted": "El curso '{{$a}}' fue completado.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "La actividad '{{$a}}' fue completada.",
 | 
			
		||||
    "evidence_courserestored": "La valoración fue restaurada junto con el curso '{{$a}}'.",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "La evidencia de aprendizaje previo '{{$a}}' fue enlazada.",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "La evidencia de aprendizaje previo '{{$a}}' fue des-enlazada.",
 | 
			
		||||
    "evidence_manualoverride": "La valoración de competencia fue configurada manualmente.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "La valoración de competencia fue configurada manualmente en el curso '{{$a}}'.",
 | 
			
		||||
    "evidence_manualoverrideinplan": "La valoración de competencia fue configurada manualmente en el plan de aprendizaje '{{$a}}'.",
 | 
			
		||||
    "learningplancompetencies": "Competencias del plan de aprendizaje",
 | 
			
		||||
    "learningplans": "Planes de aprendizaje",
 | 
			
		||||
    "myplans": "Mis planes de aprendizaje",
 | 
			
		||||
    "noactivities": "Sin actividades",
 | 
			
		||||
    "nocompetencies": "No se han creado competencias en esta estructura.",
 | 
			
		||||
    "nocrossreferencedcompetencies": "No se han referenciado cruzadamente otras competencias con esta competencia.",
 | 
			
		||||
    "noevidence": "Sin evidencia",
 | 
			
		||||
    "noplanswerecreated": "No se crearon planes de aprendizaje.",
 | 
			
		||||
    "path": "Ruta:",
 | 
			
		||||
    "planstatusactive": "Activa/o",
 | 
			
		||||
    "planstatuscomplete": "Completo",
 | 
			
		||||
    "planstatusdraft": "Borrador",
 | 
			
		||||
    "planstatusinreview": "En revisión",
 | 
			
		||||
    "planstatuswaitingforreview": "Esperando para revisión",
 | 
			
		||||
    "proficient": "Dominio/pericia",
 | 
			
		||||
    "progress": "Progreso",
 | 
			
		||||
    "rating": "Valoración",
 | 
			
		||||
    "reviewstatus": "Revisar estatus",
 | 
			
		||||
    "status": "Estatus",
 | 
			
		||||
    "template": "Plantilla de plan de aprendizaje",
 | 
			
		||||
    "usercompetencystatus_idle": "desocupado",
 | 
			
		||||
    "usercompetencystatus_inreview": "En revisión",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "Esperando para revisión",
 | 
			
		||||
    "userplans": "Planes de aprendizaje",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "{{$a.x}} de un total de {{$a.y}} competencias se tienen dominadas",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "Usted es capaz/perito/experto en {{$a.x}} de un total de {{$a.y}} competencias en este curso."
 | 
			
		||||
}
 | 
			
		||||
@ -1,39 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Actividades",
 | 
			
		||||
    "competencies": "Competencias",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "Competencias que más a menudo no se superan en este curso",
 | 
			
		||||
    "coursecompetencies": "Competencias del curso",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "Las calificaciones de competencias de este curso no afectan los planes de aprendizaje.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "Las calificaciones de competencias en este curso actualizan de inmediato los planes de aprendizaje.",
 | 
			
		||||
    "crossreferencedcompetencies": "Competencias referenciadas",
 | 
			
		||||
    "duedate": "Fecha de entrega",
 | 
			
		||||
    "errornocompetenciesfound": "No se encontraron competencias",
 | 
			
		||||
    "evidence": "Evidencia",
 | 
			
		||||
    "evidence_coursecompleted": "El curso '{{$a}}' ha sido completado.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "La actividad '{{$a}}' ha sido completada.",
 | 
			
		||||
    "learningplancompetencies": "Competencias del plan de aprendizaje",
 | 
			
		||||
    "learningplans": "Planes de aprendizaje",
 | 
			
		||||
    "myplans": "Mis planes de aprendizaje",
 | 
			
		||||
    "noactivities": "Sin actividades",
 | 
			
		||||
    "nocompetencies": "No se han creado competencias para este marco.",
 | 
			
		||||
    "nocrossreferencedcompetencies": "No se han referenciado otras competencias a esta competencia.",
 | 
			
		||||
    "noevidence": "Sin evidencias",
 | 
			
		||||
    "path": "Ruta",
 | 
			
		||||
    "planstatusactive": "Activo",
 | 
			
		||||
    "planstatuscomplete": "Completado",
 | 
			
		||||
    "planstatusdraft": "Borrador",
 | 
			
		||||
    "planstatusinreview": "En revisión",
 | 
			
		||||
    "planstatuswaitingforreview": "Esperando revisión",
 | 
			
		||||
    "proficient": "Superada",
 | 
			
		||||
    "progress": "Avance",
 | 
			
		||||
    "rating": "Calificación",
 | 
			
		||||
    "reviewstatus": "Estado de la revisión",
 | 
			
		||||
    "status": "Estado",
 | 
			
		||||
    "template": "Plantilla",
 | 
			
		||||
    "usercompetencystatus_idle": "No activo",
 | 
			
		||||
    "usercompetencystatus_inreview": "En revision",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "Esperando revisión",
 | 
			
		||||
    "userplans": "Planes de aprendizaje",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "{{$a.x}} de {{$a.y}} competencias superadas",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "Has superado {{$a.x}} de las {{$a.y}} competencias del curso."
 | 
			
		||||
}
 | 
			
		||||
@ -1,47 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Jarduerak",
 | 
			
		||||
    "competencies": "Gaitasunak",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "Ikastaro honetan sarriago ez-gai diren gaitasunak",
 | 
			
		||||
    "coursecompetencies": "Ikastaroko gaitasunak",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "Ikastaro honetako gaitasunen kalifikazioek ez dute ikasketa-planean eragiten.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "Ikastaro honetan gaitasunen kalifikazioek ikasketa-planak berehala eguneratzen dituzte.",
 | 
			
		||||
    "crossreferencedcompetencies": "Erreferentzia gurutzatuko gaitasunak",
 | 
			
		||||
    "duedate": "Entregatze-data",
 | 
			
		||||
    "errornocompetenciesfound": "Ez da gaitasunik aurkitu",
 | 
			
		||||
    "evidence": "Ebidentzia",
 | 
			
		||||
    "evidence_competencyrule": "Gaitasun-araua bete da.",
 | 
			
		||||
    "evidence_coursecompleted": "'{{$a}}' ikastaroa osatu da.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "'{{$a}}' jarduera osatu da.",
 | 
			
		||||
    "evidence_courserestored": "Puntuazioak '{{$a}}' ikastaroarekin batera berreskuratu ziren.",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "Aurretik ikasitakoaren '{{$a}}' ebidentzia estekatu da.",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "Aurretik ikasitakoaren '{{$a}}' ebidentziaren esteka kendu da.",
 | 
			
		||||
    "evidence_manualoverride": "Gaitasunen puntuazioa eskuz ezarri da.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "Gaitasunen puntuazioa eskuz ezarri da '{{$a}}' ikastaroan.",
 | 
			
		||||
    "evidence_manualoverrideinplan": "Gaitasunen puntuazioa eskuz ezarri da '{{$a}}' ikasketa-planean.",
 | 
			
		||||
    "learningplancompetencies": "Ikasketa-planaren gaitasunak",
 | 
			
		||||
    "learningplans": "Ikasketa-planak",
 | 
			
		||||
    "myplans": "Nire ikasketa-planak",
 | 
			
		||||
    "noactivities": "Ez dago jarduerarik",
 | 
			
		||||
    "nocompetencies": "Gaitasunik ez",
 | 
			
		||||
    "nocrossreferencedcompetencies": "Ez dago gaitasun honekiko erreferentzia gurutzatua duen beste gaitasunik.",
 | 
			
		||||
    "noevidence": "Ez dago ebidentziarik",
 | 
			
		||||
    "noplanswerecreated": "Ez da ikasketa-planik sortu.",
 | 
			
		||||
    "path": "Bidea:",
 | 
			
		||||
    "planstatusactive": "Aktiboa",
 | 
			
		||||
    "planstatuscomplete": "Osatu",
 | 
			
		||||
    "planstatusdraft": "Zirriborroa",
 | 
			
		||||
    "planstatusinreview": "Berrikusten",
 | 
			
		||||
    "planstatuswaitingforreview": "Berrikusketaren zain",
 | 
			
		||||
    "proficient": "Gai",
 | 
			
		||||
    "progress": "Aurrerapena",
 | 
			
		||||
    "rating": "Puntuazioa",
 | 
			
		||||
    "reviewstatus": "Berrikusi egora",
 | 
			
		||||
    "status": "Egoera",
 | 
			
		||||
    "template": "Ikasketa-planerako txantiloia",
 | 
			
		||||
    "usercompetencystatus_idle": "Ez dago aktiboa",
 | 
			
		||||
    "usercompetencystatus_inreview": "Berrikusten",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "Berrikusketaren zain",
 | 
			
		||||
    "userplans": "Ikasketa-planak",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "{{$a.y}} gaitasunetik {{$a.x}} gai dira",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "Ikastaro honetako {{$a.y}} gaitasunetik {{$a.x}}-tan zara gai."
 | 
			
		||||
}
 | 
			
		||||
@ -1,44 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "فعالیتها",
 | 
			
		||||
    "competencies": "شایستگیها",
 | 
			
		||||
    "coursecompetencies": "شایستگیهای درس",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "امتیازهای شایستگیها در این درس تاثیری در برنامههای یادگیری ندارند.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "امتیازهای شایستگیها در این درس بلافاصله در برنامههای یادگیری بهروز میشوند.",
 | 
			
		||||
    "crossreferencedcompetencies": "شایستگیهای دارای ارجاع متقابل",
 | 
			
		||||
    "duedate": "مهلت تحویل",
 | 
			
		||||
    "errornocompetenciesfound": "هیچ شایستگیای پیدا نشد",
 | 
			
		||||
    "evidence": "مدرک",
 | 
			
		||||
    "evidence_competencyrule": "شرط شایستگی برقرار شد.",
 | 
			
		||||
    "evidence_coursecompleted": "درس «{{$a}}» کامل شد.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "فعالیت «{{$a}}» کامل شد.",
 | 
			
		||||
    "evidence_courserestored": "امتیاز همراه با درس «{{$a}}» بازیابی شد.",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "مدرک یادگیری قبلی «{{$a}}» متصل شد.",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "مدرک یادگیری قبلی «{{$a}}» قطع اتصال شد.",
 | 
			
		||||
    "evidence_manualoverride": "امتیاز شایستگی بهطور دستی تعیین شد.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "امتیاز شایستگی بهطور دستی در درس «{{$a}}» تعیین شد.",
 | 
			
		||||
    "evidence_manualoverrideinplan": "امتیاز شایستگی بهطور دستی در برنامهٔ یادگیری «{{$a}}» تعیین شد.",
 | 
			
		||||
    "learningplancompetencies": "شایستگیهای برنامه یادگیری",
 | 
			
		||||
    "learningplans": "برنامههای آزموشی",
 | 
			
		||||
    "myplans": "برنامههای یادگیری من",
 | 
			
		||||
    "nocrossreferencedcompetencies": "هیچ شایستگی دیگری به این شایستگی بهطور متقابل ارجاع داده نشده است.",
 | 
			
		||||
    "noevidence": "بدون مدرک",
 | 
			
		||||
    "noplanswerecreated": "هیچ برنامهٔ یادگیریای ساخته نشده است.",
 | 
			
		||||
    "path": "مسیر:",
 | 
			
		||||
    "planstatusactive": "فعال",
 | 
			
		||||
    "planstatuscomplete": "کامل",
 | 
			
		||||
    "planstatusdraft": "پیشنویس",
 | 
			
		||||
    "planstatusinreview": "درحال بازبینی",
 | 
			
		||||
    "planstatuswaitingforreview": "در انتظار بازبینی",
 | 
			
		||||
    "proficient": "کسب مهارت",
 | 
			
		||||
    "progress": "پیشروی",
 | 
			
		||||
    "rating": "امتیاز",
 | 
			
		||||
    "reviewstatus": "بازبینی وضعیت",
 | 
			
		||||
    "status": "وضعیت",
 | 
			
		||||
    "template": "الگوی برنامه یادگیری",
 | 
			
		||||
    "usercompetencystatus_idle": "بی کار",
 | 
			
		||||
    "usercompetencystatus_inreview": "درحال بازبینی",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "در انتظار بازبینی",
 | 
			
		||||
    "userplans": "برنامههای یادگیری",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "در {{$a.x}} شایستگی از مجموع {{$a.y}} شایستگی مهارت کسب شده است",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "شما در {{$a.x}} شایستگی از {{$a.y}} شایستگی ماهر هستید."
 | 
			
		||||
}
 | 
			
		||||
@ -1,46 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Aktiviteetit",
 | 
			
		||||
    "competencies": "Pätevyydet",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "Seuraavia pätevyyksiä on saavutettu tällä kurssilla vähiten.",
 | 
			
		||||
    "coursecompetencies": "Kurssin pätevyydet",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "Tämän kurssin pätevyyksien arvioinnit eivät vaikuta opintosuunnitelmiin.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "Tämän kurssin pätevyyksien arvioinnit päivitetään heti opintosuunnitelmiin.",
 | 
			
		||||
    "crossreferencedcompetencies": "Ristiviitatut pätevyydet",
 | 
			
		||||
    "duedate": "Määräpäivä",
 | 
			
		||||
    "errornocompetenciesfound": "Pätevyyksiä ei löytynyt",
 | 
			
		||||
    "evidence": "Todiste",
 | 
			
		||||
    "evidence_competencyrule": "Osaamissääntökriteerit täytetty.",
 | 
			
		||||
    "evidence_coursecompleted": "Kurssi '{{$a}}'  suoritettiin",
 | 
			
		||||
    "evidence_coursemodulecompleted": "Aktiviteetti '{{$a}}' suoritettiin",
 | 
			
		||||
    "evidence_courserestored": "Osaamisenarviointi palautettiin kurssin '{{$a}}' palautuksen mukana.",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "Todiste aiemmasta osaamisesta '{{$a}}' on nyt linkitetty",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "Aiemman osaamisen  '{{$a}} linkitys on nyt purettu",
 | 
			
		||||
    "evidence_manualoverride": "Pätevyys arvioitiin manuaalisesti",
 | 
			
		||||
    "evidence_manualoverrideincourse": "Osaamisen arviointi asetettiin manuaalisesti kurssille '{{$a}}'.",
 | 
			
		||||
    "evidence_manualoverrideinplan": "Osaamisen arviointi asetettiin manuaalisesti opintosuunnitelmassa '{{$a}}'.",
 | 
			
		||||
    "learningplancompetencies": "Opintosuunnitelman pätevyydet",
 | 
			
		||||
    "learningplans": "Opintosuunnitelmat",
 | 
			
		||||
    "myplans": "Omat opintosuunnitelmani",
 | 
			
		||||
    "noactivities": "Ei aktiviteetteja",
 | 
			
		||||
    "nocompetencies": "Ei pätevyyksiä",
 | 
			
		||||
    "nocrossreferencedcompetencies": "Muita pätevyyksiä ei ole ristiviitattu tähän pätevyyteen.",
 | 
			
		||||
    "noevidence": "Ei todistetta",
 | 
			
		||||
    "noplanswerecreated": "Yhtään opintosuunnitelmaa ei luotu.",
 | 
			
		||||
    "path": "Polku",
 | 
			
		||||
    "planstatusactive": "Aktiivinen",
 | 
			
		||||
    "planstatuscomplete": "Valmis",
 | 
			
		||||
    "planstatusdraft": "Luonnos",
 | 
			
		||||
    "planstatusinreview": "Arvioitavana",
 | 
			
		||||
    "planstatuswaitingforreview": "Odottaa arviointia",
 | 
			
		||||
    "proficient": "Pätevä",
 | 
			
		||||
    "progress": "Eteneminen",
 | 
			
		||||
    "rating": "Arviointi",
 | 
			
		||||
    "status": "Osaamismerkin status",
 | 
			
		||||
    "template": "Opintosuunnitelman viitekehys",
 | 
			
		||||
    "usercompetencystatus_idle": "Turha",
 | 
			
		||||
    "usercompetencystatus_inreview": "Arvioitavana",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "Odottaa arviointia",
 | 
			
		||||
    "userplans": "Opintosuunnitelmat",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "{{$a.x}} kaikkiaan {{$a.y}}:sta pätevyydestä on suoritettu",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "Olet suorittanut {{$a.x}} kaikkiaan {{$a.y}}:sta pätevyydestä tällä kurssilla."
 | 
			
		||||
}
 | 
			
		||||
@ -1,47 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Activités",
 | 
			
		||||
    "competencies": "Compétences",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "Compétences non atteintes le plus souvent dans ce cours",
 | 
			
		||||
    "coursecompetencies": "Compétences du cours",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "Les évaluations de compétences de ce cours n'ont pas d'influence sur les plans de formation.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "Les évaluations de compétences de ce cours sont immédiatement reportées dans les plans de formation.",
 | 
			
		||||
    "crossreferencedcompetencies": "Compétences transversales",
 | 
			
		||||
    "duedate": "Délai d'achèvement",
 | 
			
		||||
    "errornocompetenciesfound": "Aucune compétence trouvée",
 | 
			
		||||
    "evidence": "Preuve",
 | 
			
		||||
    "evidence_competencyrule": "La règle pour la compétence a été atteinte.",
 | 
			
		||||
    "evidence_coursecompleted": "Le cours « {{$a}} » a été achevé.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "L'activité « {{$a}} » a été achevée.",
 | 
			
		||||
    "evidence_courserestored": "L'évaluation a été restaurée avec le cours « {{$a}} ».",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "La preuve d'acquis « {{$a}} » a été liée.",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "La preuve d'acquis « {{$a}} » a été déliée.",
 | 
			
		||||
    "evidence_manualoverride": "L'évaluation de la compétence a été donnée manuellement.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "L'évaluation de la compétence a été donnée manuellement dans le cours « {{$a}} ».",
 | 
			
		||||
    "evidence_manualoverrideinplan": "L'évaluation de la compétence a été donnée manuellement dans le plan « {{$a}} ».",
 | 
			
		||||
    "learningplancompetencies": "Compétences du plan de formation",
 | 
			
		||||
    "learningplans": "Plans de formation",
 | 
			
		||||
    "myplans": "Mes plans de formation",
 | 
			
		||||
    "noactivities": "Aucune activité",
 | 
			
		||||
    "nocompetencies": "Aucune compétence n'a été créée dans ce référentiel.",
 | 
			
		||||
    "nocrossreferencedcompetencies": "Aucune autre compétence n'est transversale pour cette compétence.",
 | 
			
		||||
    "noevidence": "Aucune preuve d'acquis",
 | 
			
		||||
    "noplanswerecreated": "Aucun plan de formation n'a été créé.",
 | 
			
		||||
    "path": "Chemin :",
 | 
			
		||||
    "planstatusactive": "Actif",
 | 
			
		||||
    "planstatuscomplete": "Achevé",
 | 
			
		||||
    "planstatusdraft": "Brouillon",
 | 
			
		||||
    "planstatusinreview": "En cours de validation",
 | 
			
		||||
    "planstatuswaitingforreview": "En attente de validation",
 | 
			
		||||
    "proficient": "Compétence acquise",
 | 
			
		||||
    "progress": "Progrès",
 | 
			
		||||
    "rating": "Évaluation",
 | 
			
		||||
    "reviewstatus": "Statut de validation",
 | 
			
		||||
    "status": "Statut",
 | 
			
		||||
    "template": "Modèle de plan de formation",
 | 
			
		||||
    "usercompetencystatus_idle": "En suspens",
 | 
			
		||||
    "usercompetencystatus_inreview": "En cours de validation",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "En attente de validation",
 | 
			
		||||
    "userplans": "Plans de formation",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "{{$a.x}} compétences sur {{$a.y}} sont acquises",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "Vous avez acquis {{$a.x}} compétences sur {{$a.y}} dans ce cours."
 | 
			
		||||
}
 | 
			
		||||
@ -1,46 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "פעילויות",
 | 
			
		||||
    "competencies": "מיומנויות",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "מיומנויות בהן אינכם בקיאים בקורס זה",
 | 
			
		||||
    "coursecompetencies": "מיומנויות הקורס",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "השלמת מיומנויות בקורס זה לא מתעדכנות בתוכניות־הלימוד",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "מצב רכישת מיומנות כתוצאה מהשלמת פעילות בקורס, מתעדכן באופן מידי בתוכניות־הלימוד.",
 | 
			
		||||
    "crossreferencedcompetencies": "מקושר למיומנויות",
 | 
			
		||||
    "duedate": "תאריך סופי",
 | 
			
		||||
    "evidence": "ראיה לבקיאות",
 | 
			
		||||
    "evidence_competencyrule": "תנאי המיומנות נענה",
 | 
			
		||||
    "evidence_coursecompleted": "הקורס '{{$a}}' הושלם.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "הפעילות '{{$a}}' הושלמה.",
 | 
			
		||||
    "evidence_courserestored": "הניקוד שוחזר יחד עם הקורס '{{$a}}'.",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "קישור לאישור על לימוד מקדים של '{{$a}}' צורף.",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "קישור לאישור על לימוד מקדים של '{{$a}}' הוסר.",
 | 
			
		||||
    "evidence_manualoverride": "מצב השלמת המיומנות עודכן באופן ידני.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "מצב השלמת המיומנות עודכן באופן ידני בקורס '{{$a}}'.",
 | 
			
		||||
    "evidence_manualoverrideinplan": "מצב השלמת המיומנות עודכן באופן ידני בתוכנית־הלימוד '{{$a}}'.",
 | 
			
		||||
    "learningplancompetencies": "מיומנויות תוכנית־הלימוד",
 | 
			
		||||
    "learningplans": "תוכניות־לימוד",
 | 
			
		||||
    "myplans": "תוכניות הלימודים שלי",
 | 
			
		||||
    "noactivities": "לא מקושר לאף פעילות בקורס",
 | 
			
		||||
    "nocompetencies": "טרם נוצרה מיומנות כלשהי באוסף־מיומנויות זה.",
 | 
			
		||||
    "nocrossreferencedcompetencies": "אף מיומנות לא מקושרת למיומנות זו.",
 | 
			
		||||
    "noevidence": "טרם צורפה ראיה לבקיאות",
 | 
			
		||||
    "noplanswerecreated": "טרם נוצרו תוכניות־לימוד.",
 | 
			
		||||
    "path": "נתיב",
 | 
			
		||||
    "planstatusactive": "פעיל",
 | 
			
		||||
    "planstatuscomplete": "הושלם",
 | 
			
		||||
    "planstatusdraft": "טיוטה",
 | 
			
		||||
    "planstatusinreview": "בסקירה",
 | 
			
		||||
    "planstatuswaitingforreview": "מחכה לסקירה",
 | 
			
		||||
    "proficient": "בקיאות",
 | 
			
		||||
    "progress": "התקדמות",
 | 
			
		||||
    "rating": "דרוג",
 | 
			
		||||
    "reviewstatus": "סקירת מצב",
 | 
			
		||||
    "status": "מצב",
 | 
			
		||||
    "template": "תבנית תוכנית־לימוד",
 | 
			
		||||
    "usercompetencystatus_idle": "לא־פעיל",
 | 
			
		||||
    "usercompetencystatus_inreview": "בסקירה",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "מחכה לסקירה",
 | 
			
		||||
    "userplans": "תוכניות־לימוד",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "בקיאות ב {{$a.x}} מיומנויות מתוך {{$a.y}}",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "רכשתם בקיאות ב {{$a.x}} מתוך {{$a.y}} המיומנויות בקורס זה."
 | 
			
		||||
}
 | 
			
		||||
@ -1,16 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Aktivnosti",
 | 
			
		||||
    "competencies": "Kompetencije",
 | 
			
		||||
    "duedate": "Rok predaje",
 | 
			
		||||
    "evidence": "Dokaz",
 | 
			
		||||
    "evidence_coursecompleted": "Kolegij '{{$a}}' je dovršen.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "Aktivnost '{{$a}}' je dovršena.",
 | 
			
		||||
    "path": "Putanja",
 | 
			
		||||
    "planstatusactive": "Aktivno",
 | 
			
		||||
    "planstatuscomplete": "Dovršeno",
 | 
			
		||||
    "planstatusdraft": "Nacrt",
 | 
			
		||||
    "progress": "Napredak studenta",
 | 
			
		||||
    "rating": "Ocjena",
 | 
			
		||||
    "status": "Status",
 | 
			
		||||
    "template": "Predložak"
 | 
			
		||||
}
 | 
			
		||||
@ -1,46 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "activities": "Tevékenységek",
 | 
			
		||||
    "competencies": "Készségek",
 | 
			
		||||
    "competenciesmostoftennotproficientincourse": "A kurzusban leginkább eredménytelen készségek",
 | 
			
		||||
    "coursecompetencies": "Kurzuskészségek",
 | 
			
		||||
    "coursecompetencyratingsarenotpushedtouserplans": "A kurzus készségbesorolásai nem érintik a tanulási terveket.",
 | 
			
		||||
    "coursecompetencyratingsarepushedtouserplans": "A kurzus készségbesorolásai azonnal frissülnek a tanulási tervekben.",
 | 
			
		||||
    "crossreferencedcompetencies": "Kereszthivatkozott készségek",
 | 
			
		||||
    "duedate": "Esedékesség",
 | 
			
		||||
    "evidence": "Bizonyíték",
 | 
			
		||||
    "evidence_competencyrule": "A készséghez tartozó szabály teljesítve.",
 | 
			
		||||
    "evidence_coursecompleted": "'{{$a}}'  kurzus teljesítve.",
 | 
			
		||||
    "evidence_coursemodulecompleted": "'{{$a}}'  tevékenység teljesítve.",
 | 
			
		||||
    "evidence_courserestored": "A besorolás a(z)  '{{$a}}' kurzussal együtt helyreállt..",
 | 
			
		||||
    "evidence_evidenceofpriorlearninglinked": "Előtanulmányok '{{$a}}'  bizonyítéka összekapcsolva.",
 | 
			
		||||
    "evidence_evidenceofpriorlearningunlinked": "Előtanulmányok '{{$a}}'  bizonyítéka szétválasztva.",
 | 
			
		||||
    "evidence_manualoverride": "Készségbesorolás kézzel beállítva.",
 | 
			
		||||
    "evidence_manualoverrideincourse": "Készségbesorolás '{{$a}}' kurzusban kézzel beállítva.",
 | 
			
		||||
    "evidence_manualoverrideinplan": "Készségbesorolás '{{$a}}' tanulási tervben kézzel beállítva.",
 | 
			
		||||
    "learningplancompetencies": "Tanulási tervhez tartozó készségek",
 | 
			
		||||
    "learningplans": "Tanulási tervek",
 | 
			
		||||
    "myplans": "Tanulási terveim",
 | 
			
		||||
    "noactivities": "Nincs tevékenység",
 | 
			
		||||
    "nocompetencies": "A keretben nem jött létre készség.",
 | 
			
		||||
    "nocrossreferencedcompetencies": "A készséghez kereszthivatkozással nem kapcsolódik más készség.",
 | 
			
		||||
    "noevidence": "Nincs bizonyíték",
 | 
			
		||||
    "noplanswerecreated": "Nem jött létre tanulási terv.",
 | 
			
		||||
    "path": "Útvonal:",
 | 
			
		||||
    "planstatusactive": "Aktív",
 | 
			
		||||
    "planstatuscomplete": "Kész",
 | 
			
		||||
    "planstatusdraft": "Vázlat",
 | 
			
		||||
    "planstatusinreview": "Ellenőrzés alatt",
 | 
			
		||||
    "planstatuswaitingforreview": "Ellenőrzésre vár",
 | 
			
		||||
    "proficient": "Sikeres",
 | 
			
		||||
    "progress": "Előmenetel",
 | 
			
		||||
    "rating": "Besorolás",
 | 
			
		||||
    "reviewstatus": "Ellenőrzés állapota",
 | 
			
		||||
    "status": "Állapot",
 | 
			
		||||
    "template": "Tanulási tervsablon",
 | 
			
		||||
    "usercompetencystatus_idle": "Inaktív",
 | 
			
		||||
    "usercompetencystatus_inreview": "Ellenőrzés alatt",
 | 
			
		||||
    "usercompetencystatus_waitingforreview": "Ellenőrzésre vár",
 | 
			
		||||
    "userplans": "Tanulási tervek",
 | 
			
		||||
    "xcompetenciesproficientoutofy": "{{$a.x}} / {{$a.y}} készség eredményes",
 | 
			
		||||
    "xcompetenciesproficientoutofyincourse": "Ön a kurzusban  {{$a.y}} közül {{$a.x}} készség tekintetében eredményesnek bizonyul."
 | 
			
		||||
}
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user