本文整理匯總了PHP中ca_objects::addRepresentation方法的典型用法代碼示例。如果您正苦於以下問題:PHP ca_objects::addRepresentation方法的具體用法?PHP ca_objects::addRepresentation怎麽用?PHP ca_objects::addRepresentation使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類ca_objects
的用法示例。
在下文中一共展示了ca_objects::addRepresentation方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: commandImportSIPs
//.........這裏部分代碼省略.........
if ($o_log) {
$o_log->logError(_t("Could not add artifct media %1 to reel %2: %3", pathinfo($vs_artifact, PATHINFO_BASENAME), $vs_idno, join("; ", $t_object->getErrors())));
}
}
} else {
if ($o_log) {
$o_log->logDebug(_t("Found existing reel record %1 for %2", $va_ids[0], $vs_idno));
}
$t_object = new ca_objects($vn_object_id = $va_ids[0]);
$t_object->setMode(ACCESS_WRITE);
$t_object->set('status', 5);
$t_object->update();
if (($vn_image_count = $t_object->numberOfRepresentationsOfClass("image")) > 0) {
// skip reels that have images already
//if ($o_log) { $o_log->logDebug(_t("Skipped existing reel record %1 because it already has %2 images", $vs_idno, $vn_image_count)); }
//if ($o_progress) { $o_progress->setError(_t("Skipped existing reel record %1 because it already has %2 images", $vs_idno, $vn_image_count)); }
//continue;
}
$t_object->setMode(ACCESS_WRITE);
}
//print "[7] ".$t->getTime(4)."\n";
if ($vn_image_count > 0) {
$t_object->removeAllRepresentations();
if ($t_object->numErrors()) {
if ($o_log) {
$o_log->logError(_t("Could not add remove existing media from reel %1: %2", $vs_idno, join("; ", $t_object->getErrors())));
}
}
}
$o_progress->setMessage(_t("Linking artifact images for %1", $vs_idno));
foreach ($va_artifacts as $vs_artifact) {
$o_progress->next(_t('Processing artifact image %1', $vs_artifact));
copy($vs_artifact, $vs_tmp_filepath = "/tmp/pbc" . md5(time()));
$t_object->addRepresentation($vs_tmp_filepath, 'front', $pn_locale_id, 0, 1, 1);
$o_progress->setMessage(_t("Added artifact image %1 for %2", $vs_artifact, $vs_idno));
if ($t_object->numErrors()) {
if ($o_log) {
$o_log->logError(_t("Could not add artifact media %1 to reel %2: %3", pathinfo($vs_artifact, PATHINFO_BASENAME), $vs_idno, join("; ", $t_object->getErrors())));
}
}
// remove tmp file
@unlink($vs_tmp_filepath);
}
//
// Add XML
//
$o_progress->setMessage(_t("Adding XML for %1", $vs_track_idno));
$t_object->removeAttributes('sip_metadata');
foreach ($va_side_xml as $vs_side => $vs_xml_path) {
copy($vs_xml_path, $vs_xml_tmppath = "/tmp/" . pathinfo($vs_xml_path, PATHINFO_BASENAME));
$o_progress->next(_t('Processing XML %1', $vs_xml_tmppath));
$t_object->addAttribute(array('sip_metadata' => $vs_xml_tmppath, 'locale_id' => $pn_locale_id), 'sip_metadata');
$t_object->update();
if ($t_object->numErrors()) {
if ($o_log) {
$o_log->logError(_t("Could not import XML file %1 into reel %2: %3", pathinfo($va_track_xml_by_side[$vs_side][$vn_i], PATHINFO_BASENAME), $vs_track_idno, join("; ", $t_object->getErrors())));
}
}
}
//print "[8] ".$t->getTime(4)."\n";
// Create tracks
$o_progress->setMessage(_t("Creating tracks for %1", $vs_idno));
foreach ($va_track_audio_by_side as $vs_side => $va_tracks) {
foreach ($va_tracks as $vn_i => $vs_audio) {
$o_progress->next(_t('Processing track %1', $vs_audio));
$vs_ext = pathinfo($vs_audio, PATHINFO_EXTENSION);
示例2: importMediaFromDirectory
//.........這裏部分代碼省略.........
$va_names_to_match = array($f);
break;
}
foreach ($va_names_to_match as $vs_match_name) {
if (preg_match('!' . $vs_regex . '!', $vs_match_name, $va_matches)) {
if (!$vs_idno || strlen($va_matches[1]) < strlen($vs_idno)) {
$vs_idno = $va_matches[1];
}
if (!$vs_modified_filename || strlen($vs_modified_filename) > strlen($va_matches[1])) {
$vs_modified_filename = $va_matches[1];
}
$va_extracted_idnos_from_filename[] = $va_matches[1];
if (in_array($vs_import_mode, array('TRY_TO_MATCH', 'ALWAYS_MATCH'))) {
if ($t_object->load(array('idno' => $va_matches[1], 'deleted' => 0))) {
$va_notices[$vs_relative_directory . '/' . $vs_match_name . '_match'] = array('idno' => $t_object->get($t_object->getProperty('ID_NUMBERING_ID_FIELD')), 'label' => $t_object->getLabelForDisplay(), 'message' => _t('Matched media %1 from %2 to object using %2', $f, $vs_relative_directory, $vs_regex_name), 'status' => 'MATCHED');
break 3;
}
}
}
}
}
}
}
if (!$t_object->getPrimaryKey()) {
// Use filename as idno if all else fails
if ($t_object->load(array('idno' => $f, 'deleted' => 0))) {
$va_notices[$vs_relative_directory . '/' . $f . '_match'] = array('idno' => $t_object->get($t_object->getProperty('ID_NUMBERING_ID_FIELD')), 'label' => $t_object->getLabelForDisplay(), 'message' => _t('Matched media %1 from %2 to object using filename', $f, $vs_relative_directory), 'status' => 'MATCHED');
}
}
$t_new_rep = null;
if ($t_object->getPrimaryKey()) {
// found existing object
$t_object->setMode(ACCESS_WRITE);
$t_new_rep = $t_object->addRepresentation($vs_directory . '/' . $f, $vn_rep_type_id, $vn_locale_id, $vn_object_representation_status, $vn_object_representation_access, false, array(), array('original_filename' => $f, 'returnRepresentation' => true));
if ($t_object->numErrors()) {
$o_eventlog->log(array("CODE" => 'ERR', "SOURCE" => "mediaImport", "MESSAGE" => "Error importing {$f} from {$vs_directory}: " . join('; ', $t_object->getErrors())));
$va_errors[$vs_relative_directory . '/' . $f] = array('idno' => $t_object->get($t_object->getProperty('ID_NUMBERING_ID_FIELD')), 'label' => $t_object->getLabelForDisplay(), 'errors' => $t_object->errors(), 'message' => _t("Error importing %1 from %2: %3", $f, $vs_relative_directory, join('; ', $t_object->getErrors())), 'status' => 'ERROR');
$o_trans->rollback();
continue;
} else {
if ($vb_delete_media_on_import) {
@unlink($vs_directory . '/' . $f);
}
}
} else {
// should we create new object?
if (in_array($vs_import_mode, array('TRY_TO_MATCH', 'DONT_MATCH'))) {
$t_object->setMode(ACCESS_WRITE);
$t_object->set('type_id', $vn_object_type_id);
$t_object->set('locale_id', $vn_locale_id);
$t_object->set('status', $vn_object_status);
$t_object->set('access', $vn_object_access);
switch ($vs_idno_mode) {
case 'filename':
// use the filename as identifier
$t_object->set('idno', $f);
break;
case 'directory_and_filename':
// use the directory + filename as identifier
$t_object->set('idno', $d . '/' . $f);
break;
default:
// Calculate identifier using numbering plugin
$o_numbering_plugin = $t_object->getIDNoPlugInInstance();
if (!($vs_sep = $o_numbering_plugin->getSeparator())) {
$vs_sep = '';