Alpha Software Mobile Development Tools:   Alpha Anywhere    |   Alpha TransForm subscribe to our YouTube Channel  Follow Us on LinkedIn  Follow Us on Twitter  Follow Us on Facebook

Announcement

Collapse

The Alpha Software Forum Participation Guidelines

The Alpha Software Forum is a free forum created for Alpha Software Developer Community to ask for help, exchange ideas, and share solutions. Alpha Software strives to create an environment where all members of the community can feel safe to participate. In order to ensure the Alpha Software Forum is a place where all feel welcome, forum participants are expected to behave as follows:
  • Be professional in your conduct
  • Be kind to others
  • Be constructive when giving feedback
  • Be open to new ideas and suggestions
  • Stay on topic


Be sure all comments and threads you post are respectful. Posts that contain any of the following content will be considered a violation of your agreement as a member of the Alpha Software Forum Community and will be moderated:
  • Spam.
  • Vulgar language.
  • Quotes from private conversations without permission, including pricing and other sales related discussions.
  • Personal attacks, insults, or subtle put-downs.
  • Harassment, bullying, threatening, mocking, shaming, or deriding anyone.
  • Sexist, racist, homophobic, transphobic, ableist, or otherwise discriminatory jokes and language.
  • Sexually explicit or violent material, links, or language.
  • Pirated, hacked, or copyright-infringing material.
  • Encouraging of others to engage in the above behaviors.


If a thread or post is found to contain any of the content outlined above, a moderator may choose to take one of the following actions:
  • Remove the Post or Thread - the content is removed from the forum.
  • Place the User in Moderation - all posts and new threads must be approved by a moderator before they are posted.
  • Temporarily Ban the User - user is banned from forum for a period of time.
  • Permanently Ban the User - user is permanently banned from the forum.


Moderators may also rename posts and threads if they are too generic or do not property reflect the content.

Moderators may move threads if they have been posted in the incorrect forum.

Threads/Posts questioning specific moderator decisions or actions (such as "why was a user banned?") are not allowed and will be removed.

The owners of Alpha Software Corporation (Forum Owner) reserve the right to remove, edit, move, or close any thread for any reason; or ban any forum member without notice, reason, or explanation.

Community members are encouraged to click the "Report Post" icon in the lower left of a given post if they feel the post is in violation of the rules. This will alert the Moderators to take a look.

Alpha Software Corporation may amend the guidelines from time to time and may also vary the procedures it sets out where appropriate in a particular case. Your agreement to comply with the guidelines will be deemed agreement to any changes to it.



Bonus TIPS for Successful Posting

Try a Search First
It is highly recommended that a Search be done on your topic before posting, as many questions have been answered in prior posts. As with any search engine, the shorter the search term, the more "hits" will be returned, but the more specific the search term is, the greater the relevance of those "hits". Searching for "table" might well return every message on the board while "tablesum" would greatly restrict the number of messages returned.

When you do post
First, make sure you are posting your question in the correct forum. For example, if you post an issue regarding Desktop applications on the Mobile & Browser Applications board , not only will your question not be seen by the appropriate audience, it may also be removed or relocated.

The more detail you provide about your problem or question, the more likely someone is to understand your request and be able to help. A sample database with a minimum of records (and its support files, zipped together) will make it much easier to diagnose issues with your application. Screen shots of error messages are especially helpful.

When explaining how to reproduce your problem, please be as detailed as possible. Describe every step, click-by-click and keypress-by-keypress. Otherwise when others try to duplicate your problem, they may do something slightly different and end up with different results.

A note about attachments
You may only attach one file to each message. Attachment file size is limited to 2MB. If you need to include several files, you may do so by zipping them into a single archive.

If you forgot to attach your files to your post, please do NOT create a new thread. Instead, reply to your original message and attach the file there.

When attaching screen shots, it is best to attach an image file (.BMP, .JPG, .GIF, .PNG, etc.) or a zip file of several images, as opposed to a Word document containing the screen shots. Because Word documents are prone to viruses, many message board users will not open your Word file, therefore limiting their ability to help you.

Similarly, if you are uploading a zipped archive, you should simply create a .ZIP file and not a self-extracting .EXE as many users will not run your EXE file.
See more
See less

