1/* http://keith-wood.name/bookmark.html 2 Sharing bookmarks for jQuery v1.3.1. 3 Written by Keith Wood (kbwood{at}iinet.com.au) March 2008. 4 Dual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and 5 MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses. 6 Please attribute the author if you use it. */ 7 8/* Allow your page to be shared with various bookmarking sites. 9 Attach the functionality with options like: 10 $('div selector').bookmark({sites: ['delicious', 'digg']}); 11*/ 12 13(function($) { // Hide scope, no $ conflict 14 15var PROP_NAME = 'bookmark'; 16 17/* Bookmark sharing manager. */ 18function Bookmark() { 19 this._uuid = new Date().getTime(); // Unique identifier seed 20 this._defaults = { 21 url: '', // The URL to bookmark, leave blank for the current page 22 sourceTag: '', // Extra tag to add to URL to indicate source when it returns 23 title: '', // The title to bookmark, leave blank for the current one 24 description: '', // A longer description of the site 25 sites: [], // List of site IDs or language selectors (lang:xx) to use, empty for all 26 iconsStyle: 'bookmark_icons', // CSS class for site icons 27 icons: 'bookmarks.gif', // Horizontal amalgamation of all site icons 28 iconSize: 16, // The size of the individual icons 29 iconCols: 16, // The number of icons across the combined image 30 target: '_blank', // The name of the target window for the bookmarking links 31 compact: true, // True if a compact presentation should be used, false for full 32 hint: 'Send to {s}', // Popup hint for links, {s} is replaced by display name 33 popup: false, // True to have it popup on demand, false to show always 34 popupText: 'Bookmark this site...', // Text for the popup trigger 35 addFavorite: false, // True to add a 'add to favourites' link, false for none 36 favoriteText: 'Favorite', // Display name for the favourites link 37 favoriteIcon: 0, // Icon for the favourites link 38 addEmail: false, // True to add a 'e-mail a friend' link, false for none 39 emailText: 'E-mail', // Display name for the e-mail link 40 emailIcon: 1, // Icon for the e-mail link 41 emailSubject: 'Interesting page', // The subject for the e-mail 42 emailBody: 'I thought you might find this page interesting:\n{t} ({u})', // The body of the e-mail 43 // Use '{t}' for the position of the page title, '{u}' for the page URL, 44 // '{d}' for the description, and '\n' for new lines 45 manualBookmark: 'Please close this dialog and\npress Ctrl-D to bookmark this page.', 46 // Instructions for manually bookmarking the page 47 onSelect: null // Callback on selection 48 }; 49 this._sites = { // The definitions of the available bookmarking sites, in URL use 50 // '{u}' for the page URL, '{t}' for the page title, and '{d}' for the description 51 '100zakladok': {display: 'СÑо Ðакладок', icon: 201, lang: 'en', 52 url: 'http://www.100zakladok.ru/save/?bmurl={u}&bmtitle={t}'}, 53 'adifni': {display: 'أضÙÙÙ', icon: 202, lang: 'en', 54 url: 'http://www.adifni.com/account/bookmark/?bookmark_url={u}'}, 55 'a1webmarks': {display: 'A1 webmarks', icon: 179, lang: 'en', 56 url: 'http://www.a1-webmarks.com/bm_edit.html?u={u}&t={t}'}, 57 'alltagz': {display: 'alltagz', icon: 69, lang: 'de', 58 url: 'http://www.alltagz.de/bookmarks/?action=add&address={u}&title={t}'}, 59 'allvoices': {display: 'Allvoices', icon: 75, lang: 'en', 60 url: 'http://www.allvoices.com/post_event?url={u}&title={t}'}, 61 'amenme': {display: 'AmenMe', icon: 127, lang: 'en', 62 url: 'http://www.amenme.com/AmenMe/Amens/AmenToThis.aspx?url={u}&title={t}'}, 63 'aol': {display: 'myAOL', icon: 2, lang: 'en', 64 url: 'http://favorites.my.aol.com/ffclient/AddBookmark?url={u}&title={t}'}, 65 'arto': {display: 'Arto', icon: 76, lang: 'en', 66 url: 'http://www.arto.com/section/linkshare/?lu={u}&ln={t}'}, 67 'ask': {display: 'Ask', icon: 3, lang: 'en', 68 url: 'http://myjeeves.ask.com/mysearch/BookmarkIt?v=1.2&t=webpages&url={u}&title={t}'}, 69 'aviary': {display: 'Aviary', icon: 203, lang: 'en', 70 url: 'http://aviary.com/capture?url={u}'}, 71 'baang': {display: 'باÙÚ¯', icon: 204, lang: 'fa', 72 url: 'http://www.baang.ir/submit.php?url={u}'}, 73 'backflip': {display: 'Backflip', icon: 62, lang: 'en', 74 url: 'http://www.backflip.com/add_page_pop.ihtml?url={u}&title={t}'}, 75 'baidu': {display: 'Baidu', icon: 128, lang: 'zh', 76 url: 'http://cang.baidu.com/do/add?iu={u}&it={t}&fr=ien&dc='}, 77 'ballhype': {display: 'BallHype', icon: 63, lang: 'en', 78 url: 'http://ballhype.com/post/url/?url={u}&title={t}'}, 79 'bebo': {display: 'Bebo', icon: 64, lang: 'en', 80 url: 'http://bebo.com/c/share?Url={u}&Title={t}'}, 81 'bibsonomy': {display: 'BibSonomy', icon: 77, lang: 'en', 82 url: 'http://www.bibsonomy.org/BibtexHandler?requTask=upload&url={u}&description={t}'}, 83 'bitly': {display: 'bit.ly', icon: 129, lang: 'en', 84 url: 'http://bit.ly/?url={u}'}, 85 'bizsugar': {display: 'bizSugar', icon: 130, lang: 'en', 86 url: 'http://www.bizsugar.com/bizsugarthis.php?url={u}'}, 87 'bleetbox': {display: 'bleetbox', icon: 180, lang: 'en', 88 url: 'http://bleetbox.com/bar?url={u}'}, 89 'blinklist': {display: 'BlinkList', icon: 4, lang: 'en', 90 url: 'http://www.blinklist.com/index.php?Action=Blink/addblink.php&Url={u}&Title={t}'}, 91 'blip': {display: 'blip', icon: 205, lang: 'en', 92 url: 'http://blip.pl/dashboard?body={t}:+{u}'}, 93 'bloggy': {display: 'Bloggy', icon: 131, lang: 'sv', 94 url: 'http://bloggy.se/home?status={t}+{u}'}, 95 'blogmarks': {display: 'Blogmarks', icon: 5, lang: 'en', 96 url: 'http://blogmarks.net/my/new.php?mini=1&simple=1&url={u}&title={t}'}, 97 'blurpalicious': {display: 'blurpalicious', icon: 206, lang: 'en', 98 url: 'http://www.blurpalicious.com/submit/?url={u}&title={t}&desc={d}'}, 99 'bobrdobr': {display: 'ÐобÑÐобÑ', icon: 132, lang: 'ru', 100 url: 'http://bobrdobr.ru/addext.html?url={u}&title={t}&desc={d}'}, 101 'bonzobox': {display: 'BonzoBox', icon: 207, lang: 'en', 102 url: 'http://bonzobox.com/toolbar/add?u={u}&t={t}&desc={d}'}, 103 'bookmarkit': {display: 'bookmark.it', icon: 71, lang: 'it', 104 url: 'http://www.bookmark.it/bookmark.php?url={u}'}, 105 'bookmarky': {display: 'bookmarky', icon: 208, lang: 'en', 106 url: 'http://www.bookmarky.cz/a.php?cmd=add&url={u}&title={t}'}, 107 'bookmarksfr': {display: 'bookmarks.fr', icon: 78, lang: 'fr', 108 url: 'http://www.bookmarks.fr/favoris/AjoutFavori?action=add&address={u}&title={t}'}, 109 'bordom': {display: 'Bordom', icon: 181, lang: 'en', 110 url: 'http://www.bordom.net/submit/?url={u}&title={t}'}, 111 'boxnet': {display: 'Box.net', icon: 209, lang: 'en', 112 url: 'https://www.box.net/api/1.0/import?import_as=link&url={u}&name={t}&description={d}'}, 113 'brainify': {display: 'Brainify', icon: 133, lang: 'en', 114 url: 'http://www.brainify.com/Bookmark.aspx?url={u}&title={t}'}, 115 'bryderi': {display: 'Bryderi', icon: 134, lang: 'sv', 116 url: 'http://bryderi.se/add.html?u={u}'}, 117 'buddymarks': {display: 'BuddyMarks', icon: 79, lang: 'en', 118 url: 'http://buddymarks.com/add_bookmark.php?bookmark_url={u}&bookmark_title={t}'}, 119 'bukmark': {display: 'Bukmark', icon: 182, lang: 'en', 120 url: 'http://www.buk-mark.com/submit.php?url={u}'}, 121 'bx': {display: 'Business Exchange', icon: 73, lang: 'en', 122 url: 'http://bx.businessweek.com/api/add-article-to-bx.tn?url={u}'}, 123 'bzzster': {display: 'Bzzster', icon: 80, lang: 'en', 124 url: 'http://bzzster.com/share?v=5;link={u}&subject={t}'}, 125 'camyoo': {display: 'camyoo', icon: 210, lang: 'en', 126 url: 'http://www.camyoo.com/note.html?url={u}'},
127 'care2': {display: 'Care2', icon: 6, lang: 'en', 128 url: 'http://www.care2.com/news/news_post.html?url={u}&title={t}'}, 129 'cirip': {display: 'Cirip', icon: 211, lang: 'en', 130 url: 'http://www.cirip.ro/post/?url={u}&bookmark={t}'}, 131 'citeulike': {display: 'citeulike', icon: 81, lang: 'en', 132 url: 'http://www.citeulike.org/posturl?url={u}&title={t}'}, 133 'classicalplace': {display: 'Classical Place', icon: 212, lang: 'en', 134 url: 'http://www.classicalplace.com/?u={u}&t={t}&c={d}'}, 135 'clickazoo': {display: 'Clickazoo', icon: 213, lang: 'en', 136 url: 'http://www.clickazoo.com/?page=add&location={u}&title={t}'}, 137 'cndig': {display: 'ä¸å½é¡¶å®¢', icon: 214, lang: 'en', 138 url: 'http://www.cndig.org/submit/?url={u}&title={t}'}, 139 'colivia': {display: 'Colivia', icon: 215, lang: 'en', 140 url: 'http://www.colivia.de/submit.php?url={u}'}, 141 'connotea': {display: 'Connotea', icon: 82, lang: 'en', 142 url: 'http://www.connotea.org/add?uri={u}&title={t}'}, 143 'cosmiq': {display: 'COSMiQ', icon: 216, lang: 'en', 144 url: 'http://www.cosmiq.de/lili/my/add?url={u}'}, 145 'current': {display: 'Current', icon: 49, lang: 'en', 146 url: 'http://current.com/clipper.htm?url={u}&title={t}'}, 147 'dealsplus': {display: 'deals plus', icon: 74, lang: 'en', 148 url: 'http://dealspl.us/add.php?ibm=1&url={u}'}, 149 'delicious': {display: 'del.icio.us', icon: 7, lang: 'en', 150 url: 'http://del.icio.us/post?url={u}&title={t}'}, 151 'designbump': {display: 'designbump', icon: 217, lang: 'en', 152 url: 'http://designbump.com/submit/?url={u}&title={t}&body={d}'}, 153 'designfloat': {display: 'Design Float', icon: 50, lang: 'en', 154 url: 'http://www.designfloat.com/submit.php?url={u}&title={t}'}, 155 'designmoo': {display: 'DesignMoo', icon: 135, lang: 'en', 156 url: 'http://designmoo.com/submit?url={u}&title={t}&body={d}'}, 157 'digg': {display: 'Digg', icon: 8, lang: 'en', 158 url: 'http://digg.com/submit?phase=2&url={u}&title={t}'}, 159 'diggita': {display: 'diggita', icon: 218, lang: 'it', 160 url: 'http://www.diggita.it/submit.php?url={u}&title={t}'}, 161 'diglog': {display: 'Diglog', icon: 136, lang: 'zh', 162 url: 'http://www.diglog.com/submit.aspx?url={u}&title={t}&description={d}'}, 163 'diigo': {display: 'Diigo', icon: 9, lang: 'en', 164 url: 'http://www.diigo.com/post?url={u}&title={t}'}, 165 'dipdive': {display: 'Dipdive', icon: 219, lang: 'en', 166 url: 'http://dipdive.com/popup/share/?url={u}&title={t}&text={d}'}, 167 'domelhor': {display: 'Do Melhor', icon: 183, lang: 'pt', 168 url: 'http://domelhor.net/submit.php?url={u}&title={t}'}, 169 'dosti': {display: 'Dosti', icon: 138, lang: 'en', 170 url: 'http://dosti.webdunia.com/Api/Share.aspx?st=b&url={u}&title={t}'}, 171 'dotnetkicks': {display: 'DotNetKicks', icon: 139, lang: 'en', 172 url: 'http://www.dotnetkicks.com/kick/?url={u}&title={t}'}, 173 'dotnetshoutout': {display: '.net Shoutout', icon: 220, lang: 'en', 174 url: 'http://dotnetshoutout.com/Submit?url={u}&title={t}'}, 175 'drimio': {display: 'drimio', icon: 221, lang: 'pt', 176 url: 'http://www.drimio.com/drimthis/index?url={u}&title={t}'}, 177 'dropjack': {display: 'Dropjack', icon: 222, lang: 'en', 178 url: 'http://www.dropjack.com/submit.php?url={u}'}, 179 'dzone': {display: 'DZone', icon: 10, lang: 'en', 180 url: 'http://www.dzone.com/links/add.html?url={u}&title={t}'}, 181 'edelight': {display: 'edelight', icon: 140, lang: 'de', 182 url: 'http://www.edelight.de/geschenk/neu?purl={u}'}, 183 'ekudos': {display: 'eKudos', icon: 141, lang: 'nl', 184 url: 'http://www.ekudos.nl/artikel/nieuw?url={u}&title={t}&desc={d}'}, 185 'elefanta': {display: 'elefanta', icon: 223, lang: 'pl', 186 url: 'http://elefanta.pl/member/bookmarkNewPage.action?url={u}&title={t}&bookmarkVO.notes={d}'}, 187 'elertgadget': {display: 'eLert Gadget', icon: 224, lang: 'en', 188 url: 'http://www.elertgadget.com/share.php?u={u}&t={t}'}, 189 'embarkons': {display: 'Embarkons', icon: 184, lang: 'en',
190 url: 'http://www.embarkons.com/sharer.php?u={u}&t={t}'}, 191 'eucliquei': {display: 'euCliquei', icon: 142, lang: 'pt', 192 url: 'http://www.eucliquei.com.br/index.asp?a=clicar_novo&url={u}&titulo={t}&trecho='}, 193 'evernote': {display: 'Evernote', icon: 83, lang: 'en', 194 url: 'http://www.evernote.com/clip.action?url={u}&title={t}'}, 195 'extraplay': {display: 'extraplay', icon: 225, lang: 'en', 196 url: 'http://www.extraplay.com/members/share.php?url={u}&title={t}&desc={d}'}, 197 'ezyspot': {display: 'EzySpot', icon: 226, lang: 'en', 198 url: 'http://www.ezyspot.com/submit?url={u}&title={t}'}, 199 'fabulously40': {display: 'Fabulously40', icon: 143, lang: 'en', 200 url: 'http://fabulously40.com/writeblog?body={u}&subject={t}'}, 201 'facebook': {display: 'Facebook', icon: 11, lang: 'en', 202 url: 'http://www.facebook.com/sharer.php?u={u}&t={t}'}, 203 'fark': {display: 'Fark', icon: 12, lang: 'en', 204 url: 'http://cgi.fark.com/cgi/fark/submit.pl?new_url={u}&new_comment={t}'}, 205 'farkinda': {display: 'Farkinda', icon: 227, lang: 'tr', 206 url: 'http://www.farkinda.com/submit?url={u}'}, 207 'faves': {display: 'Faves', icon: 13, lang: 'en', 208 url: 'http://faves.com/Authoring.aspx?u={u}&t={t}'}, 209 'favlog': {display: 'favlog', icon: 228, lang: 'de', 210 url: 'http://www.favlog.de/submit.php?url={u}'}, 211 'favoritus': {display: 'FavoritUs', icon: 144, lang: 'en', 212 url: 'http://www.favoritus.com/post.php?getlink={u}&gettitle={t}'}, 213 'flaker': {display: 'Flaker', icon: 229, lang: 'pl', 214 url: 'http://flaker.pl/add2flaker.php?url={u}&title={t}'}, 215 'flosspro': {display: 'FLOSS.pro', icon: 230, lang: 'en', 216 url: 'http://floss.pro/index.php?action=newnotice&status_textarea={t}: {u}'}, 217 'fnews': {display: 'fnews', icon: 185, lang: 'az', 218 url: 'http://fnews.az/node/add/drigg?url={u}&title={t}&body={d}'}, 219 'folkd': {display: 'Folkd', icon: 85, lang: 'en', 220 url: 'http://www.folkd.com/submit/{u}'}, 221 'fooxweb': {display: 'fooxweb', icon: 231, lang: 'en', 222 url: 'http://www.fooxweb.com/?urls={u}&title={t}'}, 223 'forceindya': {display: 'Force Indya', icon: 232, lang: 'en', 224 url: 'http://www.forceindya.com/submit?url={u}&title={t}'}, 225 'forgetfoo': {display: 'forgetfoo', icon: 145, lang: 'en', 226 url: 'http://www.forgetfoo.com/?inc=share&url={u}&title={t}&desc={d}'}, 227 'fresqui': {display: 'Fresqui', icon: 51, lang: 'es', 228 url: 'http://ocio.fresqui.com/post?url={u}&title={t}'}, 229 'friendfeed': {display: 'FriendFeed', icon: 52, lang: 'en', 230 url: 'http://friendfeed.com/share?url={u}&title={t}'}, 231 'friendster': {display: 'Friendster', icon: 233, lang: 'en', 232 url: 'http://www.friendster.com/sharer.php?u={u}&t={t}'}, 233 'funp': {display: 'funP', icon: 53, lang: 'zh', 234 url: 'http://funp.com/pages/submit/add.php?url={u}&title={t}'}, 235 'fwisp': {display: 'fwisp', icon: 234, lang: 'en', 236 url: 'http://fwisp.com/submit.php?url={u}'}, 237 'gabbr': {display: 'Gabbr', icon: 87, lang: 'en', 238 url: 'http://www.gabbr.com/submit/?bookurl={u}'}, 239 'gacetilla': {display: 'Gacetilla', icon: 146, lang: 'it', 240 url: 'http://www.gacetilla.org/publish-form?url={u}&title={t}'}, 241 'gamekicker': {display: 'gamekicker', icon: 235, lang: 'en', 242 url: 'http://www.gamekicker.com/node/add/drigg?url={u}&title={t}&body={d}'}, 243 'gamesnetworks': {display: 'gamesnetworks', icon: 236, lang: 'it', 244 url: 'http://www.gamesnetworks.it/submit.php?url={u}'}, 245 'givealink': {display: 'givealink', icon: 237, lang: 'en', 246 url: 'http://givealink.org/bookmark/add?url={u}&title={t}'}, 247 'globalgrind': {display: 'Global Grind', icon: 88, lang: 'en', 248 url: 'http://globalgrind.com/submission/submit.aspx?url={u}&type=Article&title={t}'}, 249 'gluvsnap': {display: 'GluvSnap', icon: 186, lang: 'en', 250 url: 'http://www.gluvsnap.com/news/pin/submit.php?url={u}'}, 251 'google': {display: 'Google', icon: 16, lang: 'en', 252 url: 'http://www.google.com/bookmarks/mark?op=edit&bkmk={u}&title={t}'}, 253 'googlereader': {display: 'Google Reader', icon: 238, lang: 'en', 254 url: 'http://www.google.com/reader/link?url={u}&title={t}&srcTitle={u}'}, 255 'gravee': {display: 'Gravee', icon: 89, lang: 'en', 256 url: 'http://www.gravee.com/account/bookmarkpop?u={u}&t={t}'}, 257 'greaterdebater': {display: 'GreaterDebater', icon: 239, lang: 'en', 258 url: 'http://greaterdebater.com/submit/?url={u}&title={t}'}, 259 'grono': {display: 'Grono', icon: 240, lang: 'pl', 260 url: 'http://grono.net/pub/page/link/urlfetch/?url={u}&title={t}'}, 261 'grumper': {display: 'Grumper', icon: 147, lang: 'en', 262 url: 'http://www.grumper.org/add.php?desc={u}&title={t}'}, 263 'habergentr': {display: 'haber.gen.tr', icon: 148, lang: 'tr', 264 url: 'http://www.haber.gen.tr/edit?url={u}&title={t}&description={d}'}, 265 'hackernews': {display: 'HackerNews', icon: 187, lang: 'en', 266 url: 'http://news.ycombinator.com/submitlink?u={u}&t={t}'}, 267 'hadashhot': {display: 'Hadash Hot', icon: 149, lang: 'he', 268 url: 'http://www.hadash-hot.co.il/submit.php?url={u}&phase=1'}, 269 'hazarkor': {display: 'Hazarkor', icon: 241, lang: 'he', 270 url: 'http://www.hazarkor.co.il/add_story.php?story_url={u}&story_title={t}&story_desc={d}'}, 271 'healthranker': {display: 'HealthRanker', icon: 90, lang: 'en', 272 url: 'http://www.healthranker.com/submit.php?url={u}&title={t}'}, 273 'hedgehogs': {display: 'Hedgehogs', icon: 242, lang: 'en', 274 url: 'http://www.hedgehogs.net/mod/bookmarks/add.php?address={u}&title={t}'}, 275 'hellotxt': {display: 'hellotxt', icon: 150, lang: 'en', 276 url: 'http://hellotxt.com/?status={u}'}, 277 'hemidemi': {display: 'HEMiDEMi', icon: 91, lang: 'zh', 278 url: 'http://www.hemidemi.com/user_bookmark/new?url={u}&title={t}'}, 279 'hipstr': {display: 'hipstr', icon: 151, lang: 'en', 280 url: 'http://www.hipstr.com/submit.php?burl={u}'}, 281 'hitmarks': {display: 'hitmarks', icon: 188, lang: 'en', 282 url: 'http://www.hitmarks.com/submit.php?url={u}&t={t}'}, 283 'hotbookmark': {display: 'Hot Bookmark', icon: 243, lang: 'en', 284 url: 'http://hotbmark.com/submit.php?url={u}'}, 285 'hotklix': {display: 'hotklix', icon: 152, lang: 'en', 286 url: 'http://www.hotklix.com/?ref=share_this&addurl={u}'}, 287 'hotmail': {display: 'Hotmail', icon: 244, lang: 'en', 288 url: 'http://www.hotmail.msn.com/secure/start?action=compose&to=&body={u}&subject={t}'}, 289 'hotweb': {display: 'HOTWeb.lt', icon: 245, lang: 'lt', 290 url: 'http://hotweb.lt/submit?url={u}&title={t}&body={d}'}, 291 'hugg': {display: 'Hugg', icon: 17, lang: 'en', 292 url: 'http://www.hugg.com/submit?url={u}'}, 293 'hyves': {display: 'Hyves', icon: 153, lang: 'en', 294 url: 'http://www.hyves.net/profilemanage/add/tips/?text={u}&name={t}&type=12'}, 295 'identica': {display: 'identi.ca', icon: 92, lang: 'en', 296 url: 'http://identi.ca/notice/new?status_textarea={t}%20{u}'}, 297 'ihavegot': {display: 'ihavegot', icon: 246, lang: 'en', 298 url: 'http://www.ihavegot.com/share/?url={u}&title={t}&desc={d}'}, 299 'imera': {display: 'Imera', icon: 93, lang: 'pt', 300 url: 'http://www.imera.com.br/post_d.html?linkUrl={u}&linkName={t}'}, 301 'informazione': {display: 'informazione', icon: 247, lang: 'it', 302 url: 'http://fai.informazione.it/submit.aspx?url={u}&title={t}&desc={d}'}, 303 'instapaper': {display: 'Instapaper', icon: 94, lang: 'en', 304 url: 'http://www.instapaper.com/b?u={u}&t={y}'}, 305 'investorlinks': {display: 'InvestorLinks', icon: 154, lang: 'en', 306 url: 'http://www.investorlinks.com/zingiling/add/?url={u}&title={t}'}, 307 'isociety': {display: 'iSociety', icon: 248, lang: 'en', 308 url: 'http://isociety.be/share/?url={u}&title={t}&desc={d}'}, 309 'iwiw': {display: 'iwiw', icon: 249, lang: 'hu', 310 url: 'http://iwiw.hu/pages/share/share.jsp?v=1&u={u}&t={t}'}, 311 'jamespot': {display: 'Jamespot', icon: 95, lang: 'en', 312 url: 'http://www.jamespot.com/?action=spotit&url={u}&t={t}'}, 313 'jisko': {display: 'Jisko', icon: 250, lang: 'en', 314 url: 'http://jisko.net/notes?note={t}%20{u}'}, 315 'jumptags': {display: 'Jumptags', icon: 96, lang: 'en', 316 url: 'http://www.jumptags.com/add/?url={u}&title={t}'}, 317 'kaboodle': {display: 'Kaboodle', icon: 65, lang: 'en', 318 url: 'http://www.kaboodle.com/grab/addItemWithUrl?url={u}&pidOrRid=pid=&redirectToKPage=true'}, 319 'kaevur': {display: 'Kaevur', icon: 189, lang: 'et', 320 url: 'http://www.kaevur.com/submit.php?url={u}'}, 321 'khabbr': {display: 'Khabbr', icon: 97, lang: 'ar', 322 url: 'http://www.khabbr.com/submit.php?out=yes&url={u}'}, 323 'kirtsy': {display: 'Kirtsy', icon: 54, lang: 'en', 324 url: 'http://www.kirtsy.com/submit.php?url={u}'}, 325 'kledy': {display: 'Kledy', icon: 98, lang: 'de', 326 url: 'http://www.kledy.de/submit.php?url={u}'}, 327 'kool': {display: 'Koolontheweb', icon: 43, lang: 'en', 328 url: 'http://www.koolontheweb.com/post?url={u}&title={t}'}, 329 'koornk': {display: 'koornk', icon: 251, lang: 'en', 330 url: 'http://koornk.com/home/?status={t}%3A%20{u}'}, 331 'kudos': {display: 'kudos', icon: 252, lang: 'no', 332 url: 'http://www.kudos.no/giKudos.php?url={u}&tittel={t}&beskrivelse={d}'}, 333 'kwoff': {display: 'Kwoff', icon: 155, lang: 'en', 334 url: 'http://www.kwoff.com/submit.php?url={u}'}, 335 'laaikit': {display: 'laaik.it', icon: 190, lang: 'en', 336 url: 'http://laaik.it/NewStoryCompact.aspx?uri={u}&headline={t}&description={d}'}, 337 'ladenzeile': {display: 'ladenzeile', icon: 253, lang: 'de', 338 url: 'http://www.ladenzeile.de/bookmark/submission?url={u}&t={t}'},
339 'librerio': {display: 'Librerio', icon: 191, lang: 'en', 340 url: 'http://www.librerio.com/inbox?u={u}&t={t}'}, 341 'linkarena': {display: 'Linkarena', icon: 70, lang: 'de', 342 url: 'http://linkarena.com/bookmarks/addlink/?url={u}&title={t}&desc={d}&tags='}, 343 'linkagogo': {display: 'LinkaGoGo', icon: 18, lang: 'en', 344 url: 'http://www.linkagogo.com/go/AddNoPopup?url={u}&title={t}'}, 345 'linkedin': {display: 'LinkedIn', icon: 66, lang: 'en', 346 url: 'http://www.linkedin.com/shareArticle?mini=true&url={u}&title={t}&ro=false&summary={d}&source='}, 347 'linkninja': {display: 'LinkNinja', icon: 156, lang: 'pt', 348 url: 'http://linkninja.com.br/enviar_link.php?story_url={u}'}, 349 'linkshares': {display: 'LinkShares', icon: 254, lang: 'en', 350 url: 'http://www.linkshares.net/share?url={u}&title={t}'}, 351 'linkuj': {display: 'Linkuj', icon: 255, lang: 'cz', 352 url: 'http://linkuj.cz/?id=linkuj&url={u}&title={t}&description={d}'}, 353 'livefavoris': {display: 'Livefavoris', icon: 256, lang: 'fr', 354 url: 'http://www.mediapratique.com/home/bookmark.php?lien={u}&titre={t}'}, 355 'livejournal': {display: 'LiveJournal', icon: 19, lang: 'en', 356 url: 'http://www.livejournal.com/update.bml?subject={u}'}, 357 'lunch': {display: 'Lunch', icon: 157, lang: 'en', 358 url: 'http://www.lunch.com/Bookmarklet/LunchThis.html?url={u}'}, 359 'lynki': {display: 'Lynki', icon: 158, lang: 'en', 360 url: 'http://www.lynki.com/submit.php?url={u}'}, 361 'maple': {display: 'Maple', icon: 99, lang: 'en', 362 url: 'http://www.maple.nu/bookmarks/bookmarklet?bookmark[url]={u}&bookmark[description]={t}'}, 363 'mawindo': {display: 'Mawindo', icon: 257, lang: 'en', 364 url: 'http://www.mawindo.com/mod/bookmarks/add.php?address={u}&title={t}'}, 365 'meccho': {display: 'Meccho', icon: 258, lang: 'en', 366 url: 'http://www.meccho.com/bookmark?url={u}&title={t}'}, 367 'meinvz': {display: 'MeinVZ', icon: 259, lang: 'en', 368 url: 'http://www.meinvz.net/Suggest/Selection/?u={u}&desc={t}'}, 369 'memori': {display: 'memori.ru', icon: 192, lang: 'ru', 370 url: 'http://memori.ru/link/?sm=1&u_data[url]={u}'}, 371 'meneame': {display: 'menéame', icon: 55, lang: 'es', 372 url: 'http://meneame.net/submit.php?url={u}'}, 373 'mindbody': {display: 'MindBodyGreen', icon: 21, lang: 'en', 374 url: 'http://www.mindbodygreen.com/passvote.action?u={u}'}, 375 'misterwong': {display: 'Mister Wong', icon: 22, lang: 'en', 376 url: 'http://www.mister-wong.com/index.php?action=addurl&bm_url={u}&bm_description={t}'}, 377 'mixx': {display: 'Mixx', icon: 23, lang: 'en', 378 url: 'http://www.mixx.com/submit/story?page_url={u}&title={t}'}, 379 'moemesto': {display: 'ÐоеÐеÑÑо', icon: 260, lang: 'ru', 380 url: 'http://moemesto.ru/post.php?url={u}&title={t}'}, 381 'multiply': {display: 'Multiply', icon: 24, lang: 'en', 382 url: 'http://multiply.com/gus/journal/compose/addthis?body=&url={u}&subject={t}'}, 383 'mylinkvault': {display: 'MyLinkVault', icon: 100, lang: 'en', 384 url: 'http://www.mylinkvault.com/link-page.php?u={u}&n={t}'}, 385 'myspace': {display: 'MySpace', icon: 25, lang: 'en', 386 url: 'http://www.myspace.com/Modules/PostTo/Pages/?u={u}&t={t}'}, 387 'n4g': {display: 'N4G', icon: 56, lang: 'en', 388 url: 'http://www.n4g.com/tips.aspx?url={u}&title={t}'}, 389 'netlog': {display: 'NetLog', icon: 101, lang: 'en', 390 url: 'http://www.netlog.com/go/manage/links/view=save&origin=external&url={u}&title={t}'}, 391 'netvibes': {display: 'Netvibes', icon: 102, lang: 'en', 392 url: 'http://www.netvibes.com/share?url={u}&title={t}'}, 393 'netvouz': {display: 'Netvouz', icon: 27, lang: 'en', 394 url: 'http://netvouz.com/action/submitBookmark?url={u}&title={t}&popup=no'}, 395 'newstrust': {display: 'NewsTrust', icon: 103, lang: 'en', 396 url: 'http://newstrust.net/submit?url={u}&title={t}&ref=addtoany'}, 397 'newsvine': {display: 'Newsvine', icon: 28, lang: 'en', 398 url: 'http://www.newsvine.com/_wine/save?u={u}&h={t}'}, 399 'nowpublic': {display: 'NowPublic', icon: 29, lang: 'en', 400 url: 'http://view.nowpublic.com/?src={u}&t={t}'}, 401 'nujij': {display: 'Nujij', icon: 159, lang: 'nl', 402 url: 'http://nujij.nl/jij.lynkx?u={u}&t={t}&b={d}'}, 403 'oknotizie': {display: 'OKNOtizie', icon: 57, lang: 'it', 404 url: 'http://oknotizie.alice.it/post?url={u}&title={t}'}, 405 'oneview': {display: 'OneView', icon: 72, lang: 'de', 406 url: 'http://www.oneview.de/quickadd/neu/addBookmark.jsf?URL={u}&title={t}'}, 407 'orkut': {display: 'Orkut', icon: 193, lang: 'en', 408 url: 'http://promote.orkut.com/preview?nt=orkut.com&du={u}&tt={t}&cn='}, 409 'osmosus': {display: 'Osmosus', icon: 194, lang: 'en', 410 url: 'http://www.osmosus.com/share?url={u}&title={t}&description={d}'}, 411 'oyyla': {display: 'Oyyla', icon: 160, lang: 'tr', 412 url: 'http://www.oyyla.com/gonder?phase=2&url={u}'}, 413 'phonefavs': {display: 'PhoneFavs', icon: 161, lang: 'en', 414 url: 'http://phonefavs.com/bookmarks?action=add&address={u}&title={t}'}, 415 'pimpthisblog': {display: 'PimpThisBlog', icon: 162, lang: 'en', 416 url: 'http://pimpthisblog.com/Submit?url={u}&title={t}'}, 417 'ping': {display: 'Ping', icon: 104, lang: 'en', 418 url: 'http://ping.fm/ref/?link={u}&title={t}'}, 419 'planypus': {display: 'Planypus', icon: 163, lang: 'en',
420 url: 'http://planyp.us/plans/new/?url={u}&title={t}'}, 421 'plaxo': {display: 'Plaxo Pulse', icon: 105, lang: 'en', 422 url: 'http://www.plaxo.com/pulse/?share_link={u}'}, 423 'plurk': {display: 'Plurk', icon: 164, lang: 'en', 424 url: 'http://www.plurk.com/m?content={u}&qualifier=shares'}, 425 'polladium': {display: 'Polladium', icon: 165, lang: 'en', 426 url: 'http://www.polladium.com/poll-this.php?u={u}&t={t}'}, 427 'posteezy': {display: 'Posteezy', icon: 261, lang: 'en', 428 url: 'http://posteezy.com/node/add/story?body={u}&title={t}'}, 429 'posterus': {display: 'posterous', icon: 166, lang: 'en', 430 url: 'http://posterous.com/share?linkto={u}&title={t}'}, 431 'prati': {display: 'Prati.ba', icon: 262, lang: 'bs', 432 url: 'http://prati.ba/?objavi={u}'}, 433 'propeller': {display: 'Propeller', icon: 58, lang: 'en', 434 url: 'http://www.propeller.com/submit/?U={u}&T={t}'}, 435 'protopage': {display: 'Protopage', icon: 106, lang: 'en', 436 url: 'http://www.protopage.com/add-button-site?url={u}&label={t}&type=page'}, 437 'pusha': {display: 'Pusha', icon: 107, lang: 'sv', 438 url: 'http://www.pusha.se/posta?url={u}'}, 439 'quantcast': {display: 'quantcast', icon: 263, lang: 'en', 440 url: 'http://www.quantcast.com/search.jsp?domain={u}'}, 441 'readitlater': {display: 'Read it Later', icon: 264, lang: 'en', 442 url: 'https://readitlaterlist.com/save?url={u}&title={t}'}, 443 'reddit': {display: 'reddit', icon: 30, lang: 'en', 444 url: 'http://reddit.com/submit?url={u}&title={t}'}, 445 'scoopat': {display: 'Scoop.at', icon: 265, lang: 'de', 446 url: 'http://scoop.at/submit?url={u}&title={t}&body={d}'}, 447 'scoopeo': {display: 'Scoopeo', icon: 46, lang: 'fr', 448 url: 'http://www.scoopeo.com/scoop/new?newurl={u}&title={t}'}, 449 'segnalo': {display: 'Segnalo', icon: 31, lang: 'it', 450 url: 'http://segnalo.alice.it/post.html.php?url={u}&title={t}'}, 451 'sekoman': {display: 'Sekoman', icon: 266, lang: 'lv', 452 url: 'http://sekoman.lv/home?url={u}&status={t}'}, 453 'shaveh': {display: 'Shaveh', icon: 267, lang: 'he', 454 url: 'http://shaveh.co.il/submit.php?url={u}&title={t}'}, 455 'shetoldme': {display: 'She Told Me', icon: 167, lang: 'en', 456 url: 'http://shetoldme.com/publish?url={u}&title={t}&body={d}'}, 457 'shoutwire': {display: 'ShoutWire', icon: 108, lang: 'en', 458 url: 'http://www.shoutwire.com/?s={u}'}, 459 'simpy': {display: 'Simpy', icon: 32, lang: 'en', 460 url: 'http://www.simpy.com/simpy/LinkAdd.do?href={u}&title={t}'}, 461 'sitejot': {display: 'Sitejot', icon: 109, lang: 'en', 462 url: 'http://www.sitejot.com/addform.php?iSiteAdd={u}&iSiteDes={t}'}, 463 'slashdot': {display: 'Slashdot', icon: 33, lang: 'en', 464 url: 'http://slashdot.org/bookmark.pl?url={u}&title={t}'}, 465 'smaknews': {display: 'SmakNews', icon: 110, lang: 'en', 466 url: 'http://smaknews.com/submit.php?url={u}&title={t}'}, 467 'smi': {display: 'СÐÐ2', icon: 268, lang: 'ru', 468 url: 'http://smi2.ru/add/?url={u}&precaption={t}'}, 469 'social': {display: 'Social Bookmarking', icon: 269, lang: 'en', 470 url: 'http://www.social-bookmarking.net/submit.php?url={u}'}, 471 'sodahead': {display: 'SodaHead', icon: 168, lang: 'en', 472 url: 'http://www.sodahead.com/news/submit/?url={u}&title={t}'}, 473 'sonico': {display: 'Sonico', icon: 169, lang: 'en', 474 url: 'http://www.sonico.com/share.php?url={u}&title={t}'}, 475 'speedtile': {display: 'speedtile', icon: 270, lang: 'en', 476 url: 'http://www.speedtile.net/api/add/?u={u}&t={t}'}, 477 'sphinn': {display: 'Sphinn', icon: 44, lang: 'en', 478 url: 'http://sphinn.com/submit.php?url={u}&title={t}'}, 479 'spokentoyou': {display: 'spoken to you', icon: 271, lang: 'en', 480 url: 'http://www.spokentoyou.com/app/subscribe/index.html?url={u}&title={t}'}, 481 'sportpost': {display: 'Sportpost', icon: 272, lang: 'en', 482 url: 'http://www.sportpost.com/debate/new?url={u}&title={t}&desc={d}'}, 483 'spruzer': {display: 'Spruzer', icon: 273, lang: 'en', 484 url: 'http://www.spruzer.com/submit.php?u={u}&t={t}'}, 485 'spurl': {display: 'Spurl', icon: 35, lang: 'en', 486 url: 'http://www.spurl.net/spurl.php?url={u}&title={t}'}, 487 'squidoo': {display: 'Squidoo', icon: 42, lang: 'en', 488 url: 'http://www.squidoo.com/lensmaster/bookmark?{u}&title={t}'}, 489 'startaid': {display: 'StartAid', icon: 111, lang: 'en', 490 url: 'http://www.startaid.com/index.php?st=AddBrowserLink&type=Detail&v=3&urlname={u}&urltitle={t}'}, 491 'startlap': {display: 'startlap', icon: 274, lang: 'hu',
492 url: 'http://www.startlap.hu/sajat_linkek/addlink.php?url={u}&title={t}'}, 493 'storyfollower': {display: 'StoryFollower', icon: 275, lang: 'en', 494 url: 'http://www.storyfollower.com/submit/?url={u}&title={t}&description={d}'}, 495 'strands': {display: 'Strands', icon: 112, lang: 'en', 496 url: 'http://www.strands.com/tools/share/webpage?url={u}&title={t}'}, 497 'studivz': {display: 'studiVZ', icon: 195, lang: 'de', 498 url: 'http://www.studivz.net/Suggest/Selection/?u={u}&desc={t}'}, 499 'stuffpit': {display: 'Stuffpit', icon: 276, lang: 'en', 500 url: 'http://www.stuffpit.com/add.php?produrl={u}'}, 501 'stumbleupon': {display: 'StumbleUpon', icon: 36, lang: 'en', 502 url: 'http://www.stumbleupon.com/submit?url={u}&title={t}'}, 503 'stumpedia': {display: 'Stumpedia', icon: 113, lang: 'en', 504 url: 'http://www.stumpedia.com/submit?url={u}&title={t}'}, 505 'stylehive': {display: 'Stylehive', icon: 196, lang: 'en', 506 url: 'http://www.stylehive.com/savebookmark/index.htm?url={u}'}, 507 'surfpeople': {display: 'SurfPeople', icon: 277, lang: 'en', 508 url: 'http://www.surfpeople.net/share-link.php?url={u}&titless={t}'}, 509 'svejo': {display: 'Svejo', icon: 170, lang: 'ru', 510 url: 'http://svejo.net/story/submit_by_url?url={u}&title={t}&summary={d}'}, 511 'tagvn': {display: 'Tagvn', icon: 278, lang: 'vi', 512 url: 'http://www.tagvn.com/submit?url={u}'}, 513 'tagza': {display: 'Tagza', icon: 115, lang: 'en', 514 url: 'http://www.tagza.com/submit.php?url={u}'}, 515 'technorati': {display: 'Technorati', icon: 38, lang: 'en', 516 url: 'http://www.technorati.com/faves?add={u}'}, 517 'technotizie': {display: 'Technotizie', icon: 117, lang: 'it', 518 url: 'http://www.technotizie.it/posta_ok?action=f2&url={u}&title={t}'}, 519 'tellmypolitician': {display: 'TellMyPolitician', icon: 171, lang: 'en', 520 url: 'http://tellmypolitician.com/search?u={u}&title={t}'}, 521 'thisnext': {display: 'ThisNext', icon: 39, lang: 'en', 522 url: 'http://www.thisnext.com/pick/new/submit/sociable/?url={u}&name={t}'}, 523 'tipd': {display: 'Tip\'d', icon: 118, lang: 'en', 524 url: 'http://tipd.com/submit.php?url={u}'}, 525 'transferr': {display: 'Transferr', icon: 197, lang: 'en', 526 url: 'http://www.transferr.com/link.php?url={u}'}, 527 'tulinq': {display: 'tulinq', icon: 198, lang: 'es', 528 url: 'http://www.tulinq.com/enviar?url={u}&title={t}&body={d}'}, 529 'tumblr': {display: 'tumblr', icon: 119, lang: 'en', 530 url: 'http://www.tumblr.com/share?v=3&u={u}&t={t}'}, 531 'tusul': {display: 'tusul.com', icon: 199, lang: 'tr', 532 url: 'http://www.tusul.com/submit.php?url={u}&title={t}&bodytext={d}'}, 533 'tweetmeme': {display: 'tweetmeme', icon: 279, lang: 'en', 534 url: 'http://api.tweetmeme.com/visit?url={u}'}, 535 'twitter':{display: 'twitter', icon: 200, lang: 'en', 536 url: 'http://twitter.com/home?status={t}%20{u}'}, 537 'twitthis': {display: 'TwitThis', icon: 45, lang: 'en', 538 url: 'http://twitthis.com/twit?url={u}'}, 539 'viadeo': {display: 'Viadeo', icon: 120, lang: 'en', 540 url: 'http://www.viadeo.com/shareit/share/?url={u}&title={t}'}, 541 'virb': {display: 'Virb', icon: 172, lang: 'en', 542 url: 'http://virb.com/share?external&v=2&url={u}&title={t}'}, 543 'visitezmonsite': {display: 'Visitez mon Site', icon: 280, lang: 'fr', 544 url: 'http://www.visitezmonsite.com/publier?url={u}&title={t}&body={d}'}, 545 'vodpod': {display: 'Vodpod', icon: 121, lang: 'en', 546 url: 'http://vodpod.com/account/add_video_page?p={u}'}, 547 'vyoom': {display: 'vyoom', icon: 281, lang: 'en', 548 url: 'http://www.vyoom.com/mod/bookmarks/add.php?address={u}&title={t}'}, 549 'webnews': {display: 'WebNews', icon: 122, lang: 'de', 550 url: 'http://www.webnews.de/einstellen?url={u}&title={t}'}, 551 'wikio': {display: 'Wikio', icon: 47, lang: 'en', 552 url: 'http://www.wikio.com/vote?newurl={u}'}, 553 'windows': {display: 'Windows Live', icon: 40, lang: 'en', 554 url: 'https://favorites.live.com/quickadd.aspx?marklet=1&mkt=en-us&url={u}&title={t}'}, 555 'windycitizen': {display: 'Windy Citizen', icon: 282, lang: 'en', 556 url: 'http://www.windycitizen.com/submit?url={u}&title={t}&body={d}'}, 557 'wirefan': {display: 'WireFan', icon: 283, lang: 'en', 558 url: 'http://www.wirefan.com/grpost.php?d=&u={u}&h={t}&d={d}'}, 559 'wishlist': {display: 'Amazon WishList', icon: 123, lang: 'en', 560 url: 'http://www.amazon.com/wishlist/add?u={u}&t={t}'}, 561 'wists': {display: 'Wists', icon: 124, lang: 'en', 562 url: 'http://wists.com/r.php?r={u}&title={t}'}, 563 'worio': {display: 'Worio', icon: 173, lang: 'en', 564 url: 'http://www.worio.com/search/preview/?action=save&wref=addthis&u={u}&t={t}'}, 565 'wovre': {display: 'Wovre', icon: 174, lang: 'en', 566 url: 'http://www.wovre.com/share.php?link_url={u}'}, 567 'wykop': {display: 'Wykop', icon: 175, lang: 'pl', 568 url: 'http://www.wykop.pl/dodaj?url={u}&title={t}&desc={d}'}, 569 'xanga': {display: 'Xanga', icon: 59, lang: 'en', 570 url: 'http://www.xanga.com/private/editorx.aspx?u={u}&t={t}'}, 571 'xerpi': {display: 'Xerpi', icon: 125, lang: 'en', 572 url: 'http://www.xerpi.com/block/add_link_from_extension?url={u}&title={t}'},
573 'yahoo': {display: 'Yahoo Bookmarks', icon: 60, lang: 'en', 574 url: 'http://bookmarks.yahoo.com/toolbar/savebm?opener=tb&u={u}&t={t}'}, 575 'yahoobuzz': {display: 'Yahoo Buzz', icon: 67, lang: 'en', 576 url: 'http://buzz.yahoo.com/submit?submitUrl={u}&submitHeadline={t}'}, 577 'yammer': {display: 'Yammer', icon: 176, lang: 'en', 578 url: 'http://www.yammer.com/home?status={t} {u}'}, 579 'yazzem': {display: 'yazzem', icon: 284, lang: 'en', 580 url: 'http://www.yazzem.com/welcome?status={t}%3A+{u}'}, 581 'yigg': {display: 'Yigg', icon: 61, lang: 'de', 582 url: 'http://www.yigg.de/neu?exturl={u}&exttitle={t}'}, 583 'yoolink': {display: 'yoolink', icon: 126, lang: 'en', 584 url: 'http://www.yoolink.fr/post/tag?f=aa&url_value={u}&title={t}'}, 585 'yorumcuyum': {display: 'Yorumcuyum', icon: 177, lang: 'tr', 586 url: 'http://www.yorumcuyum.com/?link={u}&baslik={t}'}, 587 'youbookmarks': {display: 'YouBookmarks', icon: 285, lang: 'en', 588 url: 'http://youbookmarks.com/api/quick_add.php?version=1&url={u}&title={t}'}, 589 'youmob': {display: 'YouMob', icon: 178, lang: 'en', 590 url: 'http://youmob.com/mobit.aspx?mob={u}&title={t}'}, 591 'zooloo': {display: 'ZooLoo', icon: 286, lang: 'en', 592 url: 'https://www.zooloo.com/redirecter/login?domainredirect=zGraffiti/share&v=1&u={u}&t={t}'} 593 }; 594} 595 596$.extend(Bookmark.prototype, { 597 /* Class name added to elements to indicate already configured with bookmarking. */ 598 markerClassName: 'hasBookmark', 599 600 /* Override the default settings for all bookmarking instances. 601 @param settings object - the new settings to use as defaults 602 @return void */ 603 setDefaults: function(settings) { 604 extendRemove(this._defaults, settings || {}); 605 return this; 606 }, 607 608 /* Add a new bookmarking site to the list. 609 @param id string - the ID of the new site 610 @param display (string) the display name for this site 611 @param icon (string) the location (URL) of an icon for this site (16x16), or 612 (number) the index of the icon within the combined image 613 @param lang (string) the language code for this site 614 @param url (string) the submission URL for this site, 615 with {u} marking where the current page's URL should be inserted, 616 and {t} indicating the title insertion point 617 @return void */ 618 addSite: function(id, display, icon, lang, url) { 619 this._sites[id] = {display: display, icon: icon, lang: lang, url: url}; 620 return this; 621 }, 622 623 /* Return the list of defined sites. 624 @return object[] - indexed by site id (string), each object contains 625 display (string) the display name, 626 icon (string) the location of the icon,, or 627 (number) the icon's index in the combined image 628 lang (string) the language code for this site 629 url (string) the submission URL for the site */ 630 getSites: function() { 631 return this._sites; 632 }, 633 634 /* Attach the bookmarking widget to a div. */ 635 _attachBookmark: function(target, settings) { 636 target = $(target); 637 if (target.hasClass(this.markerClassName)) { 638 return; 639 } 640 target.addClass(this.markerClassName); 641 if (!target[0].id) { 642 target[0].id = 'bm' + (++this._uuid); 643 } 644 this._updateBookmark(target, settings); 645 }, 646 647 /* Reconfigure the settings for a bookmarking div. 648 @param target (element) the bookmark container 649 @param settings (object) the new settings for this container or 650 (string) a single setting name 651 @param value (any) the single setting's value */ 652 _changeBookmark: function(target, settings, value) { 653 target = $(target); 654 if (!target.hasClass(this.markerClassName)) { 655 return; 656 } 657 if (typeof settings == 'string') { 658 var name = settings; 659 settings = {}; 660 settings[name] = value; 661 } 662 this._updateBookmark(target, settings); 663 }, 664 665 /* Construct the requested bookmarking links. */ 666 _updateBookmark: function(target, settings) { 667 var oldSettings = $.data(target[0], PROP_NAME) || $.extend({}, this._defaults); 668 settings = extendRemove(oldSettings, settings || {}); 669 $.data(target[0], PROP_NAME, settings); 670 var sites = settings.sites; 671 var allSites = this._sites; 672 if (sites.length == 0) { 673 $.each(allSites, function(id) { 674 sites.push(id); 675 }); 676 } 677 else { 678 $.each(sites, function(index, value) { 679 var lang = value.match(/lang:(.*)/); // Select by language 680 if (lang) { 681 var ids = []; 682 $.each(allSites, function(id, site) { 683 if (site.lang == lang[1]) { 684 ids.push(id); 685 } 686 });
687 sites = sites.slice(0, index).concat(ids, sites.slice(index + 1)); 688 } 689 }); 690 } 691 var hint = settings.hint || '{s}'; 692 var html = (settings.popup ? '<a href="#" class="bookmark_popup_text">' + 693 settings.popupText + '</a><div class="bookmark_popup">' : '') + 694 '<ul class="bookmark_list' + (settings.compact ? ' bookmark_compact' : '') + '">'; 695 var addSite = function(display, icon, url, onclick) { 696 var html = '<li><a href="' + url + '"' + (onclick ? ' onclick="' + onclick + '"' : 697 (settings.target ? ' target="' + settings.target + '"' : '')) + '>'; 698 if (icon != null) { 699 var title = hint.replace(/\{s\}/, display); 700 if (typeof icon == 'number') { 701 html += '<span title="' + title + '" ' + 702 (settings.iconsStyle ? 'class="' + settings.iconsStyle + '" ' : '') + 703 'style="' + (settings.iconsStyle ? 'background-position: ' : 704 'background: transparent url(' + settings.icons + ') no-repeat ') + '-' + 705 ((icon % settings.iconCols) * settings.iconSize) + 'px -' + 706 (Math.floor(icon / settings.iconCols) * settings.iconSize) + 'px;' + 707 ($.browser.mozilla && $.browser.version < '1.9' ? 708 ' padding-left: ' + settings.iconSize + 'px; padding-bottom: ' + 709 (Math.max(0, settings.iconSize - 16)) + 'px;' : '') + '"></span>'; 710 } 711 else { 712 html += '<img src="' + icon + '" alt="' + title + '" title="' + 713 title + '"' + (($.browser.mozilla && $.browser.version < '1.9') || 714 ($.browser.msie && $.browser.version < '7.0') ? 715 ' style="vertical-align: bottom;"' : 716 ($.browser.msie ? ' style="vertical-align: middle;"' : 717 ($.browser.opera || $.browser.safari ? 718 ' style="vertical-align: baseline;"' : ''))) + '/>
718'; 719 } 720 html += (settings.compact ? '' : ' '); 721 } 722 html += (settings.compact ? '' : display) + '</a></li>'; 723 return html; 724 }; 725 var url = settings.url || window.location.href; 726 var title = settings.title || document.title; 727 var desc = settings.description || ''; 728 if (settings.addFavorite) { 729 html += addSite(settings.favoriteText, settings.favoriteIcon, 730 '#', 'jQuery.bookmark._addFavourite(\'' + url.replace(/'/g, '\\\'') + 731 '\',\'' + title.replace(/'/g, '\\\'') + '\')'); 732 } 733 if (settings.addEmail) { 734 html += addSite(settings.emailText, settings.emailIcon, 735 'mailto:?subject=' + encodeURIComponent(settings.emailSubject) + 736 '&body=' + encodeURIComponent(settings.emailBody. 737 replace(/\{u\}/, url).replace(/\{t\}/, title).replace(/\{d\}/, settings.desc))); 738 } 739 var sourceTag = (!settings.sourceTag ? '' : 740 encodeURIComponent((url.indexOf('?') > -1 ? '&' : '?') + settings.sourceTag + '=')); 741 url = encodeURIComponent(url); 742 title = encodeURIComponent(title); 743 desc = encodeURIComponent(desc); 744 var allSites = this._sites; 745 $.each(sites, function(index, id) { 746 var site = allSites[id]; 747 if (site) { 748 html += addSite(site.display, site.icon, (settings.onSelect ? '#' : 749 site.url.replace(/\{u\}/, url + (sourceTag ? sourceTag + id : '')). 750 replace(/\{t\}/, title).replace(/\{d\}/, desc)), 751 (settings.onSelect ? 'return jQuery.bookmark._selected(\'' + target[0].id + 752 '\',\'' + id + '\')' : '')); 753 } 754 }); 755 html += '</ul>' + (settings.popup ? '</div>' : ''); 756 target.html(html); 757 if (settings.popup) { 758 target.find('.bookmark_popup_text').click(function() { 759 var target = $(this).parent(); 760 var offset = target.offset(); 761 target.find('.bookmark_popup').css('left', offset.left). 762 css('top', offset.top + target.outerHeight()).toggle(); 763 return false; 764 }); 765 $(document).click(function(event) { // Close on external click 766 target.find('.bookmark_popup').hide(); 767 }); 768 } 769 }, 770 771 /* Remove the bookmarking widget from a div. */ 772 _destroyBookmark: function(target) { 773 target = $(target); 774 if (!target.hasClass(this.markerClassName)) { 775 return; 776 } 777 target.removeClass(this.markerClassName).empty(); 778 $.removeData(target[0], PROP_NAME); 779 }, 780 781 /* Callback when selected. 782 @param id (string) the target ID 783 @param siteID (string) the selected site ID */ 784 _selected: function(id, siteID) { 785 var target = $('#' + id)[0]; 786 var settings = $.data(target, PROP_NAME); 787 var site = $.bookmark._sites[siteID]; 788 var url = settings.url || window.location.href; 789 var sourceTag = (!settings.sourceTag ? '' : 790 encodeURIComponent((url.indexOf('?') > -1 ? '&' : '?') + settings.sourceTag + '=')); 791 var url = encodeURIComponent(url); 792 var title = encodeURIComponent(settings.title || document.title); 793 var desc = encodeURIComponent(settings.description || ''); 794 settings.onSelect.apply(target, [siteID, site.display, 795 site.url.replace(/\{u\}/, url + (sourceTag ? sourceTag + siteID : '')). 796 replace(/\{t\}/, title).replace(/\{d\}/, desc)]); 797 return false; 798 }, 799 800 /* Add the current page as a favourite in the browser. 801 @param url (string) the URL to bookmark 802 @param title (string) the title to bookmark */ 803 _addFavourite: function(url, title) { 804 if ($.browser.msie) { 805 window.external.addFavorite(url, title); 806 } 807 else { 808 alert(this._defaults.manualBookmark); 809 } 810 } 811}); 812 813/* jQuery extend now ignores nulls! */ 814function extendRemove(target, props) { 815 $.extend(target, props); 816 for (var name in props) { 817 if (props[name] == null) { 818 target[name] = null; 819 } 820 } 821 return target; 822} 823 824/* Attach the bookmarking functionality to a jQuery selection. 825 @param command string - the command to run (optional, default 'attach') 826 @param options object - the new settings to use for these bookmarking instances 827 @return jQuery object - for chaining further calls */ 828$.fn.bookmark = function(options) { 829 var otherArgs = Array.prototype.slice.call(arguments, 1); 830 return this.each(function() { 831 if (typeof options == 'string') { 832 $.bookmark['_' + options + 'Bookmark']. 833 apply($.bookmark, [this].concat(otherArgs)); 834 } 835 else { 836 $.bookmark._attachBookmark(this, options || {}); 837 } 838 }); 839}; 840 841/* Initialise the bookmarking functionality. */ 842$.bookmark = new Bookmark(); // singleton instance 843 844})(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.