Announcement

Collapse
No announcement yet.

Why this conditional in TEMPLATEFEED always render "in stock"?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Why this conditional in TEMPLATEFEED always render "in stock"?

    Why would the following conditional in TEMPLATEFEED always render "in stock" in:

    Code:
    <mvt:if expr="l.settings:product:inv_level EQ 'low'">in stock<mvt:elseif expr="l.settings:product:inv_level EQ 'out'">out of stock<mvt:else>in stock</mvt:if>
    Thank you, Bill Davis

    #2
    I'll guess that l.settings:product:inv_level is not being initialized properly, so it's empty. For testing purposes, I'd put a line of code in the template to show the value of product:inv_level on my screen -- or into the output file, or wherever the results are going.
    Kent Multer
    Magic Metal Productions
    http://TheMagicM.com
    * Web developer/designer
    * E-commerce and Miva
    * Author, The Official Miva Web Scripting Book -- available on-line:
    http://www.amazon.com/exec/obidos/IS...icmetalproducA

    Comment


      #3
      not an expert with the Miva based feeds, but all the ones I've looked at use 'record' as the iterator so you need to be testing for l.settings:record:inv_level.

      also, unlike other product arrays, you must specifically list (in the settings area) the parts of the product record you want.
      Bruce Golub
      Phosphor Media - "Your Success is our Business"

      Improve Your Customer Service | Get MORE Customers | Edit CSS/Javascript/HTML Easily | Make Your Site Faster | Get Indexed by Google | Free Modules | Follow Us on Facebook
      phosphormedia.com

      Comment


        #4
        Originally posted by Kent Multer View Post
        I'll guess that l.settings:product:inv_level is not being initialized properly, so it's empty. For testing purposes, I'd put a line of code in the template to show the value of product:inv_level on my screen -- or into the output file, or wherever the results are going.
        Dont understand.
        Thank you, Bill Davis

        Comment


          #5
          Try this:

          Code:
           
           <mvt:if expr="l.settings:record:inv_level EQ 'low'">in stock<mvt:elseif expr="l.settings:record:inv_level EQ 'out'">out of stock<mvt:else>in stock</mvt:if>
          Bruce Golub
          Phosphor Media - "Your Success is our Business"

          Improve Your Customer Service | Get MORE Customers | Edit CSS/Javascript/HTML Easily | Make Your Site Faster | Get Indexed by Google | Free Modules | Follow Us on Facebook
          phosphormedia.com

          Comment


            #6
            Originally posted by Bruce - PhosphorMedia View Post
            Try this:

            Code:
            <mvt:if expr="l.settings:record:inv_level EQ 'low'">in stock<mvt:elseif expr="l.settings:record:inv_level EQ 'out'">out of stock<mvt:else>in stock</mvt:if>
            Its not working....
            Thank you, Bill Davis

            Comment


              #7
              Dump out the variables and see what's actually there.
              Code:
              <mvt:eval expr="glosub(miva_array_serialize(l.settings:record), ',', '<BR>')" />
              <mvt:eval expr="glosub(miva_array_serialize(l.settings:product), ',', '<BR>')" /> 
              Colin Puttick
              Miva Web Developer @ Glendale Designs

              Comment


                #8
                Originally posted by dreamingdigital View Post
                Dump out the variables and see what's actually there.
                Code:
                <mvt:eval expr="glosub(miva_array_serialize(l.settings:record), ',', '<BR>')" />
                <mvt:eval expr="glosub(miva_array_serialize(l.settings:product), ',', '<BR>')" /> 
                I dont understand what that means and how or where to apply it. Can you please elaborate?
                Thank you, Bill Davis

                Comment


                  #9
                  Bill, you would put that in the Iterator template using advanced mode. Then run the feed and see what it outputs. You'll see what variables are available so you don't have to do the guessing you're doing.
                  Colin Puttick
                  Miva Web Developer @ Glendale Designs

                  Comment


                    #10
                    Originally posted by dreamingdigital View Post
                    Bill, you would put that in the Iterator template using advanced mode. Then run the feed and see what it outputs. You'll see what variables are available so you don't have to do the guessing you're doing.
                    Okay, I'm beggning to get an idea (this is very exciting... old dog learning new tricks). Where would I place the code in this particular case?

                    Code:
                    &mvt:record:code;|&mvt:record:name;|&mvt:record:descrip;|&mvt:record:url;|https://www.site.com/mm5/&mvt:record:image;||&mvt:record:url;|<mvt:if expr="l.settings:record:inv_level EQ 'low'">in_stock<mvt:elseif expr="l.settings:record:inv_level EQ 'out'">out_of_stock<mvt:else>in_stock</mvt:if>|||<mvt:if expr="l.settings:record:inv_level EQ 'low'">&mvt:record:price; USD<mvt:elseif expr="l.settings:record:inv_level EQ 'out'"> <mvt:else>&mvt:record:price; USD</mvt:if>|<mvt:if expr="l.settings:record:inv_level EQ 'low'">&mvt:record:price; USD<mvt:elseif expr="l.settings:record:inv_level EQ 'out'"> <mvt:else>&mvt:record:price; USD</mvt:if>|||||||||||NO|Used|NO||||Adult|||||||||||||||||| US:::3.99 USD|||||US:FL:7.00:no&mvt:eol:crlf;
                    Thank you, Bill Davis

                    Comment


                      #11
                      just put it at the beginning then throw some blank linkes in there. Then run it and see the variables. Then remove that code again and run it again so you don't permanently mess up your feed. Then you'll see a bunch of ugly output that shows what variables exist and see if you can find "record:inv" at all. If it's not there at all you'll have to call an API to get the inventory.

                      ...just wondering how you have that code when you don't know this stuff? (not being mean, just wondering)
                      Colin Puttick
                      Miva Web Developer @ Glendale Designs

                      Comment


                        #12
                        Originally posted by dreamingdigital View Post
                        just put it at the beginning then throw some blank linkes in there. Then run it and see the variables. Then remove that code again and run it again so you don't permanently mess up your feed. Then you'll see a bunch of ugly output that shows what variables exist and see if you can find "record:inv" at all. If it's not there at all you'll have to call an API to get the inventory.

                        ...just wondering how you have that code when you don't know this stuff? (not being mean, just wondering)
                        Thanks!

                        I ask myself the same question, I guess I am a driven old man. I use to be very good at this stuff back in the day (MM4.24c OpenUI), but I have not had time to learn MM5 since we migrated which is far more complicated. I've tried on more than one occasion, but the learning curve is steep, at least for me.
                        Thank you, Bill Davis

                        Comment


                          #13
                          Originally posted by William Davis View Post

                          Thanks!

                          I ask myself the same question, I guess I am a driven old man. I use to be very good at this stuff back in the day (MM4.24c OpenUI), but I have not had time to learn MM5 since we migrated which is far more complicated. I've tried on more than one occasion, but the learning curve is steep, at least for me.
                          Speaking as an 'actual' e-commerce web site developer of a certain age, I've begun a deliberate process of doing (and especially learning -- ok remembering) less and less. Instead, I get someone else to do it.

                          When I began this career, we where expected, and could do everything from HTML markup, javascripting, PHP, graphics and image processing, server setup, heck...couple of times helping or building the damn hardware. Nowadays, I do SMT/Mivascript/HTML at most. Everything else is hired out. That leaves a lot of time to actually get stuff done like engaging new business, finding better methodologies for existing business and enjoying life.

                          my two bitcoins.

                          (which reminds me of something my son said last night. that, when he was 16, he bought a high end monitor...for two bit coins. So, somewhere in his garage he has a 21,000 monitor. not related...just funny.)
                          Bruce Golub
                          Phosphor Media - "Your Success is our Business"

                          Improve Your Customer Service | Get MORE Customers | Edit CSS/Javascript/HTML Easily | Make Your Site Faster | Get Indexed by Google | Free Modules | Follow Us on Facebook
                          phosphormedia.com

                          Comment


                            #14
                            Originally posted by Bruce - PhosphorMedia View Post

                            Speaking as an 'actual' e-commerce web site developer of a certain age, I've begun a deliberate process of doing (and especially learning -- ok remembering) less and less. Instead, I get someone else to do it.

                            When I began this career, we where expected, and could do everything from HTML markup, javascripting, PHP, graphics and image processing, server setup, heck...couple of times helping or building the damn hardware. Nowadays, I do SMT/Mivascript/HTML at most. Everything else is hired out. That leaves a lot of time to actually get stuff done like engaging new business, finding better methodologies for existing business and enjoying life.

                            my two bitcoins.

                            (which reminds me of something my son said last night. that, when he was 16, he bought a high end monitor...for two bit coins. So, somewhere in his garage he has a 21,000 monitor. not related...just funny.)
                            I know what you mean, its getting harder as time goes one to code strict HTML5 CSS3 and Miva script since I no longer do it often enough. But we do delegate, Leslie has worked on our site for years, even you and we even have a MAP account with Miva.

                            The problem is that though the frontend has come a long ways, it sadly still has a lot to be desired compared to the ease of implementation and ROI afforded by MM4.24c OpenUI, Viking Coders Templates, Emporium Plus, etc. modules a decade ago. All of these solutions has been gradually disappeared and now requires extensive and costly custom coding to achieve the same things, technology over time should have simplify these this, yet in in this area it is significantly unquestionably worse.

                            Don't get me wrong, there is no question most things are far better today by leaps and bounds, but at what price? I'm all for a rock solid, powerful and agile foundation, but it always seems each time progress is made on the backend (admin) its always at the cost of the frontend, making it more difficult and costlier it to catch-up. We can't lose sight that a high performance race car does not rely solely on its engine to win races. It’s an intricate balance of high performance components engineered to work together, the car as a whole is only as good as its weakest component. Smaller shop like ours in possession of the best high performance engine on the market can't win races races if a suitable chassis, suspension, etc... is beyond their reach.

                            That is how Miva came to be, by filling that balance in the marketplace and grew to into an formidable eCommerce platform fire breathing dragon. Overtaking competitors that fell into complacency and underestimated their opponents prowess and hunger for excellence which inevitably brings market dominance such as it did with IBM/Microsoft, Nokia/Apple, Sears/Amazon, etc.

                            Perhaps these are not the best examples, since none of those companies or dragons started off directly competing in the same line of business like Miva. They did not come flapping their wings from over the horizon and circled over their pray, they pivoted direction and morphed into dragons overnight.
                            Thank you, Bill Davis

                            Comment


                              #15
                              The problem is that though the frontend has come a long ways, it sadly still has a lot to be desired compared to the ease of implementation and ROI afforded by MM4.24c OpenUI, Viking Coders Templates, Emporium Plus, etc. modules a decade ago. All of these solutions has been gradually disappeared and now requires extensive and costly custom coding to achieve the same things, technology over time should have simplify these this, yet in in this area it is significantly unquestionably worse.
                              I simply don't think it would be possible to achieve the ease of use (so to speak) of those things, while simultaneously extending the platform the way we have.

                              Frankly Shopify cleaned our clock on the entry level market and "ease of use" basis, so we went up market and capitalized on our strengths. Such as, platform flexibility that has SaaS security and features.

                              The farther up market we've gone, the less common it is for the store owner to actually be doing these items, which causes less demand for those features, etc... And on top of that, the technologies that power the web are magnitudes more complex today than they were in 2001 when OpenUI came out, that same paradigm would be effectively impossible.

                              We do have big plans on the "CMS" front for the version 10 life cycle that will make it much easier for non technical people to build content pages, but we have no intention of trying to out Shopify, Shopify.
                              Thanks,

                              Rick Wilson
                              CEO
                              Miva, Inc.
                              [email protected]
                              https://www.miva.com

                              Comment

                              Working...
                              X