d65b8100ba262778b1464363491f702603e9fad7
[gssweb.git] / chrome / app / navigator.gss.js
1 console.log('Loading navigator.gss.js - #5');
2
3 /* This file gets injected into the web page verbatim */
4
5 navigator.gss_import_name = function(name, mech, nonce, callbackFn){
6     console.log("Name: " + name);
7     console.log("Mech: " + mech);
8     
9     /* Listen for a message back from the content script */
10     window.addEventListener(
11       "message",
12       function(event)
13       {
14         var nonce;
15         var name;
16         
17         if (event.data.command != "gss_import_name" ||
18             (typeof(event.data.return_values) == "undefined") )
19         {
20           return;
21         }
22         
23         // Extract the data from the returned JSON
24         name = event.data.return_values.gss_name;
25         nonce = event.data.nonce;
26         major = event.data.return_values.major_status;
27         minor = event.data.return_values.minor_status;
28         
29         // Invoke the callback with the extracted data
30         callbackFn(name, nonce, major, minor);
31       }
32     );
33
34     /* Send a message off to the extension that we want to 
35      * call gss_import_name
36      */
37     window.postMessage({
38         "method":"gss_import_name",
39         "arguments":
40         {
41             "input_name": name,
42             "input_name_type": mech
43         },
44         "nonce": nonce
45     }, "*");
46
47 };