示例#1
0
}
?>
<div class="container">
	<div class="row">
		<div class="col-sm-12">
<?php 
if (is_array($va_item_media) && sizeof($va_item_media)) {
    ?>
   
		<div class="jcarousel-wrapper">
			<!-- Carousel -->
			<div class="jcarousel">
				<ul>
<?php 
    foreach ($va_item_media as $vn_object_id => $va_media) {
        print "<li>" . caDetailLink($this->request, $va_media["tags"]["slideshowsmall"], '', 'ca_objects', $vn_object_id) . "</li>";
    }
    ?>
				</ul>
			</div><!-- end jcarousel -->
<?php 
    if (sizeof($va_item_media) > 1) {
        ?>
			<!-- Prev/next controls -->
			<a href="#" class="jcarousel-control-prev"><i class="fa fa-angle-left"></i></a>
			<a href="#" class="jcarousel-control-next"><i class="fa fa-angle-right"></i></a>
		
			<!-- Pagination -->
			<p class="jcarousel-pagination">
			<!-- Pagination items will be generated in here -->
			</p>
 if ($qr_res->get("ca_objects.creation_date")) {
     print ", ";
     if (strtolower($qr_res->get("ca_objects.creation_date")) == "unknown") {
         print "Date " . $qr_res->get("ca_objects.creation_date");
     } else {
         print $qr_res->get("ca_objects.creation_date");
     }
 }
 $va_entities = $qr_res->get("ca_entities", array("returnAsArray" => true, "restrictToRelationshipTypes" => array("creator"), "checkAccess" => $va_access_values));
 if (sizeof($va_entities)) {
     $t_entity = new ca_entities();
     print "<br/>";
     $i = 0;
     foreach ($va_entities as $va_entity) {
         $t_entity->load($va_entity["entity_id"]);
         print caDetailLink($this->request, $t_entity->getLabelForDisplay(), "", "ca_entities", $t_entity->get("entity_id"));
         $vs_nationality = trim($t_entity->get("nationality", array("delimiter" => "; ", "convertCodesToDisplayText" => true)));
         $vs_dob = $t_entity->get("dob_dod");
         if (strtolower($vs_dob) == "unknown") {
             $vs_dob = "";
         }
         if ($vs_nationality || $vs_dob) {
             print " (" . $vs_nationality;
             if ($vs_nationality && $vs_dob) {
                 print ", ";
             }
             print $vs_dob . ")";
         }
         $i++;
         if ($i < sizeof($va_entities)) {
             print ", ";
     # --- artwork
     $vs_label_artist = "<p class='artist lower'>" . caDetailLink($this->request, $q_set_items->get("ca_entities.preferred_labels.name", array('restrictToRelationshipTypes' => 'artist')), '', 'ca_objects', $vn_id) . "</p>";
     $vs_label_detail_link = "<p><i>" . caDetailLink($this->request, $q_set_items->get("ca_objects.preferred_labels.name"), '', 'ca_objects', $vn_id) . "</i>, " . $q_set_items->get("ca_objects.creation_date") . "</p>";
     if ($q_set_items->get('is_deaccessioned') && $q_set_items->get('deaccession_date', array('getDirectDate' => true)) <= caDateToHistoricTimestamp(_t('now'))) {
         $vs_deaccessioned = "<div class='searchDeaccessioned'>" . _t('Deaccessioned %1', $q_set_items->get('deaccession_date')) . "</div>\n";
     } else {
         $vs_deaccessioned = "";
     }
     if ($this->request->user->hasUserRole("founders_new") || $this->request->user->hasUserRole("admin") || $this->request->user->hasUserRole("curatorial_all_new") || $this->request->user->hasUserRole("curatorial_basic_new") || $this->request->user->hasUserRole("archives_new") || $this->request->user->hasUserRole("library_new")) {
         $vs_art_idno_link = "<p class='idno'>" . $q_set_items->get("ca_objects.idno") . "</p>";
     } else {
         $vs_art_idno_link = "";
     }
 } else {
     #$vs_label_artist	 	= "<p class='artist lower'>".$q_set_items->get("ca_entities.preferred_labels.name", array('restrictToRelationshipTypes' => 'artist'))."</p>";
     $vs_label_detail_link = "<p>" . caDetailLink($this->request, $q_set_items->get("ca_objects.preferred_labels.name"), '', 'ca_objects', $vn_id) . "</p>";
     $vs_idno_detail_link = "<p class='idno'>" . $q_set_items->get("ca_objects.idno") . "</p>";
     if ($q_set_items->get('ca_objects.dc_date.dc_dates_value')) {
         $vs_date_link = "<p>" . $q_set_items->get('ca_objects.dc_date', array('returnAsLink' => true, 'delimiter' => '; ', 'template' => '^dc_dates_value')) . "</p>";
     } else {
         $vs_date_link = "";
     }
     if ($q_set_items->get('ca_objects.type_id') == 23 || $q_set_items->get('ca_objects.type_id') == 26 || $q_set_items->get('ca_objects.type_id') == 25 || $q_set_items->get('ca_objects.type_id') == 24 || $q_set_items->get('ca_objects.type_id') == 27) {
         $vs_type_link = "<p>" . $q_set_items->get('ca_objects.type_id', array('convertCodesToDisplayText' => true)) . "</p>";
     } else {
         $vs_type_link = "";
     }
     if ($q_set_items->get('ca_objects.type_id') == 23 || $q_set_items->get('ca_objects.type_id') == 26 || $q_set_items->get('ca_objects.type_id') == 25 || $q_set_items->get('ca_objects.type_id') == 24 || $q_set_items->get('ca_objects.type_id') == 27) {
         $va_collection_id = $q_set_items->get('ca_collections.collection_id');
         $t_collection = new ca_collections($va_collection_id);
         $vn_parent_ids = $t_collection->getHierarchyAncestors($va_collection_id, array('idsOnly' => true));
 print "<div class='searchFullTextTitle'>Stratigraphy</div>";
 $vs_era = $qr_res->get('ca_places.era', array("convertCodesToDisplayText" => true, "delimiter" => ", "));
 $vs_period = $qr_res->get('ca_places.period', array("convertCodesToDisplayText" => true, "delimiter" => ", "));
 $vs_period = str_replace(array("-, -", "-,", ", -", "-"), "", $vs_period);
 $vs_epoch = $qr_res->get('ca_places.epoch', array("convertCodesToDisplayText" => true, "delimiter" => ", "));
 $vs_epoch = str_replace(array("-, -", "-,", ", -", "-"), "", $vs_epoch);
 $vs_group = $qr_res->get('ca_places.group', array("convertCodesToDisplayText" => true, "delimiter" => ", "));
 $vs_formation = $qr_res->get('ca_places.formation', array("convertCodesToDisplayText" => true, "delimiter" => ", "));
 print "<div><b>" . _t('Era') . ": </b>" . caReturnDefaultIfBlank($vs_era) . "</div>";
 print "<div><b>" . _t('Period') . ": </b>" . caReturnDefaultIfBlank(str_replace(", -", "", $vs_period)) . "</div>";
 print "<div><b>" . _t('Epoch') . ": </b>" . caReturnDefaultIfBlank($vs_epoch) . "</div>";
 print "<div><b>" . _t('Group') . ": </b>" . caReturnDefaultIfBlank($vs_group) . "</div>";
 print "<div><b>" . _t('Formation') . ": </b>" . caReturnDefaultIfBlank($vs_formation) . "</div>";
 $vs_locality = "";
 if ($qr_res->get('ca_places.idno') && in_array($qr_res->get('ca_places.access'), $va_access_values)) {
     $vs_locality = caDetailLink($this->request, $qr_res->get('ca_places.idno', array('delimiter' => ', ', 'checkAccess' => $va_access_values)), '', 'ca_places', $qr_res->get('ca_places.place_id'), array("subsite" => "tracks"));
 }
 print "<div><b>" . _t('Locality') . ":</b> " . caReturnDefaultIfBlank($vs_locality) . "</div>";
 print "</div><!-- END searchFullText col2 -->\n";
 # --- place hierarchy
 $va_locality_list = $qr_res->get("ca_places", array('returnAsArray' => true, 'checkAccess' => $va_access_values));
 if (sizeof($va_locality_list)) {
     print "<div class='searchFullTextSmall'>";
     print "<div class='searchFullTextTitle'>Geographic Location</div>";
     foreach ($va_locality_list as $va_locality) {
         $va_hierarchy = caExtractValuesByUserLocale($t_place->getHierarchyAncestors($va_locality["place_id"], array("additionalTableToJoin" => "ca_place_labels", "additionalTableSelectFields" => array("name"))));
         $va_hierarchy = array_reverse($va_hierarchy);
         array_shift($va_hierarchy);
         foreach ($va_hierarchy as $va_hier_locality) {
             if (!in_array($va_hier_locality["type_id"], $va_place_type_ids_to_exclude)) {
                 print "<div><b>" . $t_lists->getItemFromListForDisplayByItemID("place_types", $va_hier_locality["type_id"]) . ": </b>" . $va_hier_locality["name"] . "</div>";
示例#5
0
            if ($vs_media = $qr_res->getWithTemplate('^ca_object_representations.media.front', array("checkAccess" => $va_access_values))) {
                print "<div class='col-sm-12'><div class='frontSlide'>" . $vs_media . "</div></div>";
                break;
            }
        }
    }
} else {
    if ($t_exhibition->get("occurrence_id")) {
        # --- use the featured image from the show
        $va_objects = $t_exhibition->get('ca_objects', array("checkAccess" => $va_access_values, "restrictToRelationshipTypes" => array("used_website"), "returnAsArray" => true));
        if (is_array($va_objects) && sizeof($va_objects)) {
            $va_object = array_pop($va_objects);
            $t_object = new ca_objects($va_object["object_id"]);
            print "<div class='col-sm-12'><div class='frontSlide'>" . caDetailLink($this->request, $t_object->get("ca_object_representations.media.front", array("checkAccess" => $va_access_values)), '', 'ca_occurrences', $t_exhibition->get("occurrence_id"), null, null, array("type_id" => $t_exhibition->get("ca_occurrences.type_id"))) . "</div></div>";
        }
    }
}
?>

	<div class="col-sm-12">
<?php 
if ($t_exhibition->get("occurrence_id")) {
    print "<h1>" . caDetailLink($this->request, $t_exhibition->get("ca_occurrences.preferred_labels.name"), '', 'ca_occurrences', $t_exhibition->get("ca_occurrences.occurrence_id"), null, null, array("type_id" => $t_exhibition->get("ca_occurrences.type_id"))) . "</h1>";
    print "<h2>" . caDetailLink($this->request, $t_exhibition->get("ca_occurrences.exhibition_subtitle"), '', 'ca_occurrences', $t_exhibition->get("ca_occurrences.occurrence_id"), null, null, array("type_id" => $t_exhibition->get("ca_occurrences.type_id"))) . "</h2>";
    $va_exhibition_dates = $t_exhibition->get("ca_occurrences.opening_closing", array("rawDate" => true));
    print date("r", $va_exhibition_dates["start"]);
    print "<h4>" . $t_exhibition->get("ca_occurrences.opening_closing") . ($t_exhibition->get("ca_occurrences.opening_reception") ? " | Opening Reception: " . $t_exhibition->get("ca_occurrences.opening_reception") : "") . "</h4>";
}
?>
	</div><!--end col-sm-12-->
</div><!-- end row -->
        }
        $va_images = caGetDisplayImagesForAuthorityItems($vs_table, $va_ids, array('version' => 'small', 'relationshipTypes' => caGetOption('selectMediaUsingRelationshipTypes', $va_options, null), 'checkAccess' => $va_access_values));
        $vn_c = 0;
        $qr_res->seek($vn_start);
    }
    $vs_add_to_lightbox_msg = addslashes(_t('Add to lightbox'));
    while ($qr_res->nextHit() && $vn_c < $vn_hits_per_block) {
        $vn_id = $qr_res->get("{$vs_table}.{$vs_pk}");
        $vs_idno_detail_link = caDetailLink($this->request, $qr_res->get("{$vs_table}.idno"), '', $vs_table, $vn_id, array("subsite" => $this->request->session->getVar("coloradoSubSite")));
        $vs_label_detail_link = caDetailLink($this->request, $qr_res->get("{$vs_table}.preferred_labels.name"), '', $vs_table, $vn_id, array("subsite" => $this->request->session->getVar("coloradoSubSite")));
        $vs_thumbnail = "";
        if ($vs_table == 'ca_objects') {
            if (!($vs_thumbnail = $qr_res->getMediaTag('ca_object_representations.media', 'medium', array("checkAccess" => $va_access_values)))) {
                $vs_thumbnail = $vs_placeholder_tag;
            }
            $vs_rep_detail_link = caDetailLink($this->request, $vs_thumbnail, '', $vs_table, $vn_id, array("subsite" => $this->request->session->getVar("coloradoSubSite")));
        } else {
            if ($va_images[$vn_id]) {
                $vs_thumbnail = $va_images[$vn_id];
            } else {
                $vs_thumbnail = $vs_placeholder_tag;
            }
            $vs_rep_detail_link = caDetailLink($this->request, $vs_thumbnail, '', $vs_table, $vn_id, array("subsite" => $this->request->session->getVar("coloradoSubSite")));
        }
        $vs_add_to_set_url = caNavUrl($this->request, '', 'Sets', 'addItemForm', array($vs_pk => $vn_id));
        $vs_expanded_info = $qr_res->getWithTemplate($vs_extended_info_template);
        print "\n\t<div class='bResultItemCol col-xs-{$vn_col_span_xs} col-sm-{$vn_col_span_sm} col-md-{$vn_col_span}'>\n\t\t<div class='bResultItem' onmouseover='jQuery(\"#bResultItemExpandedInfo{$vn_id}\").show();'  onmouseout='jQuery(\"#bResultItemExpandedInfo{$vn_id}\").hide();'>\n\t\t\t<div class='bResultItemContent'><div class='text-center bResultItemImg'>{$vs_rep_detail_link}</div>\n\t\t\t\t<div class='bResultItemText'>\n\t\t\t\t\t<small>{$vs_idno_detail_link}</small><br/>{$vs_label_detail_link}\n\t\t\t\t</div><!-- end bResultItemText -->\n\t\t\t</div><!-- end bResultItemContent -->\n\t\t\t<div class='bResultItemExpandedInfo' id='bResultItemExpandedInfo{$vn_id}'>\n\t\t\t\t<hr>\n\t\t\t\t{$vs_expanded_info}\n\t\t\t\t" . ($this->request->config->get("disable_my_collections") ? "" : "<a href='#' onclick='caMediaPanel.showPanel(\"{$vs_add_to_set_url}\"); return false;' title='{$vs_add_to_lightbox_msg}'>" . $vs_lightbox_icon . "</i></a>") . "\n\t\t\t</div><!-- bResultItemExpandedInfo -->\n\t\t</div><!-- end bResultItem -->\n\t</div><!-- end col -->";
        $vn_c++;
    }
    print caNavLink($this->request, _t('Next %1', $vn_hits_per_block), 'jscroll-next', '*', '*', '*', array('s' => $vn_start + $vn_hits_per_block, 'key' => $vs_browse_key, 'view' => $vs_current_view));
}
if ($vs_value = $t_item->get("ca_occurrences.keywords", array("convertCodesToDisplayText" => true, "delimiter" => ", "))) {
    print "<div class='unit'><b>Keyword(s):</b> " . $vs_value . "</div><!-- end unit -->";
}
if ($vs_value = $t_item->get("ca_occurrences.other_info", array("convertCodesToDisplayText" => true, "delimiter" => ", "))) {
    print "<div class='unit'><b>Other Information(s):</b> " . $vs_value . "</div><!-- end unit -->";
}
# --- objects
$va_objects = $t_item->get("ca_objects", array("returnAsArray" => 1, 'checkAccess' => $va_access_values));
$va_sorted_objects = array();
if (sizeof($va_objects) > 0) {
    $t_obj = new ca_objects();
    $va_item_types = $t_obj->getTypeList();
    foreach ($va_objects as $va_object) {
        $t_obj->load($va_object['object_id']);
        $va_sorted_objects[$va_object['item_type_id']][$va_object['object_id']] = $va_object;
    }
    foreach ($va_sorted_objects as $vn_object_type_id => $va_object_list) {
        ?>
						<div class="unit"><h2><?php 
        print _t("Related") . " " . $va_item_types[$vn_object_type_id]['name_singular'] . (sizeof($va_object_list) > 1 ? "s" : "");
        ?>
</h2>
<?php 
        foreach ($va_object_list as $vn_rel_object_id => $va_info) {
            print "<div>" . caDetailLink($this->request, $va_info["idno"], '', 'ca_objects', $vn_rel_object_id, array("subsite" => $this->request->session->getVar("coloradoSubSite"))) . " (" . $va_info['relationship_typename'] . ")</div>";
        }
        print "</div><!-- end unit -->";
    }
}
?>
</div><!-- end detailBody -->
					<li<?php 
print $ps_view == "works" ? " class='active'" : "";
?>
><?php 
print caDetailLink($this->request, _t("Selected Works"), '', 'ca_entities', $t_item->get("entity_id"), null, null, array("type_id" => $t_item->get("type_id")));
?>
</li>
					<li<?php 
print $ps_view == "exhibitions" ? " class='active'" : "";
?>
><?php 
print caDetailLink($this->request, _t("Exhibitions"), '', 'ca_entities', $t_item->get("entity_id"), array("view" => "exhibitions"), null, array("type_id" => $t_item->get("type_id")));
?>
</li>
					<li<?php 
print $ps_view == "bio" ? " class='active'" : "";
?>
><?php 
print caDetailLink($this->request, _t("Biography"), '', 'ca_entities', $t_item->get("entity_id"), array("view" => "bio"), null, array("type_id" => $t_item->get("type_id")));
?>
</li>
					<li><?php 
print caNavLink($this->request, _t("Request Information"), "", "", "Contact", "Form");
?>
</li>
				</ul>			
			</div><!-- end col -->
		</div><!-- end row -->				
	</div><!--end row contentbody-->
	
<?php 
foreach ($va_lists as $vn_type_id => $qr_list) {
    if (!$qr_list) {
        continue;
    }
    $vs_year = null;
    while ($qr_list->nextHit()) {
        if ($vs_year != $qr_list->get("exhibition_year")) {
            if ($vs_year) {
                print "</div><!-- end yearTab -->";
            }
            $vs_year = $qr_list->get("exhibition_year");
            print "<div id='yearTab" . $vs_year . "' class='yearTab'>";
        }
        print "<div class='row'>";
        print "<div class='col-sm-4 exhibitionListing'>" . caDetailLink($this->request, $va_images[$qr_list->get("occurrence_id")], '', 'ca_occurrences', $qr_list->get("occurrence_id"), null, null, array("type_id" => $qr_list->get("type_id"))) . "</div>\n";
        print "<div class='col-sm-8 exhibitionListing'><h2><strong>" . $qr_list->getWithTemplate('<l>^ca_occurrences.preferred_labels.name</l>') . "</strong></h2>" . $qr_list->get("ca_occurrences.opening_closing") . "</div>";
        print "</div><!-- end row -->\n";
    }
    print "</div><!-- end last yearTab -->";
}
?>
		</div><!--end col-sm-9-->
		<div class="row">
			<div class="col-sm-3 btmsubnav">
<?php 
print $this->render("SubNav/exhibitions_html.inc");
?>
			
			</div><!-- end col -->
		</div><!-- end row -->		
示例#10
0
/**
 * Creates links to the appropriate editor (in Providence) or detail page (in Pawtucket) from supplied text and ids.
 * Used in SearchResult::get() and BundlableLabelableBaseModelWithAttributes::get() to automatically generate links when fetching
 * information from related tables.
 *
 * @param array $pa_text An array of strings to create links for
 * @param string $ps_table_name The name of the table/record to which the links refer
 * @param array $pa_row_ids Array of row_ids to link to. Values must correspond by index with those in $pa_text
 * @param string $ps_class Optional CSS class to apply to links
 * @param string $ps_target
 * @param array $pa_options Supported options are:
 *		requireLinkTags = if set then links are only added when explicitly defined with <l> tags. Default is to make the entire text a link in the absence of <l> tags.
 * 		addRelParameter =
 *
 * @return array A list of HTML links
 */
function caCreateLinksFromText($pa_text, $ps_table_name, $pa_row_ids, $ps_class = null, $ps_target = null, $pa_options = null)
{
    if (!in_array(__CA_APP_TYPE__, array('PROVIDENCE', 'PAWTUCKET'))) {
        return $pa_text;
    }
    if (__CA_APP_TYPE__ == 'PAWTUCKET') {
        $o_config = Configuration::load();
    }
    $pb_add_rel = caGetOption('addRelParameter', $pa_options, false);
    $vb_can_handle_target = false;
    if ($ps_target) {
        $o_app_plugin_manager = new ApplicationPluginManager();
        $vb_can_handle_target = $o_app_plugin_manager->hookCanHandleGetAsLinkTarget(array('target' => $ps_target));
    }
    // Parse template
    $o_doc = str_get_dom($ps_template);
    $va_links = array();
    global $g_request;
    if (!$g_request) {
        return $pa_text;
    }
    foreach ($pa_text as $vn_i => $vs_text) {
        $vs_text = preg_replace("!([A-Za-z0-9]+)='([^']*)'!", "\$1=\"\$2\"", $vs_text);
        $va_l_tags = array();
        $o_links = $o_doc('l');
        foreach ($o_links as $o_link) {
            if (!$o_link) {
                continue;
            }
            $vs_html = $o_link->html();
            $vs_content = preg_replace("!^<[^\\>]+>!", "", $vs_html);
            $vs_content = preg_replace("!<[^\\>]+>\$!", "", $vs_content);
            $va_l_tags[] = array('directive' => html_entity_decode($vs_html), 'content' => $vs_content);
            //html_entity_decode
        }
        if (sizeof($va_l_tags)) {
            $vs_content = html_entity_decode($vs_text);
            $vs_content = preg_replace_callback("/(&#[0-9]+;)/", function ($m) {
                return mb_convert_encoding($m[1], "UTF-8", "HTML-ENTITIES");
            }, $vs_content);
            foreach ($va_l_tags as $va_l) {
                if ($vb_can_handle_target) {
                    $va_params = array('request' => $g_request, 'content' => $va_l['content'], 'table' => $ps_table_name, 'id' => $pa_row_ids[$vn_i], 'classname' => $ps_class, 'target' => $ps_target, 'additionalParameters' => null, 'options' => null);
                    $va_params = $o_app_plugin_manager->hookGetAsLink($va_params);
                    $vs_link_text = $va_params['tag'];
                } else {
                    switch (__CA_APP_TYPE__) {
                        case 'PROVIDENCE':
                            $vs_link_text = caEditorLink($g_request, $va_l['content'], $ps_class, $ps_table_name, $pa_row_ids[$vn_i], $pb_add_rel ? array('rel' => true) : array());
                            break;
                        case 'PAWTUCKET':
                            $vs_link_text = caDetailLink($g_request, $va_l['content'], $ps_class, $ps_table_name, $pa_row_ids[$vn_i]);
                            break;
                    }
                }
                if ($vs_link_text) {
                    $vs_content = str_replace($va_l['directive'], $vs_link_text, $vs_content);
                } else {
                    $vs_content = str_replace($va_l['directive'], $va_l['content'], $vs_content);
                }
            }
            $va_links[] = $vs_content;
        } else {
            if (isset($pa_options['requireLinkTags']) && $pa_options['requireLinkTags']) {
                $va_links[] = $vs_text;
                continue;
            }
            if ($vb_can_handle_target) {
                $va_params = array('request' => $g_request, 'content' => $vs_text, 'table' => $ps_table_name, 'id' => $pa_row_ids[$vn_i], 'classname' => $ps_class, 'target' => $ps_target, 'additionalParameters' => null, 'options' => null);
                $va_params = $o_app_plugin_manager->hookGetAsLink($va_params);
                $va_links[] = $va_params['tag'];
            } else {
                switch (__CA_APP_TYPE__) {
                    case 'PROVIDENCE':
                        $va_links[] = ($vs_link = caEditorLink($g_request, $vs_text, $ps_class, $ps_table_name, $pa_row_ids[$vn_i])) ? $vs_link : $vs_text;
                        break;
                    case 'PAWTUCKET':
                        $va_links[] = ($vs_link = caDetailLink($g_request, $vs_text, $ps_class, $ps_table_name, $pa_row_ids[$vn_i])) ? $vs_link : $vs_text;
                        break;
                    default:
                        $va_links[] = $vs_text;
                        break;
                }
            }
        }
    }
    return $va_links;
}
示例#11
0
        }
    }
}
$va_user_tags = $t_object->getTags(null, true);
$va_tags = array();
if (is_array($va_user_tags)) {
    foreach ($va_user_tags as $va_user_tag) {
        if (!in_array($va_user_tag["tag"], $va_tags)) {
            $va_tags[] = $va_user_tag["tag"];
        }
    }
}
?>
<div id="detailTools">
	<div class="detailTool"><?php 
print caDetailLink($this->request, "<span class='glyphicon glyphicon-plus'></span>" . _t("VIEW RECORD"), '', 'ca_objects', $this->getVar("object_id"));
?>
</div>
	<div class="detailTool"><a href='#' onclick='jQuery("#detailComments").slideToggle(); return false;'><span class="glyphicon glyphicon-comment"></span>Comments (<?php 
print sizeof($va_comments);
?>
)</a></div><!-- end detailTool -->
	<div id='detailComments'><?php 
#print caDetailItemComments($this->request, $t_object->getPrimaryKey(), $t_object, $va_comments, $va_tags);
?>
	
<?php 
if (is_array($va_comments) && sizeof($va_comments) > 0) {
    foreach ($va_comments as $va_comment) {
        print "<blockquote>";
        if ($va_comment["media1"]) {
					<li<?php 
    print in_array($ps_view, array("images", "thumbnails")) ? " class='active'" : "";
    ?>
><?php 
    print caDetailLink($this->request, _t("Works"), '', 'ca_occurrences', $t_item->get("occurrence_id"), array("view" => "images"), null, array("type_id" => $t_item->get("type_id")));
    ?>
</li>
<?php 
}
if (is_array($va_rep_install_ids) && sizeof($va_rep_install_ids)) {
    ?>
					<li<?php 
    print in_array($ps_view, array("installations", "installationThumbnails")) ? " class='active'" : "";
    ?>
><?php 
    print caDetailLink($this->request, _t("Installation views"), '', 'ca_occurrences', $t_item->get("occurrence_id"), array("view" => "installations"), null, array("type_id" => $t_item->get("type_id")));
    ?>
</li>
<?php 
}
if ($vs_pr_link = $t_item->get("press_release", array("version" => "original", "return" => "url"))) {
    print "<li><a href='" . $vs_pr_link . "'>Press Release</a></li>";
}
?>
			
				</ul>		
			</div><!-- end col -->
		</div><!-- end row -->				
	</div><!--end row contentbody-->
	
$va_locality_display = array();
$va_place_type_ids_to_exclude = array($t_lists->getItemIDFromList("place_types", "city"), $t_lists->getItemIDFromList("place_types", "basin"), $t_lists->getItemIDFromList("place_types", "other"), $t_lists->getItemIDFromList("place_types", "locality"));
if (sizeof($va_locality_list)) {
    $t_place = new ca_places();
    print "<br><div class='unit'><h2>UCM " . (sizeof($va_places) > 1 ? "Localities" : "Locality") . "</h2>";
    foreach ($va_locality_list as $va_locality) {
        $vs_locality_path = "";
        $va_hierarchy = caExtractValuesByUserLocale($t_place->getHierarchyAncestors($va_locality["place_id"], array("additionalTableToJoin" => "ca_place_labels", "additionalTableSelectFields" => array("name"))));
        $va_hierarchy = array_reverse($va_hierarchy);
        array_shift($va_hierarchy);
        foreach ($va_hierarchy as $va_hier_locality) {
            if (!in_array($va_hier_locality["type_id"], $va_place_type_ids_to_exclude)) {
                $vs_locality_path .= $va_hier_locality["name"] . " / ";
            }
        }
        $vs_locality_path = caDetailLink($this->request, $va_locality["idno"], '', 'ca_places', $va_locality["place_id"], array("subsite" => $this->request->session->getVar("coloradoSubSite"))) . "<br/>" . $vs_locality_path . $va_locality["idno"];
        $va_locality_display[] = $vs_locality_path;
    }
    print join("<br/>", $va_locality_display);
    print "</div><!-- end unit -->";
}
?>
		</div><!-- end leftCol-->
		<div id="rightCol">
<?php 
if ($this->getVar("representationViewer")) {
    print $this->getVar("representationViewer");
}
?>
		</div><!-- end rightCol -->
	</div><!-- end detailBody -->
        # -------------------------------------------------------------------------------
}
if (in_array($ps_view, array("images", "thumbnails"))) {
    ?>
			<div id="imageNav">
<?php 
    print caDetailLink($this->request, _t("slideshow"), $ps_view == "images" ? "active" : "", 'ca_occurrences', $t_item->get("occurrence_id"), array("view" => "images"), null, array("type_id" => $t_item->get("type_id"))) . " | " . caDetailLink($this->request, _t("thumbnails"), $ps_view == "thumbnails" ? "active" : "", 'ca_occurrences', $t_item->get("occurrence_id"), array("view" => "thumbnails"), null, array("type_id" => $t_item->get("type_id")));
    ?>
			</div>
<?php 
}
if (in_array($ps_view, array("installations", "installationThumbnails"))) {
    ?>
			<div id="imageNav">
<?php 
    print caDetailLink($this->request, _t("slideshow"), $ps_view == "installations" ? "active" : "", 'ca_occurrences', $t_item->get("occurrence_id"), array("view" => "installations"), null, array("type_id" => $t_item->get("type_id"))) . " | " . caDetailLink($this->request, _t("thumbnails"), $ps_view == "installationThumbnails" ? "active" : "", 'ca_occurrences', $t_item->get("occurrence_id"), array("view" => "installationThumbnails"), null, array("type_id" => $t_item->get("type_id")));
    ?>
			</div>
<?php 
}
?>
				</div><!--end col-sm-12-->
			</div><!--end row-->
		</div><!--end col-sm-9-->
		<div class="row">
			<div class="col-sm-3 btmsubnav">
<?php 
print $this->render("SubNav/exhibitions_html.inc");
?>
			
			</div><!-- end col -->
示例#15
0
/**
 * Creates links to the appropriate editor (in Providence) or detail page (in Pawtucket) from supplied text and ids.
 * Used in SearchResult::get() and BundlableLabelableBaseModelWithAttributes::get() to automatically generate links when fetching
 * information from related tables.
 *
 * @param array $pa_text An array of strings to create links for
 * @param string $ps_table_name The name of the table/record to which the links refer
 * @param array $pa_row_ids Array of row_ids to link to. Values must correspond by index with those in $pa_text
 * @param string $ps_class Optional CSS class to apply to links
 * @param string $ps_target
 * @param array $pa_options Supported options are:
 *		requireLinkTags = if set then links are only added when explicitly defined with <l> tags. Default is to make the entire text a link in the absence of <l> tags.
 * 		addRelParameter =
 *
 * @return array A list of HTML links
 */
function caCreateLinksFromText($pa_text, $ps_table_name, $pa_row_ids, $ps_class = null, $ps_target = null, $pa_options = null)
{
    if (!in_array(__CA_APP_TYPE__, array('PROVIDENCE', 'PAWTUCKET'))) {
        return $pa_text;
    }
    if (__CA_APP_TYPE__ == 'PAWTUCKET') {
        $o_config = Configuration::load();
    }
    $pb_add_rel = caGetOption('addRelParameter', $pa_options, false);
    $vb_can_handle_target = false;
    if ($ps_target) {
        $o_app_plugin_manager = new ApplicationPluginManager();
        $vb_can_handle_target = $o_app_plugin_manager->hookCanHandleGetAsLinkTarget(array('target' => $ps_target));
    }
    // Parse template
    $o_dom = new DOMDocument('1.0', 'utf-8');
    $o_dom->preserveWhiteSpace = true;
    libxml_use_internal_errors(true);
    // don't reported mangled HTML errors
    $va_links = array();
    global $g_request;
    if (!$g_request) {
        return $pa_text;
    }
    foreach ($pa_text as $vn_i => $vs_text) {
        $vs_text = preg_replace("!([A-Za-z0-9]+)='([^']*)'!", "\$1=\"\$2\"", $vs_text);
        // DomDcoument converts single quotes around attributes to double quotes so we do the same to the template
        $vs_text = preg_replace("![ ]+/>!", "/>", $vs_text);
        $vs_text = preg_replace("![\r\n]+!", "", $vs_text);
        // DomDocument removes newlines so we do the same here to the template
        $o_dom->loadHTML('<?xml encoding="utf-8">' . mb_convert_encoding($vs_text, 'HTML-ENTITIES', 'UTF-8'));
        // Needs XML declaration to force it to consider the text as UTF-8. Please don't ask why. No one knows.
        $o_dom->encoding = 'utf-8';
        libxml_clear_errors();
        $va_l_tags = array();
        $o_links = $o_dom->getElementsByTagName("l");
        // l=link
        foreach ($o_links as $o_link) {
            if (!$o_link) {
                continue;
            }
            $vs_html = $o_dom->saveXML($o_link);
            $vs_content = preg_replace("!^<[^\\>]+>!", "", $vs_html);
            $vs_content = preg_replace("!<[^\\>]+>\$!", "", $vs_content);
            $va_l_tags[] = array('directive' => html_entity_decode($vs_html), 'content' => $vs_content);
            //html_entity_decode
        }
        if (sizeof($va_l_tags)) {
            $vs_content = html_entity_decode($vs_text);
            $vs_content = preg_replace_callback("/(&#[0-9]+;)/", function ($m) {
                return mb_convert_encoding($m[1], "UTF-8", "HTML-ENTITIES");
            }, $vs_content);
            foreach ($va_l_tags as $va_l) {
                if ($vb_can_handle_target) {
                    $va_params = array('request' => $g_request, 'content' => $va_l['content'], 'table' => $ps_table_name, 'id' => $pa_row_ids[$vn_i], 'classname' => $ps_class, 'target' => $ps_target, 'additionalParameters' => null, 'options' => null);
                    $va_params = $o_app_plugin_manager->hookGetAsLink($va_params);
                    $vs_link_text = $va_params['tag'];
                } else {
                    switch (__CA_APP_TYPE__) {
                        case 'PROVIDENCE':
                            $vs_link_text = caEditorLink($g_request, $va_l['content'], $ps_class, $ps_table_name, $pa_row_ids[$vn_i], $pb_add_rel ? array('rel' => true) : array());
                            break;
                        case 'PAWTUCKET':
                            $vs_link_text = caDetailLink($g_request, $va_l['content'], $ps_class, $ps_table_name, $pa_row_ids[$vn_i]);
                            break;
                    }
                }
                if ($vs_link_text) {
                    $vs_content = str_replace($va_l['directive'], $vs_link_text, $vs_content);
                } else {
                    $vs_content = str_replace($va_l['directive'], $va_l['content'], $vs_content);
                }
            }
            $va_links[] = $vs_content;
        } else {
            if (isset($pa_options['requireLinkTags']) && $pa_options['requireLinkTags']) {
                $va_links[] = $vs_text;
                continue;
            }
            if ($vb_can_handle_target) {
                $va_params = array('request' => $g_request, 'content' => $vs_text, 'table' => $ps_table_name, 'id' => $pa_row_ids[$vn_i], 'classname' => $ps_class, 'target' => $ps_target, 'additionalParameters' => null, 'options' => null);
                $va_params = $o_app_plugin_manager->hookGetAsLink($va_params);
                $va_links[] = $va_params['tag'];
            } else {
                switch (__CA_APP_TYPE__) {
                    case 'PROVIDENCE':
                        $va_links[] = ($vs_link = caEditorLink($g_request, $vs_text, $ps_class, $ps_table_name, $pa_row_ids[$vn_i])) ? $vs_link : $vs_text;
                        break;
                    case 'PAWTUCKET':
                        $va_links[] = ($vs_link = caDetailLink($g_request, $vs_text, $ps_class, $ps_table_name, $pa_row_ids[$vn_i])) ? $vs_link : $vs_text;
                        break;
                    default:
                        $va_links[] = $vs_text;
                        break;
                }
            }
        }
    }
    return $va_links;
}
        } else {
            $vn_date = "";
        }
        if ($qr_res->get('ca_entities.preferred_labels')) {
            $vs_entity_detail_link = "<p>" . $qr_res->get("ca_entities.preferred_labels", array('delimiter' => ', ')) . $vn_date . "</p>";
        } elseif ($qr_res->get('ca_occurrences.preferred_labels')) {
            $vs_entity_detail_link = "<p>" . $qr_res->get("ca_occurrences.preferred_labels", array('delimiter' => ', ')) . $vn_date . "</p>";
        } else {
            $vs_entity_detail_link = ", " . $qr_res->get('ca_objects.dates.dates_value');
        }
        $vs_label_detail_link = caDetailLink($this->request, $qr_res->get("{$vs_table}.preferred_labels.name"), '', $vs_table, $vn_id);
        $vs_thumbnail = "";
        if ($vs_table == 'ca_objects') {
            if (!($vs_thumbnail = $qr_res->getMediaTag('ca_object_representations.media', 'squarethumb', array("checkAccess" => $va_access_values)))) {
                $vs_thumbnail = $vs_placeholder_tag;
            }
            $vs_rep_detail_link = caDetailLink($this->request, $vs_thumbnail, '', $vs_table, $vn_id);
        } else {
            if ($va_images[$vn_id]) {
                $vs_thumbnail = $va_images[$vn_id];
            } else {
                $vs_thumbnail = $vs_placeholder_tag;
            }
            $vs_rep_detail_link = caDetailLink($this->request, $vs_thumbnail, '', $vs_table, $vn_id);
        }
        $vs_add_to_set_url = caNavUrl($this->request, '', 'Sets', 'addItemForm', array($vs_pk => $vn_id));
        $vs_expanded_info = $qr_res->getWithTemplate($vs_extended_info_template);
        print "\n\t<div class='bResultItemCol col-xs-6 col-sm-4 col-md-3 col-lg-2'>\n\t\t<div class='bResultItem' onmouseover='jQuery(\"#bResultItemExpandedInfo{$vn_id}\").show();'  onmouseout='jQuery(\"#bResultItemExpandedInfo{$vn_id}\").hide();'>\n\t\t\t<div class='bResultItemContent'><div class='text-center bResultItemImg'>{$vs_rep_detail_link}</div>\n\t\t\t\t<div class='bResultItemText'>\n\t\t\t\t\t{$vs_label_detail_link}{$vs_entity_detail_link}\n\t\t\t\t</div><!-- end bResultItemText -->\n\t\t\t</div><!-- end bResultItemContent -->\n\t\t\t\n\t\t</div><!-- end bResultItem -->\n\t</div><!-- end col -->";
        $vn_c++;
    }
}
示例#17
0
/**
 * Returns the info for each set item
 * 
 * options: "write_access" = false
 * 
 */