Using AppLauncher

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

    #46
    Re: Using AppLauncher

    In the mean time this has been added (as of some prereleases ago). I have a page with a tabbed ui included on my index page + the startup component. It allows to redirect to another url (full page reload needed + a new property to suppress warnings because the only condition I have is client.ismobile) The result is that a mobile user who browses gets redirected to a subdomain m.domain.com, if it is a desktop user then the tabbed UI just continues to load and the user sticks to domain.com. Very cool feature! There is some extra javascript needed to delete the html layer that the startup component generates even if you don't put any html in there.
    There is only one issue left if you have the tabbed ui login feature enabled; that generates an error. I still need to discuss this with Selwyn. I plan on making a small video of this because it enables in a very easy way to redirect to a subdomain and allows you to use the smae a5w pagenames for both the mobile & desktop version of your app/site.
    s1.pngs2.pngs3.png
    Frank

    Tell me and I'll forget; show me and I may remember; involve me and I'll understand

    Comment


      #47
      Re: Using AppLauncher

      Originally posted by gregincolumbus View Post
      Josh,

      I built a basic login component and placed it into a5w page.

      I have a login processing page as my landing page after successfully logging in. This was setup in the security settings for the appl.This page handles setting many session variables, etc that are used by the web app.

      The last item on that processing page is a response.redirect. This redirects to the a5w page where I placed my app launcher component. That then handles the variables I setup regarding where to go based upon device, etc.

      Please let me know if any of this is unclear.

      Greg
      This is good for the mobile side of things but the issue I am running into is my tabbedUI doesn't run properly if it isn't embedded into an a5w page, any idea why this is happening?

      The tabbedUI does load as it is suppose to but when I try to click one of the buttons in the menu on the side nothing happens and I have it set up to load one of the tabs automatically (other than the home tab) and this doesn't work either. So to me the only way to fix this is to have my default redirect to the a5w page rather than to the tabbedUI directly.

      Comment


        #48
        Re: Using AppLauncher

        Originally posted by Clipper87 View Post
        In the mean time this has been added (as of some prereleases ago). I have a page with a tabbed ui included on my index page + the startup component. It allows to redirect to another url (full page reload needed + a new property to suppress warnings because the only condition I have is client.ismobile) The result is that a mobile user who browses gets redirected to a subdomain m.domain.com, if it is a desktop user then the tabbed UI just continues to load and the user sticks to domain.com. Very cool feature! There is some extra javascript needed to delete the html layer that the startup component generates even if you don't put any html in there.
        There is only one issue left if you have the tabbed ui login feature enabled; that generates an error. I still need to discuss this with Selwyn. I plan on making a small video of this because it enables in a very easy way to redirect to a subdomain and allows you to use the smae a5w pagenames for both the mobile & desktop version of your app/site.
        [ATTACH=CONFIG]36418[/ATTACH][ATTACH=CONFIG]36419[/ATTACH][ATTACH=CONFIG]36420[/ATTACH]
        The only issue I have with this is I don't have another domain set up and am trying to do this without a second domain being alpha anywhere has the ability to detect the device.

        Comment


          #49
          Re: Using AppLauncher

          I am trying to confirm I understand your issue.

          On the properties of the tabbed UI, you indicate the name of the a5w page for that tabbed UI. On your redirect are you pointing to that page? Does the tabbed UI work correctly if you DON'T use the App Launcher after login and you simply go to the a5w page?

          Does it fail if the App Launcher is used after logging in but before redirecting to the a5w page that contains your tabbed UI?

          Comment


            #50
            Re: Using AppLauncher

            Original set up:

            Login component is used --> login processing page is called --> at bottom of login processing redirect to a5w page holding tabbedUI = WORKS PERFECT

            Login component is used --> login processing page is called --> at bottom of login processing redirect to page holding app launcher --> load tabbedUI if not on mobile (but its not contained in a5w page) = DOESN'T WORK

            As for your last statement concerning using the app launcher first, the login processing info is contained on an a5w page itself so I would still have to call this and I would have to call it regardless of the device being used which would render the app launcher useless would it not?

            Comment


              #51
              Re: Using AppLauncher

              I will research this more, but I believe the app launcher and tabbed UI are both variations of iframes. I am guessing that the app launcher going to the a5w page containing the tabbed UI has a conflict between the two iframes (one in the app launcher and another in the tabbed UI)

              I am using the app launcher to distinguish between mobile devices. I have a separate domain for the tabbed UI so that is why my experience has been different than yours.

              Comment


                #52
                Re: Using AppLauncher

                My tabbedUI is not contained on the page set in its properties (called "index") but rather has been added to a completely different a5w page manually (called "dashboard"). Do you think this is causing the issue and if I change the name set in the tabbedUI's properties to dashboard it will be resolved (I'll probably try this next).

                If this doesn't work I plan to look into using xbasic's request.UserAgent in order to figure out the device and then I can redirect appropriately to the a5w page. If you have any experience with this or know where I can read up on it that would be great!

                Comment


                  #53
                  Re: Using AppLauncher

                  Josh,

                  include the tabbed ui's A5W page in dashboard.a5w & put the applauncher component on the dashboard.a5w page as well. In your applauncher set just 1 condition (for example client.ismobile) & redirect to the page where you want mobile visitors to go to. Select full page reload & suppres errormessage (you will need the latest build for that)
                  Frank

                  Tell me and I'll forget; show me and I may remember; involve me and I'll understand

                  Comment


                    #54
                    Re: Using AppLauncher

                    It says I have the most current version yet I am not seeing the "suppress error message" setting? Is it in the app launcher properties or am I suppose to be looking somewhere else? Also, I'm not sure how I managed this (unless it was allowed in an older version of alpha5v11) but I have a tabbedUI that has just been placed on an a5w page using the insert component feature? And yes by this I mean that the tabbedUI actually shows up when looking at the WYSIWYG pane of the HTML editor rather than having nothing here and only information in the source area (which with testing is what happens when you just save a tabbedUI). So I believe this may also cause errors in the future but I think can still be worked around as long as I can find the "suppress error setting" mentioned above.

                    On a side note, is there anyway to make it so my tabbedUI doesn't have to show up before the applauncher does the redirect (as in can I set some sort of timeout function?). The redirect is working properly but because the code runs asynchronously the tabbedUI shows up before the Ajax call is finished.

                    I really appreciate all of your help as you all know a mobile presence is important and as soon as I get this figured out I can finally focus on building and testing mobile pages (this is due to the fact that the remote test on my machine does not work and I can't use the remote test feature on the sever as we won't be on the same network being it is a zebrahost server). That being said the error I get says something along the lines of not being able to write to a remote test directory that is suppose to have a txt document in it (I can get exact error if this isn't enough info but on my phone now so impossible to replicate). I have a feeling this may be due to the fact that all of my files are located in a folder that is housed in dropbox (easier for keeping local files the same across machines) but not sure if this is a common error that other people are having and I just need to fix some settings.

                    Thanks

                    Jmo

                    Comment


                      #55
                      Re: Using AppLauncher

                      Originally posted by Clipper87 View Post
                      Josh,

                      include the tabbed ui's A5W page in dashboard.a5w & put the applauncher component on the dashboard.a5w page as well. In your applauncher set just 1 condition (for example client.ismobile) & redirect to the page where you want mobile visitors to go to. Select full page reload & suppres errormessage (you will need the latest build for that)

                      I actually think much of my problem will be solved if I had the ability to load an a5w page as my start-up component in the app launcher but that option is not available. As I previously stated it says I have the most current version so was this option nixed or is there a beta build out there that you are running to have this option available? I'd love to give this a try and see if it fixes my problems because I'm pretty sure all would be well! Thanks!

                      Jmo

                      Comment


                        #56
                        Re: Using AppLauncher

                        You can specify an a5w page as the start up "component" in the app launcher in the latest pre-release builds.

                        You can get the pre-release builds HERE

                        Comment


                          #57
                          Re: Using AppLauncher

                          Thank you for this! Now the only problem is it explicitly says to not use pre-releases in production (are any of you doing this?) because if I can't put it in production then this doesn't help other than the fact it gives me piece of mind that soon I will be able to accomplish what I am trying to do without a lengthy work around. You guys have been of great help and it is very appreciated. I believe my only choice now (until this option is officially released) is to look into a programmatic solution using request.UserAgent in order to filter the proper user to the correct site, any help on some basic code to get me started would be great or pointed to some documentation on this? I know on one of the boards someone posted all the possible userAgents but now I just need to figure out how to implement a loop going through the ones I want to check for and redirecting to particular pages (please correct me if I am wrong here). Thanks!

                          Jmo

                          Comment


                            #58
                            Re: Using AppLauncher

                            Josh,

                            First of all; when you create a tabbed ui there is a property called "A5W pagename" causing every time you save the tabbed UI component that an A5W page is created with the name in that property. The tabbed UI is different from all other components at this point and it is . So you should not put a tabbed ui on an A5W page yourself. It is clearly documented:

                            t1.png

                            Second you should avoid using the WYSIWYG mode of the html editor because it tends to try & do some stuff with your carefully crafted A5W pages. Use Source mode & set that as the preference:

                            t2.png

                            Third: with a tabbed ui on a page you cannot put any other component on that page + it does not make sense to alter the generated A5W page (as explained above) because everything gets overwritten every time you edit &save your tabbed ui component. So what you do instead is create an A5W page & include your tabbed UI generated A5W page. For example put "index_" as a name in the property "A5W pagename" of your tabbed UI, then create an A5W page named index.a5W (notice no underscore) then in the body section of that page put this include statement:

                            <%a5 a5w_include("index_.a5w") %>

                            This allows you to put another component on your A5W page such as the applauncher.

                            About the prereleases: it really depends on how mission critical your system is. I find them very stable & in fact it is a continued version of the last official release with new features, bugfixes etc, just to say that it all really depends. An official release is not bugfree either, in fact no software is bugfree (they may have great errorcatching so that it appears bugfree because you don't see it but believe me they are not & will never be)
                            I use the prereleases all the time but it is your call.

                            About sifting the request.UserAgent: on your newly created A5W page index.a5W you just write some xbasic that does the job:

                            <%a5 'open xbasic tag so the server knows it has to interpret the code that follows

                            if at("iPad",Request.UserAgent) <> 0
                            response.redirect("http://www.yourdomain.com/mobilepage.a5w")
                            end if

                            'close the tag server will continue to interpret html / js (if tagged) from here on
                            %>

                            This is just a sample for 1 useragent, you should use a select case xbasic structure to check for the platforms/useragents you want to support.

                            The applauncher takes care of this for you but at is was first designed it always expected a condition to be true, as of a few prereleases ago that is no longer needed. In fact it never really needed a condition to be true but it did generate an errormessage when you browsed to index.a5w when none of the conditions that were in the applauncher were satisfied. With the "suppres errormessage" this is no longer the case.

                            What will happen though is that your tabbed ui continues to load while the applauncher is looking what to do. In case you're browsing with an ipad for example you therefor see a "flash" of your desktop version of index.a5w while it is loading but it disappears real quick. I am discussing this Alpha.

                            The only issue currently with this is the login feature of the tabbed ui; that causes an issue in this setup. I am working on a bug report for that so it will probably get fixed.

                            The nice thing about that though is that if none of the conditons are met (for example if your only condition is client.ismobile & you browse with a desktop browser on a pc) that your page just loads & is ready for use. Get the picture ?

                            The nice thing about the Alpha IDE that comes into play here is the projects concept: you can now have a mobile index.a5w page & a desktop index.a5w page because in 1 workspace you can simply create a web project (for use with desktop browsers) & a mobile project (for use with mobile browsers) and your customer/user will have the same url to remember: www.yourdomain.com/index.a5w for example (or any other pagename in your project)

                            t3.png

                            Last: make sure that your appserver is on the same release as your developer copy (best) or (not recommended) on a higher build then your developer. In fact the appserver & the developer are in a sense the same program with different interfaces if you like. So if you use a feature in developer & then publish it to a server that is on a lower build how could the server then know about it ? Conclusion:if you put the prerelease on your developer, then also put the relevant appserver patch on your server.

                            Hope this helps you get going; continue to dive in the code, test play & spend every minute you have with this wonderful product. There is a learning path of course because it is not just alpha, it's also javascript, html, sql, xbasic but the concept of Alpha is so powerful that soon you won't believe you were able to accomplish the things you'll have created! Keep going!
                            Frank

                            Tell me and I'll forget; show me and I may remember; involve me and I'll understand

                            Comment

                            Working...
                            X