id: 18 name: tvresolver.php category: MyComponent properties: null ----- log(modX::LOG_LEVEL_ERROR, '[TV Resolver] Missing field: ' . $field); return false; } } return true; } } if ($object->xpdo) { $modx =& $object->xpdo; switch ($options[xPDOTransport::PACKAGE_ACTION]) { case xPDOTransport::ACTION_INSTALL: case xPDOTransport::ACTION_UPGRADE: $intersects = '[[+intersects]]'; if (is_array($intersects)) { foreach ($intersects as $k => $fields) { /* make sure we have all fields */ if (!checkFields('tmplvarid,templateid', $fields)) { continue; } $tv = $modx->getObject('modTemplateVar', array('name' => $fields['tmplvarid'])); if ($fields['templateid'] == 'default') { $template = $modx->getObject('modTemplate', $modx->getOption('default_template')); } else { $template = $modx->getObject('modTemplate', array('templatename' => $fields['templateid'])); } if (!$tv || !$template) { $modx->log(xPDO::LOG_LEVEL_ERROR, 'Could not find Template and/or TV ' . $fields['templateid'] . ' - ' . $fields['tmplvarid']); continue; } $tvt = $modx->getObject('modTemplateVarTemplate', array('templateid' => $template->get('id'), 'tmplvarid' => $tv->get('id'))); if (! $tvt) { $tvt = $modx->newObject('modTemplateVarTemplate'); } if ($tvt) { $tvt->set('tmplvarid', $tv->get('id')); $tvt->set('templateid', $template->get('id')); if (isset($fields['rank'])) { $tvt->set('rank', $fields['rank']); } else { $tvt->set('rank', 0); } if (!$tvt->save()) { $modx->log(xPDO::LOG_LEVEL_ERROR, 'Unknown error creating templateVarTemplate for ' . $fields['templateid'] . ' - ' . $fields['tmplvarid']); } } else { $modx->log(xPDO::LOG_LEVEL_ERROR, 'Unknown error creating templateVarTemplate for ' . $fields['templateid'] . ' - ' . $fields['tmplvarid']); } } } break; case xPDOTransport::ACTION_UNINSTALL: break; } } return true;