function caLightboxSetDetailItemOld($po_request, $va_set_item = array(), $pa_options = array())
{
    $t_set_item = new ca_set_items($va_set_item["item_id"]);
    if (!$t_set_item->get("item_id")) {
        return false;
    }
    $vb_write_access = false;
    if ($pa_options["write_access"]) {
        $vb_write_access = true;
    }
    $t_list_items = new ca_list_items($va_set_item["type_id"]);
    $vs_placeholder = getPlaceholder($t_list_items->get("idno"), "placeholder_media_icon");
    $vs_caption = "";
    $o_config = caGetSetsConfig();
    $vs_caption_template = $o_config->get("caption_template");
    if ($vs_caption_template) {
        $t_object = new ca_objects($va_set_item["row_id"]);
        $vs_caption = $t_object->getWithTemplate($vs_caption_template);
    } else {
        $vs_caption = $va_set_item["set_item_label"];
    }
    $vs_set_item_display = "";
    $vs_set_item_display .= "<div class='lbItem'><div class='lbItemContent'>\n";
    #$vs_set_item_display .= "<div class='lbItem' onmouseover='jQuery(\"#lbExpandedInfo".$t_set_item->get("item_id")."\").show();'  onmouseout='jQuery(\"#lbExpandedInfo".$t_set_item->get("item_id")."\").hide();'><div class='lbItemContent'>\n";
    if ($va_set_item["representation_tag_medium"]) {
        $vs_set_item_display .= caDetailLink($po_request, "<div class='lbItemImg'>" . $va_set_item["representation_tag_medium"] . "</div>", '', 'ca_objects', $va_set_item["row_id"]);
    } else {
        $vs_set_item_display .= caDetailLink($po_request, "<div class='lbItemImg lbSetImgPlaceholder'>" . $vs_placeholder . "</div>", '', 'ca_objects', $va_set_item["row_id"]);
    }
    $vs_set_item_display .= "<div id='comment" . $t_set_item->get("item_id") . "' class='lbSetItemComment'><!-- load comments here --></div>\n";
    $vs_set_item_display .= "<div class='caption'>" . $vs_caption . "</div>\n";
    $vs_set_item_display .= "</div><!-- end lbItemContent -->\n";
    $vs_set_item_display .= "<div class='lbExpandedInfo' id='lbExpandedInfo" . $t_set_item->get("item_id") . "'>\n<hr>\n";
    if ($vb_write_access) {
        $vs_set_item_display .= "<div class='pull-right'><a href='#' class='lbItemDeleteButton' id='lbItemDelete" . $t_set_item->get("item_id") . "' title='" . _t("Remove") . "'><span class='glyphicon glyphicon-trash'></span></a></div>\n";
    }
    $vs_set_item_display .= "<div>" . caDetailLink($po_request, "<span class='glyphicon glyphicon-file'></span>", '', 'ca_objects', $va_set_item["row_id"], "", array("title" => _t("View Item Detail"))) . "\n";
    if ($va_set_item["representation_id"]) {
        $vs_set_item_display .= "&nbsp;<a href='#' title='" . _t("Enlarge Image") . "' onclick='caMediaPanel.showPanel(\"" . caNavUrl($po_request, '', 'Detail', 'GetRepresentationInfo', array('object_id' => $t_set_item->get("row_id"), 'representation_id' => $va_set_item["representation_id"], 'overlay' => 1)) . "\"); return false;' ><span class='glyphicon glyphicon-zoom-in'></span></a>\n";
    }
    $vs_set_item_display .= "&nbsp;&nbsp;<a href='#' title='" . _t("Comments") . "' onclick='jQuery(\"#comment" . $t_set_item->get("item_id") . "\").load(\"" . caNavUrl($po_request, '', 'Sets', 'AjaxListComments', array('item_id' => $t_set_item->get("item_id"), 'tablename' => 'ca_set_items', 'set_id' => $t_set_item->get("set_id"))) . "\", function(){jQuery(\"#comment" . $t_set_item->get("item_id") . "\").show();}); return false;'><span class='glyphicon glyphicon-comment'></span> <small>" . $t_set_item->getNumComments() . "</small></a></div>\n";
    $vs_set_item_display .= "</div><!-- end lbExpandedInfo --></div><!-- end lbItem -->\n";
    return $vs_set_item_display;
}
示例#18
0
}
if (is_array($va_item_ids) && sizeof($va_item_ids)) {
    $t_object = new ca_objects();
    $va_item_media = $t_object->getPrimaryMediaForIDs($va_item_ids, array("mediumlarge"), array('checkAccess' => $va_access_values));
    $va_item_labels = $t_object->getPreferredDisplayLabelsForIDs($va_item_ids);
}
if (is_array($va_item_media) && sizeof($va_item_media)) {
    ?>
   
		<div class="jcarousel-wrapper slidecontainer">
			<!-- Carousel -->
			<div class="jcarousel">
				<ul>
<?php 
    foreach ($va_item_media as $vn_object_id => $va_media) {
        print "<li>" . caDetailLink($this->request, $va_media["tags"]["mediumlarge"], '', 'ca_objects', $vn_object_id) . "</li>";
    }
    ?>
				</ul>
			</div><!-- end jcarousel -->
<?php 
    if (sizeof($va_item_media) > 1) {
        ?>
			<!-- Prev/next controls -->
			<a href="#" class="jcarousel-control-prev">&lsaquo;</a>
			<a href="#" class="jcarousel-control-next">&rsaquo;</a>
		
			<!-- Pagination -->
			<p class="jcarousel-pagination">
			<!-- Pagination items will be generated in here -->
			</p>
示例#19
0
/**
 * Creates links to the appropriate editor (in Providence) or detail page (in Pawtucket) from supplied text and ids.
 * Used in SearchResult::get() and BundlableLabelableBaseModelWithAttributes::get() to automatically generate links when fetching
 * information from related tables.
 *
 * @param array $pa_text An array of strings to create links for
 * @param string $ps_table_name The name of the table/record to which the links refer
 * @param array $pa_row_ids Array of row_ids to link to. Values must correspond by index with those in $pa_text
 * @param string $ps_class Optional CSS class to apply to links
 * @param array $pa_options Supported options are:
 *		requireLinkTags = if set then links are only added when explicitly defined with <l> tags. Default is to make the entire text a link in the absence of <l> tags.
 *
 * @return array A list of HTML links
 */
function caCreateLinksFromText($pa_text, $ps_table_name, $pa_row_ids, $ps_class = null, $ps_target = null, $pa_options = null)
{
    if (!in_array(__CA_APP_TYPE__, array('PROVIDENCE', 'PAWTUCKET'))) {
        return $pa_text;
    }
    if (__CA_APP_TYPE__ == 'PAWTUCKET') {
        $o_config = Configuration::load();
    }
    $vb_can_handle_target = false;
    if ($ps_target) {
        $o_app_plugin_manager = new ApplicationPluginManager();
        $vb_can_handle_target = $o_app_plugin_manager->hookCanHandleGetAsLinkTarget(array('target' => $ps_target));
    }
    // Parse template
    $o_dom = new DOMDocument('1.0', 'utf-8');
    $o_dom->preserveWhiteSpace = true;
    libxml_use_internal_errors(true);
    // don't reported mangled HTML errors
    $o_dm = Datamodel::load();
    $va_links = $va_type_ids = array();
    if ($t_instance = $o_dm->getInstanceByTableName($ps_table_name)) {
        $va_type_ids = $t_instance->getFieldValuesForIDs($pa_row_ids, array('type_id'));
        //if (caUseIdentifiersInUrls()) {
        //	$pa_row_ids = array_values($t_instance->getFieldValuesForIDs($pa_row_ids, array($t_instance->getProperty('ID_NUMBERING_ID_FIELD'))));
        //}
    }
    global $g_request;
    if (!$g_request) {
        return $pa_text;
    }
    foreach ($pa_text as $vn_i => $vs_text) {
        $vs_text = preg_replace("!([A-Za-z0-9]+)='([^']*)'!", "\$1=\"\$2\"", $vs_text);
        // DomDcoument converts single quotes around attributes to double quotes so we do the same to the template
        $vs_text = preg_replace("![ ]+/>!", "/>", $vs_text);
        // DomDocument removes spaces before the end of self-closing tags so we do the same here to the template
        $o_dom->loadHTML('<?xml encoding="utf-8">' . $vs_text);
        // Needs XML declaration to force it to consider the text as UTF-8. Please don't ask why. No one knows.
        libxml_clear_errors();
        $va_l_tags = array();
        $o_links = $o_dom->getElementsByTagName("l");
        // l=link
        foreach ($o_links as $o_link) {
            if (!$o_link) {
                continue;
            }
            $vs_html = $o_dom->saveXML($o_link);
            $vs_content = preg_replace("!^<[^\\>]+>!", "", $vs_html);
            $vs_content = preg_replace("!<[^\\>]+>\$!", "", $vs_content);
            $va_l_tags[] = array('directive' => html_entity_decode($vs_html), 'content' => $vs_content);
        }
        if (sizeof($va_l_tags)) {
            $vs_content = $vs_text;
            foreach ($va_l_tags as $va_l) {
                if ($vb_can_handle_target) {
                    $va_params = array('request' => $g_request, 'content' => $va_l['content'], 'table' => $ps_table_name, 'id' => $pa_row_ids[$vn_i], 'classname' => $ps_class, 'target' => $ps_target, 'additionalParameters' => null, 'options' => null);
                    $va_params = $o_app_plugin_manager->hookGetAsLink($va_params);
                    $vs_link_text = $va_params['tag'];
                } else {
                    switch (__CA_APP_TYPE__) {
                        case 'PROVIDENCE':
                            $vs_link_text = caEditorLink($g_request, $va_l['content'], $ps_class, $ps_table_name, $pa_row_ids[$vn_i]);
                            break;
                        case 'PAWTUCKET':
                            $vs_link_text = caDetailLink($g_request, $va_l['content'], $ps_class, $ps_table_name, $pa_row_ids[$vn_i], array(), array(), array('type_id' => $va_type_ids[$pa_row_ids[$vn_i]]));
                            break;
                    }
                }
                if ($vs_link_text) {
                    $vs_content = str_replace($va_l['directive'], $vs_link_text, $vs_content);
                } else {
                    $vs_content = str_replace($va_l['directive'], $va_l['content'], $vs_content);
                }
            }
            $va_links[] = $vs_content;
        } else {
            if (isset($pa_options['requireLinkTags']) && $pa_options['requireLinkTags']) {
                $va_links[] = $vs_text;
                continue;
            }
            if ($vb_can_handle_target) {
                $va_params = array('request' => $g_request, 'content' => $vs_text, 'table' => $ps_table_name, 'id' => $pa_row_ids[$vn_i], 'classname' => $ps_class, 'target' => $ps_target, 'additionalParameters' => null, 'options' => null);
                $va_params = $o_app_plugin_manager->hookGetAsLink($va_params);
                $va_links[] = $va_params['tag'];
            } else {
                switch (__CA_APP_TYPE__) {
                    case 'PROVIDENCE':
                        $va_links[] = ($vs_link = caEditorLink($g_request, $vs_text, $ps_class, $ps_table_name, $pa_row_ids[$vn_i])) ? $vs_link : $vs_text;
                        break;
                    case 'PAWTUCKET':
                        $va_links[] = ($vs_link = caDetailLink($g_request, $vs_text, $ps_class, $ps_table_name, $pa_row_ids[$vn_i], array(), array(), array('type_id' => $va_type_ids[$pa_row_ids[$vn_i]]))) ? $vs_link : $vs_text;
                        break;
                    default:
                        $va_links[] = $vs_text;
                        break;
                }
            }
        }
    }
    return $va_links;
}
 * the "license.txt" file for details, or visit the CollectiveAccess web site at
 * http://www.CollectiveAccess.org
 *
 * @package CollectiveAccess
 * @subpackage Core
 * @license http://www.gnu.org/copyleft/gpl.html GNU Public License version 3
 *
 * ----------------------------------------------------------------------
 */
$va_lists = $this->getVar('lists');
$va_type_info = $this->getVar('typeInfo');
$va_listing_info = $this->getVar('listingInfo');
$va_access_values = caGetUserAccessValues($this->request);
print "<div class='fairList'>";
foreach ($va_lists as $vn_type_id => $qr_list) {
    if (!$qr_list) {
        continue;
    }
    print "<div class='row'>";
    $va_ids = array();
    while ($qr_list->nextHit()) {
        $va_ids[] = $qr_list->get("occurrence_id");
    }
    $qr_list->seek(0);
    $va_images = caGetDisplayImagesForAuthorityItems("ca_occurrences", $va_ids, array('version' => 'thumbnail300', 'relationshipTypes' => array("logo"), 'checkAccess' => $va_access_values));
    while ($qr_list->nextHit()) {
        print "<div class='col-sm-4 fairListing'>" . caDetailLink($this->request, $va_images[$qr_list->get("occurrence_id")], '', 'ca_occurrences', $qr_list->get("occurrence_id"), null, null, array("type_id" => $qr_list->get("type_id"))) . "<h2>" . $qr_list->getWithTemplate('<l>^ca_occurrences.preferred_labels.name</l>') . "</h2>" . $qr_list->get('ca_occurrences.opening_closing') . "</div>\n";
    }
    print "</div><!-- end row -->\n";
}
print "</div><!-- end fairList -->\n";
 * CollectiveAccess is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTIES whatsoever, including any implied warranty of 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
 *
 * This source code is free and modifiable under the terms of 
 * GNU General Public License. (http://www.gnu.org/copyleft/gpl.html). See
 * the "license.txt" file for details, or visit the CollectiveAccess web site at
 * http://www.CollectiveAccess.org
 *
 * @package CollectiveAccess
 * @subpackage Core
 * @license http://www.gnu.org/copyleft/gpl.html GNU Public License version 3
 *
 * ----------------------------------------------------------------------
 */
$va_lists = $this->getVar('lists');
$va_type_info = $this->getVar('typeInfo');
$va_listing_info = $this->getVar('listingInfo');
$va_access_values = caGetUserAccessValues($this->request);
print "<div class='pubList'>";
foreach ($va_lists as $vn_type_id => $qr_list) {
    if (!$qr_list) {
        continue;
    }
    print "<div class='row'>";
    while ($qr_list->nextHit()) {
        print "<div class='col-sm-3 pubListing'>" . caDetailLink($this->request, $qr_list->get("ca_object_representations.media.small", array("checkAccess" => $va_access_values)), '', 'ca_objects', $qr_list->get("object_id"), null, null, array("type_id" => $qr_list->get("type_id"))) . "<h2>" . $qr_list->getWithTemplate('<l>^ca_objects.preferred_labels.name</l>') . "</h2></div>\n";
    }
    print "</div><!-- end row -->\n";
}
print "</div><!-- end pubList -->\n";
print "<div class='fairList'>";
foreach ($va_lists as $vn_type_id => $qr_list) {
    if (!$qr_list) {
        continue;
    }
    $va_ids = array();
    while ($qr_list->nextHit()) {
        $va_ids[] = $qr_list->get("occurrence_id");
    }
    $qr_list->seek(0);
    #$va_images = caGetDisplayImagesForAuthorityItems("ca_occurrences", $va_ids, array('version' => 'thumbnail300', 'relationshipTypes' => array("logo"), 'checkAccess' => $va_access_values));
    $vn_col = 1;
    while ($qr_list->nextHit()) {
        if ($vn_col == 1) {
            print "<div class='row'>";
        }
        $vs_image = $qr_list->get("ca_object_representations.media.medium", array("retrictToRelationshipTypes" => "logo"));
        #print "<div class='col-sm-4 fairListing'>".caDetailLink($this->request, $va_images[$qr_list->get("occurrence_id")], '', 'ca_occurrences', $qr_list->get("occurrence_id"), null, null, array("type_id" => $qr_list->get("type_id")))."<h2>".$qr_list->getWithTemplate('<l>^ca_occurrences.preferred_labels.name</l>')."</h2>".$qr_list->get('ca_occurrences.opening_closing')."</div>\n";
        print "<div class='col-sm-3 fairListing'><div class='fairListingImg'>" . caDetailLink($this->request, $vs_image ? $vs_image : "<h2>" . $qr_list->getWithTemplate('<l>^ca_occurrences.preferred_labels.name</l>') . "</h2>", '', 'ca_occurrences', $qr_list->get("occurrence_id"), null, null, array("type_id" => $qr_list->get("type_id"))) . "</div></div>\n";
        if ($vn_col == 4) {
            print "</div>";
            $vn_col = 1;
        } else {
            $vn_col++;
        }
    }
    if ($vn_col > 1) {
        print "</div><!-- end row -->\n";
    }
}
print "</div><!-- end fairList -->\n";
    if ($vs_table != 'ca_objects') {
        $va_ids = array();
        while ($qr_res->nextHit() && $vn_c < $vn_hits_per_block) {
            $va_ids[] = $qr_res->get("{$vs_table}.{$vs_pk}");
        }
        $qr_res->seek($vn_start);
        $va_images = caGetDisplayImagesForAuthorityItems($vs_table, $va_ids, array('version' => 'small', 'relationshipTypes' => caGetOption('selectMediaUsingRelationshipTypes', $va_options, null), 'checkAccess' => $va_access_values));
    } else {
        $va_images = null;
    }
    $vs_add_to_lightbox_msg = addslashes(_t('Add to lightbox'));
    while ($qr_res->nextHit() && $vn_c < $vn_hits_per_block) {
        $vn_id = $qr_res->get("{$vs_table}.{$vs_pk}");
        $vs_idno_detail_link = caDetailLink($this->request, $qr_res->get("{$vs_table}.idno"), '', $vs_table, $vn_id);
        $vs_label_detail_link = caDetailLink($this->request, $qr_res->get("{$vs_table}.preferred_labels"), '', $vs_table, $vn_id);
        $vs_image = $vs_table === 'ca_objects' ? $qr_res->getMediaTag("ca_object_representations.media", 'small', array("checkAccess" => $va_access_values)) : $va_images[$vn_id];
        if (!$vs_image) {
            $vs_image = $vs_placeholder_tag;
        }
        $vs_rep_detail_link = caDetailLink($this->request, $vs_image, '', $vs_table, $vn_id);
        $vs_add_to_set_url = caNavUrl($this->request, '', 'Sets', 'addItemForm', array($vs_pk => $vn_id));
        $vs_expanded_info = $qr_res->getWithTemplate($vs_extended_info_template);
        if ($qr_res->get('parent_id')) {
            $vn_parent_id = $qr_res->get('ca_objects.parent_id');
            $vn_parent_reel = "<span class='metaData'> " . _t("Part Of reel") . ": " . caNavLink($this->request, $qr_res->get("ca_objects.parent.preferred_labels.name"), '', '', 'Detail', 'objects/' . $vn_parent_id) . "</span><br/>";
        }
        print "\n\t<div class='bResultListItemCol col-xs-{$vn_col_span_xs} col-sm-{$vn_col_span_sm} col-md-{$vn_col_span}'>\n\t\t<div class='bResultListItem' onmouseover='jQuery(\"#bResultListItemExpandedInfo{$vn_id}\").show();'  onmouseout='jQuery(\"#bResultListItemExpandedInfo{$vn_id}\").hide();'>\n\t\t\t<div class='bResultListItemContent'><div class='text-center bResultListItemImg'>{$vs_rep_detail_link}</div>\n\t\t\t\t<div class='bResultListItemText'>\n\t\t\t\t\t<small>{$vs_idno_detail_link}</small><br/>{$vs_label_detail_link}\n\t\t\t\t</div><!-- end bResultListItemText -->\n\t\t\t</div><!-- end bResultListItemContent -->\n\t\t\t<div class='bResultListItemExpandedInfo' id='bResultListItemExpandedInfo{$vn_id}'>\n\t\t\t\t<hr>\n\t\t\t\t{$vs_expanded_info}\n\t\t\t\t{$vn_parent_reel}\n\t\t\t\t" . ($vs_table != 'ca_objects' || $this->request->config->get("disable_my_collections") ? "" : "<a href='#' class='suitcase' onclick='caMediaPanel.showPanel(\"{$vs_add_to_set_url}\"); return false;' title='{$vs_add_to_lightbox_msg}'>" . $vs_lightbox_icon . "</i></a>") . "\n\t\t\t</div><!-- bResultListItemExpandedInfo -->\n\t\t</div><!-- end bResultListItem -->\n\t</div><!-- end col -->";
        $vn_c++;
    }
    print caNavLink($this->request, _t('Next %1', $vn_hits_per_block), 'jscroll-next', '*', '*', '*', array('s' => $vn_start + $vn_hits_per_block, 'key' => $vs_browse_key, 'view' => $vs_current_view));
}
            } elseif ($qr_res->get('ca_objects.type_id') == 24 && !$qr_res->getMediaTag('ca_object_representations.media', 'medium', array('checkAccess' => $va_access_values))) {
                $va_icon = "<i class='fa fa-archive'></i>";
            } elseif ($qr_res->get('ca_objects.type_id') == 27 && !$qr_res->getMediaTag('ca_object_representations.media', 'medium', array('checkAccess' => $va_access_values))) {
                $va_icon = "<i class='fa fa-archive'></i>";
            } else {
                $va_icon = "";
            }
            if ($qr_res->get('ca_objects.type_id') == 1903) {
                $vs_rep_detail_link = caDetailLink($this->request, $va_icon . $t_copy->get('ca_object_representations.media.medium', array('checkAccess' => $va_access_values)), '', $vs_table, $vn_parent_id);
            } elseif ($qr_res->get('ca_objects.type_id') == 25) {
                $vs_rep_detail_link = caDetailLink($this->request, $va_icon, '', $vs_table, $vn_id);
            } else {
                $vs_rep_detail_link = caDetailLink($this->request, $va_icon . $qr_res->getMediaTag('ca_object_representations.media', 'medium', array('checkAccess' => $va_access_values)), '', $vs_table, $vn_id);
            }
        } else {
            $vs_rep_detail_link = caDetailLink($this->request, $va_icon . $va_images[$vn_id], '', $vs_table, $vn_id);
        }
        $vs_add_to_set_url = caNavUrl($this->request, '', 'Sets', 'addItemForm', array($vs_pk => $vn_id));
        $vs_expanded_info = $qr_res->getWithTemplate($vs_extended_info_template);
        print "\n\t<div class='bResultItemCol col-xs-{$vn_col_span_xs} col-sm-{$vn_col_span_sm} col-md-{$vn_col_span}'>\n\t\t<div class='bResultItem' onmouseover='jQuery(\"#bResultItemExpandedInfo{$vn_id}\").show();'  onmouseout='jQuery(\"#bResultItemExpandedInfo{$vn_id}\").hide();'>\n\t\t\t<div class='bSetsSelectMultiple'><input type='checkbox' id='cResultSelected_{$vn_id}' name='object_ids[]' value='{$vn_id}'></div>\n\t\t\t<div class='bResultItemContent'><div class='text-center bResultItemImg'>{$vs_rep_detail_link}</div>\n\t\t\t\t<div class='bResultItemText'>\n\t\t\t\t\t{$vs_label_artist}{$vs_label_detail_link}{$vs_collection_link}{$vs_type_link}{$vs_date_link}{$vs_art_idno_link}{$vs_library_info}{$vs_deaccessioned}\n\t\t\t\t</div><!-- end bResultItemText -->\n\t\t\t</div><!-- end bResultItemContent -->\n\t\t\t<div class='bResultItemExpandedInfo' id='bResultItemExpandedInfo{$vn_id}'>\n\t\t\t\t<hr>\n\t\t\t\t{$vs_expanded_info}\n\t\t\t\t" . ($this->request->config->get("disable_my_collections") ? "" : "<a href='#' onclick='caMediaPanel.showPanel(\"{$vs_add_to_set_url}\"); return false;' title='{$vs_add_to_lightbox_msg}'><span class='glyphicon glyphicon-folder-open'></span></a>") . "\n\t\t\t</div><!-- bResultItemExpandedInfo -->\n\t\t</div><!-- end bResultItem -->\n\t</div><!-- end col -->";
        $vn_c++;
    }
    print caNavLink($this->request, _t('Next %1', $vn_hits_per_block), 'jscroll-next', '*', '*', '*', array('s' => $vn_start + $vn_hits_per_block, 'key' => $vs_browse_key, 'view' => $vs_current_view));
}
?>
<script type="text/javascript">
	jQuery(document).ready(function() {
		if($("#bSetsSelectMultipleButton").is(":visible")){
			$(".bSetsSelectMultiple").show();
		}
	});
