本文整理汇总了PHP中Documents::findOne方法的典型用法代码示例。如果您正苦于以下问题:PHP Documents::findOne方法的具体用法?PHP Documents::findOne怎么用?PHP Documents::findOne使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Documents
的用法示例。
在下文中一共展示了Documents::findOne方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: editerAction
function editerAction()
{
$this->view->activite = $a = $this->_helper->Activite();
$this->assert(null, $a, 'editer', "Vous n'avez pas le droit d'éditer cettes activités");
$this->metas(array('DC.Title' => 'Éditer ' . $a->getIntitule()));
$this->view->model = $m = new Wtk_Form_Model('activite');
$t = new Unites();
$explicites = $a->findUnitesParticipantesExplicites();
$enum = array();
foreach ($t->fetchAll() as $unite) {
if ($this->assert(null, $unite, 'prevoir')) {
$enum[$unite->id] = $unite->getFullname();
}
}
$values = array();
foreach ($explicites as $unite) {
$values[] = $unite->id;
}
$i = $m->addEnum('unites', 'Unités participantes', $values, $enum, true);
// multiple
$m->addConstraintRequired($i);
$m->addString('intitule', 'Intitulé explicite', $a->intitule);
$m->addString('lieu', 'Lieu', $a->lieu);
$m->addDate('debut', 'Début', $a->debut, '%Y-%m-%d %H:%M');
$m->addDate('fin', 'Fin', $a->fin, '%Y-%m-%d %H:%M');
$m->addString('description', 'Description', $a->description);
$enum = array(null => 'Nouveau document');
foreach ($explicites->rewind()->current()->findDocuments() as $doc) {
$enum[$doc->id] = $doc->titre;
}
$t = $m->addTable('documents', "Pièces-jointes", array('document' => array('Enum', "Document", $enum), 'fichier' => array('File', "Fichier"), 'titre' => array('String', "Titre"), 'origin' => array('Integer')), false);
foreach ($a->findPiecesJointes() as $pj) {
$doc = $pj->findParentDocuments();
$titre = $doc->countLiaisons() > 1 ? null : $doc->titre;
$t->addRow($pj->document, null, $titre, $pj->id);
}
$t->addRow();
$m->addNewSubmission('enregistrer', 'Enregistrer');
if ($m->validate()) {
$t = new Activites();
$tu = new Unites();
$tpj = new PiecesJointes();
$td = new Documents();
$unites = call_user_func_array(array($tu, 'find'), (array) $m->unites);
$db = $a->getTable()->getAdapter();
$db->beginTransaction();
try {
$champs = array('debut', 'fin', 'lieu', 'description');
foreach ($champs as $champ) {
$a->{$champ} = $m->{$champ};
}
$a->updateUnites($unites);
$a->intitule = $m->intitule;
$a->slug = $t->createSlug($a->getIntituleComplet(), $a->slug);
$a->save();
$old = $a->findPiecesJointes();
$new = array();
/* création et mise à jour de pièce jointe */
foreach ($m->getInstance('documents') as $row) {
$d = null;
if ($row->document) {
$d = $td->findOne($row->document);
}
if ($row->origin) {
$pj = $tpj->findOne($row->origin);
if (!$d) {
$d = $pj->findParentDocuments();
}
} else {
$pj = new PieceJointe();
$pj->activite = $a->id;
if (!$d) {
$d = new Document();
}
}
/* On ne met à jour que les pièces jointes exclusives */
if (!$row->document) {
/* requérir un titre pour les documents exclusifs */
$if = $row->getChild('fichier');
if (!$row->titre && ($if->isUploaded() || $row->origin)) {
throw new Wtk_Form_Model_Exception("Titre obligatoire", $row->getChild('titre'));
}
$d->slug = $d->getTable()->createSlug($row->titre);
$d->titre = $row->titre;
if ($if->isUploaded()) {
$d->suffixe = end(explode('.', $row->fichier['name']));
$d->storeFile($if->getTempFilename());
} elseif (!$row->origin) {
continue;
}
/* ligne vide */
$d->save();
}
$pj->document = $d->id;
$pj->save();
$new[] = $pj->id;
}
// Nettoyage des documents supprimés
foreach ($old as $opj) {
if (in_array($opj->id, $new)) {
//.........这里部分代码省略.........