i am trying to make the custom fb like button in angular js. So that i can call service to save some data for analytics purpose.we have to keep the track of the number of like of my page in our database.
Related
How do I set a facebook pixel event to track registration completion when my registration form completion redirects to my index page not to a registration success page?
Should I use a standard event or a custom event to achieve this, or, do I have to create an intermediate page that the registration form directs to and then redirects to index page?
Fire the Facebook Pixel event when the user clicks on the form submit with 'click' event listener. Standard versus Custom events is a separate issue, but I suggest sticking with Standard events where you can.
https://developers.facebook.com/docs/facebook-pixel/advanced/
Stephen, you provided too few information.
Richy is right that in your case if you can't control where your user lands after submitting the form you should use onClick event to send a pixel event. You can easily validate the form in the code of the onClick event and send it when you're sure data is according to your expectations. You can even do additional requests to your back-end to check the data.
If you can change how your web-site work you can make a landing page where you'd fire an event if all the processing went right.
If you can also easily do it on your index page by loading it with some parameter in the URL that indicates it is visited after the form was submitted. There you can have a simple JS code snipped with condition in it to fire a pixel event if URL parameter is present or do it with Google Tag manager which is even simpler.
There are a couple of good standard events you can use like Subscribe or Submit Application, review them here: https://developers.facebook.com/docs/facebook-pixel/reference#standard-events
You have countless options depending on what level of changes you can do to the site, you coding skills, CMS you use and precision you need.
I'm porting a TinyMCE 3 installation to version 5. I set up a toolbar button that opens a dialog that contains a custom page and is therefore loaded using the new windowManager.openUrl method. I have some footer buttons, too, and, of course, an onAction( dialogApi, details ) handler that is invoked when a button is clicked. details.name contains the name of the button that was clicked so I can react on every click individually.
It seems, when a regular dialog is used, I configure every input field in my plugin.js file and retrieve its value through the getData method of first param that in passed into my onAction handler. This method does not exist in my dialogApi for the URL dialog.
My iframe/dialog contains a dropdown and I want to insert the selected value into the editor instance when a dialog footer button is clicked. I understand I can use postMessage to send information from the iframe to the plugin but that's not what I want.
How can I access input fields in the dialog, when a button is clicked and my dialog was opened through openUrl? How do I access the document in the dialog's iframe? this seems to be the JavaScript object I passed into openUrl. document is the page where the editor is embedded.
I've made a demo that shows two different ways of getting the data from user inputs in an iframe dialog:
https://codesandbox.io/embed/tinymce-dialog-openurl-demo-fpfew
This blog post is also an excellent resource for working with iframe dialogs in TinyMCE:
https://www.martyfriedel.com/blog/tinymce-5-url-dialog-component-and-window-messaging
The first method in my demo uses a button in the HTML of the iframe itself. That button collects user data and uses postMessage to send that data back to the TinyMCE editor.
As you can see, the process is a little more complex using the footer buttons as opposed to the "in iframe" button. Essentially, the footer button sends a message to the iframe in the dialog asking the iframe to collect and insert user data into TinyMCE.
When using an iframe, you have to respect the browser security policy, so most times you can't interact with an iframe directly (the exception being if the iframe uses the same domain). Here's some more information about iframe security policy:
https://security.stackexchange.com/questions/67889/why-do-browsers-enforce-the-same-origin-security-policy-on-iframes
This also means that TinyMCE has no way of knowing what's inside the iframe like it does with a TinyMCE dialog, so the data needs to be fetched "manually". With that in mind, if it's a cross origin request (different domain) there's no way to access the iframe content without using postMessage.
The getData method mentioned works with TinyMCE dialogs because everything in the dialog is a TinyMCE component. TinyMCE components have a custom concept of values/states that getData can access to return data.
When you use a URL dialog, the dialog no longer uses TinyMCE components so it isn't able to collect the data for getData, hence it the method doesn't exist. That's why you have to manually get the data needed from whatever elements are in the URL dialog, and send them back to TinyMCE using postMessage.
I have a jquery mobile form with a listview. I want to add contacts to my form using a second page and then returning the selected data back to the original pages form. Just like in the calendar app on the iphone. Is this possible?. For some reason i can not fathem how this task would be completed.
I wonder if there is a way to create a facebook like button that clicks when you short a particular post on face book and record in my database oo his name from the user, or by clicking the button like accomplishes two functions, one on facebook and one in my database.
Add a class or id to your facebook like button using jquery and using a click function as josaphatv mentioned trigger a callback function to your database using AJAX to save the information you needed.
You can use the Facebook Like button plugin which lets you give it a Javascript callback. You can link this callback to your database using AJAX.
Edit:
You asked for an example.
First you write a javascript function in the global scope. This is the function that you want to do stuff when somebody clicks the like button. Say you declared it like this:
function logFacebookLike(response) {
// AJAX to log to database
}
Now, at some point after you've loaded the button, you subscribe to the Facebook edge.create event and give it your callback. Facebook will run your function and pass in some data (as the response variable). You can subscribe to the event like this:
FB.Event.subscribe('edge.create', logFacebookLike);
That's it. You can learn more in the Facebook Javascript Documentation. If you wanted an example of the AJAX, then you need to create a different question with a more specific context.
I create a custom facebook graph action named "Like" with my custom object say "Photo" and also set Inherits From to Like. Now when i submit for approval they send back for changes with following message :
"I'm trying to submit a custom action that is not allowed. Remove this action, please submit this action instead of the embedded version.".
So my question is that what i need to change in this case?