HISE Logo Forum
    • Categories
    • Register
    • Login

    How to check if a json file is not in the project folder

    Scheduled Pinned Locked Moved Solved General Questions
    13 Posts 3 Posters 592 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • d.healeyD
      d.healey @Sawer
      last edited by

      @Sawer

      There is no such function. You can use the file api to look for files though, if you're interested in a JSON file in the User Presets folder you can use Engine.loadFromJSON

      Libre Wave - Freedom respecting instruments and effects
      My Patreon - HISE tutorials
      YouTube Channel - Public HISE tutorials

      S 2 Replies Last reply Reply Quote 0
      • S
        Sawer @d.healey
        last edited by

        @d-healey Ok ,thanks

        1 Reply Last reply Reply Quote 0
        • S
          Sawer @d.healey
          last edited by

          @d-healey But why when I remove the Json file from my folder, the onInit callback console doesn't give me error stating that there's no variable or Json file? Cause I have a statement that works on a value placed in a Json data. When I throw the Json file to the trash, the function still works on that value.

          d.healeyD 1 Reply Last reply Reply Quote 0
          • d.healeyD
            d.healey @Sawer
            last edited by

            Can you show me a code example?

            Libre Wave - Freedom respecting instruments and effects
            My Patreon - HISE tutorials
            YouTube Channel - Public HISE tutorials

            S 1 Reply Last reply Reply Quote 0
            • S
              Sawer @d.healey
              last edited by

              @d-healey

              inline function checkOnLoad()
              {
              	local pData = Engine.loadFromJSON("../endTrial.js");
                      
                      local v = pData.enddate;
                      
                      if (todaystime > v )
                      {
              		  include("Serials.js");
              		  include("Authorisation.js");
                        ScriptLabel3.showControl(false);
              		  AuthorisationDialogue.showControl(1);
              		  GlobalMute.setAttribute(GlobalMute.ignoreButton, 1);
              
                       }
                      
                      else if (todaystime < v)
                      {
                         Console.print("trial still working"); 
                         ScriptLabel3.setValue("10 Day Trial Running");
                         AuthorisationDialogue.showControl(0);
                         Label1.showControl(0);
                         Startbtn.showControl(0);
                         GlobalMute.setAttribute(GlobalMute.ignoreButton, 0);
                      }
                      
                      ScriptLabel3.changed();
                      
                      
                  
              }
              
                  checkOnLoad();
              

              My concern is that the " local v = pData.enddate;" still works even when it's not there (Json File throwed away) That's why I was looking for a function to check if the Json is in the project folder so the whole function resets. The purpose behind my question is that I want to create a set of function that :

              1. On a button callback, dumpsAsJson(myData,"/..myFile)
              2. If myVar is > or < than myData = Do something
              3. If Json file is not there = reset UI to state 1
              d.healeyD 1 Reply Last reply Reply Quote 0
              • d.healeyD
                d.healey @Sawer
                last edited by

                @Sawer

                You're including files within a function, does that work?

                How are you checking if the data is being loaded from the file?

                How are you getting todaystime?

                To check the existence of a file you should use the file and filesystem APIs.

                Libre Wave - Freedom respecting instruments and effects
                My Patreon - HISE tutorials
                YouTube Channel - Public HISE tutorials

                S 1 Reply Last reply Reply Quote 1
                • S
                  Sawer @d.healey
                  last edited by Sawer

                  @d-healey Everything works perfectly.
                  I just need a function that checks if a file is there or not So that the UI (label1 and Startbtn) is or is not visible based on my statements.
                  The snippet has other files outside, so you could probably get a lot of errors. Let me try and send it then..

                  HiseSnippet 2526.3oc2Y8tbabaD+NIcolzxwNYxj1OhQSmoTMpTjRT+Kt0gRhTNLQThiHsS8zYZJ3QPRDcD3xc3jLaF2wSeR5iheD5iPeDxaf6Bb2oCG4QZZNMcZ58AagE6t3GVr6hcAa4wsI99bOCybcF6RLLW2p8XlX3oCwTlQiZFlOx5Tt63VdbAwVP4LiSF6h88I8LLMW8oRtLyslg56G+hSvNXlMIgjgwy4Tax4zQTQB0VU+ZpiyY3djNzQZbWoZCaN6TtCO.PzpVkLbw1WiGPt.KYaEKCyOndOpf60VfEDeCy0Ng2ab6g7aYg7+bpOsqCQNnrQaPQgjOi6zShXIUiSGRc50Jdm6aXXZ0JwNrZnc3SrZR6Quitt8PNAJQBc6g4Jog2pofWYc3URCdY.oUzfzZgP5irZa6QcEIyHwy8sZvDDu9XvrqCkPdMVwXc3.D3fIJNBeM4LOXvcRTX+Rk1BsWoRa9374yu81mEvTGxHwPr.MfH9M9nN7d3w9ndvNpPsZa2r41u.91LOk4PYDT+XQ.tkmlvVejaCVMPlBRYZK7nrAal+GxifOGtM1AIh4C8GPMwhgE83ArdZrWzOnqu5uJr+VnC2bSTz21aijZNOJiuO6cpqJag1Gz0uEsao6TWSvdLbYUHX7pDpv826wQJ7EDrW9bxOkR8Hh.OVxV9wJp4ekzbWCzI5JRehGAhZ7yCN+9BzMXuHitbMASTc1.vRWDLvsG6KHijl4B8wN9D3XKQl5rdyS.gWPZ9Ep0PBLPjLN8zvPZ47nXGBqGHklJ9LT4ROVtodVCDnEOQGIaZhoH1Uv.whcHgE8T9HWNCFTXiXF1H0pE5GeNtKwY2YKpFSoE+3.wPtG0GK8QqAHhOHfLS8jI2oUnZQJOSMDNsTjL0UQeHYfTROtSgx.Wg7OE4XawTS.F3lABhFfdpCuK1QRD.kJ4sDRoxdUXiDljPKYTQeh3XAbh1EFTPiNc.i6QNIPH3rsPpUV8AN3gDQmhcb5BomCyU.ADXgO72jP+ihRNO0iHyChvLDUlxgAw9ekOmcF0gftkJFp3W5JobgdN1IfLUdENK1XDaGriM2aAF.PDYxkbZoW5J8LibRAbqh2RlEbnw.Coh3+goh+2fDFMswmi5lZxWEE.mi1GUHZ4SqhnnudAibO1+qZe4ExbG3sPaTr31chfUeJXKJ9c9xSiX4zchkmKJyQgMJWRlxCojb1rq4lDEnGy261OrjF2Y3OpOcl9kJFxk681qRJWtWkGrn4eWYDjZLZ4h86JLkiQnS5j2hYODXFbBA.iFgYiQpqyFhugfBusr.ko7CkdlHoq4lfNZzWQ6z.OH2rPc6Gh5iZd4U0kpMTBEUtlz8Ao+bYHJD8I2vdRY.5XoKNvDV+r.4GVQEB65B2Y3Wb1K640a2dAV152.2jHFB2LAW6LBpXILfzGpdpfx+A0NZIUAeRCwlEmJfydHw95KYmyw8JnBsBiabqEF3D4d6.SCESLR4f+tbsu6OBU0MfZTpqXTTVFbJCuztd4IfPalOIdMWNfElsSPOHDoMQt19QKZpoR48OAplSLT7sqRcsXIxkbtb4USRsLsUf.vXRSwuGcitkPK2DfGetConKTbBD9nxABYlgZsQ2x8tF7KfsepLeKPNGzUALVnn5R99kV4cmYYtIWR9VpjLyw.mx..oJXCfDBY44dWYax+OUHR3UiZ2WcAzqzkrvXGPBzjS0uelyEsicHdYNsr7Lu4IXAVvntDuTWJBLB8OjtoDqY2ThdOS1goj0XjyZvnhKcIrY0IkQTdb3udVCY.NzIiYDMfOWhmfJgfYMxMPagg80jypFw+ZA2E5t6tj+Fl2Snl8AVZGQFTn2lOTmxtFu7t9GqxqN9tAuwq5szdhgIcW9hpCIzAC05CsQUA4kBoF0c3MtI1fXtpgFfVWD0YX3xeFjAT.wEcfjuJb8PKcRk0.F7k.LiwS.r272mBXunZjQKzBk25qIi6xwd8L5NHt830sprygUNX+i18vRFTnJ+3ItuUk814nCqb3tk0nuSnDGU4n8OXmi1yPty06zVcZsxe1zRlQYCX89FIHgxeJWoXosjzpQ8ccviuzV.2cdgxWClVkoTM+47aAw.RGoF9kzvQk24.03SC7E7QO0C6NjZ6mRxZj93.Gwwp6AkOfPpYOwAt.Gz0UxTMvLkJt+QpuCOrzAGU5fxJt5vGLvgzj2Ksvxahgl2YLhiDKJZOym7b3dPtmFXjEMEO4YNXQawXmIzTq5wmBSRWk3JYU1IlNzQl1Zue9WYn6O8KR6f2Byhbv+kVYlbU2g5IZd5FUlvg5e85Icnd82WsK2qGw6JbOZfuliYUy0VjXtGHiQUzjOAjFPtPGHMp5hk0snowYsWRi3+x3oP7WFEa9PqFWzt9UcPv+z33ySYAmIbW2pCU3PBI7RcKUJy1Rh1+weap.1mDg1O0pkS.TeT70i+UkdxBzwYwBumJNwVP2QzXRI390+I8DacWbb6CQpMXs7Hvckgg4S3o3Gg6JVn2iuPXlZWke1dNgUm0f4FHl0dBR3sv6oP.uh0zakIcgpUUOaY4C1a28NrzQ6taprkpjhk1emJGs2Ao1Q4l0N5ii1Qp6SmxESOxrZP0Yg1WmgKTBZy8AFFu8sRp2n+hg5vyZVv6dVgUZoAp23nCpuKBTqYc4UYsiyvyLuUbsY5aUp9IHaxqaoyLHAtAsywPDs7R2ieApiJtdZWUpeS9H.XXuwQ0aL8yzdeq6Z0R8ZnqakTHX5Wlc0E9kYKO2WlMoDGyUhJ7BXcNwz5kiZnJMS+EyMV.c7Pq9zW1VDXesr7Q+IUhQJCSziE+HK3pv.3hrzucs7A6ilXx2xW9nvLepXrN79O1CZunP7irZQE1CyFiqjAFkmC+DfwH+qGXUueenVgD.tl0Y+weZdye8k+CicuaC8ZqdTO0h+opwnuQ93EOkvHdRiW447Sx7OWzeRF2E9mjIr9uNPcZ9tb+TJtMYDsCjLQu.CCYAUdjuWU8lN8SgJoxbpe7KNC1jYJSarHvS4Vb7Hd.SjxMX048SCUdI+ogV6+49og9YPvtoYqo9gEeD35Nx0gTmcCwA5DTgwO1Jpz+Xpo8kaxYb2gbF0V+f9JBzz+fADOcrm4F5Xg.ZcHgxmT8JhCAq6z9qqdN3rg8jMNrj1hxKtsXdmW+JqP3hjAfne9ljd0++NI8U7.YK9MwfSHTKjEzHbaH2nMIpSO4CrXthL+V33RxwgIGY8TCdK7EMYY4XynIKGO4+UViQXaO92ZGV8gzO8dJJv9lo9w1yY0TNFUNtbCKqREKYLBxv8s11RS7uCRXlsL6rDxr6RHSkkPl8VBY1eIj4fkPlCmqLxKWfVh3ih5oznYq5pWswzrNCCduJOci+MvGNZVo
                  
                  d.healeyD LindonL 2 Replies Last reply Reply Quote 0
                  • d.healeyD
                    d.healey @Sawer
                    last edited by d.healey

                    @Sawer Use the file api. You should answer the questions I asked and I might be able to help you more.

                    Libre Wave - Freedom respecting instruments and effects
                    My Patreon - HISE tutorials
                    YouTube Channel - Public HISE tutorials

                    S 1 Reply Last reply Reply Quote 1
                    • LindonL
                      Lindon @Sawer
                      last edited by

                      @Sawer

                      Have you tried:

                      local pData = Engine.loadFromJSON("../endTrial.js");
                      if (pData)
                      {
                          Console.print("file loaded...");
                      }else{
                          Console.print("file NOT THERE.....");
                      }
                      

                      HISE Development for hire.
                      www.channelrobot.com

                      S 1 Reply Last reply Reply Quote 3
                      • S
                        Sawer @Lindon
                        last edited by

                        @Lindon Not yet, trying it now. Thanks so much.

                        1 Reply Last reply Reply Quote 0
                        • S
                          Sawer @d.healey
                          last edited by

                          @d-healey
                          I've tried with the api, but maybe I haven't found precisely what I was looking for. Anyway I've attached the snippet, this will answer all the question. Thanks

                          S 1 Reply Last reply Reply Quote 0
                          • S
                            Sawer @Sawer
                            last edited by

                            @d-healey , @Lindon Working super, thanks so much for the help!

                            1 Reply Last reply Reply Quote 1
                            • S Sawer has marked this topic as solved on
                            • First post
                              Last post

                            26

                            Online

                            1.7k

                            Users

                            11.9k

                            Topics

                            103.4k

                            Posts