Git Product home page Git Product logo

umobile-app-phonegap's People

Contributors

acolebourne avatar bourey avatar mindblender avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

umobile-app-phonegap's Issues

uMobile does'nt initialize on browser if casLogin is set

Hi,

It seems that if you set something different than mockLogin and you try to run the uMobile on a browser it never initialize.

After some investigations I saw this : https://github.com/Jasig/umobile-app-phonegap/blob/master/src/js/src/app.js#L329

The problem is that deviceready is only available on phonegap and for some developments purpose it can be helpful to run uMobile on a web browser (without phonegap) with setting different than mockLogin.

May this be changed ?

casLogin doesn't recognize CAS userId

casLogin appears to be defective. I had to modify my local CAS server to allow callbacks to 'http' urls (which is fine) and with that change , once I login to uMobile as admin/admin, for some reason the JS code doesn't recognize the uid and always returns 'guest' even though CAS shows that I have successfully logged in and validated the ticket:

uMobile.js:

  • Looked at CredentialsView in umobile.js and the 'admin' username appears to correctly be saved into the model.

authentication.js;casLogin():

  • On the success callback, the 'credentials.attributes.username' returns admin. However, 'data.user' returns 'guest'?

So it looks like there's a mismatch between credentials model/view where the uid isn't saved into local storage, or something like that...

Adjust theme implementation.

In preparing for the 2013 Apereo Conference, some minor adjustments to the theme layer were implemented. This task will captures those minor changes.

Discussion: Continuous Build using Travis CI, Jenkins CI?

Would be beneficial to have a CI tool build the code on commits, something like Travis CI, etc.

Matt might have better recommendations or alternatives.

This would be a good question for the community. What tool should we use? Is this the right approach?

Remove fluid library from implementation.

In the context of this project, the fluid library should be removed from the current implementation and replaced with the jQuery widget factory or any existing widget factory provided by jQuery mobile. The goal is too simplify the code base for greater adoption. Since fluid is only used for a single widget removing it makes sense. It reduces the amount of technologies a developer needs to understand on the front end to the jQuery ecosystem.

Reorganize code structure into src/target directories

Then, have the build populate the target directory that would then include production-ready code appropriate for the environment.

The target directory may essentially be the www directory, per android spec.

Would be beneficial to hit android docs and see if there's a standard structure/format/tool/approach to follow.

Add platform-based icons and screenshots to images directory.

During preparation for the 2013 Apereo conference we created android and iOS based uMobile icons and screenshots. These icons and screenshots can be used in conjunction with PhoneGap 2.5. The icons and screenshots provided can be used as a starting point for things like splash screens or launcher icons.

Automate the build process using grunt

Ideas and suggestions we can discuss:

  • Build process should support two directories. A source (src) directory where all our uncompressed code lives and a public (www) directory where all our production ready code gets pushed.
  • Automate which SessionTracker.js or SessionTrackerMock.js (formally mobile-plugin-android.js & mobile-plugin-web.js ) file gets added to the build. This can be done with config.js files that get imported into our grunt build.
  • Automate which cordova-iphone.js or cordova-android.js file gets added to the build. This can be done with config.js files that get imported into our grunt build.
  • Build process would ideally cover the following:
    • Linting JavaScript files.
    • Compile css using less framework ( *Not implemented )
    • Execute JavaScript unit tests with Jasmine and PhantomJS on the command-line ( *Not implemented )
    • Collect, optimize and concatenate JavaScript libraries and source files.
    • Copy production-ready resources to www directory.

iconUrl is incorrect if portlet doesn't have nativeIcons

While i was testing uMobile i found something a bit weird and I couldn't find where it comes from.

https://github.com/jasig/umobile-app-phonegap/blob/master/src/js/src/app.js#L143

I can't find any reference to config.uPortalServerUrl in the uMobile project... and it generates an URL which looks like undefined/path/to/img.png

Then I changed config.uPortalServerUrl to config.uMobileServerUrl, Am I right or did I miss something ? See df9d03d

Discussion: ES5 environment "strict mode"

Redefinning variable is disallowed in strict mode. Be sure to be in fully compliant ES5 environment.
The "use strict" directive is only recognized at the top of a script or function, which makes it sensitive to script concatenation.
So which way to go?

  • Never concatenate strict files an nonstrict files.
  • Concatenate files by wrapping their bodies in immediatly invocked function expressions
    //file01.js
    (function() {
    "use strict";
    function foo() {
    // ...
    }
    // ...
    })();

//file02.js no strictmode
(function() {
function foo() {
var arg = [];
// ...
}
// ...
})();

Discussion: Develop & implement an approach to error handling.

Currently, the HTML5 application does not notify the user when an error results from a failed request. The application also does not update the UI in anyway in the event a request for Data fails. It might not be appropriate to notify the user in all cases but we should discuss these scenarios to give the best user experience possible.

This would be a good question for the community. What approach should be taken?

Discussion: Implement precompiled handlebars templates.

It is possible to precompile templates. This will result in a smaller required runtime library and significant savings from not having to compile the template in the browser. This can be especially important when working with mobile devices. It is also possible to automate the precompiling of templates with node.js and grunt. Precompiling templates can be another grunt task added to our build.

http://handlebarsjs.com/

This would be a good question for the community. Should we take this approach?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.