コード例 #1
0
    $grid = null;
    $out_of_grid = null;
    $groups = $ex_object->_ref_ex_class->getPixelGrid();
} else {
    list($grid, $out_of_grid, $groups) = $ex_object->_ref_ex_class->getGrid();
}
if ($ex_object_id || $ex_object->_id) {
    $ex_object->load($ex_object_id);
} else {
    $ex_object->group_id = CGroups::loadCurrent()->_id;
}
// Host and reference objects
$ex_object->setObject($object);
if (!$ex_object->_id) {
    if (!$ex_object->reference_id && !$ex_object->reference_class) {
        $reference = $ex_class_event->resolveReferenceObject($object, 1);
        $ex_object->setReferenceObject_1($reference);
    }
    if (!$ex_object->reference2_id && !$ex_object->reference2_class) {
        $reference = $ex_class_event->resolveReferenceObject($object, 2);
        $ex_object->setReferenceObject_2($reference);
    }
} else {
    $ex_object->loadRefsLinks();
}
$ex_object->loadRefGroup();
// loadAllFwdRefs ne marche pas bien (a cause de la clé primaire)
foreach ($ex_object->_specs as $_field => $_spec) {
    if ($_spec instanceof CRefSpec && $_field != $ex_object->_spec->key) {
        $class = $_spec->meta ? $ex_object->{$_spec->meta} : $_spec->class;
        if (!$class) {