Can't view/change input field in iframe on phonegap app - ios

So here's the situation. I am using a third party digital document signing service called PandaDoc in my mobile application which is built on PhoneGap/Cordova and I am not able to change any of the input, text-type fields when attempting to do this via the mobile app on an iPhone (haven't tested Android yet).
Here are some things i noted about this:
1) When viewed online in Chrome (on my laptop) or on my phone in the Chrome browser everything works fine.
2) The only form elements that aren't working on mobile are the input (type=text) ones. The checkboxes work, the dropdowns work etc...
3) I don't know much about Angular.js but i can tell this third party app was built on it. When i inspect and compare the mobile vs web version i noticed that on the mobile version the input fields have these two directives:
ng-pristine and ng-touched
From what i can tell researching these, they seem to be mutually exclusive so not sure how that would affect things. Also the web version had:
ng-dirty and ng-valid-parse
both of which the mobile version did not have.
I know it would be best if i could post some code here but i don't know where to start. In my app there is just a simple embed script that puts the PandaDoc into an iFrame.
If you want to see the mobile test version of this app you can view it at http://dev.velexo.com/m2 I have a test user with a username of "mobile2" and the password is "pass". Unfortunately there is no easy way to send out the iphone app version of this and that is where the problem is.
Oh also, when you log into the application, click on the W9 Information button and then the Enter Your W9 button, this is what brings up the pandadoc
Also should have mentioned I'm using JQuery Mobile in the app.
Any advice/guidance would be welcome even if it's just a guess.

just looking over my old questions here. The answer to the actual question I asked is that you can not change anything in an iFrame from the parent frame unless both the domain and the port match due to the cross-domain policy restraints.
There are no ways around this that I am aware of.
The solution to my particular problem was to get rid of PandaDoc entirely because it just wasn't designed to be used on a mobile device. In the end i wrote my own javascript for creating a signature and passing to the backend where i used a php pdf generating library to construct the final document.

Related

How would I create an app for a website that does not have an API and uses ASP.NET?

Basically what I'm looking to do is to create an native interface for a website that does not have any sort of API. This would be a 3rd party app that would provide all the same functionality of the website, just optimized for iOS. The real problem I run into is in sending and getting user-entered data to the website as it is using ASP.NET which I am not at all familiar with and the user would need to log-in to the website.
This is kind of a convoluted question, but I am sitting at square one and not even really sure where to go from here.
It sounds like you are asking if you can create an iOS app that can interact with another website that doesn't have an API? If my understanding is correct, then there's really only one option I can think of.
You would have to make your iOS app make HTTP(S) calls to the ASP.NET based website and simulate GET/POST requests as if it were a "real" user. You would do this by using one of the native iOS HTTP clients (NSURLSession, for example) and would have to strip and parse the HTML you received back from the website in order to get the raw "data" required for your iOS app.
The situation you are describing is pretty complex and very brittle (you have to make a change to your iOS app every time any change is made to the ASP.NET website) and I would avoid this method of integration at all cost.

iOS - How to integrate my application into a browser?

Since I'm not even sure where and how to start solving my issue I will appreciate every smallest push to the right direction.
So, I need to write an iOS application that would keep track on some events of any or at least some webkit-based browsers, or even integrate my app's "Open with..." item into a browser's context menu.
Is it at least possible?
P.S. yeap, since there's no way to use browser extensions in iOS, I'm trying to find workarounds without need to implement my own browser but rather tiny 3-rd side application working along with some of existing browsers.

How do I add code in Salesforce 1?

I am a beginner in the Salesforce 1 platform. I started this internship and I am being asked to create a jQuery Mobile app in Salesforce 1. I have learned how to build the app, but I am lost as to how to add code to it. I am a beginner developer being asked to recreate a Mobile app that is more for someone with more experience. I am not going to give up, because I know this is a good learning experience for me. The Salesforce resources have not been helpful to me. Can you help me try to figure out how to get started with this? Do I connect the app to a Salesforce page or is there another developing tool I am missing? Also I cannot add the jQuery Mobile library to be able to get my code to work. How does that app connect to the code? I am confused how the objects and fields relate to the code I write for the app. Help!
Just create a VF page, create a tab and assign the VF page to that tab. The VF page should be "Mobile Ready" i.e. you should check the checkbox when you create the VF page. For jQuery libraries, you have to add them as static resources.
Please let me know in case you need more help.
Yes. the other user is correct. Upload the "min" version of the jQuery as a static resource to invoke jQuery on your Visualforce page.
As for designing mobile apps on the Salesforce platform, you need to know quite a bit:
MVC model in Salesforce
Apex, SOQL, SOSL
Visualforce controllers
Visualforce
HTML and DOM
CSS
JavaScript
Possibly the Mobile SDK for Salesforce
Possibly Canvas for Salesforce
Possibly XML for Flexipages
If you look on developer.salesforce.com, you'll find learning resources for all of these topics. There's even a workbook for you: http://www.salesforce.com/us/developer/docs/salesforce1/salesforce1_guide.pdf.
Google's browser offers a mobile emulator for iOS so that developers can develop on one platform and test on many platforms. Its is difficult to use though, imho. It has quite a learning curve.

"Enhanced experience except without Ajax navigation features."

I've got a good understanding of regular jQuery and AJAX in desktop browsers.
I'm developing my first mobile site using jQuery Mobile 1.0. I was going through the Mobile Graded Browser Support and noticed a few devices listed under "Enhanced experience except without Ajax navigation features."
Can someone shed some light on what that means exactly?
Will I still be able to make $.ajax() calls to the server?
Can I still use the "hashchange" event?
Can I still link to anchors on the same page with links to "#anchor-name"?
I'm planning on using the Multi-Page Template and the client has specifically asked about BlackBerry support.
You will be able to use $.ajax() and haschange events only on Blackebrry 6.0 devices (Torch). On older devices with 5.0 firmware jQuery mobile's UI widgets are essentially unusable - quite sluggish. For our application that is deployed on 9900 and 9700 devices we have taken a route to do custom development. You might be able to use jQuery core though.

Does Apple accept apps with an embedded browser using UIWebView?

Can you tell me if Apple accepts an application that opens an embedded browser with most of the functionality living on a web application on the internet?
I have read contradicting opinions on this, and I have even seen several apps that seem to use an embedded browser for the main functionality of the app. Still I couldn't confirm this.
This way we could correct problems on the application functionality on the server with no need to submit another version of the app, while keeping the ease of release through the app store and the home screen shortcut.
Thanks!
I can't get the exact quote from the guidelines, but I know that Cordova apps are allowed, and updating the web files dynamically without going through a new native app version is also allowed, as long as:
* The updated code runs with the Safari Webkit engine (true for Cordova)
* The main functionality of the app is not changed
You say this is a bad idea because the user can save a bookmark on their home screen. This doesn't seem to me like a reason for something being a bad idea to me. If this is the only drawback then I would say go ahead and do it. Why should I care if someone wants to bookmark to my site? The app will not work very well outside the app anyway. If you have an actual logical reason why this is a bad idea instead of some emotional response then please bring it up.
I am doing this too in my application. I am under the impression that as long as you are pointing to a secure site then it should be okay. Please enlighten me: is there some good reason why Apple forces people to develop applications the hard way? A web application is hard enough without having to deal with some monolithic organisation imposing ridiculous rules on you.

Resources