示例#25
0
<?php

print "(" . $this->getVar("set_item_num") . "/" . $this->getVar("set_num_items") . ")<br/>";
?>
<H3>{{{<unit relativeTo="ca_collections" delimiter="<br/>"><l>^ca_collections.hierarchy.preferred_labels.name%returnAsLink=1%delimiter=_➔_</l></unit>}}}</H3>


{{{<unit relativeTo="ca_collections" delimiter="<br/>"><ifdef code="ca_collections.CollectionNote.NoteContent%[NoteType=abstract]"><b>About the Collection</b>: ^ca_collections.CollectionNote.NoteContent%[NoteType=abstract]<br/><br/></ifdef></unit>}}}

{{{<ifcount code="ca_entities" min="1" max="1"><b>Related person: </b></ifcount>}}}
{{{<ifcount code="ca_entities" min="2"><b>Related people: </b></ifcount>}}}
{{{<unit relativeTo="ca_entities" delimiter=", "><l>^ca_entities.preferred_labels.displayname</l></unit><br/><br/>}}}

<?php 
print caDetailLink($this->request, _t("VIEW RECORD"), '', 'ca_objects', $this->getVar("object_id")) . "</br/><br/>";
						<div id="detailRepsScrollButtonNext"><i class="fa fa-angle-right"></i></div>
						<div id="detailRepsScrollButtonPrevious"><i class="fa fa-angle-left"></i></div>
						<!-- Carousel -->
						<div class="jcarousel">
							<ul>
