Ankündigung

Einklappen
Keine Ankündigung bisher.

custom.js

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Zitat von TirochH Beitrag anzeigen

    ja, das war es. Bin auch beim Debugger darauf gestoßen.

    Danke
    Ja, wars doch - nur temporär.

    Code:
    xxAPI.functions.XXSLIDER2 = function ( oarg ) {
        debug(2,"XXSLIDER2",oarg);
        if(oarg.item.action_id != 9) {
            debug(1,"XXSLIDER2 needs Action 'Werteingabe'",oarg);
            return;
        }
        oarg.item.text = "";
        // [xxx, yyy] -->args[1] = yyyxxx
        var _value = [Number(oarg.args[1])%1000, Math.round(Number(oarg.args[1])*0.001)] || [0, 100];
        if(oarg.item.xxapi.hasOwnProperty("slider2")) {
            oarg.item.xxapi.slider2.val(_value);
        } else {
            oarg.item.click = false;
            oarg.item.customcss = {
                "background-color"  : "transparent",
                "pointer-events"    : "auto",
                "overflow"          : "initial"
            }
        }
        if($.isEmptyObject(oarg.item.info)) {
            debug(4,"XXSLIDER2 no item info " + oarg.item.uid,oarg);
            oarg.item.item_callback = function() {
                oarg.iscallback = true;
                xxAPI.functions.XXSLIDER2( oarg );
            }
            return;
        }
        if(!oarg.item.xxapi.hasOwnProperty("slider2")) {
            var _orientation = oarg.item.width > oarg.item.height ? "horizontal" : "vertical";
            var _max = Math.round(oarg.item.info._max * 0.001);
            var _range = Math.abs(oarg.item.info._min - _max);
            var _size = Math.max(oarg.item.width, oarg.item.height);
            var _numsteps = _size / hs.options.sliderstep_px;
            oarg.item.xxapi.slider_step = hs.functions.math_round(_range / _numsteps,oarg.item.info._prec) || 1;
            debug(4,"XXSLIDER2: set step to " + oarg.item.xxapi.slider_step,oarg);
            oarg.item.xxapi.slider2_options = {
                "start"     : _value,
                "class"     : "",
                "connect"   : [false, true, false],
                "extended"  : true,
                "orientation"   : _orientation,
                "direction"     : _orientation == "horizontal" ? "ltr" : "rtl",
                "step"          : oarg.item.xxapi.slider_step || 1,
                "range"         : {
                    "min"   : oarg.item.info._min || 0,
                    "max"   : _max || 100 //max = yyyxxx
                }
            };
            var _text2 = oarg.item.info._txt2 || "";
            if(_text2.match(/^XXOPTIONS\*/)) {
                oarg.item.xxapi.slider2_options = $.extend(oarg.item.xxapi.slider2_options, hs.functions.option_parser(_text2.substring(10),oarg.item.xxapi.slider2_options));
            }
            if(oarg.item.xxapi.slider2_options.temp) {  // nur Option bei XXSLIDER
                delete oarg.item.xxapi.slider2_options.temp;
            }
            oarg.item.xxapi.slider2 = $("<div />",{
                "class" : oarg.item.xxapi.slider2_options.class + " " + (oarg.item.xxapi.slider2_options.extended ? "noUi-extended" : ""),
                "css"   : {
                    "width"   : _orientation == "horizontal" ? "100%" : "",
                    "height"  : _orientation == "vertical" ? "100%" : ""
                }
            });
            oarg.item.xxapi.slider2.noUiSlider(oarg.item.xxapi.slider2_options);
            if(oarg.item.xxapi.slider2_options.disabled) {
                oarg.item.xxapi.slider2.attr("disabled","disabled");
            }
            if(oarg.item.xxapi.slider2_options.hasOwnProperty("handle")) {
                if(!oarg.item.xxapi.slider2_options.handle) {
                    oarg.item.xxapi.slider2.find(".noUi-handle").css("display","none");
                } else {
                    oarg.item.xxapi.slider2.find(".noUi-handle").addClass(oarg.item.xxapi.slider2_options.handle);
                }
            }
            oarg.item.xxapi.slider2.on("change",function() {
                oarg.item.value = oarg.item.info._val = (oarg.item.xxapi.slider2.val()[0]+oarg.item.xxapi.slider2.val()[1]*1000);
                hs.functions.do_valset( oarg );
            });
        }
        if(oarg.iscallback) {
            oarg.item.object.html(oarg.item.xxapi.slider2);
        } else {
            oarg.item.html = oarg.item.xxapi.slider2;
        }
        if(oarg.item.object) {
            oarg.item.object.find(".noUi-connect").css("background-color",oarg.item.color);
            oarg.item.object.find(".noUi-background").css("background-color",oarg.item.bg_color);
        } else {
            setTimeout(function() {
                oarg.item.object.find(".noUi-connect").css("background-color",oarg.item.color);
                oarg.item.object.find(".noUi-background").css("background-color",oarg.item.bg_color);
            },0);
        }
    };

    Der aktuelle Code hat dieselben Effekte -- wie vorher.
    Meiner Ansicht funktioniert der Cache (Manifest) nicht.

    Hans
    Zuletzt geändert von TirochH; 21.03.2017, 07:56.
    Hans

    Kommentar


      #17
      Ich hab ne aktualisierte Version vom xxAPI Loader, die kannst du mal testen und Rückmeldung geben ob es damit besser ist. Die hatte ich noch nicht veröffentlicht, weil da ab und an Fehler beim Starten auftreten.
      Angehängte Dateien
      Nils

      aktuelle Bausteine:
      BusAufsicht - ServiceCheck - Pushover - HS-Insight

      Kommentar


        #18
        Abend,

        Hans did you managed to get the procedure working?

        grusse,

        G.

        Kommentar


          #19
          Zitat von NilsS Beitrag anzeigen
          Ich hab ne aktualisierte Version vom xxAPI Loader, die kannst du mal testen und Rückmeldung geben ob es damit besser ist. Die hatte ich noch nicht veröffentlicht, weil da ab und an Fehler beim Starten auftreten.
          Zitat von TBBW Beitrag anzeigen
          Abend,
          Hans did you managed to get the procedure working?
          grusse,
          G.
          Hi Nils, hi G.

          Neue Version von 12280_xxAPI.zip schlechter.

          start.htm geht überhaupt nicht.
          xstart.htm wie vorher

          Resümee: Prinzipielles Problem mit "custom.js". Aus meiner Sicht sind nachträgliche Ergänzungen nicht möglich.

          Ohne jetzt alle technischen Möglichkeiten zu überblicken fallen mir 2 Varianten ein:
          1. Versionierung der "custom.js". Übergabe der Version bei Aufruf mit Parameter ".../start.htm?custom=custom.xx.js" (wenn technisch möglich??)
          2. Verlagerung in Github, Folge: jeder Anwender braucht Github-Account

          Würde für alle gelten, die die custom.js verwenden. Für den Rest wie vorher.

          Ob meine Vorschläge realistisch und machbar sind, kannst nur Du, Nils, beurteilen.

          Hans
          Hans

          Kommentar


            #20
            Zitat von NilsS Beitrag anzeigen
            Ich hab ne aktualisierte Version vom xxAPI Loader, die kannst du mal testen und Rückmeldung geben ob es damit besser ist. Die hatte ich noch nicht veröffentlicht, weil da ab und an Fehler beim Starten auftreten.
            Hi Nils,
            noch ein Problem,

            nach Einspielen der alten Version von 12280_xxAPI.zip geht der Start von ... /start.htm auch nicht mehr. Bin. in einer Sackgasse gelandet.

            Beiliegend der Aufruf mit Debugger:

            Hans

            Bildschirmfoto 2017-03-22 um 10.46.31.png
            Zuletzt geändert von TirochH; 22.03.2017, 12:35.
            Hans

            Kommentar


              #21
              Zitat von TirochH Beitrag anzeigen

              Hi Nils, hi G.
              ........
              Hans
              Hi Nils,

              hab noch was rausgefunden.

              1. Konnte durch nochmaliges Laden des alten Bausteins 12280 wieder altes System zum Laufen bringen.
              Fehler, wie vorher ( bei der alten Version des 12280)

              2. Habe danach nochmals den neuen 12280 geladen.
              Aufruf via ../xstart.htm. --> Alles super.
              Danach Aufruf via ../start.htm. --> Alles super.

              3. Nochmals neue Version
              Umgekehrte Reihenfolge:
              Zuerst Aufruf ../start.htm --> Ladefehler
              Danach Aufruf ../xstart.htm --> Alles Super

              4. nochmals, wie bei Pkt. 2
              Ergebnis --> alles Super

              Resümee: Neue 12280 funktioniert, wenn man nach Update von custom.js vorher ../xstart.htm und danach erst ../start.htm aufruft.

              Hans

              Habe ich folgendermaßen getestet:

              in custom.js Versionsnummer eingebaut:

              Code:
              /* 
               * in Visu HS Experte: Statischer Text: XXCUST_VERSION*
               */
              xxAPI.functions.XXCUST_VERSION = function ( oarg ) {
                  debug( 2 , "XXCUST_VERSION" , oarg );
                  oarg.item.text = "HS 4.5.0 (h)";
              };
              und auf Visu-angezeigt

              Bildschirmfoto 2017-03-22 um 21.51.50.png
              Hans

              Kommentar


                #22
                Zitat von NilsS Beitrag anzeigen
                Ich hab ne aktualisierte Version vom xxAPI Loader, die kannst du mal testen und Rückmeldung geben ob es damit besser ist. Die hatte ich noch nicht veröffentlicht, weil da ab und an Fehler beim Starten auftreten.
                NilS,

                was meinst Du?

                Hans
                Hans

                Kommentar


                  #23
                  Zitat von NilsS Beitrag anzeigen
                  Ich hab ne aktualisierte Version vom xxAPI Loader, die kannst du mal testen und Rückmeldung geben ob es damit besser ist. Die hatte ich noch nicht veröffentlicht, weil da ab und an Fehler beim Starten auftreten.
                  NilsS:

                  Nochmals eine Zusammenfassung der festgestellten Probleme und die derzeitigen Umgehungslösungen:

                  1. Habe Baustein 12280 in Version 1.017 und 1.020.

                  Egel welcher Baustein im Einsatz: Änderungen im "custom.js" werden nicht durchgeführt.
                  Umgehungslösung: man ladet vorher im GIRA Experten die 12280er Version, die nicht geladen ist.
                  Das heißt: wenn im HS 1.017 enthalten --> dann 1.020 laden oder umgekehrt.

                  Nach dem Neuladen ist unbedingt vor Aufruf von ../xxapi/start.htm ein Aufruf von ../xxapi/xstart.htm durchzuführen.

                  Wenn nicht diese Reihenfolge eingehalten wird, läuft das System nicht.

                  Tritt nur dann auf wenn Änderungen in "custom.js" durchgeführt werde (richtig formuliert: ist nur dann Problem).

                  Problem ist nicht am Client, Sondern beim Homeserver. Problem tritt immer auf allen Clients auf. Wenn behoben dann bei keinen CLIENT.

                  Problem ist ziemlich lästig .........

                  Hans
                  Hans

                  Kommentar


                    #24
                    Zitat von NilsS Beitrag anzeigen
                    Ich hab ne aktualisierte Version vom xxAPI Loader, die kannst du mal testen und Rückmeldung geben ob es damit besser ist. Die hatte ich noch nicht veröffentlicht, weil da ab und an Fehler beim Starten auftreten.
                    Da das Problem doch ziemlich stört habe ich als "Interimlösung" einen neuen Baustein 12280 gebastelt der das Problem weitgehend umschifft.

                    Das einzige nach Neueinsatz einer geänderten "custom.js": unbedingt .../xxapi/xstart.htm vor ../xxapi/start.htm aufrufen.

                    Bei keiner geänderten "custom.js" läuft meine "Interimslösung" ohne Einschränkungen.

                    Wenn nämlich Baustein 12280 V1.020 im Einsatz ist, ist ../xxapi/start.htm nicht möglich.

                    Beiliegend der adaptierte Baustein 12280.

                    Hans
                    Angehängte Dateien
                    Zuletzt geändert von TirochH; 27.03.2017, 12:15.
                    Hans

                    Kommentar


                      #25
                      Hallo Hans. Hast du das Problem eigentlich schon gelöst? Klappt das mit XXSLIDER und XXSLIDER2? Kannst du beide in der Custom.css individuell stylen?


                      LG Andy

                      Kommentar


                        #26
                        Ich hole das hier nochmal hoch. Geht mittlerweile ein XXSLIDER2?

                        Kommentar


                          #27
                          So gemacht wie in #16 von Hans. Ich versuch morgen mal was zu posten.

                          Kommentar


                            #28
                            Das wäre top, danke!

                            Kommentar

                            Lädt...
                            X