abarrau / jeedom-plugins-doc

Doc des plugins développés par abarrau/olindote, pour la box domotique Jeedom
3 stars 0 forks source link

[DaikinOnlineCtrl] Prise en compte des paramètres d'affichage dans un Design #46

Closed makkil closed 4 years ago

makkil commented 5 years ago

Bonjour,

j'ai ajouté mon chauffage dans un design

screenshot_design_1

puis j'ai voulu modifier la couleur de fond (transparent) et masquer le nom de l'objet uniquement dans le design, mais les modifications ne sont pas prise en compte.

Modification du plugin: DaikinOnlineCtrl.class.php


    public function toHtml($_v='dashboard') {
        $_version = $_v;
        $_isPanelM = ($_v=='panelM')?true:false;
        $_sTs=getmicrotime();
        if ($this->_whatLog=='') $this->_whatLog='WIDGET/'.$_version;
        log::add(get_called_class(), 'debug', '['.$this->_whatLog.'|'.$this->getName().'('.$this->getId().')] toHtml(' . $_version . ') start ...');
        // annule le traitement et fait référence à ce qui existe dans eqLogic //
        if ($this->getConfiguration('widgetOther', -1) == '1'){
            if (!$_isPanelM) { // si c'est le panel mobile, on continue .... //
                log::add(get_called_class(), 'debug', '['.$this->_whatLog.'|'.$this->getName().'('.$this->getId().')] EqLogic.toHtml() use jeedom widget (no plugin widget).');
                return parent::toHtml((!$_isPanelM)?$_version:'mview');
            }
        }
        // pré-traitement des données Jeedom //
        $replace = $this->preToHtml($_version,array(),true);
        if (!is_array($replace)) {
            return $replace;
        }
        // utilisation du widget du plugin //

        // $_version = jeedom::versionAlias($_version);
/* ma modif */  $version = jeedom::versionAlias($_version);

        $mc = cache::byKey(olindoteTools::eqlogicHtml_getWidgetCacheName($_version,$this));
        if ($mc->getValue() != '') {
            log::add(get_called_class(), 'debug', '['.$this->_whatLog.'|'.$this->getName().'('.$this->getId().')] EqLogic.toHtml('.$_version.') aborded !');
            return $mc->getValue();
        }
        // generate data for html //
        $replace['#DOClastUpdate#']= date('Y-m-d H:i:s');
        $replace = array_merge($replace, $this->generateDataForHtml());
        // mise à jour du cache pour le widget //
        log::add(get_called_class(), 'debug', '['.$this->_whatLog.'|'.$this->getName().'('.$this->getId().')] eqLogic.replace='.print_r($replace,true));

        // $html = $this->postToHtml($_version, template_replace($replace, getTemplate('core', ($_isPanelM)?'panelM':$_version, 'DaikinOnlineCtrl', 'DaikinOnlineCtrl')));
/* ma modif */  $html = $this->postToHtml($_version, template_replace($replace, getTemplate('core', ($_isPanelM)?'panelM':$version, 'DaikinOnlineCtrl', 'DaikinOnlineCtrl')));  // ma modif

        log::add(get_called_class(), 'debug', '['.$this->_whatLog.'|'.$this->getName().'('.$this->getId().')] EqLogic.toHtml('.$_version.') Refresh Widget : OK');
        return $html;
}

j'ai modifié le nom de la variable lors de la récupération de l'alias que j'ai utilisé uniquement lors de l'appel de la fonction getTemplate si ce n'est pas un panelM

screenshot_design_2

abarrau commented 5 years ago

Bjr merci pour cette adaptation. j'avais en effet étudié une correction, mais non rendue public encore. je laisse ouvert pour que vous puissiez valider une fois la version livrée. Merci

abarrau commented 5 years ago

OK correction implémentée, prévue dans la prochaine version.

abarrau commented 5 years ago

pour info, j'ai poussée en beta ces évolutions. merci de tester et confirmer le bon fonctionnement.

abarrau commented 4 years ago

Pas de retour, je ferme.