Example #1
0
<?php

$lexemIds = db_getArray('select distinct lexemId from Meaning');
foreach ($lexemIds as $lexemId) {
    $t = Meaning::loadTree($lexemId);
    renumber($t, '');
}
/**************************************************************************/
function renumber($t, $prefix)
{
    if (empty($t)) {
        return;
    }
    if ($prefix) {
        $prefix .= '.';
    }
    foreach ($t as $i => $tuple) {
        $m = $tuple['meaning'];
        $m->breadcrumb = $prefix . ($i + 1);
        $m->save();
        renumber($tuple['children'], $m->breadcrumb);
    }
}
Example #2
0
            log_userLog("Edited lexem {$lexem->id} ({$lexem->form})");
            util_redirect("lexemEdit.php?lexemId={$lexem->id}");
        }
    } else {
        // Case 2: Validation failed
    }
    // Case 1-2: Page was submitted
    SmartyWrap::assign('variantIds', $variantIds);
    SmartyWrap::assign('meanings', Meaning::convertTree($meanings));
} else {
    // Case 3: First time loading this page
    foreach ($lexem->getLexemModels() as $lm) {
        $lm->loadInflectedFormMap();
    }
    SmartyWrap::assign('variantIds', $lexem->getVariantIds());
    SmartyWrap::assign('meanings', Meaning::loadTree($lexem->id));
}
$definitions = Definition::loadByLexemId($lexem->id);
foreach ($definitions as $def) {
    $def->internalRepAbbrev = AdminStringUtil::expandAbbreviations($def->internalRep, $def->sourceId);
    $def->htmlRepAbbrev = AdminStringUtil::htmlize($def->internalRepAbbrev, $def->sourceId);
}
$searchResults = SearchResult::mapDefinitionArray($definitions);
$definitionLexem = mb_strtoupper(AdminStringUtil::internalize($lexem->form, false));
$meaningTags = Model::factory('MeaningTag')->order_by_asc('value')->find_many();
$ss = $lexem->structStatus;
$oss = $original->structStatus;
// syntactic sugar
$canEdit = array('general' => util_isModerator(PRIV_EDIT), 'defStructured' => util_isModerator(PRIV_EDIT), 'description' => util_isModerator(PRIV_EDIT), 'form' => !$lexem->isLoc() || util_isModerator(PRIV_LOC), 'hyphenations' => $ss == Lexem::STRUCT_STATUS_IN_PROGRESS || util_isModerator(PRIV_EDIT), 'loc' => (int) util_isModerator(PRIV_LOC), 'meanings' => $ss == Lexem::STRUCT_STATUS_IN_PROGRESS || util_isModerator(PRIV_EDIT), 'paradigm' => util_isModerator(PRIV_EDIT), 'pronunciations' => $ss == Lexem::STRUCT_STATUS_IN_PROGRESS || util_isModerator(PRIV_EDIT), 'sources' => util_isModerator(PRIV_LOC | PRIV_EDIT), 'structStatus' => $oss == Lexem::STRUCT_STATUS_NEW || $oss == Lexem::STRUCT_STATUS_IN_PROGRESS || util_isModerator(PRIV_EDIT), 'tags' => util_isModerator(PRIV_LOC | PRIV_EDIT), 'variants' => $ss == Lexem::STRUCT_STATUS_IN_PROGRESS || util_isModerator(PRIV_EDIT));
// Prepare a list of models for each LexemModel, to be used in the paradigm drop-down.
$models = array();