audio cartel ids now complete
This commit is contained in:
+1005
-38
File diff suppressed because it is too large
Load Diff
+1152
-37
File diff suppressed because it is too large
Load Diff
@@ -1 +1,71 @@
|
||||
canvas#corpus-map{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;top:0;left:0;z-index:0}canvas#corpus-map.de-activated{background-color:#f4f4f4}div.node-popup{z-index:10;position:absolute;-webkit-box-sizing:content-box;box-sizing:content-box;width:300px;min-height:30px;top:60%;left:30%;pointer-events:none}div.node-popup .inner{padding:1em;outline:red solid 1px;background-color:#fff}div.node-popup:before{content:"";position:absolute;width:60px;height:0;border-top:1px solid red}div.node-popup[pos=bottom-right]{-webkit-transform:translateY(42px) translateX(42px);transform:translateY(42px) translateX(42px)}div.node-popup[pos=bottom-right]:before{top:-1px;left:-61px;-webkit-transform-origin:bottom right;transform-origin:bottom right;-webkit-transform:rotateZ(45deg);transform:rotateZ(45deg)}div.node-popup[pos=bottom-left]{-webkit-transform:translateX(-100%) translateY(42px) translateX(-42px);transform:translateX(-100%) translateY(42px) translateX(-42px)}div.node-popup[pos=bottom-left]:before{top:calc(100% +1px);left:100%;-webkit-transform-origin:top left;transform-origin:top left;-webkit-transform:rotateZ(-45deg);transform:rotateZ(-45deg)}div.node-popup[pos=top-left]{-webkit-transform:translateY(-100%) translateX(-100%) translateY(-42px) translateX(-42px);transform:translateY(-100%) translateX(-100%) translateY(-42px) translateX(-42px)}div.node-popup[pos=top-left]:before{bottom:0;left:100%;-webkit-transform-origin:top left;transform-origin:top left;-webkit-transform:rotateZ(45deg);transform:rotateZ(45deg)}div.node-popup[pos=top-right]{-webkit-transform:translateY(-100%) translateY(-42px) translateX(42px);transform:translateY(-100%) translateY(-42px) translateX(42px)}div.node-popup[pos=top-right]:before{top:calc(100% + 1px);left:-61px;-webkit-transform-origin:top right;transform-origin:top right;-webkit-transform:rotateZ(-45deg);transform:rotateZ(-45deg)}
|
||||
canvas#corpus-map {
|
||||
position: absolute;
|
||||
-webkit-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
top: 0;
|
||||
left: 0;
|
||||
z-index: 0; }
|
||||
canvas#corpus-map.de-activated {
|
||||
background-color: #f4f4f4; }
|
||||
|
||||
div.node-popup {
|
||||
z-index: 10;
|
||||
position: absolute;
|
||||
-webkit-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
width: 300px;
|
||||
min-height: 30px;
|
||||
pointer-events: none;
|
||||
top: 60%;
|
||||
left: 30%;
|
||||
pointer-events: none; }
|
||||
div.node-popup .inner {
|
||||
padding: 0.4em;
|
||||
outline: 1px solid red;
|
||||
background-color: white; }
|
||||
div.node-popup:before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 60px;
|
||||
height: 0;
|
||||
border-top: 1px solid red; }
|
||||
div.node-popup[pos="bottom-right"] {
|
||||
-webkit-transform: translateY(42px) translateX(42px);
|
||||
transform: translateY(42px) translateX(42px); }
|
||||
div.node-popup[pos="bottom-right"]:before {
|
||||
top: -1px;
|
||||
left: -61px;
|
||||
-webkit-transform-origin: bottom right;
|
||||
transform-origin: bottom right;
|
||||
-webkit-transform: rotateZ(45deg);
|
||||
transform: rotateZ(45deg); }
|
||||
div.node-popup[pos="bottom-left"] {
|
||||
-webkit-transform: translateX(-100%) translateY(42px) translateX(-42px);
|
||||
transform: translateX(-100%) translateY(42px) translateX(-42px); }
|
||||
div.node-popup[pos="bottom-left"]:before {
|
||||
top: calc(100% +1px);
|
||||
left: 100%;
|
||||
-webkit-transform-origin: top left;
|
||||
transform-origin: top left;
|
||||
-webkit-transform: rotateZ(-45deg);
|
||||
transform: rotateZ(-45deg); }
|
||||
div.node-popup[pos="top-left"] {
|
||||
-webkit-transform: translateY(-100%) translateX(-100%) translateY(-42px) translateX(-42px);
|
||||
transform: translateY(-100%) translateX(-100%) translateY(-42px) translateX(-42px); }
|
||||
div.node-popup[pos="top-left"]:before {
|
||||
bottom: 0;
|
||||
left: 100%;
|
||||
-webkit-transform-origin: top left;
|
||||
transform-origin: top left;
|
||||
-webkit-transform: rotateZ(45deg);
|
||||
transform: rotateZ(45deg); }
|
||||
div.node-popup[pos="top-right"] {
|
||||
-webkit-transform: translateY(-100%) translateY(-42px) translateX(42px);
|
||||
transform: translateY(-100%) translateY(-42px) translateX(42px); }
|
||||
div.node-popup[pos="top-right"]:before {
|
||||
top: calc(100% + 1px);
|
||||
left: -61px;
|
||||
-webkit-transform-origin: top right;
|
||||
transform-origin: top right;
|
||||
-webkit-transform: rotateZ(-45deg);
|
||||
transform: rotateZ(-45deg); }
|
||||
|
||||
@@ -34,7 +34,7 @@ div.node-popup{
|
||||
pointer-events: none;
|
||||
|
||||
.inner{
|
||||
padding:1em;
|
||||
padding:0.4em;
|
||||
outline: 1px solid red;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
@@ -41,6 +41,11 @@ function edlp_corpus_entity_extra_field_info(){
|
||||
'weight' => 99,
|
||||
// 'visible' => FALSE,
|
||||
];
|
||||
$extra['node']['enregistrement']['display']['relations'] = [
|
||||
'label' => t('Relations'),
|
||||
'description' => 'Display enregistrement relations with other content types',
|
||||
'weight' => 99,
|
||||
];
|
||||
return $extra;
|
||||
}
|
||||
|
||||
@@ -93,6 +98,58 @@ function edlp_corpus_taxonomy_term_view(array &$build, EntityInterface $entity,
|
||||
}
|
||||
}
|
||||
|
||||
function edlp_corpus_node_view(array &$build, EntityInterface $entity, EntityViewDisplayInterface $display, $view_mode) {
|
||||
if($entity->bundle() == "enregistrement"){
|
||||
$relations_display_settings = $display->getComponent('relations');
|
||||
if(!empty($relations_display_settings)){
|
||||
|
||||
// querying all productions page that have this document in their entity reference "field_documents_liés"
|
||||
$query = \Drupal::entityQuery('node')
|
||||
->condition('status', 1)
|
||||
->condition('type', 'page') // page (production)
|
||||
->exists('field_page_type')
|
||||
->condition('field_documents_lies.target_id', $entity->id(), 'IN');
|
||||
|
||||
$nids = $query->execute();
|
||||
$nodes = entity_load_multiple('node', $nids);
|
||||
// dpm($nodes, '$nodes');
|
||||
|
||||
// build the array of relateds classified by page_type (taxonomy)
|
||||
$relateds = array();
|
||||
foreach ($nodes as $nid => $node) {
|
||||
$page_type = $node->get('field_page_type')->get(0)->getValue();
|
||||
// dpm($page_type, 'page_type');
|
||||
$term = entity_load('taxonomy_term', $page_type['target_id']);
|
||||
// dpm($term, 'term');
|
||||
$relateds[$term->getName()][] = $node->getTitle();
|
||||
}
|
||||
// dpm($relateds, 'relateds');
|
||||
|
||||
// if relateds, build the sentence for display and the render array
|
||||
if(count($relateds)){
|
||||
$relations = '<h3>' . t('This sound is about :') . '</h3><p>';
|
||||
|
||||
foreach ($relateds as $cat => $titles) {
|
||||
$relations .= '<span class="cat">' . $cat . ' :</span> ' . implode(', ', $titles) . ' | ';
|
||||
}
|
||||
|
||||
$relations = preg_replace('/\s\|\s$/', '', $relations);
|
||||
$relations .= '</p>';
|
||||
|
||||
$build['relations'] = array(
|
||||
'#type'=>"container",
|
||||
'#attributes'=>array(
|
||||
'class'=>'relations'
|
||||
),
|
||||
"#markup"=> $relations,
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Implements hook_page_attachments().
|
||||
* @param array $attachments
|
||||
|
||||
Reference in New Issue
Block a user