Bugzilla
Quick Search
Browse
Advanced Search
Reports
Quick Search Help
Documentation
New Account
Log In
Login with GitHub
Remember
Forgot Password
Mozilla Home
Privacy
Cookies
Legal
Attachment 8546753 Details for
Bug 1119454
recipes.yml
file_1119454.txt (text/plain), 12.26 KB, created by
Chris Karlof [:ckarlof]
(
hide
)
Description:
recipes.yml
Filename:
MIME Type:
Creator:
Chris Karlof [:ckarlof]
Size:
12.26 KB
patch
obsolete
># Matching Criteria ># url - Regex that must match document.location.href ># browser - Regex that must match browser name (e.g. firefox, ie, chrome) ># has - One or more jQuery selectors whose length must be > 1 ># lacks - One or more jQuery selectors whose length must be 0 ># hasText - One or more strings that must be present in document ># ># Functionality Options ># un - One or more jQuery selectors for login-page username fields ># pw - ...for login-page password fields ># sb - ...for submit buttons ># form - ...for forms ># notUn, notPw - jQuery selectors that are NOT un or pw (login or signup) ># signupUn - jQuery selectors for signup-page username fields ># checkbox - ...for checkboxes. ALL are checked for linked accounts. ># mun - Multiple username spec (see detailed documentation below) ># allow - Allowable widget actions: none, link, login, all ># requireVisible - Login visibility requirement: none, partial, full ># monitor - jQuery to monitor for DOM changes ># clickOn - jQuery to click on before login box detection ># multiStage - true if multistage login ># loginSubmit - Login method: enter, button, form, js=<fctName>, none ># frame - One or more frame names to place widget. ># delay - Delay (ms) before checking for login/linking box ># grabPrefilledFields - Grabs credentials on initial page load ># otherUn, otherPw - Specify 2nd login on page ># noFocus, noBlur - If true, prevents focus or blur events on username and password fields. ># ># ---------- Matching Criteria ---------- ># ># Each config block has a set of _matching criteria_ which is used to ># determine whether the _options_ in that config block should be ># applied to the current page. Below are the matching criteria that ># can be specified (all are optional; if none are provided, the ># options are applied to every page of the site). ># ># url - Regex that must match document.location.href ># browser - Regex that must match browser name (e.g. firefox, ie, chrome) ># has - One or more jQuery selectors whose length must be > 1 ># lacks - One or more jQuery selectors whose length must be 0 ># hasText - One or more strings that must be present in document ># ># Top-level config blocks are specified with a domain ># (e.g. amazon.com). All other config blocks must start with a capital ># letter (this is to distinguish them from options, which always start ># with lower-case.) Config blocks can be nested; matching criteria in ># parent blocks are applied to child blocks. For example: ># ># somesite.com: ># url: login\.php ># LoginError: ># has: label#YouFailed ># DoubleError: ># hasText: Give up ># placeMode: fixed ># NormalLogin: ># lacks: label#YouFailed ># placeMode: cover ># ># Here, the option "placeMode: fixed" of the "DoubleError" config ># block, is only applied if the url contains "login.php", ># $("label#YouFailed").length > 0, and the text string "Give up" ># appears on the page. The option "placeMode: cover" of the ># "NormalLogin" config block is applied if the url contains ># "login.php" and $("label#YouFailed").length == 0. ># ># Notes: ># - The names chosen for config blocks (e.g. "LoginError", ># "DoubleError", and "NormalLogin") are not significant to the ># config. They should be chosen for documentation purposes. ># ># - More than one "has", "lacks", or "hasText" matching criteria can be ># specified using YML array notation. e.g.: ># has: ># - label#YouFailed ># - input.atlife ># ># - A note for when you are creating a 'url' regex: if a particular ># configuration is being applied, the domain has already been ># matched. So, usually, you just need to specify the path ># (e.g. "url: login\.php" as opposed to ># "url: http://www\.facebook\.com/login\.php"). ># ># - '#' in YML notation is the comment marker if it occurs at the ># beginning of the line or if there is a space in front of it. If ># you find you need that character in a selector, put the selector ># in quotes. eg: ># pw: "#passwordID" ># ># - To see all the options that are being applied on a given page ># (after matching criteria are checked), look in console.log for a ># log message with the format: ># ># --- Configuration for: <url> --- ># <option>: <value> ># ... ># ># ---------- Functionality Config Options ---------- ># ># un - One or more jQuery selectors for username fields ># pw - One or more jQuery selectors for password fields ># sb - One or more jQuery selectors for submit buttons ># form - One or more jQuery selectors for forms ># notUn - One or more jQuery selectors that are NOT username fields ># notPw - One or more jQuery selectors that are NOT password fields ># ># Notes about the above options: ># - The lists are ordered. The document is searched for the first ># element first, second element second, and so on. The first ># matched is used. ># - If nothing matches, normal dynamic configuration is used. ># - If you only specify one un, pw, sb, or form, it can go on the ># same line, otherwise you need to use YML array notation. ># - If the site employs multiple usernames, use the 'mun' option ># instead (described below). Multiple password fields is not ># currently supported. ># ># otherUn, otherPw - One or more jQuery selectors of username/password ># fields for the 2nd login on a page (or a signup page). Usable ># will only ever display at most one login box on a page, but the ># system can capture user-entered credentials from up to 2 logins ># per page. It is expected that if one of otherUn or otherPw is ># provided, both will be. ># ># Note: A jQuery selector specified as an "otherUn" or "otherPw" ># will not be chosen to be part of a visible login box. They are ># only used for linking. ># ># changeOldPw, changeNewPw - One or more jQuery selectors of old and ># new password fields in change password forms. If one of ># these is specified, the other should be as well. ># ># checkbox - jQuery selectors for checkboxes (all checkboxes specified ># are automatically checked for accounts that have been ># linked by UsableLogin.) This is frequently used for ># persistent login. ># ># Note: By default, Scriptify will attempt to detect one ># checkbox within the login box and will click that. If ># Scriptify finds more than one checkbox, or doesn't find ># any, nothing is clicked. Use this option to override that ># behavior. ># ># allow - Indicates allowable widget actions. Can be "none", "link", ># "login", "all". ># ># Note: the allow option is often used in conjunction with ># appropriate matching criteria to only allow linking on pages that ># are requesting 3rd party credentials (e.g. linkedin.com's landing ># page). Other uses include: interstitial pages (see google.com) ># and disabling sites that are known not to work (see ># istockphoto.com). You can combine this with the "browser" matching ># criteria to disable a site for a particular browser. ># ># loginSubmit - Method of submitting login. Can be "enter", "button", ># "form", "js=<fctName", or "none". The default for Firefox and ># Chrome is to hit enter in the password field. The default for IE ># is to hit the button. For the "js=<fctName>" option, the ># following javascript is used to submit the login: ># "window[fctName]();". If "none" is used, login is not attempted; ># only the credentials are filled. ># ># Note that the most problematic cases are sites that use anchor ># tags as submit buttons. They are difficult to "click on" reliably ># in Javascript. If it is found too difficult to cause an automatic ># login submission, at least use "placeMode: fixed" so that the ># login box does not obscure the site's submit button. ># ># requireVisible - Indicates "how visible" the login box has to be on ># the page to bring up a UL login. Can be "none", "partial", ># "full". If "none", the detected login box can be completely ># invisible and the UL login will still appear. If "full", both the ># username and password fields must be visible for the UL login to ># appear. If "partial", either the username or password field must ># be visible. The default is "partial". ># ># monitor - List of jQuery expressions to monitor in DomMonitor. If ># the result of a query using one of these expressions change (the ># length of the jQuery result changes), the Scriptify engine is ># invoked again. By default, ":password" and ":password:visible" are ># monitored. See hulu.com for an example. You can monitor more than ># one expression using YML array notation. ># ># clickOn - jQuery expression to click on before attempting to detect ># a login box. This is useful for causing a site to "forget" a ># username so that UsableLogin's relier account dropbox can serve ># that purpose instead. See live.com for an example. ># ># multiStage - If true, the login is treated as a multistage login. At ># present, Scriptify only supports two stage logins. See ># priceline.com for an example. ># ># mun - Multiple username specification. You specify an array of keys that ># serve as "canonical" names for username fields. For each of these ># keys, you specify jQuery expressions for username fields corresponding ># to each key (as would be specified for the 'un' option). ># Example: ># ># delta.com: ># ... ># mun: ># - skyMilesNumber: input#skyMilesNumber ># - lastName: input#lastName ># ... ># ># Here, "skyMilesNumber" and "lastName" are canonical names. They ># are the keys used for different parts of the username in the ># database. "input#skyMilesNumber" and "input#lastName" are jquery ># expressions for input fields on the page that map to the ># corresponding canonical names. See bankofamerica.com for another ># example. ># ># frame - Used specifically to solve the problem of framesets with ># IE. You specify one or more frames (by name) that the linking ># widget can be placed on. In the default handling of framesets, IE ># guesses what frame to "append" the widget to based on the size of ># the frames. For Firefox & Chrome, we use the HTML-illegal method ># of placing the widget "after" the body tag on the top window, but ># that doesn't work in IE. ># ># delay - Specify a number of milliseconds to wait before checking the ># page for a login box. This also delays the decision of placing a ># linking box. The reason for this somewhat hacky option is that ># some sites change the content of their page after the "ready" ># event. For example, godaddy.com has a login box on every page that ># is conditionally removed after the DOM "ready" event if the user ># is already logged in. So, using this option can keep a login box ># from flashing up on every page. ># ># grabPrefilledFields - Grabs credentials from the page on initial ># page load. On at least one site (onlinecreditcenter6.com), this is ># necessary because they prefill the username (on a multistage site) ># and we are not able to capture the form submit. On other sites, ># this can cause problems. For example, mint prefills "Email" and ># "Password" into the email and password fields. We don't want to ># capture that. ># ># > ># Examples: > >att.com: > requireVisible: none > un: input#userIdText > noFocus: true > noBlur: true > >bankofamerica.com: > multiStage: true > loginSubmit: button > sb: > - input#bottom-button > - input#top-button > mun: > - Access_ID: > - input#id > - input[name='Access_ID'] > - input[name='onlineID'] > - state: > - select#stateselect > - input[name='state'] > - input[name='hidstate'] > pw: input[name='passcode'] > Interstitial: > url: https?://sitekey\.bankofamerica\.com/sas/signon\.do > allow: none > lacks: input[name='onlineID'] > LoginStateQuestion: > url: https://sitekey.bankofamerica.com/sas/signonSetup.do > has: > - form[name='challengeQandAForm']:visible > - input[name='sitekeyChallengeAnswer']:visible > allow: none > >cbssports.com: > loginSubmit: button > requireVisible: partial > # specify these to handle the page with two login boxes on it: http://www.cbssports.com/login > un: > - input#userid > pw: > - input#password
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
Actions:
View
Attachments on
bug 1119454
:
8546161
| 8546753