fixe sound direct link with mobile from desktop, fix #584

This commit is contained in:
2020-04-29 13:01:16 +02:00
parent 2eb05babe5
commit 67271fc277
8 changed files with 520 additions and 468 deletions
@@ -13,13 +13,13 @@ use Drupal\Core\Url;
* @param array $attachments
*/
function edlp_ajax_page_attachments(array &$attachments) {
// provied info about available urls needed for ajax purpose
$url = Url::fromRoute('edlp_ajax.entityjson');
$attachments['#attached']['drupalSettings']['edlp_ajax']['entityjson_path'] = $url->getInternalPath();
$url = Url::fromRoute('edlp_ajax.blocksjson');
$attachments['#attached']['drupalSettings']['edlp_ajax']['blocksjson_path'] = $url->getInternalPath();
$redirect = false;
// provied infos about current entity (node or taxonomy term) and audio files
$current_path = \Drupal::service('path.current')->getPath();
$current_language = \Drupal::languageManager()->getCurrentLanguage()->getId();
$is_front = \Drupal::service('path.matcher')->isFrontPage();
@@ -49,6 +49,7 @@ function edlp_ajax_page_attachments(array &$attachments) {
// do not redirect if not node, term, or custom routing
// FIXME: check with routes instead of path as path can change !!!
$redirect = false;
if(preg_match('/^\/?node\/\d+/', $current_path)
|| preg_match('/^\/?taxonomy\/term\/\d+/', $current_path)
|| preg_match('/^\/?productions/', $current_path)
@@ -1 +1 @@
canvas#corpus-map{position:absolute;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;box-sizing:content-box;width:300px;min-height:30px;top:60%;left:30%;pointer-events:none}div.node-popup .inner{padding:.6em;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;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;box-sizing:content-box;width:300px;min-height:30px;top:60%;left:30%;pointer-events:none}div.node-popup .inner{padding:.6em;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]{transform:translateY(42px) translateX(42px)}div.node-popup[pos=bottom-right]:before{top:-1px;left:-61px;transform-origin:bottom right;transform:rotateZ(45deg)}div.node-popup[pos=bottom-left]{transform:translateX(-100%) translateY(42px) translateX(-42px)}div.node-popup[pos=bottom-left]:before{top:calc(100% +1px);left:100%;transform-origin:top left;transform:rotateZ(-45deg)}div.node-popup[pos=top-left]{transform:translateY(-100%) translateX(-100%) translateY(-42px) translateX(-42px)}div.node-popup[pos=top-left]:before{bottom:0;left:100%;transform-origin:top left;transform:rotateZ(45deg)}div.node-popup[pos=top-right]{transform:translateY(-100%) translateY(-42px) translateX(42px)}div.node-popup[pos=top-right]:before{top:calc(100% + 1px);left:-61px;transform-origin:top right;transform:rotateZ(-45deg)}
@@ -52,6 +52,8 @@ function edlp_mobile_help($route_name, RouteMatchInterface $route_match) {
/**
* Implements hook_page_attachments().
* the porpuse of this hooks is to collect registered domains informations to set it available to redirect.js file provided by edlptheme
* it does nothing by it's own
* @param array $attachments
*/
function edlp_mobile_page_attachments(array &$attachments) {
@@ -60,20 +62,19 @@ function edlp_mobile_page_attachments(array &$attachments) {
global $base_root;
// dpm($base_root, '$base_root');
// get the current hostname (domain)
$current_hostname = preg_replace('/http:\/\/|https:\/\//i', '', $base_root);
// dpm($current_hostname, '$current_hostname');
// get domains from domain module
$domain_storage = \Drupal::entityTypeManager()->getStorage('domain');
$mobile_domain = $domain_storage->load('m_encyclopediedelaparole_org');
// dpm($mobile_domain, 'mobile_domain');
$desktop_domain = $domain_storage->load('encyclopediedelaparole_org');
// dpm($desktop_domain, 'desktop_domain');
$expo_domain = $domain_storage->load('expo_encyclopediedelaparole_org');
// dpm($expo_domain, 'expo_domain');
// get the current domain
$current_domain = $domain_storage->loadByHostname($current_hostname);
// dpm($current_domain, 'current_domain');
+477 -447
View File
File diff suppressed because it is too large Load Diff