OFBiz
  1. OFBiz
  2. OFBIZ-4120

Umbrella task for features which use javascript to degrade gracefully

    Details

    • Type: Bug Bug
    • Status: Reopened
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: Trunk
    • Fix Version/s: None
    • Component/s: ALL APPLICATIONS
    • Labels:
      None

      Description

      By using more an more javascript we forget sometimes that it may not available and OFBiz features should continue to work even it's not as easier for users than wih javascript.

        Activity

        Hide
        Jacques Le Roux added a comment -

        So far, the current cases are only the ones found on the Catalog Main page, I'm sure there are more...

        Show
        Jacques Le Roux added a comment - So far, the current cases are only the ones found on the Catalog Main page, I'm sure there are more...
        Hide
        Jacques Le Roux added a comment -

        Mmm, now that I think more about it I think we have a bigger problem here: for security reasons we have heavily introduced use of javascript (see https://issues.apache.org/jira/browse/OFBIZ-2330 and maybe even https://issues.apache.org/jira/browse/OFBIZ-1525) all those cases are not barely usable w/out js but unusable...

        So I wonder now if OFBIZ-4120 has even any sense. We rely on js and OFBIZ-2330 is really showing it!

        Show
        Jacques Le Roux added a comment - Mmm, now that I think more about it I think we have a bigger problem here: for security reasons we have heavily introduced use of javascript (see https://issues.apache.org/jira/browse/OFBIZ-2330 and maybe even https://issues.apache.org/jira/browse/OFBIZ-1525 ) all those cases are not barely usable w/out js but unusable... So I wonder now if OFBIZ-4120 has even any sense. We rely on js and OFBIZ-2330 is really showing it!
        Hide
        Hans Bakker added a comment -

        what is the reason for supporting browser without javascript?
        I really do not see why you want to do that? Any modern browser supports it?

        Regards,
        Hans

        Show
        Hans Bakker added a comment - what is the reason for supporting browser without javascript? I really do not see why you want to do that? Any modern browser supports it? Regards, Hans
        Hide
        Jacques Le Roux added a comment -

        I agree, I think we will finally end with your answer. It was an attempt to seriously answer to Adrian: http://markmail.org/message/qv2fay566mfr4zjq

        My conclusion is that w/out javascript currently OFBiz backend is screwed. So we should forget to try to make OFBiz running without it, it's too much work. I f you are interested you can (re?)-read the above thread

        Thanks

        Show
        Jacques Le Roux added a comment - I agree, I think we will finally end with your answer. It was an attempt to seriously answer to Adrian: http://markmail.org/message/qv2fay566mfr4zjq My conclusion is that w/out javascript currently OFBiz backend is screwed. So we should forget to try to make OFBiz running without it, it's too much work. I f you are interested you can (re?)-read the above thread Thanks
        Hide
        Jacques Le Roux added a comment -

        My initial idea was to let know users that javascript is required! Adrian was against, but I think there are simply no other reasonnable solutons... And I tried to demonstrate it, I think it's done

        Show
        Jacques Le Roux added a comment - My initial idea was to let know users that javascript is required! Adrian was against, but I think there are simply no other reasonnable solutons... And I tried to demonstrate it, I think it's done
        Hide
        Adrian Crum added a comment -

        Hans,

        Some users prefer to leave JavaScript turned off for security and privacy reasons. Some organizations may require it to be turned off.

        Show
        Adrian Crum added a comment - Hans, Some users prefer to leave JavaScript turned off for security and privacy reasons. Some organizations may require it to be turned off.
        Hide
        Adrian Crum added a comment -

        Jacques,

        It's great that you've consolidated the JavaScript issues under one task, but I don't think we need to make a special effort to accommodate users who have it turned off. From my perspective, as long as OFBiz detects if it is enabled and provides an indicator in the rendering context, then we've done our job. Like everything else in the project, those users who encounter problems using OFBiz with JavaScript turned off can provide patches to fix them.

        Show
        Adrian Crum added a comment - Jacques, It's great that you've consolidated the JavaScript issues under one task, but I don't think we need to make a special effort to accommodate users who have it turned off. From my perspective, as long as OFBiz detects if it is enabled and provides an indicator in the rendering context, then we've done our job. Like everything else in the project, those users who encounter problems using OFBiz with JavaScript turned off can provide patches to fix them.
        Hide
        Jacques Le Roux added a comment -

        Adrian, quoting you

        From my perspective, as long as OFBiz detects if it is enabled and provides an indicator in the rendering context, then we've done our job.

        Actually that's what I suggestged in the above thread, quoting myself

        This is user's problem not OFBiz's, we can't take care of all subtilities. But we should explain this to users. We could add an obivous (colored?) label in the header (javascript enabled). Then they should be aware and it's their responsabilites.

        I will go for that with the jQuery cookie solution and... voilà...

        Also I asked

        BTW I was surprised that Ryan and you put the access to preferences and languages features in the footer. It's not always visible and seems a bit weird to me

        Any answers?

        Show
        Jacques Le Roux added a comment - Adrian, quoting you From my perspective, as long as OFBiz detects if it is enabled and provides an indicator in the rendering context, then we've done our job. Actually that's what I suggestged in the above thread, quoting myself This is user's problem not OFBiz's, we can't take care of all subtilities. But we should explain this to users. We could add an obivous (colored?) label in the header (javascript enabled). Then they should be aware and it's their responsabilites. I will go for that with the jQuery cookie solution and... voilà... Also I asked BTW I was surprised that Ryan and you put the access to preferences and languages features in the footer. It's not always visible and seems a bit weird to me Any answers?
        Hide
        Jacques Le Roux added a comment -

        I guess I was a bit wrong in my assumptions, since I missed the script at the end of login.ftl files (do we really need more than one?). But it's still true that collapsing screenlets were working without js in R4.0 so was (and is still in Order Manager and eCommerce, lack of consistency) the categories tree in R10.04 and we should switch on JavaScriptEnabled using the old way rather than nothing. For the Help we should at least have something, but I for all the FTL using javascript for security reasons (no parameters in URL to avoid XSS) I guess we have no solutions, so yes all I did is maybe a waste of time

        Show
        Jacques Le Roux added a comment - I guess I was a bit wrong in my assumptions, since I missed the script at the end of login.ftl files (do we really need more than one?). But it's still true that collapsing screenlets were working without js in R4.0 so was (and is still in Order Manager and eCommerce, lack of consistency) the categories tree in R10.04 and we should switch on JavaScriptEnabled using the old way rather than nothing. For the Help we should at least have something, but I for all the FTL using javascript for security reasons (no parameters in URL to avoid XSS) I guess we have no solutions, so yes all I did is maybe a waste of time
        Hide
        Jacques Le Roux added a comment -

        Since a lot of actions are not availablke without js enabled, should we not warn the user about it? If we are OK on this I will close all the tasks here since we can't avoid the FTL issues (OFBIZ-2330).

        Show
        Jacques Le Roux added a comment - Since a lot of actions are not availablke without js enabled, should we not warn the user about it? If we are OK on this I will close all the tasks here since we can't avoid the FTL issues ( OFBIZ-2330 ).
        Hide
        BJ Freeman added a comment -

        guess I am the lonely decenter I had to turn on my browser java script to see what I was missing.
        looks like I will have to do more manual appliation of commits from now on.

        why do I keep the JS off
        a lot of sites are showing up that use js to override pop ups and install applications that are usually viruses or trojans.

        Show
        BJ Freeman added a comment - guess I am the lonely decenter I had to turn on my browser java script to see what I was missing. looks like I will have to do more manual appliation of commits from now on. why do I keep the JS off a lot of sites are showing up that use js to override pop ups and install applications that are usually viruses or trojans.
        Hide
        Jacques Le Roux added a comment -

        BJ,

        There are 444 calls of <a href="javascript: in FTL files. Not all are mandatory (for instance you don't need a lookup to fill a field, same for calendar). But I doubt that in certain cases you can seriously do it without lookups for instance. For security reasons there are 248 actions which needs javascript: in FTL files (ie javascript is mandatory for those actions to work). Just look for <a href="javascript:document. in *.ftl...

        There are 1353 occurences of the word javascript at all in FTL files, 343 in XML files but I think it's rarely mandatory there.

        So I really think it's now wishful thinking to hope using OFBIz w/out js enabled. This is the reason why I decided to forget about all this and to close this issue and its subtasks

        Show
        Jacques Le Roux added a comment - BJ, There are 444 calls of <a href="javascript: in FTL files. Not all are mandatory (for instance you don't need a lookup to fill a field, same for calendar). But I doubt that in certain cases you can seriously do it without lookups for instance. For security reasons there are 248 actions which needs javascript: in FTL files (ie javascript is mandatory for those actions to work). Just look for <a href="javascript:document. in *.ftl... There are 1353 occurences of the word javascript at all in FTL files, 343 in XML files but I think it's rarely mandatory there. So I really think it's now wishful thinking to hope using OFBIz w/out js enabled. This is the reason why I decided to forget about all this and to close this issue and its subtasks
        Hide
        Adrian Crum added a comment -

        We don't need JavaScript for lookups. Just pass the current URL and parameters to the lookup screen, let the user select the value (or cancel), then proceed back to the original screen - using the passed URL and parameters.

        Jacques - this issue should be left open. Only one sub-task was completed.

        Show
        Adrian Crum added a comment - We don't need JavaScript for lookups. Just pass the current URL and parameters to the lookup screen, let the user select the value (or cancel), then proceed back to the original screen - using the passed URL and parameters. Jacques - this issue should be left open. Only one sub-task was completed.
        Hide
        BJ Freeman added a comment -

        For sometime I have been promoting ofbiz to a larger Company.
        it is National with headquarters in One City and Multiple manufacturing
        and Assembly Plants in multiple States.
        They use VPN to tie all together.

        My contact was impressed in ofbiz I showed him on the Demo site, while
        he was at home. He went to show others at work and it did not work well.
        His Company has a security rule that does not allow any JavaScript into
        their computers, as well all their internal websites can not use javascript.

        You can See the results by disabling JavaScript in your browser and look
        at the Ofbiz Demo.

        I have been given to the end of Sept to come up with a proposal on
        delivering the functionality but without JavaScript.
        The staffing for doing this is an additional 10-20 positions for 1-5 years.

        My problem is I have not found enough people that:
        1)Understand the Design of Ofbiz
        2)Understand the Modeling used based on the videos David did
        3)willing to work with the tools that was developed in Ofbiz.
        4)Know Ofbiz well enough to reuse code already available.
        5)be able to develop code that will do the what is done in JavaScript
        but no use javascript.

        This project is worth 100's thousand US dollars. Of that, I am willing
        of use 10% to fund those working on the project to augment ofbiz in the
        same spirit.

        The focus of this email is maybe the ofbiz team should re-think the
        direction OFbiz is going.

        Show
        BJ Freeman added a comment - For sometime I have been promoting ofbiz to a larger Company. it is National with headquarters in One City and Multiple manufacturing and Assembly Plants in multiple States. They use VPN to tie all together. My contact was impressed in ofbiz I showed him on the Demo site, while he was at home. He went to show others at work and it did not work well. His Company has a security rule that does not allow any JavaScript into their computers, as well all their internal websites can not use javascript. You can See the results by disabling JavaScript in your browser and look at the Ofbiz Demo. I have been given to the end of Sept to come up with a proposal on delivering the functionality but without JavaScript. The staffing for doing this is an additional 10-20 positions for 1-5 years. My problem is I have not found enough people that: 1)Understand the Design of Ofbiz 2)Understand the Modeling used based on the videos David did 3)willing to work with the tools that was developed in Ofbiz. 4)Know Ofbiz well enough to reuse code already available. 5)be able to develop code that will do the what is done in JavaScript but no use javascript. This project is worth 100's thousand US dollars. Of that, I am willing of use 10% to fund those working on the project to augment ofbiz in the same spirit. The focus of this email is maybe the ofbiz team should re-think the direction OFbiz is going.
        Hide
        Jacques Le Roux added a comment -

        Adrian,

        Yes I agree. Also, as we alreadsy discussed, same for most of js calls introduced to secure some get calls transformed in post calls. Note though that in very few specific cases js is needed.

        While quickling trying today, I noticed few things:

        • Javascript was alredy used for lookups (buttons) in R4.0.
        • We never had a calendar (buttons) w/out js.
        • To change a theme you currently need js (which seems a bit too much, since some themes can't be used w/out js and then you are trapped)

        There are certainly plenty of others...

        Show
        Jacques Le Roux added a comment - Adrian, Yes I agree. Also, as we alreadsy discussed, same for most of js calls introduced to secure some get calls transformed in post calls. Note though that in very few specific cases js is needed. While quickling trying today, I noticed few things: Javascript was alredy used for lookups (buttons) in R4.0. We never had a calendar (buttons) w/out js. To change a theme you currently need js (which seems a bit too much, since some themes can't be used w/out js and then you are trapped) There are certainly plenty of others...
        Hide
        Jacques Le Roux added a comment -

        I created a subtask for the last point, other are so obvious... but anyway if someone cold create subtasks for them it would not be bad...

        Show
        Jacques Le Roux added a comment - I created a subtask for the last point, other are so obvious... but anyway if someone cold create subtasks for them it would not be bad...
        Hide
        BJ Freeman added a comment -

        What I think best fits this and other UI requirments is to use multiple view-maps and let the renderer select which one.
        this would allow many types. I am still investigating this.
        Another Ideas is to tie it into the Themes so they specify the type of output they use.
        I don't see changing the current pages, since they work fine for those that want to use JS.

        Show
        BJ Freeman added a comment - What I think best fits this and other UI requirments is to use multiple view-maps and let the renderer select which one. this would allow many types. I am still investigating this. Another Ideas is to tie it into the Themes so they specify the type of output they use. I don't see changing the current pages, since they work fine for those that want to use JS.

          People

          • Assignee:
            Unassigned
            Reporter:
            Jacques Le Roux
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:

              Development