18 include_once (
'FDL/Class.Doc.php');
59 foreach ($this->transitions as $k => $trans) {
60 $this->dacls[$k] = array(
62 "description" => _($k)
67 if (isset($this->fromid)) $this->defProfFamId =
$this->fromid;
77 if ((!isset($this->doc)) || ($this->doc->id !=
$doc->id)) {
79 if ((
$doc->doctype !=
'C') && (
$doc->state ==
"")) {
97 if ($newstate !=
"") {
114 if ($newstate !=
"") {
115 $auserref = trim($this->
getValue($this->_Aid(
"_AFFECTREF", $newstate)));
117 $uid = $this->getAllocatedUser($newstate);
120 $lock = (trim($this->
getValue($this->_Aid(
"_AFFECTLOCK", $newstate))) ==
"yes");
121 $err = $this->doc->allocate($wuid,
"",
false, $lock);
123 $automail = (trim($this->
getValue($this->_Aid(
"_AFFECTMAIL", $newstate))) ==
"yes");
125 include_once (
"FDL/mailcard.php");
127 if (!
$to) addWarningMsg(sprintf(_(
"%s has no email address") , $this->
getTitle(
$uid)));
129 $subject = sprintf(_(
"allocation for %s document") , $this->doc->title);
130 $err =
sendCard(
$action, $this->doc->id,
$to,
"",
$subject,
"",
true, $commentaction,
"",
"",
"htmlnotif");
131 if (
$err !=
"") addWarningMsg(
$err);
136 }
else $err = $this->doc->unallocate(
"",
false);
141 private function getAllocatedUser($newstate)
143 $auserref = trim($this->
getValue($this->_Aid(
"_AFFECTREF", $newstate)));
144 $type = trim($this->
getValue($this->_Aid(
"_AFFECTTYPE", $newstate)));
145 if (!$auserref)
return false;
147 $aid = strtok($auserref,
" ");
155 $uid = $this->doc->getparamValue($aid);
160 $uid = $this->getparamValue($aid);
165 $uid = $this->doc->getRValue($aid);
170 $uid = $this->getRValue($aid);
183 if ($newstate !=
"") {
188 $this->doc->cvid =
$cvid;
190 $fdoc = $this->doc->getFamDoc();
191 $this->doc->cvid =
$fdoc->ccvid;
196 private function _Aid($fix,
$state)
198 return strtolower($this->attrPrefix . $fix . str_replace(
":",
"_",
$state));
216 return $this->_Aid(
"_id",
$state);
259 if ($this->doctype ==
'C') $cid =
$this->id;
264 $this->
exec_query(sprintf(
"delete from docattr where docid=%d and options ~ 'autocreated=yes'", intval($cid)));
266 foreach ($this->states as $k =>
$state) {
269 $aidframe = $this->_Aid(
"_FR",
$state);
270 $oattr =
new DocAttr($this->dbaccess, array(
274 $oattr->docid = $cid;
275 $oattr->visibility =
"W";
276 $oattr->type =
"frame";
277 $oattr->id = $aidframe;
278 $oattr->frameid =
"wf_tab_states";
279 $oattr->labeltext = sprintf(_(
"parameters for %s step") , _(
$state));
281 $oattr->phpfunc =
"";
282 $oattr->options =
"autocreated=yes";
283 $oattr->ordered = $ordered++;
284 if ($oattr->isAffected()) $oattr->Modify();
288 $aid = $this->_Aid(
"_",
$state);
289 $aidprofilid = $this->_Aid(
"_ID",
$state);
290 $oattr =
new DocAttr($this->dbaccess, array(
294 $oattr->docid = $cid;
295 $oattr->visibility =
"W";
296 $oattr->type =
'docid("PROFIL")';
297 $oattr->id = $aidprofilid;
298 $oattr->labeltext = sprintf(_(
"%s profile") , _(
$state));
300 $oattr->frameid = $aidframe;
301 $oattr->options =
"autocreated=yes";
303 $oattr->phpfile =
"fdl.php";
304 $oattr->phpfunc =
"lprofil(D,CT,WF_FAMID):$aidprofilid,CT";
305 $oattr->ordered = $ordered++;
306 if ($oattr->isAffected()) $oattr->Modify();
310 $aid = $this->_Aid(
"_MSKID",
$state);
312 $oattr =
new DocAttr($this->dbaccess, array(
316 $oattr->docid = $cid;
317 $oattr->visibility =
"W";
318 $oattr->type =
'docid("MASK")';
320 $oattr->labeltext = sprintf(_(
"%s mask") , _(
$state));
322 $oattr->frameid = $aidframe;
323 $oattr->phpfile =
"fdl.php";
324 $oattr->phpfunc =
"lmask(D,CT,WF_FAMID):$aid,CT";
326 $oattr->options =
'autocreated=yes|creation={autoclose:"yes",msk_famid:wf_famid,ba_title:"' . _(
$state) .
'"}';
327 $oattr->ordered = $ordered++;
328 if ($oattr->isAffected()) $oattr->Modify();
332 $aid = $this->_Aid(
"_COLOR",
$state);
333 $oattr =
new DocAttr($this->dbaccess, array(
337 $oattr->docid = $cid;
338 $oattr->visibility =
"W";
339 $oattr->type =
"color";
341 $oattr->phpfile =
"";
343 $oattr->frameid = $aidframe;
344 $oattr->ordered = $ordered++;
345 $oattr->phpfunc =
"";
346 $oattr->options =
"autocreated=yes";
347 $oattr->labeltext = sprintf(_(
"%s color") , _(
$state));
348 if ($oattr->isAffected()) $oattr->Modify();
352 $aid = $this->_Aid(
"_CVID",
$state);
353 $oattr =
new DocAttr($this->dbaccess, array(
357 $oattr->docid = $cid;
358 $oattr->visibility =
"W";
359 $oattr->type =
'docid("CVDOC")';
361 $oattr->phpfile =
"fdl.php";
362 $oattr->phpfunc =
"lcvdoc(D,CT,WF_FAMID):$aid,CT";
364 $oattr->options =
'autocreated=yes|creation={autoclose:"yes",cv_famid:wf_famid,ba_title:"' . _(
$state) .
'"}';
366 $oattr->frameid = $aidframe;
367 $oattr->ordered = $ordered++;
369 $oattr->labeltext = sprintf(_(
"%s cv") , _(
$state));
370 if ($oattr->isAffected()) $oattr->Modify();
374 $aid = $this->_Aid(
"_MTID",
$state);
375 $oattr =
new DocAttr($this->dbaccess, array(
379 $oattr->docid = $cid;
380 $oattr->visibility =
"W";
381 $oattr->type =
'docid("MAILTEMPLATE")';
383 $oattr->phpfile =
"fdl.php";
384 $oattr->phpfunc =
"lmailtemplatedoc(D,CT,WF_FAMID):$aid,CT";
386 $oattr->frameid = $aidframe;
387 $oattr->options =
"multiple=yes|autocreated=yes";
390 $oattr->options =
'autocreated=yes|multiple=yes|creation={autoclose:"yes",tmail_family:wf_famid,tmail_workflow:fromid}';
391 $oattr->ordered = $ordered++;
392 $oattr->labeltext = sprintf(_(
"%s mail template") , _(
$state));
393 if ($oattr->isAffected()) $oattr->Modify();
397 $aid = $this->_Aid(
"_TMID",
$state);
398 $oattr =
new DocAttr($this->dbaccess, array(
402 $oattr->docid = $cid;
403 $oattr->visibility =
"W";
404 $oattr->type =
'docid("TIMER")';
406 $oattr->phpfile =
"fdl.php";
407 $oattr->phpfunc =
"ltimerdoc(D,CT,WF_FAMID):$aid,CT";
410 $oattr->options =
'autocreated=yes|creation={autoclose:"yes",tm_family:wf_famid,tm_workflow:fromid,tm_title:"' . _(
$state) .
'"}';
411 $oattr->frameid = $aidframe;
412 $oattr->ordered = $ordered++;
413 $oattr->labeltext = sprintf(_(
"%s timer") , _(
$state));
414 if ($oattr->isAffected()) $oattr->Modify();
418 $aid = $this->_Aid(
"_ASKID",
$state);
419 $oattr =
new DocAttr($this->dbaccess, array(
423 $oattr->docid = $cid;
424 $oattr->visibility =
"W";
425 $oattr->type =
'docid("WASK")';
427 $oattr->phpfile =
"";
428 $oattr->phpfunc =
"";
431 $oattr->options =
'multiple=yes|autocreated=yes|creation={autoclose:"yes"}';
432 $oattr->frameid = $aidframe;
433 $oattr->ordered = $ordered++;
434 $oattr->labeltext = sprintf(_(
"%s wask") , _(
$state));
435 if ($oattr->isAffected()) $oattr->Modify();
439 $aid = $this->_Aid(
"_ACTIVITYLABEL", $k);
440 $oattr =
new DocAttr($this->dbaccess, array(
444 $oattr->docid = $cid;
446 if ($this->stateactivity[$k]) {
447 $oattr->visibility =
"S";
448 }
else $oattr->visibility =
"W";
449 $oattr->type =
'text';
451 $oattr->phpfile =
"";
452 $oattr->phpfunc =
"";
454 $oattr->options =
"autocreated=yes";
455 $oattr->frameid = $aidframe;
456 $oattr->ordered = $ordered++;
458 $oattr->labeltext = sprintf(_(
"%s activity") , _($k));
459 if ($oattr->isAffected()) $oattr->Modify();
463 $aid = $this->_Aid(
"_T_AFFECT",
$state);
465 $oattr =
new DocAttr($this->dbaccess, array(
469 $oattr->docid = $cid;
470 $oattr->visibility =
"U";
471 $oattr->type =
'array';
473 $oattr->frameid = $aidframe;
474 $oattr->options =
"vlabel=none|autocreated=yes";
475 $oattr->ordered = $ordered++;
476 $oattr->labeltext = sprintf(_(
"%s affectation") , _(
$state));
477 if ($oattr->isAffected()) $oattr->Modify();
480 $aid = $this->_Aid(
"_AFFECTTYPE",
$state);
482 $oattr =
new DocAttr($this->dbaccess, array(
486 $oattr->docid = $cid;
487 $oattr->visibility =
"W";
488 $oattr->type =
'enum';
489 $oattr->options =
"autocreated=yes";
490 $oattr->phpfunc =
"F|" . _(
"Utilisateur fixe") .
",D|" . _(
"Attribut relation") .
",PR|" . _(
"Relation parametre") .
",WD|" . _(
"Relation cycle") .
",WPR|" . _(
"Parametre cycle");
492 $oattr->frameid = $afaid;
493 $oattr->ordered = $ordered++;
494 $oattr->labeltext = sprintf(_(
"%s affectation type") , _(
$state));
495 if ($oattr->isAffected()) $oattr->Modify();
498 $aid = $this->_Aid(
"_AFFECTREF",
$state);
499 $oattr =
new DocAttr($this->dbaccess, array(
503 $oattr->docid = $cid;
504 $oattr->visibility =
"W";
505 $oattr->type =
'text';
507 $oattr->options =
"cwidth=160px|autocreated=yes";
508 $oattr->phpfile =
"fdl.php";
509 $oattr->phpfunc =
"tpluser(D,$aidtype,WF_FAMID,FROMID,$aid):$aid";
511 $oattr->frameid = $afaid;
512 $oattr->ordered = $ordered++;
513 $oattr->labeltext = sprintf(_(
"%s affected user") , _(
$state));
514 if ($oattr->isAffected()) $oattr->Modify();
517 $aid = $this->_Aid(
"_AFFECTLOCK",
$state);
518 $oattr =
new DocAttr($this->dbaccess, array(
522 $oattr->docid = $cid;
523 $oattr->visibility =
"W";
524 $oattr->type =
'enum';
526 $oattr->options =
"eformat=bool|autocreated=yes";
527 $oattr->phpfunc =
"no|" . _(
"affect no lock") .
",yes|" . _(
"affect auto lock");
529 $oattr->frameid = $afaid;
530 $oattr->ordered = $ordered++;
531 $oattr->labeltext = sprintf(_(
"%s autolock") , _(
$state));
532 if ($oattr->isAffected()) $oattr->Modify();
535 $aid = $this->_Aid(
"_AFFECTMAIL",
$state);
536 $oattr =
new DocAttr($this->dbaccess, array(
540 $oattr->docid = $cid;
541 $oattr->visibility =
"W";
542 $oattr->type =
'enum';
544 $oattr->options =
"eformat=bool|autocreated=yes";
545 $oattr->phpfunc =
"no|" . _(
"affect no mail") .
",yes|" . _(
"affect auto mail");
547 $oattr->frameid = $afaid;
548 $oattr->ordered = $ordered++;
549 $oattr->labeltext = sprintf(_(
"%s automail") , _(
$state));
550 if ($oattr->isAffected()) $oattr->Modify();
554 foreach ($this->transitions as $k => $trans) {
557 $aidframe = $this->_Aid(
"_TRANS_FR", $k);
558 $oattr =
new DocAttr($this->dbaccess, array(
562 $oattr->docid = $cid;
563 $oattr->visibility =
"W";
564 $oattr->type =
"frame";
565 $oattr->id = $aidframe;
566 $oattr->frameid =
"wf_tab_transitions";
567 $oattr->labeltext = sprintf(_(
"parameters for %s transition") , _($k));
569 $oattr->phpfunc =
"";
570 $oattr->options =
"autocreated=yes";
571 $oattr->ordered = $ordered++;
572 if ($oattr->isAffected()) $oattr->Modify();
576 $aid = $this->_Aid(
"_TRANS_MTID", $k);
577 $oattr =
new DocAttr($this->dbaccess, array(
581 $oattr->docid = $cid;
582 $oattr->visibility =
"W";
583 $oattr->type =
'docid("MAILTEMPLATE")';
585 $oattr->phpfile =
"fdl.php";
586 $oattr->phpfunc =
"lmailtemplatedoc(D,CT,WF_FAMID):$aid,CT";
589 $oattr->frameid = $aidframe;
590 $oattr->ordered = $ordered++;
591 $oattr->options =
'autocreated=yes|multiple=yes|creation={autoclose:"yes",tmail_family:wf_famid,tmail_workflow:fromid}';
593 $oattr->labeltext = sprintf(_(
"%s mail template") , _($k));
594 if ($oattr->isAffected()) $oattr->Modify();
598 $aid = $this->_Aid(
"_TRANS_TMID", $k);
599 $oattr =
new DocAttr($this->dbaccess, array(
603 $oattr->docid = $cid;
604 $oattr->visibility =
"W";
605 $oattr->type =
'docid("TIMER")';
607 $oattr->phpfile =
"fdl.php";
608 $oattr->phpfunc =
"ltimerdoc(D,CT,WF_FAMID):$aid,CT";
610 $oattr->options =
'autocreated=yes|creation={autoclose:"yes",tm_family:wf_famid,tm_workflow:fromid,tm_title:"' . _(
$state) .
'"}';
613 $oattr->frameid = $aidframe;
614 $oattr->ordered = $ordered++;
615 $oattr->labeltext = sprintf(_(
"%s timer") , _($k));
616 if ($oattr->isAffected()) $oattr->Modify();
620 $aid = $this->_Aid(
"_TRANS_PA_TMID", $k);
621 $oattr =
new DocAttr($this->dbaccess, array(
625 $oattr->docid = $cid;
626 $oattr->visibility =
"W";
627 $oattr->type =
'docid("TIMER")';
629 $oattr->phpfile =
"fdl.php";
630 $oattr->phpfunc =
"ltimerdoc(D,CT,WF_FAMID):$aid,CT";
632 $oattr->options =
'multiple=yes|autocreated=yes|creation={autoclose:"yes",tm_family:wf_famid,tm_workflow:fromid,tm_title:"' . _(
$state) .
'"}';
635 $oattr->frameid = $aidframe;
636 $oattr->ordered = $ordered++;
637 $oattr->labeltext = sprintf(_(
"%s persistent timer") , _($k));
638 if ($oattr->isAffected()) $oattr->Modify();
642 $aid = $this->_Aid(
"_TRANS_PU_TMID", $k);
643 $oattr =
new DocAttr($this->dbaccess, array(
647 $oattr->docid = $cid;
648 $oattr->visibility =
"W";
649 $oattr->type =
'docid("TIMER")';
651 $oattr->phpfile =
"fdl.php";
652 $oattr->phpfunc =
"ltimerdoc(D,CT,WF_FAMID):$aid,CT";
655 $oattr->options =
"multiple=yes|autocreated=yes";
656 $oattr->frameid = $aidframe;
657 $oattr->ordered = $ordered++;
658 $oattr->labeltext = sprintf(_(
"%s unattach timer") , _($k));
659 if ($oattr->isAffected()) $oattr->Modify();
676 function changeState($newstate, $addcomment =
"",
$force =
false, $withcontrol =
true, $wm1 =
true, $wm2 =
true, $wneed =
true)
683 while (list($k, $trans) = each($this->cycle)) {
684 if (($this->doc->state == $trans[
"e1"])) {
687 if ($newstate == $trans[
"e2"]) {
689 $tr = $this->transitions[$trans[
"t"]];
690 $tname = $trans[
"t"];
695 if ($this->userid != 1) {
696 if (!$foundTo)
return (sprintf(_(
"ChangeState :: the new state '%s' is not known or is not allowed from %s") , _($newstate) , _($this->doc->state)));
697 if (!$foundFrom)
return (sprintf(_(
"ChangeState :: the initial state '%s' is not known") , _($this->doc->state)));
701 $err = $this->doc->isCompleteNeeded();
705 if ($withcontrol)
$err = $this->control($tname);
708 if ($wm1 && ($tr[
"m1"] !=
"")) {
710 if (!method_exists($this, $tr[
"m1"]))
return (sprintf(_(
"the method '%s' is not known for the object class %s") , $tr[
"m1"], get_class($this)));
712 $err = call_user_func(array(
715 ) , $newstate, $this->doc->state, $addcomment);
723 if ($addcomment !=
"") $this->doc->AddComment($addcomment);
729 $this->doc->unlock(
true);
730 return (sprintf(_(
"The change state to %s has been aborted.\n%s") , _($newstate) ,
$err));
734 $oldstate = $this->doc->state ==
"" ?
" " : $this->doc->state;
735 $this->doc->state = $newstate;
738 $this->doc->disableEditControl();
739 $err = $this->doc->Modify();
742 $revcomment = sprintf(_(
"change state : %s to %s") , _($oldstate) , _($newstate));
743 if ($addcomment !=
"") $this->doc->AddComment($addcomment);
744 if (isset($tr[
"ask"])) {
745 foreach ($tr[
"ask"] as $vpid) {
749 $revcomment.=
"\n-" . $oa->getLabel() .
":" . $pv;
754 $err = $this->doc->AddRevision($revcomment);
756 $this->doc->disableEditControl();
757 $this->doc->state = $oldstate;
760 $err2 = $this->doc->Modify();
761 $this->doc->enableEditControl();
765 AddLogMsg(sprintf(_(
"%s new state %s") , $this->doc->title, _($newstate)));
767 $this->doc->enableEditControl();
769 if ($wm2 && ($tr[
"m2"] !=
"")) {
770 if (!method_exists($this, $tr[
"m2"]))
return (sprintf(_(
"the method '%s' is not known for the object class %s") , $tr[
"m2"], get_class($this)));
771 $err = call_user_func(array(
774 ) , $newstate, $oldstate, $addcomment);
777 if (
$err !=
"")
$err = sprintf(_(
"The change state to %s has been realized. But the following warning is appeared.\n%s") , _($newstate) ,
$err);
779 $this->doc->addLog(
"state", array(
781 "initid" => $this->initid,
783 "title" => $this->title,
784 "state" => $this->state,
787 $this->doc->disableEditControl();
788 if (!$this->doc->domainid) $this->doc->unlock(
false,
true);
792 $this->doc->enableEditControl();
799 if ($this->doc->locked == - 1)
return array();
800 if (($this->doc->locked > 0) && ($this->doc->locked != $this->doc->userid))
return array();
802 if ((!$noVerifyDomain) && ($this->doc->lockdomainid > 0))
return array();
804 if ($this->doc->state ==
"") $this->doc->state = $this->
getFirstState();
806 if ($this->userid == 1)
return $this->
getStates();
808 while (list($k, $tr) = each($this->cycle)) {
809 if ($this->doc->state == $tr[
"e1"]) {
811 if ($this->control($tr[
"t"]) ==
"") $fstate[] = $tr[
"e2"];
819 if (!isset($this->states)) {
820 $this->states = array();
822 while (list($k, $tr) = each($this->cycle)) {
823 if ($tr[
"e1"] !=
"") $this->states[$tr[
"e1"]] = $tr[
"e1"];
824 if ($tr[
"e2"] !=
"") $this->states[$tr[
"e2"]] = $tr[
"e2"];
837 $acolor = $this->_Aid(
"_COLOR",
$state);
838 return $this->
getValue($acolor, $def);
848 $acolor = $this->_Aid(
"_ACTIVITYLABEL",
$state);
850 if ($v)
return _($v);
873 $aask = $this->_Aid(
"_ASKID",
$state);
877 foreach ($vasks as $askid) {
878 $ask = new_doc($this->dbaccess, $askid);
879 $ask->set($this->doc);
880 if ($ask->isAlive() && ($ask->control(
'answer') ==
"")) $cask[] = $ask->id;
896 $aask = $this->_Aid(
"_ASKID", $state);
897 if ($this->
getValue($aask))
return true;
910 $tmtid = $this->
getTValue($this->_Aid(
"_TRANS_MTID", $tname));
912 $tr = $this->transitions[$tname];
913 if ($tmtid && (count($tmtid) > 0)) {
914 foreach ($tmtid as $mtid) {
916 $mt = new_doc($this->dbaccess, $mtid);
917 if ($mt->isAlive()) {
918 $keys[
"WCOMMENT"] = nl2br(
$comment);
919 if (isset($tr[
"ask"])) {
920 foreach ($tr[
"ask"] as $vpid) {
922 $keys[strtoupper($vpid) ] = $this->
getValue($vpid);
925 $err = $mt->sendDocument($this->doc, $keys);
931 if ($tmtid && (count($tmtid) > 0)) {
932 foreach ($tmtid as $mtid) {
934 $mt = new_doc($this->dbaccess, $mtid);
935 if ($mt->isAlive()) {
936 $keys[
"WCOMMENT"] = nl2br(
$comment);
937 if (isset($tr[
"ask"])) {
938 foreach ($tr[
"ask"] as $vpid) {
940 $keys[strtoupper($vpid) ] = $this->
getValue($vpid);
943 $err = $mt->sendDocument($this->doc, $keys);
957 $mtid = $this->
getValue($this->_Aid(
"_TRANS_TMID", $tname));
959 $this->doc->unattachAllTimers($this);
960 $tr = $this->transitions[$tname];
962 $mt = new_doc($this->dbaccess, $mtid);
963 if ($mt->isAlive()) {
964 $err = $this->doc->attachTimer($mt, $this);
968 $tmtid = $this->
getTValue($this->_Aid(
"_TRANS_PU_TMID", $tname));
969 if ($tmtid && (count($tmtid) > 0)) {
970 foreach ($tmtid as $mtid) {
971 $mt = new_doc($this->dbaccess, $mtid);
972 if ($mt->isAlive()) {
973 $err.= $this->doc->unattachTimer($mt);
980 $mt = new_doc($this->dbaccess, $mtid);
981 if ($mt->isAlive()) {
982 $err.= $this->doc->attachTimer($mt, $this);
986 $tmtid = $this->
getTValue($this->_Aid(
"_TRANS_PA_TMID", $tname));
987 if ($tmtid && (count($tmtid) > 0)) {
988 foreach ($tmtid as $mtid) {
989 $mt = new_doc($this->dbaccess, $mtid);
990 if ($mt->isAlive()) {
991 $err.= $this->doc->attachTimer($mt);
1001 $cmdid =
$cmd->latestId();
1004 if (
$cmd->wid > 0) {
1007 if (!$wdoc)
$err = sprintf(_(
"cannot change state of document #%d to %s") ,
$cmd->wid, $newstate);
1010 $err = $wdoc->ChangeState($newstate, sprintf(_(
"automaticaly by change state of %s\n%s") , $this->doc->title,
$comment));
1022 foreach ($this->cycle as $v) {
1023 if (($v[
"e1"] ==
$from) && ($v[
"e2"] ==
$to)) {
1024 $t = $this->transitions[$v[
"t"]];
1043 if ($this->
getValue(
"DPDOC_FAMID") > 0) {
1045 if (!isset($this->pdoc)) {
1046 $pdoc =
createDoc($this->dbaccess, $this->fromid,
false);
1047 $pdoc->doctype =
"T";
1049 $err = $pdoc->Add();
1050 if (
$err !=
"")
return "WDoc::Control:" .
$err;
1051 $pdoc->setProfil($this->profid, $this->doc);
1053 $this->pdoc = & $pdoc;
1055 $err = $this->pdoc->DocControl($aclname);
1064 foreach ($this->stateactivity as $k => $v) {
1065 $this->setValue($this->_Aid(
"_ACTIVITYLABEL", $k) , $v);
1068 foreach ($this->states as $k =>
$state) {
1069 $allo = trim($this->
getValue($this->_Aid(
"_AFFECTREF",
$state)));
1083 return $this->doc->getValue($attrid, $def);