<?php 
    $vni = 0;
    foreach ($va_reps as $va_rep) {
        $vni++;
        $vs_class = "";
        if ($t_representation->get("representation_id") == $va_rep["representation_id"]) {
            $vs_class = "active";
            $vn_repTarget = $vni;
        }
        #print "<div class='col-xs-2 col-sm-3'>".caDetailLink($this->request, $va_rep["tags"]["icon"], $vs_class, 'ca_objects', $t_object->get("object_id"), array("representation_id" => $va_rep["representation_id"]))."</div>";
        print "<li><div class='objectRepIcons'>" . caDetailLink($this->request, $va_rep["tags"]["icon"], $vs_class, 'ca_objects', $t_object->get("object_id"), array("representation_id" => $va_rep["representation_id"], "rep")) . "</div></li>";
    }
    ?>
							</ul>
						</div><!-- end jcarousel -->
					</div><!-- end jcarousel-wrapper -->
				</div><!-- end objectRepIcons -->
			<script type='text/javascript'>
				jQuery(document).ready(function() {
					/*
					Carousel initialization
					*/
					$('.jcarousel').jcarousel({
							// Options go here
					});
<?php 
					{{{<ifcount code="ca_objects.LcshTopical" min="1" max="1"><H3>Subject Heading:</H3></ifcount>}}}
					{{{<ifcount code="ca_objects.LcshTopical" min="2"><H3>Subject Headings:</H3></ifcount>}}}
					{{{<unit delimiter="<br/>">^ca_objects.LcshTopical</unit>}}}
					{{{<ifcount code="ca_objects.LcshNames" min="1" max="1"><H3>Term:</H3></ifcount>}}}
					{{{<ifcount code="ca_objects.LcshNames" min="2"><H3>Terms:</H3></ifcount>}}}
					{{{<unit delimiter="<br/>">^ca_objects.LcshNames</unit>}}}				
				</div><!-- end col -->
				<div class='col-sm-12 col-md-6 col-lg-6'>
					{{{<ifdef code="ca_objects.pbcoreFormatLocation"><H3>Location:</H3>^ca_objects.pbcoreFormatLocation<br/></ifdef>}}}
					{{{<ifdef code="ca_objects.idno"><H3>Identifier:</H3>^ca_objects.idno<br/></ifdef>}}}
					{{{<h3>MLA Citation:</h3><i>^ca_objects.preferred_labels.name</i>. <ifdef code="ca_objects.dateSet.setDisplayValue"><unit>^ca_objects.dateSet.setDisplayValue</unit>. </ifdef><ifcount code="ca_collections" min="1" max="1"><unit>^ca_collections.hierarchy.preferred_labels.name</unit>. </ifcount><i>New School Archives and Special Collections Digital Archive</i>. Web. ^DATE}}}
<?php 
if (sizeof($va_audios > 1)) {
    foreach ($va_audios as $va_audio) {
        print "<H3>Additional Audio</H3>";
        print caDetailLink($this->request, '<span class="glyphicon glyphicon-volume-up"></span> ' . $va_audio["label"], '', 'ca_objects', $t_object->get("object_id"), array("representation_id" => $va_audio["representation_id"])) . "<br/>";
    }
}
if (sizeof($va_annotations)) {
    print "<H3>Clips</H3>";
    $t_annotation = new ca_representation_annotations();
    foreach ($va_annotations as $va_annotation) {
        $t_annotation->load($va_annotation["annotation_id"]);
        $va_labels = caExtractValuesByUserLocale($va_annotation["labels"]);
        print "<p>";
        foreach ($va_labels as $vs_label) {
            print "<a href='#' onclick='caAnnoEditorPlayerPlay(" . $va_annotation["startTimecode_raw"] . "); return false;'><strong>" . $vs_label . "</strong></a><br/>";
        }
        print "<a href='#' onclick='caAnnoEditorPlayerPlay(" . $va_annotation["startTimecode_raw"] . "); return false;'><span class='glyphicon glyphicon-play-circle'></span></a> " . $va_annotation["startTimecode"] . " - " . $va_annotation["endTimecode"];
        print "<div class='indent'>";
        if ($t_annotation->get("description")) {
示例#28
0
 /**
  *
  */
 public function __call($ps_function, $pa_args)
 {
     AssetLoadManager::register("panel");
     AssetLoadManager::register("mediaViewer");
     AssetLoadManager::register("carousel");
     AssetLoadManager::register("readmore");
     AssetLoadManager::register("maps");
     $ps_function = strtolower($ps_function);
     $ps_id = urldecode($this->request->getActionExtra());
     if (!isset($this->opa_detail_types[$ps_function]) || !isset($this->opa_detail_types[$ps_function]['table']) || !($vs_table = $this->opa_detail_types[$ps_function]['table'])) {
         // invalid detail type – throw error
         die("Invalid detail type");
     }
     $t_table = $this->opo_datamodel->getInstanceByTableName($vs_table, true);
     if (($vb_use_identifiers_in_urls = caUseIdentifiersInUrls()) && substr($ps_id, 0, 3) == "id:") {
         $va_tmp = explode(":", $ps_id);
         $ps_id = (int) $va_tmp[1];
         $vb_use_identifiers_in_urls = false;
     }
     if (!$t_table->load($vb_use_identifiers_in_urls && $t_table->getProperty('ID_NUMBERING_ID_FIELD') ? $t_table->hasField('deleted') ? array($t_table->getProperty('ID_NUMBERING_ID_FIELD') => $ps_id, 'deleted' => 0) : array($t_table->getProperty('ID_NUMBERING_ID_FIELD') => $ps_id) : ($t_table->hasField('deleted') ? array($t_table->primaryKey() => (int) $ps_id, 'deleted' => 0) : array($t_table->primaryKey() => (int) $ps_id)))) {
         // invalid id - throw error
         die("Invalid id");
     }
     // Printables
     // 	merge displays with drop-in print templates
     //
     $va_export_options = caGetAvailablePrintTemplates('summary', array('table' => $t_table->tableName()));
     $this->view->setVar('export_formats', $va_export_options);
     $va_options = array();
     foreach ($va_export_options as $vn_i => $va_format_info) {
         $va_options[$va_format_info['name']] = $va_format_info['code'];
     }
     // Get current display list
     $t_display = new ca_bundle_displays();
     foreach (caExtractValuesByUserLocale($t_display->getBundleDisplays(array('table' => $this->ops_tablename, 'user_id' => $this->request->getUserID(), 'access' => __CA_BUNDLE_DISPLAY_READ_ACCESS__, 'checkAccess' => caGetUserAccessValues($this->request)))) as $va_display) {
         $va_options[$va_display['name']] = "_display_" . $va_display['display_id'];
     }
     ksort($va_options);
     $this->view->setVar('export_format_select', caHTMLSelect('export_format', $va_options, array('class' => 'searchToolsSelect'), array('value' => $this->view->getVar('current_export_format'), 'width' => '150px')));
     #
     # Enforce access control
     #
     if (sizeof($this->opa_access_values) && $t_table->hasField('access') && !in_array($t_table->get("access"), $this->opa_access_values)) {
         $this->notification->addNotification(_t("This item is not available for view"), "message");
         $this->response->setRedirect(caNavUrl($this->request, "", "", "", ""));
         return;
     }
     MetaTagManager::setWindowTitle($this->request->config->get("app_display_name") . ": " . $t_table->getTypeName() . ": " . $t_table->get('preferred_labels') . (($vs_idno = $t_table->get($t_table->getProperty('ID_NUMBERING_ID_FIELD'))) ? " [{$vs_idno}]" : ""));
     $vs_type = $t_table->getTypeCode();
     $this->view->setVar('detailType', $vs_table);
     $this->view->setVar('item', $t_table);
     $this->view->setVar('itemType', $vs_type);
     caAddPageCSSClasses(array($vs_table, $ps_function, $vs_type));
     // Do we need to pull in the multisearch result set?
     if (ResultContext::getLastFind($this->request, $vs_table, array('noSubtype' => true)) === 'multisearch') {
         $o_context = new ResultContext($this->request, $vs_table, 'multisearch', $ps_function);
         $o_context->setAsLastFind();
         $o_context->saveContext();
     } else {
         $o_context = ResultContext::getResultContextForLastFind($this->request, $vs_table);
     }
     $this->view->setVar('previousID', $vn_previous_id = $o_context->getPreviousID($t_table->getPrimaryKey()));
     $this->view->setVar('nextID', $vn_next_id = $o_context->getNextID($t_table->getPrimaryKey()));
     $this->view->setVar('previousURL', caDetailUrl($this->request, $vs_table, $vn_previous_id));
     $this->view->setVar('nextURL', caDetailUrl($this->request, $vs_table, $vn_next_id));
     $this->view->setVar('resultsURL', ResultContext::getResultsUrlForLastFind($this->request, $vs_table));
     $va_options = isset($this->opa_detail_types[$ps_function]['options']) && is_array($this->opa_detail_types[$ps_function]['options']) ? $this->opa_detail_types[$ps_function]['options'] : array();
     $this->view->setVar('previousLink', $vn_previous_id > 0 ? caDetailLink($this->request, caGetOption('previousLink', $va_options, _t('Previous')), '', $vs_table, $vn_previous_id) : '');
     $this->view->setVar('nextLink', $vn_next_id > 0 ? caDetailLink($this->request, caGetOption('nextLink', $va_options, _t('Next')), '', $vs_table, $vn_next_id) : '');
     $this->view->setVar('resultsLink', ResultContext::getResultsLinkForLastFind($this->request, $vs_table, caGetOption('resultsLink', $va_options, _t('Back'))));
     $this->view->setVar('commentsEnabled', (bool) $va_options['enableComments']);
     //
     //
     //
     if (method_exists($t_table, 'getPrimaryRepresentationInstance')) {
         if ($pn_representation_id = $this->request->getParameter('representation_id', pInteger)) {
             $t_representation = $this->opo_datamodel->getInstanceByTableName("ca_object_representations", true);
             $t_representation->load($pn_representation_id);
         } else {
             $t_representation = $t_table->getPrimaryRepresentationInstance(array("checkAccess" => $this->opa_access_values));
         }
         if ($t_representation) {
             $this->view->setVar("t_representation", $t_representation);
             $this->view->setVar("representation_id", $t_representation->get("representation_id"));
         } else {
             $t_representation = $this->opo_datamodel->getInstanceByTableName("ca_object_representations", true);
         }
         $this->view->setVar("representationViewer", caObjectDetailMedia($this->request, $t_table->getPrimaryKey(), $t_representation, $t_table, array("primaryOnly" => caGetOption('representationViewerPrimaryOnly', $va_options, false), "dontShowPlaceholder" => caGetOption('representationViewerDontShowPlaceholder', $va_options, false))));
     }
     //
     // map
     //
     if (!is_array($va_map_attributes = caGetOption('map_attributes', $va_options, array())) || !sizeof($va_map_attributes)) {
         if ($vs_map_attribute = caGetOption('map_attribute', $va_options, false)) {
             $va_map_attributes = array($vs_map_attribute);
         }
     }
     $this->view->setVar("map", "");
     if (is_array($va_map_attributes) && sizeof($va_map_attributes)) {
         $o_map = new GeographicMap(($vn_width = caGetOption('map_width', $va_options, false)) ? $vn_width : 285, ($vn_height = caGetOption('map_height', $va_options, false)) ? $vn_height : 200, 'map');
         $vn_mapped_count = 0;
         foreach ($va_map_attributes as $vs_map_attribute) {
             if ($t_table->get($vs_map_attribute)) {
                 $o_map->mapFrom($t_table, $vs_map_attribute);
                 $vn_mapped_count++;
             }
         }
         if ($vn_mapped_count > 0) {
             $this->view->setVar("map", $o_map->render('HTML'));
         }
     }
     //
     // comments, tags, rank
     //
     $this->view->setVar('averageRank', $t_table->getAverageRating(true));
     $this->view->setVar('numRank', $t_table->getNumRatings(true));
     #
     # User-generated comments, tags and ratings
     #
     $va_user_comments = $t_table->getComments(null, true);
     $va_comments = array();
     if (is_array($va_user_comments)) {
         foreach ($va_user_comments as $va_user_comment) {
             if ($va_user_comment["comment"] || $va_user_comment["media1"] || $va_user_comment["media2"] || $va_user_comment["media3"] || $va_user_comment["media4"]) {
                 # TODO: format date based on locale
                 $va_user_comment["date"] = date("n/j/Y", $va_user_comment["created_on"]);
                 # -- get name of commenter
                 if ($va_user_comment["user_id"]) {
                     $t_user = new ca_users($va_user_comment["user_id"]);
                     $va_user_comment["author"] = $t_user->getName();
                 } elseif ($va_user_comment["name"]) {
                     $va_user_comment["author"] = $va_user_comment["name"];
                 }
                 $va_comments[] = $va_user_comment;
             }
         }
     }
     $this->view->setVar('comments', $va_comments);
     $va_user_tags = $t_table->getTags(null, true);
     $va_tags = array();
     if (is_array($va_user_tags)) {
         foreach ($va_user_tags as $va_user_tag) {
             if (!in_array($va_user_tag["tag"], $va_tags)) {
                 $va_tags[] = $va_user_tag["tag"];
             }
         }
     }
     $this->view->setVar('tags_array', $va_tags);
     $this->view->setVar('tags', implode(", ", $va_tags));
     $this->view->setVar("itemComments", caDetailItemComments($this->request, $t_table->getPrimaryKey(), $t_table, $va_comments, $va_tags));
     //
     // share link
     //
     $this->view->setVar("shareLink", "<a href='#' onclick='caMediaPanel.showPanel(\"" . caNavUrl($this->request, '', 'Detail', 'ShareForm', array("tablename" => $t_table->tableName(), "item_id" => $t_table->getPrimaryKey())) . "\"); return false;'>Share</a>");
     // find view
     //		first look for type-specific view
     if (!$this->viewExists($vs_path = "Details/{$vs_table}_{$vs_type}_html.php")) {
         // If no type specific view use the default
         $vs_path = "Details/{$vs_table}_default_html.php";
     }
     switch ($ps_view = $this->request->getParameter('view', pString)) {
         case 'pdf':
             $this->_genExport($t_table, $this->request->getParameter("export_format", pString), 'Detail', 'Detail');
             break;
         default:
             //
             // Tag substitution
             //
             // Views can contain tags in the form {{{tagname}}}. Some tags, such as "itemType" and "detailType" are defined by
             // the detail controller. More usefully, you can pull data from the item being detailed by using a valid "get" expression
             // as a tag (Eg. {{{ca_objects.idno}}}. Even more usefully for some, you can also use a valid bundle display template
             // (see http://docs.collectiveaccess.org/wiki/Bundle_Display_Templates) as a tag. The template will be evaluated in the
             // context of the item being detailed.
             //
             $va_defined_vars = array_keys($this->view->getAllVars());
             // get list defined vars (we don't want to copy over them)
             $va_tag_list = $this->getTagListForView($vs_path);
             // get list of tags in view
             foreach ($va_tag_list as $vs_tag) {
                 if (in_array($vs_tag, $va_defined_vars)) {
                     continue;
                 }
                 if (strpos($vs_tag, "^") !== false || strpos($vs_tag, "<") !== false) {
                     $this->view->setVar($vs_tag, $t_table->getWithTemplate($vs_tag, array('checkAccess' => $this->opa_access_values)));
                 } elseif (strpos($vs_tag, ".") !== false) {
                     $this->view->setVar($vs_tag, $t_table->get($vs_tag, array('checkAccess' => $this->opa_access_values)));
                 } else {
                     $this->view->setVar($vs_tag, "?{$vs_tag}");
                 }
             }
             $this->render($vs_path);
             break;
     }
 }
示例#29
0
<?php

$pn_previous_item_id = $this->getVar("previous_item_id");
$pn_next_item_id = $this->getVar("next_item_id");
$pn_set_id = $this->getVar("set_id");
if ($pn_previous_item_id) {
    print "<a href='#' class='galleryDetailPrevious' onclick='jQuery(\"#galleryDetailImageArea\").load(\"" . caNavUrl($this->request, '', 'Gallery', 'getSetItemRep', array('item_id' => $pn_previous_item_id, 'set_id' => $pn_set_id)) . "\"); jQuery(\"#galleryDetailObjectInfo\").load(\"" . caNavUrl($this->request, '', 'Gallery', 'getSetItemInfo', array('item_id' => $pn_previous_item_id, 'set_id' => $pn_set_id)) . "\"); galleryHighlightThumbnail(\"galleryIcon" . $pn_previous_item_id . "\"); return false;'><i class='fa fa-angle-left'></i></a>";
} else {
    print "<a href='#' class='galleryDetailPrevious inactive'><i class='fa fa-angle-left'></i></a>";
}
if ($pn_next_item_id) {
    print "<a href='#' class='galleryDetailNext' onclick='jQuery(\"#galleryDetailImageArea\").load(\"" . caNavUrl($this->request, '', 'Gallery', 'getSetItemRep', array('item_id' => $pn_next_item_id, 'set_id' => $pn_set_id)) . "\"); jQuery(\"#galleryDetailObjectInfo\").load(\"" . caNavUrl($this->request, '', 'Gallery', 'getSetItemInfo', array('item_id' => $pn_next_item_id, 'set_id' => $pn_set_id)) . "\"); galleryHighlightThumbnail(\"galleryIcon" . $pn_next_item_id . "\"); return false;'><i class='fa fa-angle-right'></i></a>";
} else {
    print "<a href='#' class='galleryDetailNext inactive'><i class='fa fa-angle-right'></i></a>";
}
print "<div id='galleryDetailImageWrapper'>" . caDetailLink($this->request, $this->getVar("rep"), '', 'ca_objects', $this->getVar("object_id")) . $this->getVar("repToolBar") . "</div>";
示例#30
-1
<?php

$pn_previous_item_id = $this->getVar("previous_item_id");
$pn_next_item_id = $this->getVar("next_item_id");
$pn_set_id = $this->getVar("set_id");
$t_object = new ca_objects($this->getVar("object_id"));
if ($pn_previous_item_id) {
    print "<a href='#' class='galleryDetailPrevious' onclick='jQuery(\"#galleryDetailImageArea\").load(\"" . caNavUrl($this->request, '', 'Gallery', 'getSetItemRep', array('item_id' => $pn_previous_item_id, 'set_id' => $pn_set_id)) . "\"); jQuery(\"#galleryDetailObjectInfo\").load(\"" . caNavUrl($this->request, '', 'Gallery', 'getSetItemInfo', array('item_id' => $pn_previous_item_id, 'set_id' => $pn_set_id)) . "\"); galleryHighlightThumbnail(\"galleryIcon" . $pn_previous_item_id . "\"); return false;'><i class='fa fa-angle-left'></i></a>";
} else {
    print "<a href='#' class='galleryDetailPrevious inactive'><i class='fa fa-angle-left'></i></a>";
}
if ($pn_next_item_id) {
    print "<a href='#' class='galleryDetailNext' onclick='jQuery(\"#galleryDetailImageArea\").load(\"" . caNavUrl($this->request, '', 'Gallery', 'getSetItemRep', array('item_id' => $pn_next_item_id, 'set_id' => $pn_set_id)) . "\"); jQuery(\"#galleryDetailObjectInfo\").load(\"" . caNavUrl($this->request, '', 'Gallery', 'getSetItemInfo', array('item_id' => $pn_next_item_id, 'set_id' => $pn_set_id)) . "\"); galleryHighlightThumbnail(\"galleryIcon" . $pn_next_item_id . "\"); return false;'><i class='fa fa-angle-right'></i></a>";
} else {
    print "<a href='#' class='galleryDetailNext inactive'><i class='fa fa-angle-right'></i></a>";
}
print "<div id='galleryDetailImageWrapper'>" . caDetailLink($this->request, $this->getVar("rep"), '', 'ca_objects', $this->getVar("object_id")) . $this->getVar("repToolBar") . "</div>";
print "<br/><H7>" . caDetailLink($this->request, $t_object->get("ca_objects.preferred_labels.name"), '', 'ca_objects', $this->getVar("object_id")) . "<H7>";