src/Controller/AudiosController.php line 466

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\ClassTheatre\asides;
  4. use App\ClassTheatre\TheatreController;
  5. use Doctrine\ORM\EntityManagerInterface;
  6. use Symfony\Component\Routing\Annotation\Route;
  7. use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface;
  8. use Symfony\Contracts\Translation\TranslatorInterface;
  9. use TheatreCore\Entity\Bigregions;
  10. use TheatreCore\Entity\Podcasts;
  11. use TheatreCore\Entity\Spectacles;
  12. use TheatreCore\Entity\Stats;
  13. class AudiosController extends TheatreController
  14. {
  15.     // object multimedias
  16.     protected $podcasts;
  17.     // précision fil d'arianne
  18.     protected $locate null;
  19.     // titre de la page
  20.     protected $title_page null;
  21.     // meta keywords et meta description
  22.     protected $meta_keywords '';
  23.     protected $meta_description '';
  24.     // taille maxi des vidéos
  25.     protected $other_dimensions = array();
  26.     // infos pour mon théâtre
  27.     protected $mtinfos = array();
  28.     // pour le menu principal
  29.     protected $rub_courante null;
  30.     protected $extra_title '';
  31.     protected $extra_locate '';
  32.     protected $is_accueil false;
  33.     // les asides
  34.     protected $asides "";
  35.     // résultat par page
  36.     protected $perPage 20;
  37.     // {{{ _construct()
  38.     /** constructeur hérité
  39.      *
  40.      */
  41.     public function __construct(EntityManagerInterface $emTranslatorInterface $translatorTokenStorageInterface $tokenStorage)
  42.     {
  43.         parent::__construct($translator$tokenStorage);
  44.         $this->context['controller'] = $this->view->controller 'audios';
  45.         $this->em $em;
  46.         $this->asides = new asides();
  47.         $this->context['view']->audios true;
  48.         /**
  49.          * Classe Multimedias
  50.          */
  51.         $this->podcasts $this->em->getRepository(Podcasts::class);
  52.         // seulement les données publiées
  53.         $GLOBALS['publish'] = 1;
  54.     }
  55.     // }}}
  56.     // {{{ buildMenu()
  57.     /** Construit le menu et l'envoie à la vue
  58.      *
  59.      *
  60.      * @access protected
  61.      * @return void
  62.      */
  63.     protected function buildMenu()
  64.     {
  65.         $menu_audio = array();
  66.         // accueil avec l'actualite
  67.         $menu_audio['view'] = array('nom' => 'Actualités''title' => 'Actualités de ','icone' => 'info_24.png');
  68.         $menu_audio['emissions'] = array('nom' => 'émissions''title' => 'Actualités de ','icone' => 'info_24.png');
  69.         $menu_audio['spectacles'] = array('nom' => 'en scène''title' => 'Actualités de ','icone' => 'info_24.png');
  70.         $action $this->context['action'];
  71.         if(!empty($menu_audio[$action])){
  72.             $menu_audio[$action]['active'] = true;
  73.         }
  74.         $arrays_key array_keys($menu_audio);
  75.         $first reset($arrays_key);
  76.         $menu_audio[$first]['first'] = true;
  77.         $this->view->menu_audio $menu_audio;
  78.     }
  79.     // }}}
  80.     // {{{ finalizeAction()
  81.     /** Après l'action, construit le titre de page et le fil d'arianne
  82.      *
  83.      *
  84.      * @access protected
  85.      * @return void
  86.      */
  87.     protected function finalizeAction()
  88.     {
  89.         // construction du menu
  90.         $this->buildMenu();
  91.         if (!empty($this->extra_title)) {
  92.             $this->title_page .= $this->extra_title.' - Audio';
  93.         } else if (!empty($this->current['title'])){
  94.             $this->title_page .= $this->current['title'];
  95.         } else {
  96.             $this->title_page .= 'Audio';
  97.         }
  98.         // titre de la page
  99.         $this->title_page .= ', actualités, textes, spectacles, vidéos, tous ses liens avec la scène';
  100.         // situation
  101.         $this->view->locate = array('/audios/' => 'Audio');
  102.         // rubrique (pour le menu principal)
  103.         $this->rub_courante 'audios';
  104.         //Todo:: à revoir
  105.         // complément du fil d'arianne
  106.         if (empty($this->is_accueil)) {
  107.             if (empty($this->extra_locate) && !empty($this->current['nom'])) {
  108.                 $this->extra_locate $this->current['nom'];
  109.             }
  110. //            $this->view->locate[$this->url_folder.'/'] = $this->extra_locate;
  111.             $this->view->locate[0] = $this->extra_locate;
  112.         } else {
  113.             // à l'accueil, on ne précise pas la sous-rubrique
  114.             $this->view->locate[0] = $this->infosperson['fullname'];
  115.             $this->view->is_accueil true;
  116.         }
  117.         // statistique de visite
  118.         //@TODO temporaire à supprimer pour la V2
  119.         if($_SERVER['SERVER_NAME'] == 'theatre-contemporain.net'){
  120.             if(!empty($this->idperson) && !$this->no_stats) {
  121.                 $statsinfos = array(
  122.                     'type' => 'article',
  123.                     'module' => $this->context['module'],
  124.                     'url' => $_SERVER['REQUEST_URI'],
  125.                     'idcontent' => (int)$this->current['idcontent'],
  126.                     'object' => 'persons',
  127.                     'idobject' => $this->idperson,
  128.                     'video' => (int)(!empty($this->view->detailarticle['display_media']))
  129.                 );
  130.                 $stats $this->em->getRepository(Stats::class);
  131.                 $stats->setStats($statsinfos__FILE__.':'.__LINE__);
  132.             }
  133.         }
  134.         // pour les liens dans le template
  135.         $this->view->url_folder $this->url_folder;
  136.         // aside
  137.         $this->view->aside $this->asides->view($this->view);
  138.     }
  139.     // }}}
  140.     /**
  141.      * @Route("/audios", name="audios_index")
  142.      */
  143.     public function action_view()
  144.     {
  145.         $this->extra_locate =  'actualités';
  146.         $this->context['action'] = 'view';
  147.         $params_sql = array(
  148.             'params' => array(
  149.                 'limit' => [0,6],
  150.                 'where' => ' AND s.publish=1 ',
  151.                 'order' => ['sc.date''ASC'],
  152.             ),
  153.             'special' => array(
  154.                 'prochains' => true,
  155. //                'plus_proche' => true,
  156.                 'podcasts' => [
  157.                     'type_podcast' => 'franceculture'
  158.                 ]
  159.             ),
  160.             'dbg' => array('spectacles_in_list','Les spectacles à l\'affiche dans ce lieu')
  161.         );
  162.         $franceculture_params = array(
  163.             'limit' => array(03),
  164.             'special' => array(
  165.                 'type_podcast' => ['franceinter''soundcloud'],
  166.             ),
  167.             'dbg' => array('derniers_franceculture''Les trois derniers podcasts france radio référencés'),
  168.         );
  169.         $display['display']['vignette'] = array('width'=>$_ENV['VIGN_SPECTACLE_WIDTH'],'height'=>$_ENV['VIGN_SPECTACLE_HEIGHT']);
  170.         $spectacles_prochains $this->em->getRepository(Spectacles::class)->getListSpectacles($params_sql$displaynull, array('allauthors' => true'carrer_couleurs' => true));
  171.         foreach($spectacles_prochains as $key=>$val) {
  172.             $spectacles_prochains[$key]['footer_contact'] = true;
  173.         }
  174.         $this->context['view']->spectacles_prochains $spectacles_prochains;
  175.         $api_derniers_franceculture $this->podcasts->getListPodcasts($franceculture_params);
  176.         foreach ($api_derniers_franceculture AS $k => $v) {
  177.             $currentDate $v['datePodcast']->format('Y-m-d');
  178.             if(empty($derniers_franceculture[$currentDate])) {
  179.                 $derniers_franceculture[$currentDate]['date'] = $this->podcasts->getFormeDate($currentDate'%a %d %B %Y'true); //%a %d/%m/%Y
  180.             }
  181.             $derniers_franceculture[$currentDate]['datas'][] = $v;
  182.         }
  183.         $this->context['view']->podcasts_par_date $derniers_franceculture;
  184.         $culturebox_params = array(
  185.             'limit' => [0,3],
  186.             'direction' => 'DESC',
  187.             'special' => array(
  188.                 'emission' => [ 'la-dispute','le-masque-et-la-plume' ]
  189.             ),
  190.             'dbg' => array('derniers_culturebox_current''Les replay France Culture référencés'),
  191.         );
  192.         $list_captations_critiques $this->podcasts->getListPodcasts($culturebox_params);
  193.         $derniers_franceculture_critiques = array();
  194.         foreach ($list_captations_critiques AS $k => $v) {
  195.             $currentDate $v['datePodcast']->format('Y-m-d');
  196.             if(empty($derniers_franceculture_critiques[$currentDate])) {
  197.                 $derniers_franceculture_critiques[$currentDate]['date'] = $this->podcasts->getFormeDate($currentDate'%a %d %B %Y'true); //%a %d/%m/%Y
  198.             }
  199.             $derniers_franceculture_critiques[$currentDate]['datas'][] = $v;
  200.         }
  201.         $this->context['view']->derniers_franceculture_critiques $derniers_franceculture_critiques;
  202.         //Les prochains spectacles par émission
  203.         $params_sql['params']['limit'] = [0,4];
  204.         $params_sql['special']['podcasts']['emission'] = ['la-dispute''le-masque-et-la-plume'];
  205.         $display_spectacles['carrer_couleurs'] = true;
  206.         $list_spectacles_emissions $this->em->getRepository(Spectacles::class)->getListSpectacles$params_sql$displaynull, array('allauthors' => true'carrer_couleurs' => true));
  207.         foreach($list_spectacles_emissions as $key=>$val) {
  208.             $list_spectacles_emissions[$key]['footer_contact'] = true;
  209.         }
  210.         $this->context['view']->list_spectacles_emissions $list_spectacles_emissions;
  211.         $this->asides->load(['common_carte' => array(
  212.             'url' => "/audios/spectacles/area/get_id"
  213.         )]);
  214.         asides::setEntityManager($this->em);
  215.         asides::loadaside('Publicite')->addWithNational($this->asides); //$this->area
  216.         $this->asides->load('common_facebook');
  217.         $this->asides->load('common_twitter');
  218.         $this->asides->load('common_participer_contacts');
  219.         $this->asides->load('common_culturebox');
  220.         return $this->view('audios/view.html.twig');
  221.     }
  222.     /**
  223.      * @Route("/audios/emissions/", name="audios_emissions")
  224.      * @Route("/audios/emissions/emission/{emission}", name="audios_emissions_slug")
  225.      */
  226.     public function action_emissions($emission null)
  227.     {
  228.         $this->extra_locate $this->context['view']->action $this->context['action'] = 'emissions';
  229.         $types = ['spectacles''textes'];
  230.         $format_vignette = array('width' => 480'direction' => 'thumb');
  231.         // Culturebox => les derniers référencés
  232.         $culturebox_params = array(
  233.             'direction' => 'DESC',
  234.             'special' => array(
  235.                 'type_podcast' => 'franceculture',
  236.             ),
  237.             'dbg' => array('derniers_culturebox_current''Les replay France Culture référencés'),
  238.         );
  239. //        if($this->idobject == 5222){
  240. //            $culturebox_params['special']['type_franceinter'] = 1;
  241. //        }
  242.         $culturebox_params['special']['type_franceinter'] = null//Pour France Culture
  243.         $countFranceCulture $this->podcasts->countListPodcasts($culturebox_params);
  244.         $culturebox_params['special']['type_franceinter'] = 1;
  245.         $countFranceInter $this->podcasts->countListPodcasts($culturebox_params);
  246.         unset($culturebox_params['special']['type_franceinter']);
  247.         $culturebox_params['special']['type_podcast'] = 'soundcloud';
  248.         $countSoundCloud $this->podcasts->countListPodcasts($culturebox_params);
  249.         $filtres_emissions = [
  250.             'franceculture' => [
  251.                 'name' => 'France Culture',
  252.                 'count' => $countFranceCulture,
  253.                 'params' => null,
  254.                 'type' => 'franceculture'
  255.             ],
  256.             'franceinter' => [
  257.                 'name' => 'France Inter',
  258.                 'count' => $countFranceInter,
  259.                 'params' => 1,
  260.                 'type' => 'franceinter'
  261.             ],
  262.             'soundcloud' => [
  263.                 'name' => 'Soundcloud',
  264.                 'count' => $countSoundCloud,
  265.                 'type' => 'soundcloud'
  266.             ],
  267.         ];
  268.         $curseur null;
  269.         if(!is_null($emission) && array_key_exists($emission$filtres_emissions)){
  270.             $curseur $emission;
  271.             $culturebox_params['special']['type_podcast'] = 'franceculture';
  272.             if(array_key_exists('params'$filtres_emissions[$curseur])){
  273.                 $culturebox_params['special']['type_franceinter'] = $filtres_emissions[$curseur]['params'];
  274.             }
  275.             else{
  276.                 $culturebox_params['special']['type_podcast'] = 'soundcloud';
  277.             }
  278.         }
  279.         else{
  280.             unset($culturebox_params['special']['type_franceinter']);
  281.             $culturebox_params['special']['type_podcast'] = ['franceinter''soundcloud'];
  282.         }
  283.         $this->perPage 10;
  284.         //Nombre total de podcasts
  285.         $total_podcasts $this->podcasts->countListPodcasts($culturebox_params$format_vignette);
  286.         $this->context['view']->pagination $this->getPagination($total_podcasts);
  287.         $this->context['view']->pagination['totalItems'] = $total_podcasts;
  288.         $this->context['view']->pagination['custom'] = true;
  289.         $this->context['view']->pagination['custom_name'] = "émissions";
  290.         $culturebox_params['limit'] = array($this->getLimitStart(), $this->perPage);
  291.         //données renvoyées à la vue
  292.         $this->context['view']->list_captations $this->podcasts->getListPodcasts($culturebox_params$format_vignette);
  293.         $this->asides->load(['url_lists' => array(
  294.             'exec' => [
  295.                 'htmlstart' => true,
  296.                 'alone' => false
  297.             ],
  298.             'php' => array(
  299.                 'method' => 'asidesUrlLists',
  300.                 'urls' => [
  301.                     [
  302.                         'name' => 'Toutes les émissions',
  303.                         'key' => 'emissions'
  304.                     ],
  305.                     [
  306.                         'name' => 'Émissions critiques',
  307.                         'url' => '/critiques/audios/emission/'
  308.                     ]
  309.                 ],
  310.                 'url' => '/audios/emissions/',
  311.                 'params' => array(
  312.                     'activate' => (is_null($curseur)) ? 'emissions' false
  313.                 )
  314.             ),
  315.             'title' => 'écouter'
  316.         )]);
  317.         $this->asides->load(['url_lists,tst' => array(
  318.             'exec' => [
  319.                 'htmlend' => true,
  320.                 'alone' => false
  321.             ],
  322.             'php' => array(
  323.                 'method' => 'asidesUrlLists',
  324.                 'urls' => $filtres_emissions,
  325.                 'url' => '/audios/emissions/emission/key_type',
  326.                 'params' => array(
  327.                     'key_type' => 'auto_key',
  328.                     'activate' => $curseur
  329.                 )
  330.             ),
  331.             'title' => 'Trier'
  332.         )]);
  333.         $this->asides->load([
  334.             'contact_franceculture_menu,soundcloud' => [
  335.                 'php' => [
  336.                     'method' => 'asidesPodcasts',
  337.                     'params' => [
  338.                         'station' => 'soundcloud',
  339.                         'em' => $this->em
  340.                     ]
  341.                 ]
  342.             ]
  343.         ]);
  344.         if($countFranceCulture){
  345.             $this->asides->load([
  346.                 'contact_franceculture_menu,franceculture' => [
  347.                     'php' => [
  348.                         'method' => 'asidesPodcasts',
  349.                         'params' => [
  350.                             'station' => 'franceculture',
  351.                             'em' => $this->em
  352.                         ]
  353.                     ]
  354.                 ]
  355.             ]);
  356.         }
  357.         //Pour France Inter
  358.         if($countFranceInter){
  359.             $this->asides->load([
  360.                 'contact_franceculture_menu,franceinter' => [
  361.                     'php' => [
  362.                         'method' => 'asidesPodcasts',
  363.                         'params' => [
  364.                             'station' => 'franceinter',
  365.                             'em' => $this->em
  366.                         ]
  367.                     ]
  368.                 ]
  369.             ]);
  370.         }
  371.         return $this->view('audios/emissions.html.twig');
  372.     }
  373.     /**
  374.      * @Route("/audios/spectacles", name="audios_spectacles")
  375.      * @Route("/audios/spectacles/area/{area}", name="audios_spectacles_area")
  376.      * @Route("/audios/spectacles/type/{params_type}/", name="audios_spectacles_type")
  377.      * @Route("/audios/spectacles/type/{params_type}/area/{area}/", name="audios_spectacles_type_area")
  378.      * @Route("/audios/spectacles/area/{area}/type/{params_type}/", name="audios_spectacles_type_area_reverse")
  379.      */
  380.     public function action_spectacles($params_type null$area null)
  381.     {
  382.         $this->extra_locate 'spectacles';
  383.         $this->context['params']['type'] = $params_type;
  384.         $this->context['params']['area'] = $area;
  385.         $this->context['action'] = $this->view->action 'spectacles';
  386.         $obj $this->em->getRepository(Spectacles::class);
  387.         $menu_jours = [
  388.             => array(
  389.                 'name' => 'dans les 7 prochains jours',
  390.                 'key_day' => '7',
  391.             ),
  392.             30 => array(
  393.                 'name' => 'dans les 30 prochains jours',
  394.                 'key_day' => '30',
  395.             ),
  396.             90 => array(
  397.                 'name' => 'dans les 3 prochains mois',
  398.                 'key_day' => '90',
  399.             ),
  400.             365 => array(
  401.                 'name' => 'dans les 12 prochains mois',
  402.                 'key_day' => '365',
  403.             )
  404.         ];
  405.         $day 365;
  406.         if(!empty($_REQUEST['d']) && key_exists((int)$_REQUEST['d'], $menu_jours)){
  407.             $day = (int)$_REQUEST['d'];
  408.         }
  409.         $params_sql = array(
  410.             'params' => array(
  411.                 'where' => ' AND s.publish=1 ',
  412.                 'classement' => 'ASC'//$this->getOrder()
  413.                 'groupby' => 's.idspectacle',
  414.             ),
  415.             'special' => array(
  416.                 'podcasts' => [
  417.                     'type_podcast' => 'franceculture'
  418.                 ]
  419.             ),
  420.             'dbg' => array('spectacles_in_list','Les spectacles à l\'affiche dans ce lieu')
  421.         );
  422.         $types_filtres = array(
  423.             'prochains' => [
  424.                 'params' => [
  425.                     'order' => ['sc.date''ASC']
  426.                 ],
  427.                 'display' => [
  428.                     'vignette' => array('width'=>$_ENV['VIGN_SPECTACLE_WIDTH'],'height'=>$_ENV['VIGN_SPECTACLE_HEIGHT']),
  429.                 ]
  430.             ],
  431.             'anciens' => [
  432.                 'params' => [
  433.                     'order' => ['creation_date''DESC']
  434.                 ],
  435.                 'display' => [
  436.                     'vignette' => array('width'=>$_ENV['VIGN_SPECTACLE_WIDTH'],'height'=>$_ENV['VIGN_SPECTACLE_HEIGHT']),
  437.                     'affiche_date_creation' => true
  438.                 ]
  439.             ]
  440.         );
  441.         $type 'prochains';
  442.         if(!empty($this->context['params']['type'])){
  443.             $type $this->context['params']['type'];
  444.         }
  445.         if(array_key_exists($type$types_filtres)){
  446.             $params_sql['special'][$type] = true;
  447.             $params_sql['params'] = array_merge($params_sql['params'], $types_filtres[$type]['params']);
  448.             $display['display'] = $types_filtres[$type]['display'];
  449.         }
  450.         $this->context['view']->{$type.'_prochains'} = $type;
  451.         if($type == 'prochains'){
  452.             $params_sql['special']['prochains'] = $day;
  453.         }
  454.         else{
  455.             $day false;
  456.         }
  457.         //Par région
  458.         $regions $this->em->getRepository(Bigregions::class);
  459.         if(!is_null($area) && (is_numeric($area) || strlen($area)<3)) {
  460.             $sql_area $regions->getZipCode($area);
  461.             if (!$regions->my_is_int($area)) {
  462.                 $country_name $regions->getNameCountry($area);
  463.                 $this->context['view']->other_country true;
  464.             }
  465.             if(!empty($country_name)) {
  466.                 $this->context['view']->country_name $country_name;
  467.             } else {
  468.                 $this->context['view']->region_name $regions->getRegionName($area);
  469.             }
  470.             $this->context['view']->area $area;
  471.             //SQL : si region, recherche des spectacles dans la région ou le pays
  472.             $params_sql['params']['where'] = $sql_area;
  473.             $params_sql['special']['get_schedule_ville'] = $area;
  474.             $this->context['view']->use_addthis true;
  475.             $asides_top = new asides();
  476.             $asides_top->load(['aside_top' => array(
  477.                 'php' => array(
  478.                     'method' => 'asidesUrlRegions',
  479.                 )
  480.             )
  481.             ]);
  482.             $this->context['view']->aside_top $asides_top->view($this->context['view']);
  483.             // @TODO arnaque temporaire pour avoir la bonne couleur en visuel
  484.             $this->context['view']->main_custom_style 'spectacles';
  485.         }
  486.         $this->context['view']->nb_spectacles_total $obj->countListSpectacles($params_sql);
  487.         $this->context['view']->pagination $this->getPagination($this->context['view']->nb_spectacles_total20);
  488.         $this->context['view']->pagination['totalItems'] = $this->context['view']->nb_spectacles_total;
  489.         $this->context['view']->pagination['spectacle'] = true;
  490.         $params_sql['params']['limit'] = array($this->getLimitStart(),$this->perPage);
  491.         $spectacles $obj->getListSpectacles($params_sql$displaynull, array('allauthors' => true'carrer_couleurs' => true));
  492.         if (!$spectacles) {
  493.             return $this->redirectToRoute("audios_spectacles");
  494.         }
  495.         foreach($spectacles AS $ks => $value_spectacle) {
  496.             $spectacles[$ks]['footer_contact'] = true;
  497.             if(!empty($display['display']['affiche_date_creation'])) {
  498.                 $spectacles[$ks]['annee_creation'] = $obj->getFormeDate($spectacles[$ks]['creation_date'], '%Y'true); //%a %d/%m/%Y;
  499.                 unset($spectacles[$ks]['contact_creation']);
  500.             }
  501.         }
  502.         $this->context['view']->spectacles $spectacles;
  503.         $menu_filtres = [
  504.             'prochains' => [
  505.                 'name' => 'prochains spectacles',
  506.                 'key' => 'prochains'
  507.             ],
  508.             'anciens' => [
  509.                 'name' => 'anciens spectacles',
  510.                 'key' => 'anciens'
  511.             ]
  512.         ];
  513.         $this->asides->load([
  514.             'url_lists' => [
  515.                 'exec' => array(
  516.                     'color' => 'spectacles',
  517.                     'htmlstart' => true,
  518.                     'htmlend' => ($type == 'prochains') ? false true
  519.                 ),
  520.                 'php' => array(
  521.                     'method' => 'asidesUrlLists',
  522.                     'urls' => $menu_filtres,
  523.                     'url' => '/audios/spectacles/type/key_type/generate_params',
  524.                     'structure' => array(
  525.                         'area' => $area
  526.                     ),
  527.                     'params' => array(
  528.                         'key_type' => 'auto_key',
  529.                         'activate' => $type
  530.                     )
  531.                 ),
  532.                 'title' => 'Voir'
  533.             ]
  534.         ]);
  535.         if($type == 'prochains'){
  536.             $this->asides->load([
  537.                 'url_lists,prochains' => [
  538.                     'exec' => array(
  539.                         'color' => 'spectacles',
  540.                         'htmlstart' => false,
  541.                         'htmlend' => true,
  542.                     ),
  543.                     'php' => array(
  544.                         'method' => 'asidesUrlLists',
  545.                         'urls' => $menu_jours,
  546.                         'url' => '/audios/spectacles/type/key_type/generate_params',
  547.                         'structure' => array(
  548.                             'area' => $area,
  549.                             'structure_classic' => array(
  550.                                 'd' => 'key_day',
  551.                             )
  552.                         ),
  553.                         'params' => array(
  554.                             'key_type' => $type,
  555.                             'activate' => $day
  556.                         )
  557.                     ),
  558.                     'title' => 'Recherche par période'
  559.                 ]
  560.             ]);
  561.         }
  562.         $this->asides->load('common_carrer_informations');
  563.         $this->asides->load(['common_carte' => [
  564.             'php' => array(
  565.                 'method' => 'asidesUrlLists',
  566.                 'url' => "/audios/spectacles/generate_params",
  567.                 'params' => array(
  568.                     'get_id' => 'get_id',
  569.                     'key_type' => $type,
  570.                     'key_day' => $day
  571.                 ),
  572.                 'structure' => array(
  573.                     'area' => 'get_id',
  574.                     'type' => 'key_type',
  575.                     'structure_classic' => array(
  576.                         'd' => 'key_day'
  577.                     )
  578.                 )
  579.             )
  580.         ]]);
  581.         return $this->view('audios/spectacles.html.twig');
  582.     }
  583.     // {{{ getLocate()
  584.     /** Ou se trouve t'on (getter)
  585.      *
  586.      */
  587.     public function getLocate() { return $this->locate; }
  588.     // }}}
  589.     // {{{ getTitlePage()
  590.     /** Titre de la page (getter)
  591.      *
  592.      */
  593.     public function getTitlePage() { return $this->title_page; }
  594.     // }}}
  595.     // {{{ getStyleMore()
  596.     /** Style en plus (getter)
  597.      *
  598.      */
  599.     public function getStyleMore() { return $this->style_more; }
  600.     // }}}
  601.     // {{{ getMetaKeywords()
  602.     /** Keywords (getter)
  603.      *
  604.      */
  605.     public function getMetaKeywords() { return $this->meta_keywords; }
  606.     // }}}
  607.     // {{{ getMetaDescription()
  608.     /** Description (getter)
  609.      *
  610.      */
  611.     public function getMetaDescription() { return $this->meta_description; }
  612.     // }}}
  613.     // {{{ getMtinfos()
  614.     /** Infos mon théâtre
  615.      *
  616.      */
  617.     public function getMtinfos() { return $this->mtinfos; }
  618.     // }}}
  619.     // {{{ setOtherDimensions()
  620.     /** Taille maxi des vidéos
  621.      *
  622.      */
  623.     public function setOtherDimensions($other_dimensions)
  624.     {
  625.         $this->other_dimensions $other_dimensions;
  626.     }
  627.     // }}}
  628.     // {{{ getRubCourante()
  629.     /** Pour la rubrique courante
  630.      *
  631.      */
  632.     public function getRubCourante() { return $this->rub_courante; }
  633.     // }}}
  634. }