Version Description
- Tweak: Remove FB access token generator
Download this release
Release Info
Developer | ReneHermi |
Plugin | Social Media Share Buttons | MashShare |
Version | 3.2.7 |
Comparing to | |
See all releases |
Code changes from version 3.2.5 to 3.2.7
- assets/css/mashsb.css +1 -1
- assets/css/mashsb.min.css +1 -1
- assets/js/mashsb-admin.js +37 -37
- assets/js/mashsb-admin.min.js +1650 -1
- includes/admin/admin-notices.php +1 -1
- includes/admin/settings/register-settings.php +7 -7
- includes/mashengine.php +20 -60
- includes/template-functions.php +6 -2
- mashshare.php +2 -2
- readme.txt +9 -1
assets/css/mashsb.css
CHANGED
@@ -530,8 +530,8 @@ color:#8A8C8E;
|
|
530 |
-webkit-flex: 1 1 auto;
|
531 |
-ms-flex: 1 1 auto;
|
532 |
flex: 1 1 auto;
|
533 |
-
|
534 |
min-width: 0;
|
|
|
535 |
}
|
536 |
|
537 |
.mashsb-buttons .mashsb-shadow{
|
530 |
-webkit-flex: 1 1 auto;
|
531 |
-ms-flex: 1 1 auto;
|
532 |
flex: 1 1 auto;
|
|
|
533 |
min-width: 0;
|
534 |
+
box-shadow: 0 0 0 0;
|
535 |
}
|
536 |
|
537 |
.mashsb-buttons .mashsb-shadow{
|
assets/css/mashsb.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.onoffswitch,.onoffswitch2{background-color:#C5C5C5;cursor:pointer}.mashicon-buffer .icon,.mashicon-buffer .text,[class*=" mashicon-"],[class^=mashicon-] .icon{color:#fff}.mashsb-buttons a.mash-center,.mashsb-count,.onoffswitch,.onoffswitch2{text-align:center}.mashsb-buttons .secondary-shares a .text{text-indent:-9999px;line-height:0;display:block}.mashsb-buttons .secondary-shares a .text:after{content:" ";text-indent:0;font-size:13px;display:block}.mashsb-buttons .secondary-shares a{min-width:0;display:block}.mashsb-buttons .secondary-shares a .icon:before{margin-right:0}.mashsb-buttons .mashsb-hide{display:none}@font-face{font-family:mashsb-font;src:url(data:application/octet-stream;base64,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)format('woff'),url(data:application/octet-stream;base64,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)format('truetype')}[class*=" mashicon-"]:hover,[class^=mashicon-]:hover{opacity:.8}[class*=" mashicon-"] .text,[class^=mashicon-] .text{font-family:sans-serif;color:#fff}[class*=" mashicon-"] .onoffswitch-label,[class^=mashicon-]{font-size:15px;border-radius:0;cursor:pointer}.mashicon-share:before,[class*=" mashicon-"] .icon:before,[class^=mashicon-] .icon:before{font-family:mashsb-font;font-style:normal;font-weight:400;speak:none;font-size:16px;display:inline-block;text-decoration:inherit;width:1em;margin-right:.7em;text-align:center;font-variant:normal;text-transform:none;margin-top:0;float:left}[class^=mashicon-].mash-center .icon:before{float:none}.mashicon-facebook .icon:before{content:'\e800'}.mashicon-google .icon:before{content:'\e801'}.mashicon-pinterest .icon:before{content:'\e802'}.mashicon-linkedin .icon:before{content:'\e803'}.mashicon-digg .icon:before{content:'\e804'}.mashicon-reddit .icon:before{content:'\e805'}.mashicon-stumbleupon .icon:before{content:'\e806'}.mashicon-twitter .icon:before{content:'\e807'}.mashicon-mail .icon:before{content:'\e808'}.mashicon-vk .icon:before{content:'\e809'}.mashicon-print .icon:before{content:'\e80a'}.mashicon-delicious .icon:before{content:'\e80b'}.mashicon-buffer .icon:before{content:'\e80c'}.mashicon-heart .icon:before{content:'\e80d'}.mashicon-weibo .icon:before{content:'\e80e'}.mashicon-pocket .icon:before{content:'\e80f'}.mashicon-xing .icon:before{content:'\e810'}.mashicon-flattr .icon:before{content:'\e811'}.mashicon-odnoklassniki .icon:before{content:'\e812'}.mashicon-tumblr .icon:before{content:'\e813'}.mashicon-subscribe .icon:before{content:'\e808'}.mashicon-whatsapp .icon:before{content:'\e814'}.mashicon-meneame .icon:before{content:'\e815'}.mashicon-managewp .icon:before{content:'\e816'}.mashicon-mailru .icon:before{content:'\E819'}.mashicon-line .icon:before{content:'\E81A'}.mashicon-yummly .icon:before{content:'\E81B'}.mashicon-frype .icon:before{content:'\e81c'}.mashicon-skype .icon:before{content:'\e81d'}.mashicon-share:before{content:'\e81E'}.mashicon-telegram .icon:before{content:'\e81F'}.mashicon-hackernews .icon:before{content:'\e820'}.mashicon-flipboard .icon:before{content:'\e821'}.mashsb-container{padding-top:10px;padding-bottom:10px}.mashsb-buttons a{min-width:177px}.mashsb-box .mashsb-buttons a{padding:13px;margin-right:3px;margin-bottom:3px;float:left;border:0;text-decoration:none}.mashsb-box .mashsb-buttons a:hover{text-decoration:none}.mashsb-box .mashsb-buttons a.mash-nomargin{margin-right:0}.mashsb-box .mashsb-buttons a.mash-medium{padding:10px}.mashsb-box .mashsb-buttons a.mash-small{padding:6px}.mashsb-buttons .float-right{float:right}.mashsb-buttons .float-left{float:left}.mashicon-facebook{background:#2d5f9a}.mashicon-twitter{background:#00c3f3}.mashicon-google{background:#d73d32}.mashicon-subscribe{background:#fff120}.mashicon-pinterest{background:#cd252b}.mashicon-linkedin{background:#2ba3e1}.mashicon-digg{background:#1b5791}.mashicon-stumbleupon{background:#eb4723}.mashicon-vk{background:#5d83aa}.mashicon-mail{background:#888}.mashicon-print{background:#666}.mashicon-reddit{background:#333}.mashicon-delicious{background:#39f}.mashicon-weibo{background:#ed1c24}.mashicon-pocket{background:#ee4055}.mashicon-xing{background:#135a5b}.mashicon-flattr{background:#8cb55b}.mashicon-odnoklassniki{background:#f4731c}.mashicon-managewp{background:#056cad}.mashicon-tumblr{background:#2c4762}.mashicon-meneame{background:#ff7d12}.mashicon-whatsapp{background:#1d9e11}.mashicon-buffer{background:#000}.mashicon-mailru{background:#044b89}.mashicon-line{background:#1dcd00}.mashicon-yummly{background:#e16120}.mashicon-frype{background:#f60}.mashicon-skype{background:#00afef}.mashicon-telegram{background:#1d94d3}.mashicon-hackernews{background:#f60}.mashicon-flipboard{background:#b31f17}.mashicon-subscribe .icon,.mashicon-subscribe .text{color:#000}.mashsb-count{display:block;padding-bottom:0;font-size:43px;font-weight:700;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;color:#ccc;border:0 solid #FFF;margin-right:10px;margin-top:10px;float:left;line-height:13px}.mashsb-count.mash-medium{font-size:30px;margin-top:5px}.mashsb-count.mash-small{font-size:20px;margin-top:1px}.mashsb-sharetext{font-size:11px;font-family:Arial,sans-serif;color:#8A8C8E}.onoffswitch,.onoffswitch2{-ms-user-select:none;margin-left:0;-webkit-user-select:none;-moz-user-select:none;margin-bottom:3px;color:#FFF}.mashsb-toggle-container{display:none;padding:11px 2% 8px;border:10px solid #FFF120;position:relative;margin-bottom:10px;margin-top:0}[class*=" mashicon-"],[class^=mashicon-]{position:relative;display:inline-block}[class*=" mashicon-"] .text,[class^=mashicon-] .text{padding:0;margin:0}[class*=" mashicon-"] .text:after,[class^=mashicon-] .text:after{line-height:10px}.mashsb-box{line-height:1}.mashsb-count>.counts{clear:both}.onoffswitch{position:relative;display:inline-block;float:left;margin-right:0;width:42px;height:42px;line-height:42px}.onoffswitch.mash-medium{width:36px;height:36px;line-height:36px}.onoffswitch.mash-small{width:28px;height:28px;line-height:28px}.onoffswitch:before{content:"+";display:inline-block;font-weight:700;font-size:30px;font-family:arial;vertical-align:middle}.onoffswitch2{position:relative;display:inline-block;float:left;margin-right:3px;width:42px;height:42px;line-height:42px}.onoffswitch2.mash-medium{width:36px;height:36px;line-height:36px}.onoffswitch2.mash-small{width:28px;height:28px;line-height:28px}.onoffswitch2:before{content:"-";display:inline-block;font-weight:700;font-size:30px;font-family:arial;vertical-align:super}@media only screen and (max-width:568px){[class*=" mashicon-"] .text,[class^=mashicon-] .text{text-indent:-9999px;line-height:0;display:block}[class*=" mashicon-"] .text:after,[class^=mashicon-] .text:after{content:"";text-indent:0;font-size:13px;display:block}[class*=" mashicon-"],[class^=mashicon-]{text-align:center}[class*=" mashicon-"] .icon:before,[class^=mashicon-] .icon:before{float:none;margin-right:0}.mashsb-buttons a{margin-right:3px;margin-bottom:3px;min-width:0;width:41px}.onoffswitch,.onoffswitch-inner:after .onoffswitch2,.onoffswitch-inner:before,.onoffswitch2-inner:after,.onoffswitch2-inner:before{margin-right:0;width:41px}}.mashsb-widget-img{border:1px solid #ccc;margin-right:5px;margin-top:5px;float:left}.mashsb-widget-post-title{font-weight:700}.mashsb-share-widget li{clear:both;min-height:90px;border-bottom:1px solid #f5f5f5;list-style:none;padding-top:8px;padding-bottom:8px}.mashsb-share-widget{margin:0}.mashsb-excerpt{font-size:12px}.mashicon-share{font-size:12px;cursor:default}.mashicon-share:before{font-size:12px;margin-right:5px}.mashicon-share:hover{opacity:1}.mashsb-stretched .mashsb-buttons{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.mashsb-stretched .mashsb-buttons a{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;min-width:0}.mashsb-buttons .mashsb-shadow{-webkit-box-shadow:1px 2px 5px 0 rgba(0,0,0,.51);-moz-box-shadow:1px 2px 5px 0 rgba(0,0,0,.51);box-shadow:1px 2px 5px 0 rgba(0,0,0,.51)}
|
1 |
+
.onoffswitch,.onoffswitch2{background-color:#C5C5C5;cursor:pointer}.mashicon-buffer .icon,.mashicon-buffer .text,[class*=" mashicon-"],[class^=mashicon-] .icon{color:#fff}.mashsb-buttons a.mash-center,.mashsb-count,.onoffswitch,.onoffswitch2{text-align:center}.mashsb-buttons .secondary-shares a .text{text-indent:-9999px;line-height:0;display:block}.mashsb-buttons .secondary-shares a .text:after{content:" ";text-indent:0;font-size:13px;display:block}.mashsb-buttons .secondary-shares a{min-width:0;display:block}.mashsb-buttons .secondary-shares a .icon:before{margin-right:0}.mashsb-buttons .mashsb-hide{display:none}@font-face{font-family:mashsb-font;src:url(data:application/octet-stream;base64,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)format('woff'),url(data:application/octet-stream;base64,AAEAAAAPAIAAAwBwR1NVQiCMJXkAAAD8AAAAVE9TLzI+J0mTAAABUAAAAFZjbWFwkbPu+QAAAagAAAM+Y3Z0IAbd/vYAADckAAAAIGZwZ22KkZBZAAA3RAAAC3BnYXNwAAAAEAAANxwAAAAIZ2x5ZlZzkfUAAAToAAAsdGhlYWQMAC4QAAAxXAAAADZoaGVhCG0EqgAAMZQAAAAkaG10eId1//gAADG4AAAAjGxvY2G08r/aAAAyRAAAAEhtYXhwAXwMyAAAMowAAAAgbmFtZbK+JD8AADKsAAAC8XBvc3Q9sNobAAA1oAAAAXlwcmVw5UErvAAAQrQAAACGAAEAAAAKADAAPgACbGF0bgAOREZMVAAaAAQAAAAAAAAAAQAAAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAED3wGQAAUAAAJ6ArwAAACMAnoCvAAAAeAAMQECAAACAAUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBmRWQAQOgA6CEDUv9qAFoDVgCdAAAAAQAAAAAAAAAAAAUAAAADAAAALAAAAAQAAAGWAAEAAAAAAJAAAwABAAAALAADAAoAAAGWAAQAZAAAAAQABAABAADoIf//AADoAP//AAAAAQAEAAAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAaABsAHAAdAB4AHwAgACEAIgAAAQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAABqAAAAAAAAAAiAADoAAAA6AAAAAABAADoAQAA6AEAAAACAADoAgAA6AIAAAADAADoAwAA6AMAAAAEAADoBAAA6AQAAAAFAADoBQAA6AUAAAAGAADoBgAA6AYAAAAHAADoBwAA6AcAAAAIAADoCAAA6AgAAAAJAADoCQAA6AkAAAAKAADoCgAA6AoAAAALAADoCwAA6AsAAAAMAADoDAAA6AwAAAANAADoDQAA6A0AAAAOAADoDgAA6A4AAAAPAADoDwAA6A8AAAAQAADoEAAA6BAAAAARAADoEQAA6BEAAAASAADoEgAA6BIAAAATAADoEwAA6BMAAAAUAADoFAAA6BQAAAAVAADoFQAA6BUAAAAWAADoFgAA6BYAAAAXAADoFwAA6BcAAAAYAADoGAAA6BgAAAAZAADoGQAA6BkAAAAaAADoGgAA6BoAAAAbAADoGwAA6BsAAAAcAADoHAAA6BwAAAAdAADoHQAA6B0AAAAeAADoHgAA6B4AAAAfAADoHwAA6B8AAAAgAADoIAAA6CAAAAAhAADoIQAA6CEAAAAiAAAAAQAA/7ECFwNSABQALUAqAAEABgFHAAMCA3AFAQEEAQIDAQJeAAAABlgABgYMAEkjERERERMhBwUbKwEVIyIGHQEzByMRIxEjNTM1NDYzMgIXVzAipBaOq46OdGFSA0uTKChqpf5YAailemhyAAAAAAMAAP9pAoYDUgAmAD4AUgBGQEMIAQEHAUcAAwgHCANlAAcAAQAHAWAAAAAGBQAGYAAICAJYAAICDEgABQUEWAAEBA0ESU5LREE8OSspJSMRJCUiCQUYKzU0NjsBJjU0NwYjIiY1NDYzIQcjHgEHFAcOARUUFhceAQcUBiciJjcUFjcyNic0Jy4BLwEmLwEmJyYrASIHBhMeARczMjc2NTQnLgEnIyIHBhUUsn42KhAKE2iEpGkBNkViLzYBWCUWNhs9MAGkjIW4cHZWd2wBBAMICA4GDS4RCScmBFdCREILZDsEOCIbAgpiPQQ5IhsgV4goLh0dAYJfW4gyEmQ9XUUdIhkTOhQrWkRahgFkc0ViAVhJEw0LFAkQBwkhDAUMLzAB7U9yATQqORAST24CMyk5EAAAAQAA/2oD6ANSAEgAN0A0QD45AwMERhELAwEDAkcAAwQBBAMBbQACAAQDAgRgAAAADEgAAQENAUk7OjQyLCskIgUFFisRNgA3FgAXBgAHIic2NzY3NjcWFxY3Njc2JicmBAcOAR4BFxY+AS8BJjY3PgEXHgEGBwYHLgE3PgE3JicOAQcWFwYHDgEHFS4BBAEkzNsBFgME/tzMRkcODg8YBgsOIVhiZSckWHKO/vI0DgYMLigJDhACCCkcLkjCRCUWFhsxQicyCwMoAgY/MS4DBgwVDAQkAYugAV7VAR4BBP7eztP+4gMVFhsiWxorGBMpMTp7gdwyKWR5LVhUQhIECDYLDUOSM0AMOyp6bjJMAgI4JhV+H0oCBkwxORVYNQ6MJTdA9gAAAAAEAAD/agPoA1IAAwAQABQALABWQFMoAQcFAUcACQIFAgkFbQAHBQQFBwRtAAIKAQUHAgVeAAMDAFYAAAAMSAgGAgQEAVYLAQEBDQFJAAAqKSUjHx4cGhYVFBMSEQ8NCQcAAwADEQwFFSsVESERAR4BFzM+AScuASciBhMzESMTMzU0NzYzFh0BMzUmJyYnBgcGBzUjFhUD6Py8Ai4eAiMwAQIuICMuB5CQ4ZAEGy9IkQItL0g1IRUWkAGWA+j8GALZIigDAiwfISgBLP2pAbL+TvIYDDQCX+n4YjMvAgIYDyA9EjQAAAAACAAAAAAEYgKoAAsAEwAbACMAMQA5AEcATwB4QHUHAQEXAQgAAQhgEQkFAwAUDgIEAwAEYBMNAgMQGAwWBhUGAgsDAmAPAQsKCgtUDwELCwpYEgEKCwpMJCQcHBQUAABOTEpIR0VDQT8+PTs4NjQyJDEkMTAuLCooJhwjHCIgHhQbFBoYFhIQDgwACwAKIiIZBRYrNRE0OwE1NDsBERQjJzMyPQEjIhUTETQ7AREUIwM1NDsBFRQjExE0MyERFCMhNzQ7ATUnMzI9ASMiFRM0OwE1IxE0MyERFCMhNzMyPQEjIhUNsA1iDLNDDUMN4Q1iDGMMYwwyDQEgDf7gAQywT0MMQwzlDbC9DQEfDP7gbUMNQw2YAXQNgQ79/g5TDs4O/t8BdA3+jQ4BvUUORQ7+QwF0Df4IDUUOMVMOzg7+oA4xAXQN/ggN1w7ODgAIAAD/agS1A1IASQBTAG0AdwCEAI8AmACiAJNAkAkBEwIcGQoDEhNPJwQDCgecTEM1BAsKBEcOAQwLDQsMDW0AEgADARIDYAQBAQAJAAEJYAAFABQHBRRgAAAABwoAB2AQAQoRAQsMCgtgAA0ADwgND2AAExMCWAACAgxIAAgIBlgABgYNBkmioJeWk5KOjImHg4KAf317eXh2dXFwamhcWlJQKykdIxoTEhUFGysRNDYyFzM2MzcTFxQyJz4BNzYyFg4BByImNQYmJyMGDwEGBxUXMhYfATYyNz4CMzIWFRQGBxQFBgcOASMiJyYnLgEnIyYvAS4BNxQXPgE3JiMiBhcUHgIXFjMyNjcjPgE1NC4CJyYjIg4CFzQ2HgEHFAYiJhczHgEXMjY3Mw4BIiYlNDYzMhYUBiMiJhMUFjI2NCYiBhMeARc2NTQmIyJkfCsFhskFRvIDAQIUBCJhRAJAMzk8Ar4PAwIOHhACBUiYNgMBAgEZFiQZRGA0LP78KQ8gdiJ4bwJGX3IBBSEaCQ8IIjkFVjolLTFKZT5iajRLR3vcSwMeGjRYYDRVYEqakly6Lkg0ATJKLCMsGW44OmggKRmIkooBNy4mIjAwIiUu/jJHLjBEMg03UBA7RjotAWE+WCRSBAELJAEBAR4DIEBkRAFOOQEcAwIzbToGAwQoJgIBARIODGBFL04Vw2wSBQoSIwIkM4JbESEMGyYTQi47ciwaUMU2ZEYyCQ5OVCY+KTZiRjQMFyRIfgglLgIqJyQwMIAtLgEwLD5ERuAmLDBEMjAB+CMyMkUwMP7FJHBAKzU6VAACAAD/aQUdA1MAHAAtAEZAQxEQDwMAAyAfHgMBAAJHBgEAAwEDAAFtAAMDAlgAAgIMSAABAQRYBwEEBA1IAAUFBFgHAQQEDQRJExMYFRgVExEIBRwrPQEzFRQeATYnETQ2HgEHFQcnNTQmIgYHERQGLgElNRc3FRQeATY9ATMVFAYiJuAoOioBruywAoZZKDooAazxrALUWYYoOijgqvSqj7WzHCgCKhwBp3WmAqR3XCgqUB0oKB3+X3iqAap4tyoouB0oAiwbu7V5rKoAAAAAAQAA/2kEzgNSADAATkBLKCYkIiAWBgQFDgEDBAsHAgIDA0cABAUDBQQDbQADAgUDAmsAAgEFAgFrAAEABQEAawAFBQxIAAAABlgABgYNBkkvJBcWIxEhBwUbKxUWMzI3LgEnFjMyNy4BJzUWFy4BJzQ3FgQXJjU0NjMyFzY3Bgc2NwYHFRQOAyciHh6wilKCGBQbIyBYcgE1PjQ8ASNeARCaB5RpbUtXSRxSSUcwTTp6qOqI0SUDbAFiTAQJEYxaAx4BInBARDt1igkhGWiUUBIsWzEJH0s4IWXKupBWAQACAAD/xARZAvgAEQAbACpAJwEBAwIBRwACAwJvAAMAA28AAAEBAFQAAAABWAABAAFMEzM3FQQFGCs1ETQ3ARYyNwEWFREUBgchIiYTNjMhMhcBBiInAgHMJ28nAcwCNCT8VyQ0Pw0MA6kMDf4xDSQMHAKECAr+NCcnAcwJCf18JTIBNAL8BAT+MQwMAAEAAAAABMQCvACXADZAM0A6NjIoAAYGAAFHAAIAAm8EAwEDAAYAbwAGBQZvBwEFBWaMinx6eHZYU1JPLSphMggFFisRPgE7ATIXFjMyNzYyFxYXHgMXFh8BHgU3Njc2NTQnLgInPgE7ATIfAhYHFhcUFxQHBhUGFRQXFhc+AT8BPgE3Nj8CNhQ3NjsBMhcWMzI/ATYeARcWFRQHDgIHDgMXFBYfARYfAR4BFRQHBiMiJyYjIgcjJicuAwcOAgcGIyInLgInJi8BLgIKHQsJCg4WCgYgEBoKFAwGDgoMBCY4BwUICgoMCgccAwEPBhIgBw5IPE8aARYUFAgJAgEDBAMCBBoJEAcLBBIBLy8JDAwPEBYJFBogDwkTIA0iEAYDIxEiOggCGAoOAgYHCgMKDEdRMxobFRYUERoTBkJJBBoSHA0XDgQIDUIcJk5+TCtoXRcECgYCjggIAQECAQECBgMUEiAGUlELCAgQBgoCAQVwExBKHAsOCgUcEgMGCQkFEhgHBxQgKgoXFxIULBEBBggMBBgCPmUXGhoMEwcCAgECAQQICQYHHTodLkYMAiAQHA0IDggMBAkLQWgXIQgEAwIFC1MEIhASAwQyRA8YBAhASDiFvTAIIBgAAAAABgAA/5IDrQMqABsAHwAoACwAMAA0AIxAiQcBBQkACQUAbQAICwoLCAptFAEKDQsKDWsADQ8LDQ9rAwEBDgwOAQxtAAYTAQkFBgleBBICAAALCAALYBEBDxABDgEPDl4ADAICDFIADAwCVgACDAJKISAcHAEANDMyMTAvLi0sKyopJSQgKCEoHB8cHx4dGhkYFxYVFBINCwoJCAYAGwEbFQUUKwEyFhURFAYrARchNyMiJjURNDY7ATUzNSEVMxUlESERATI2NCYiBhQWEyEnIRcjNTMXIzUzA2IeLS0eTCL9TRtSIS0tIWAiAg8i/fIByf3GFyAhLCAgVQI3L/4c2IuLxouLAjQuIP6SHy6ZmS0gAW4hLXWBgXXH/twBJP57ICsgICsg/krygSMjIwAAAAIAAP9qA/EDUgADAAcAMUAuAAACAwIAA20FAQMBAgMBawACAgxIBAEBAQ0BSQQEAAAEBwQHBgUAAwADEQYFFSsVESERExEhEQH1CAH0lgH1/gsB8wH1/gsAAAAAAwAA/2oD0wNSADUAZgCNAEBAPXkBAgNUNgIABB8AAgEAA0cAAgMEAwIEbQAEAAMEAGsAAAEDAAFrAAMDDEgAAQENAUmHhm1sOzosKxQFBRUrNT4CNzIeARcWFxY+ATM3Nj8BNjc2HgEfAR4CFxYXDgIHDgEHDgEPAQYiJyUmLwIuAhE+AjcyFh8CFhcWNj8BNjc+Ajc2HgEzHgMXDgIHBQ4DJyYnLgMnJhE+AjclMh4BHwEWFx4CFxYXDgIPAQYPAQYPAQYmIyUnLgEnJgsqOAwTHiQHL9UTIiwCTTkeKiYWDR4QDxIDGgoGAwEKKjwKK6osBxwJGhEUFP74BhozNh0iCQsqOgwTHhQZf1UqEyQVGURcCyoiExAgKgIFFg4HAQoqQAn+/gcmFCwO1i4GTD4+AwQKLDwLAVweMEAIdU4nBEIqBgMBCSI0CYxdLhQOCRkQFhH/AD87VgUEWA8WEgYIFgIVYgQIHCMaDRUTBQIGCAkLAggIBwQKDRYWBRRUEwMSBAsHAnsDCxYYDRYJARUPFBQFCAsOOicUBQoMDiAoBRgOBAMIGgMGCgsJDhYYBHwDFggMBmUVAyAcIAYEARUPGBQGog4mAzYkEwIaFgkECQ0SFARCLBcLCAQLBwJ3HBooCgQAAAABAAD/sQPoAwwAHAAhQB4RAQABAUcCAQEAAW8DAQAAZgEAFxUNCwAcARwEBRQrBSInAScuAzU0NjcyHgIXPgMXMhYUBwEGAfQOC/6kDwoqIhqOfSJIPi4TFCxARiN9joD+pQpPCgFQDwo2NlAle4oBGCoiFRQkKBoBjPWA/rEKAAf///9qBNMDUgAkAD0AVABqAHgApwDOAXtAEHsBCwmqAQ8Na2leAwcIA0dLsAlQWEBlAAwLAAsMAG0AAA0LAA1rAAEPDg8BDm0ADgQPDgRrAAQKDwQKawAKBQ8KBWsABQgPBQhrAAgHDwgHawAHBgMHYwAGAw8GA2sADRABDwEND2AACwsJWAAJCQxIAAMDAlkAAgINAkkbS7AKUFhAawAMCwALDABtAAANCwANawAQDwEPEAFtAAEODwEOawAOBA8OBGsABAoPBAprAAoFDwoFawAFCA8FCGsACAcPCAdrAAcGAwdjAAYDDwYDawANAA8QDQ9gAAsLCVgACQkMSAADAwJZAAICDQJJG0BmAAwLAAsMAG0AAA0LAA1rAAEPDg8BDm0ADgQPDgRrAAQKDwQKawAKBQ8KBWsABQgPBQhrAAgHDwgHawAHBg8HBmsABgMPBgNrAA0QAQ8BDQ9gAAsLCVgACQkMSAADAwJZAAICDQJJWVlAHMzLyMa7urCupaShn4+OgoAaFikvKiYvGSURBR0rNTQ3Njc2MzIWFRQHBhY/ATYyFxYUBwYeARceARUUDgIHIi4BNxYXFjMyNzY3NjU0JyYnJiMiBw4BBwYVFBcmNTQ3Njc2MzIXFhcWFAcGBwYjIicmNxYXFjI3Njc2NTQnJicmIgcGBwYVFDcWFxYyNz4BLgEGBwYVASY1NDc2NzYzMhceARcWFRQHFQYHBiMiJyYnJjQ3NTY1NCcuAScmIyIHBiMiJyYXJjU0Nz4BMzIXFhcWFRQHBgcGIicmJyY0NzY1NCcmIyIHBiMiJya4dXc4KS01DAQOCQpglCAPEAcKBgs+WFKM2HmD6Jx+CnNcdR0fmWZcAQpzXXUdHmWkLCahDRIfSS0uGxtMIREPH04sLCIhSRwGGA0aDBwPCgMGGA0ZDRsOC48DCgUKBAsKBhIUBgMBQQEIChMiIjMxU3gSBxAGEQsLBwgTCAUCCwQNVjsjIxgZBQUODBAkAQYJJBJDMB0JAwgFDwkQBhAIBAIEFRYgCgoFBAsKDrKhunQuFzUuHykOBgIEKCoWPSgKDgQDE1ZAO3poQAFMnDBlPDEDD1JLWgkJZDwxAwpSPDU4CUcdHiMjQCAUBxQ+IEIhRyETCxdTGQoGBAkYEBAHCBgKBQQJFxARB0kJBAICBBISBwYKBgYCZwUFDQwQBQcPG4RXIyEzLwESCQUCBhELEgcBIiQXGT5eEwoFAQgLigUFCgsOCDUhKhEQGBgQBwUCBQ8JEAYODBwWGgIBBwkAAAAC//v/ZARxA1IAIgBHABxAGUE5EAMBAAFHAAEAAXAAAAAMAEktLGcCBRUrEyY3PgQ3MiQ7ATIeAQceAwYdARQGBw4CLgInJjcGFh8BHgIXFjI+AxY/AT4DNy4BDgQHLgMHBgIHEwQKEgoYBYgB9E+VNwJYCxAWCgYCLklGvsTMqIYdD+AaUj8nJSI8GwsWEhQMFAQKAwlmRkICDy44OD4yMA0bXEhKEhkCCNc3CQ4KCgoDBAYGBwkeHDQgIjLP8F1YaBQqaKRjNNkcej8oJhwqCAMCDAIWAgwDCV5EWh4oIA4mOjYwCRBYTDQMDwAAAAACAAD/agOsA1IABQALACVAIgkFAgMAAQFHAAIBAm8AAQABbwAAAwBvAAMDZhITEhAEBRgrNTMTJyMfAQEzARMj262C24K9AVro/qfe6JgBHuXlxAJg/aD+eAAAAAIAAP9mA78DVgAWACoASEBFJgECACUBAQIWAQQDAAEFBARHAAECAwIBA20AAwQCAwRrAAICAFgAAAAMSAAEBAVYBgEFBQ0FSRcXFyoXKSIrIiYjBwUZKxURNDYzIQcGDwEOASMiPQEjIg4CBxEDPgQzMh0BMzI2JxE3ERQGI6quAiQ0LzVtOE4DDzA7RjgWAZwFYGhyTAMPMHRcAeCosCUCArPGNTA1bThKEJwMKEo7/vr+rAVganJIEJxIcQEG3/3+s8YAAAAABAAA/2kD6ANRAA8AGAA3AEAATkBLOAEJCjYvKAMHBQJHBgEEAwUDBAVtAAoACQMKCWAAAwAFBwMFYAACAgFYAAEBDEgIAQcHAFgAAAANAEk/Pjs6FBgiEiQTFDUzCwUdKwERFAYjISImNRE0NjMhMhYFNCYiBhQWMjYXNCYHIgcGIicmIyIGBxQXBwYUFjY/ARcWMjYmLwE2AxQGIi4BNjIWA+g0JPzIJDQ0JAM4JDT+2XaudnaudhYiGg8NRotFEAwZIgGTdRIkMBNwcBIyJAIRdZOOMEouBDZCOAL5/MgkNDQkAzgkNDT8V35+rn5+wBomAQgkJAckG0QdeRI0JgIRdHQSJDYReR4BWyQ0NEg0NAAAAQAA/2oCaANSAB4AOUA2AQECARIBAwITAQQDA0cAAQYFAgIDAQJeAAAADEgAAwMEWAAEBA0ESQAAAB4AHiQlEREVBwUZKxE1PgI3MxUzFSMRFBYXFjMyNxUOASMiJy4BJyY1ETxSNAmP7e0SGSIqTUo/aTxENjdGEA4BuI4URGhM/Z3/AFYyDxQxnR8YERM+JSJHAV4AAAADAAD/mgO4AyIAFgAuAHkAU0BQYlAzAwUEIiEgCgQDBQgBAAMDRwkBAEQABAIFAgQFbQAFAwIFA2sAAQYBAgQBAmAAAwAAA1QAAwMAWAAAAwBMGBd0c1tWJSMXLhguGiUHBRYrARQHBgcGIyInBzcmNTQ3Njc2MhcWFxYlIgcGBwYVFBYXBzcWMzI3Njc2NCcmJyYTJicmFycmJyYOBCcWJyYnJicmJyYnJjc2PwE2NzYHNicmJy4BIzIjJyIHBgcGFRQXJhcWFxYXFhcWFxYXFhcWPwE2Nz4BNzYDuDw7ZWd5c2P2UEA9O2Rn8mdlOzz+RGVXVTEzJSIvkF9uZVhUMjMzMlRYfAIFMyUmHwYICwoYCwoIARMRDhQTFRMNBwUDAQURAwMVEAMEBB4ECQQCCRUQDQ8IDywGEQwNExMZGh4fJxkWDgkJDRAZGgwCAQFqeGdkOjw3Tuxpe3hmZDo8PDpkZvozMVNXZDxvLootPTMxVFbJV1MxM/4oAwMbFBIPAgMBDx0LAgQBCQgJDBETGRINBwYEBRMEBSUcBwwHSQoIAQ4PDhsiMT4IGBEPFhMYERUMDwgHAQECAwEQECMQDgAAAAQAAP+kA+IDGAAzAHUAmgC6AEFAPmdFAgMAsK4CAQMCR5d5GQMARQQBAQMCAwECbQACAm4AAAMDAFQAAAADWAADAANMNDS6t46HNHU0dTAuBQUUKwEGBwYnJicmJyY3Njc2FxYfARYXFhcWNzY1MhcWDgEHBicmJyYnJgcOAhcWFxY3Mj8BNhMiBi4BPwE2NzY3Ni8BJicmJyY3Njc2NzY3Njc2JyYvASY+ARcWFxYHBgcGBw4BBwYHBhcWFxYXHgEXFgcGBwYHBgEUDwEGBwYXFhcWFxYXHgEUBisBBgcGJyYnJicmNzY3NjcGNzYTNhceARcWBwYPAQYmJyYXJjc2BzYHNicmJyYnJicmJwH8HSIvMScdPAoQWThYOz03PDkjFxIJGhATBAIKBRkRDxUnKVg8YmAtPRUMFUgdJhAUIwlnAggEAQVkIhUKBgsGJBYMHAUGSxsyIBAaEx8NDAMDCAEBAQYEGAQIQRAYDh46LQ4QBQUCAQYIEQk0CBg/FRsUHxT+PgIERiofExZkNVZBhAwOAwIDQEA4IzEonjIbGiZPCyUDBgGndFkZDgECFwYFAwIFAQIBAQIGAgYBAgIBDR42EyImDwF6EgYKCQciQ0tvSi0PCwoJGhoQCAYBAxMWIwURMBwFAwIEEyoOFh8PQ1guUi0TAgMGAv4wAQEHAygPDgcHDBBXNCRUP10uERUOCA0PGCEeKSAkAwIDAgYrJkk+Dw4JDxwdEBMYExYQGCcvF3gaRikNCAcFAwI1AwMGZGlMUFsnFQsHDAIEBgIEAgEBAgcahUhUflELHgIEAf6eFAoDEBlPSxAHBAICAgkEDhQ8GzoLHBQOBw0GAgECAQAAAwAA/5oDuAMiADoATwBkAEVAQi0hGhMSBQAEAUcAAAQDBAADbQUBAQAEAAEEYAYBAwICA1QGAQMDAlgAAgMCTFFQPDtbWlBkUWRGRTtPPE8zMQcFFCsBBgcGBwYHBgcGJyYnJicmJyY/AQcGBwYHBgcmJyYnJi8BHgEVFAcGBwYHBg8BHgEXFjMyNz4BNTQnJiUiBwYHBhQXFhcWMjc2NzY0JyYnJgMiJyYnJjQ3Njc2MhcWFxYUBwYHBgMLAQIECAsRFR4jLh8VEgoJAwIBARQYFR4TFwYBFBAcExgTDxUNDhYSFhAQDRxnRkhTaVNPWRQU/sR7aWc7Pj47Z2n2aWc7Pj47Z2l7cF9dNzg4N11f4F9dNzg4N11fAlwMDB4bJhoiDhELCRQRGBQXERAOCg4SGR0kKSEgGhgSDwsSQCMmHyEaFQ8LBwVLdCAhMzCtbEA9Ovg+O2dp9mlnOz4+O2dp9mlnOz78oTg3XV/gX103ODg3XV/gX103OAADAAD/sQNaA1IACAA/AG8AVEBRSkI4AwMFAUcABQIDAgUDbQAKAAACCgBgAAgAAgUIAl4AAwAHBAMHYAAEAAYEBlwAAQEJWAAJCQwBSW5sZ2VcWlVST0w+PTEuKCUkIxUrCwUWKzc0LgEGFBY+AQE0JicjNDYnNCYnDgIHBgcOAg8BBg8BBicjETMyHgQXFjsBMjU0Jz4BNCc2NTQmJz4BNxQHFhUUBxYVFAcUBisBIiYnJisBIiY1ETQ2OwE2NzY3PgI3NjMyHgEVFAczMhaPFhwWFhwWAoMsHMQ2ASI3Dg4UFw0eAhYODBYKDBYKChISBxYOHAwcAnZJQ2sCEBQKHQoJEhhHGwUVASFgTkg2aEVBDKEdKiodmRQ5IBwNDBYYFhwvSigbYjpWZA8UAhgaGAIUAVAdKgEgciA3NAEPQkoYDSYDGhQOGQsIDwcB/psCBgYIBAQpXQ8QCSooEhwnDiIJATIVMikSFCsmDAw4K05aGhcXKh0BZR4qDUkqHg5ESBgVJE5BMzhUAAABAAD/sQNZAwsAJABKQEcSAQQFAUcHAQIDAQMCAW0IAQEBbgkBAAAFBAAFYAAEAwMEVAAEBANWBgEDBANKAQAeHBsaGRgVExEPDAsKCQgGACQBIwoFFCsBMhYVERQGByMRMzcjNTQ2PwE1JiMiBhcVIxUzESEiJjURNDY3ArhDXl5DaG8QfxomRCNBS1wBcHD+10NeXkMDC2BB/ehCXgEBTYFTHx4BAXMFWFNfgf6zYEECGEJeAQAAAv/+/7ADWQMLAA0AYABfQFwnAQAFGgEGAAJHAAUEAAQFAG0ACQMIAwkIbQALAAcECwdgAAQAAAYEAGAABgACAwYCYAABAAMJAQNgAAgKCghUAAgIClgACggKTF9dVlRNTCcnKSYlJVcWIgwFHSsBNCYjIg4CFxQWMj4BBRQOAisBIgciJyYnDgEHIiY3ND4BMzIWFz8BNDYXMzIXFgcDBhUUFhc+BDc0JiMiDgMeAjcyNzYyHwEWBgcOASciLgI+AzMyFgIeOjYjRDYkATxsWDIBOShGTioIBQU1Gg8DHVozWmQBSn5KMEwWAQYGAkIDBAMBQwMOEhAgMiQaAcKjSYRgOAI8XIhHf2MGDgUXBAIFOYxKV6BwSARAeJhbwOwBojxEIjxeNT9ESnAKPmA2HgEeEhwlMAFsYFiUViYlCx8DCAEGAwb+qQ0NFg4BAQQYIEQqo8I4YISShF48AlAFBxsHDgUuNAFEdJ6unnRE7gAGAAD/agPoA1IAAwAiADMAPwBbAHkAfEB5blZOOigFEARVRwIMEUhANAMDBRgXAgEDBEcPCwoHBAQAEBEEEGATAREADAURDGANAQUOCQgGEgUDAQUDYQACAgBWAAAADEgAAQENAUlcXCQjXHlceXh2cnBqaGRjYmBZWFNSS0pFRD08NzYvLisqIzMkMxYREBQFFysRIREhATQnJicmIgcGBwYVFB4BFxYXFg8CBjc2NzY3Njc2ISMiJj0BNDYyFh0BMzIWFAY3FAYiJj0BNDYyFhUXFAYPASIvARUUBiImPQE0Nj8BMh8BNTQ2MhYVFzIWFAYrARUzMhYUBisBIiY9ATQ2OwEyFhQGKwEVA+j8GANrMzJVV8xXVTIzUZBZGwYDAQEFCCgXNj02QyRQ/fZKCAwMEAs3CAwMRQsQDAwQC7QIBgYKBkwMEAsHBgYKBkwMEAx4CAwMCDc3CAwMCEoIDAwISggMDAg3A1L8GAIpU0ZFKSkpKUVGU0qBVQwHDAYLESAlEQoiJyozKlcMCJUIDAwIggsQDBQIDAwIlQgMDAiVBwoCAQhoXAgMDAiVBgsCAQhoXAgMDAg3DBALIwwQDAwIlQgMDBAMIwAABAAAAAAD5QKeAFgAkwEGARMAAAEWNzYnJjc2NzQ3NhYXFgcGBw4BFxY3NicmNzY/ATYnJicmBwYHBiYnJicmBwYHBicmJyYHBhcWDwE2BwYVFBY3PgEnJhU0PwE2NzY3NhUUDwE2BwYVBhYXJRQVHgE3Njc2FhcWFxY3NicmPwE2NzY1NCYHBhcWDwEGBwYHBiMGNTQ/ATYHNjUuAQcOARcWDwE0BwYFJgcGBwYnBicmJyYXJicuATc2NzY3NicmBw4BFxYPAQYHBgcGJy4BJyY/ATY3NicuAScmBwYXFhcWNzY3PgEXFg8CBgcGFxYXFj8BNhYGMQcGBwYHBgcGBwYeATc2NzY3PgEXFh8BFhcWFxY3Njc2NSYFBgcGBwYmJzY3Njc2AxcPEgoDBAIQCQMWHQECAgYKAwkdGBQLAwQDBRIEAgIGHhYSFx0EBAIIExYUEhkHAwUNFRoKAwQDGQEGAzETBgMBAgEYAgMQDRYBDwQJAwEQD/5kAScfFx4EBAEFExcVCgMEAxwCAQEtFwkBBAIYAgMMBAkIGAENBwEDASoYBwQCAwIPBwQCWAYICxZJXCBGKDmjQV8uCQIBIhAKAwMeFhQGAwEDAicCBSIkFgsIBwIBAyEHAgQBAhwaPzUKBAgRBwYEAhUiAQEEGxEEAgQPEihCNQMCAgEDAgEBDDIlQwsEFjAkQSUZCgIECD9LVjceLydfRj8sEAH89gsQChENDwECEhMnBwEJAQcFCQwIYjEFAw4CDgkJHzwNQQUFCQUKDg8iYx0QDR8HBQYFEAIBAw8FBQYEDAQGCAQFCgQKDQ+MCCURDBoHCAMGBxMHBgWPBgILAQMWCARaGjUQDA4QAUUDAx8gBQQMAgEEDwMDCQMKDxKbDQcMCRUKCQQKDwiLBgIFAgMBFwgFTiIEEA0WCggDBggNClcCKBZ0BgQICR4CAQgFChwLEAMBAwnAYDIYIAQECQIGBw8L3AcDEggEAwIHCAsMghoJFRAbIQMHLgcSFg4HCAQBEQMRBg5oPREOIBcbAQIgAgECBBMLBwsCBhUiShstGgMGPSk2CAQBBRESDAUKBQwKCh4LEhskLBYOBQMNDRkPEwkCAAcAAP9jBNoDUgA1AEYAaAB4ALMAxAD8AHtAeME8AgQCeyUCCQD5+OLdmpWDgoGAV1MiIQ0GEAoJA0cAAwQBBAMBbQwGAgABCQEACW0ACQoBCQprAAoKbggBAg0HAgEAAgFgCwEEBAVYAAUFDARJtbR6eWtp1tTGxb69tMS1xHmzerJzcGl4a3hkY0A/OTYpJw4FFCslFhcWFxYXPgE3Njc2Ny8TNT8DJiMiBwYHBhUUHwEWFxYXExYzMjc2NSYnJiMiBw4BHgEXFh8BFhcWHwEWFxYXNjc2NwY3Njc2PwE2NzYnJiIHBhcWNzMyNzY0JyYrASIHBhQXFhciBx8EFQcVDxAXFhceARc2NzY3NjcUNzY3NjcUNzY3Njc2NC4CJyYnMjc+AiYnJiMiBwYHFBcWFx4CBw4BBwYPAgYHDgEjBicmJyY+ATcGBwYHFRYXFhceATc2NzY3Njc2NzY3PgE3Njc1LgIBpAQKBQkFDA0QBQYDBAEBAgMCAgIEAgICBgMCAwIDAgECAwMGCgMUEAsFKhMRChIGCAYHFwUKIw8IAgYRJgcDGBkCGVcCBAYHBwYHCAQMChgYCgwEBw8GBgcHDAwCAhAZjxkQAgJsASESERESIQEiEhERErQQFAMKBgIBAQIBAgMGAwIDBQICAgICAwIFBQEHBRANDAUJBQoECQcGCAcIBgMFAgMIEh4WBQoKBRYZAxkZAwcmEQYCCA+zU39ABwhrUlluFisxLzRZFWxJTBoVJ29UhVyEBwIIEjw6s20pGDQtRhoRBRgTjNA+QwgGX528GwgFAwICAgYICxQzCQoJGgkRCB8HDAYaCgoLCgsLCwsiCyEVFAQEAQQYFSYcKkEXLiAyAYUBIRMfGw8pAQQtQC3MCBIYGzUkOUQeDAoCAgoMHjh8NyY1GzI0ITAcLCwcMCGpHBpTGhwcGlMaHCYEBBQVCwsWCwsMCwsLIAoKCRcGDQcQCBkJLD0TDAgGAgICAwUIGwE8MSEuFwEgFA4TERMhHhcOAgEOAQYtQC0EASkTFx8TIT4BMlg6PYc6PSgIDQ0LCQoDHR89Mnd6NDVIZnEWGhs5JSUcCgQDCAsSCQUCBwgzhk9YTSY9WCYAAgAA/7EDWQMLAD0AXQBmQGNTAQIJDAEBAEwBBAFcAQMEQwEHBQVHAAgJCG8AAAIBAgABbQABBAIBBGsABAMCBANrAAMFAgMFawAGBwZwAAkAAgAJAmAABQcHBVQABQUHWAAHBQdMVlQqIiYkJC8lJS0KBR0rATQuAy8BLgMnNDMyFh8BHgEzMjY1NC4BByIOAgcUHgIfARYXFhQGJyIuAyMiBhUUFhcyPgIXFAYjIicGIyIuAic0NyY1NDYzMhc2MzIeAgcUBxYCjxYgMiocUwgWDAYBUBgmCxUKGg4aIEBeNiZIPiQBFCwsJFEzDBIuIx0sHhQgDhwciF4pSkAizH5YSTorKFCSajwBCS1+WEk6KylPkmo+AQgsAQEcLh4YDgYUAggKDgkrDAoTCQ4kGR8wHAESIj4pIjQgFgcUDAgLLB4BEhoYEiIYNEgBFChAT1l+LQk+apBRKSs6SFl+LQk+apBRKSs6AAAAAAEAAP+xA1oDDAAlAERAQR8TAgUDJAoCAgAJAQECA0cABAMEbwADBQNvAAUABW8GAQACAG8AAgECbwABAWYBAB4cGRgSEA0LBQQAJQElBwUUKwEyFhQGIiY3NDcnBiMiJjQ2MzIXNyY1ND4BHgEGJyInBxYUBxc2AqdKaGiUagEByTNGS2hoS0YzyQFolmYCaklHM8kBAckzARdqkmpqSQcMZDBqkmowZAwHSmgCbJBsATBkDA4MZDAAAAAAAwAA/9IDdAJqAAcADgAjACVAIh4ODQYEAQIBRwcBAkUAAgECbwABAAFvAAAAZiEgFxADBRYrBSImJyYXJwkBMjc2PwEnMQUWNjcTNi4BBwEOARYfAQE+ARYHAWwLCQMHAUgCLf44DQkHCWZ/ATMbIwZ9BgweEf0kGBMOFLwBswoRBAcBBgcVA+EBOf3HBQQJXUjWDg8eAisXIAkI/vUJFhQGNwEDBgEIBgAAAAEAAP9qA5UDUgAMAB1AGgwJBAMCAAFHAQEAAAxIAAICDQJJEhYQAwUXKxEzExYXNjcTMwERIxGhxTE1MD3Cmv5xhQNS/tNLX1VcASb9wP5YAagAAAEAAP90A94DSAAIAGNLsB1QWEAaAAIDAQMCAW0AAQADAQBrAAMDDEgAAAANAEkbS7AkUFhAGQACAwEDAgFtAAEAAwEAawAAAG4AAwMMA0kbQBMAAwIDbwACAQJvAAEAAW8AAABmWVm2EREREQQFGCsTESERJRMlESEKAUYBRgIBRvwsAV7+FgFGAgFGAgFEAAEAAAABAAC76er4Xw889QALA+gAAAAA0+R1OQAAAADT5HU5//v/YwUdA1YAAAAIAAIAAAAAAAAAAQAAA1L/agAABR3/+///BR0AAQAAAAAAAAAAAAAAAAAAACMD6AAAAjsAAAKGAAAD6AAAA+gAAARiAAAEtQAABR0AAATOAAAEWQAABMQAAAOtAAAD8QAAA9MAAAPoAAAE0///BHD/+wOsAAADvwAAA+gAAAJoAAAD6AAAA+gAAAPoAAADWQAAA1kAAANZ//4D6AAAA+gAAATaAAADWQAAA1kAAAPoAAADlQAAA+gAAAAAAAAAOADSAWYB2gKAA7IEGgSKBNAFvgZWBoQHeAe4CZoKEgpACqQLLgt6DFwNng5cDyIPfhA2ERwSvBReFRQVchXIFfIWOgABAAAAIwEUAAgAAAAAAAIAMgBCAHMAAACrC3AAAAAAAAAAEgDeAAEAAAAAAAAANQAAAAEAAAAAAAEACwA1AAEAAAAAAAIABwBAAAEAAAAAAAMACwBHAAEAAAAAAAQACwBSAAEAAAAAAAUACwBdAAEAAAAAAAYACwBoAAEAAAAAAAoAKwBzAAEAAAAAAAsAEwCeAAMAAQQJAAAAagCxAAMAAQQJAAEAFgEbAAMAAQQJAAIADgExAAMAAQQJAAMAFgE/AAMAAQQJAAQAFgFVAAMAAQQJAAUAFgFrAAMAAQQJAAYAFgGBAAMAAQQJAAoAVgGXAAMAAQQJAAsAJgHtQ29weXJpZ2h0IChDKSAyMDE2IGJ5IG9yaWdpbmFsIGF1dGhvcnMgQCBmb250ZWxsby5jb21tYXNoc2ItZm9udFJlZ3VsYXJtYXNoc2ItZm9udG1hc2hzYi1mb250VmVyc2lvbiAxLjBtYXNoc2ItZm9udEdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAEMAbwBwAHkAcgBpAGcAaAB0ACAAKABDACkAIAAyADAAMQA2ACAAYgB5ACAAbwByAGkAZwBpAG4AYQBsACAAYQB1AHQAaABvAHIAcwAgAEAAIABmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQBtAGEAcwBoAHMAYgAtAGYAbwBuAHQAUgBlAGcAdQBsAGEAcgBtAGEAcwBoAHMAYgAtAGYAbwBuAHQAbQBhAHMAaABzAGIALQBmAG8AbgB0AFYAZQByAHMAaQBvAG4AIAAxAC4AMABtAGEAcwBoAHMAYgAtAGYAbwBuAHQARwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABzAHYAZwAyAHQAdABmACAAZgByAG8AbQAgAEYAbwBuAHQAZQBsAGwAbwAgAHAAcgBvAGoAZQBjAHQALgBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAAAAAIAAAAAAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIwECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBEwEUARUBFgEXARgBGQEaARsBHAEdAR4BHwEgASEBIgEjASQACGZhY2Vib29rBmdvb2dsZQlwaW50ZXJlc3QIbGlua2VkaW4EZGlnZwZyZWRkaXQLc3R1bWJsZXVwb24HdHdpdHRlcgRtYWlsAnZrBXByaW50CWRlbGljaW91cwZidWZmZXIFaGVhcnQFd2VpYm8GcG9ja2V0BHhpbmcGZmxhdHRyDW9kbm9rbGFzc25pa2kGdHVtYmxyCHdoYXRzYXBwB21lbmVhbWUIbWFuYWdld3AJdGh1bWJzLXVwEGZhY2Vib29rLXNxdWFyZWQGbWFpbHJ1BGxpbmUGeXVtbWx5BWZyeXBlBXNreXBlBXNoYXJlCHRlbGVncmFtCmhhY2tlcm5ld3MJZmxpcGJvYXJkAAAAAAAAAQAB//8ADwAAAAAAAAAAAAAAAAAAAAAAGAAYABgAGANW/2MDVv9jsAAsILAAVVhFWSAgS7gADlFLsAZTWliwNBuwKFlgZiCKVViwAiVhuQgACABjYyNiGyEhsABZsABDI0SyAAEAQ2BCLbABLLAgYGYtsAIsIGQgsMBQsAQmWrIoAQpDRWNFUltYISMhG4pYILBQUFghsEBZGyCwOFBYIbA4WVkgsQEKQ0VjRWFksChQWCGxAQpDRWNFILAwUFghsDBZGyCwwFBYIGYgiophILAKUFhgGyCwIFBYIbAKYBsgsDZQWCGwNmAbYFlZWRuwAStZWSOwAFBYZVlZLbADLCBFILAEJWFkILAFQ1BYsAUjQrAGI0IbISFZsAFgLbAELCMhIyEgZLEFYkIgsAYjQrEBCkNFY7EBCkOwAWBFY7ADKiEgsAZDIIogirABK7EwBSWwBCZRWGBQG2FSWVgjWSEgsEBTWLABKxshsEBZI7AAUFhlWS2wBSywB0MrsgACAENgQi2wBiywByNCIyCwACNCYbACYmawAWOwAWCwBSotsAcsICBFILALQ2O4BABiILAAUFiwQGBZZrABY2BEsAFgLbAILLIHCwBDRUIqIbIAAQBDYEItsAkssABDI0SyAAEAQ2BCLbAKLCAgRSCwASsjsABDsAQlYCBFiiNhIGQgsCBQWCGwABuwMFBYsCAbsEBZWSOwAFBYZVmwAyUjYUREsAFgLbALLCAgRSCwASsjsABDsAQlYCBFiiNhIGSwJFBYsAAbsEBZI7AAUFhlWbADJSNhRESwAWAtsAwsILAAI0KyCwoDRVghGyMhWSohLbANLLECAkWwZGFELbAOLLABYCAgsAxDSrAAUFggsAwjQlmwDUNKsABSWCCwDSNCWS2wDywgsBBiZrABYyC4BABjiiNhsA5DYCCKYCCwDiNCIy2wECxLVFixBGREWSSwDWUjeC2wESxLUVhLU1ixBGREWRshWSSwE2UjeC2wEiyxAA9DVVixDw9DsAFhQrAPK1mwAEOwAiVCsQwCJUKxDQIlQrABFiMgsAMlUFixAQBDYLAEJUKKiiCKI2GwDiohI7ABYSCKI2GwDiohG7EBAENgsAIlQrACJWGwDiohWbAMQ0ewDUNHYLACYiCwAFBYsEBgWWawAWMgsAtDY7gEAGIgsABQWLBAYFlmsAFjYLEAABMjRLABQ7AAPrIBAQFDYEItsBMsALEAAkVUWLAPI0IgRbALI0KwCiOwAWBCIGCwAWG1EBABAA4AQkKKYLESBiuwcisbIlktsBQssQATKy2wFSyxARMrLbAWLLECEystsBcssQMTKy2wGCyxBBMrLbAZLLEFEystsBossQYTKy2wGyyxBxMrLbAcLLEIEystsB0ssQkTKy2wHiwAsA0rsQACRVRYsA8jQiBFsAsjQrAKI7ABYEIgYLABYbUQEAEADgBCQopgsRIGK7ByKxsiWS2wHyyxAB4rLbAgLLEBHistsCEssQIeKy2wIiyxAx4rLbAjLLEEHistsCQssQUeKy2wJSyxBh4rLbAmLLEHHistsCcssQgeKy2wKCyxCR4rLbApLCA8sAFgLbAqLCBgsBBgIEMjsAFgQ7ACJWGwAWCwKSohLbArLLAqK7AqKi2wLCwgIEcgILALQ2O4BABiILAAUFiwQGBZZrABY2AjYTgjIIpVWCBHICCwC0NjuAQAYiCwAFBYsEBgWWawAWNgI2E4GyFZLbAtLACxAAJFVFiwARawLCqwARUwGyJZLbAuLACwDSuxAAJFVFiwARawLCqwARUwGyJZLbAvLCA1sAFgLbAwLACwAUVjuAQAYiCwAFBYsEBgWWawAWOwASuwC0NjuAQAYiCwAFBYsEBgWWawAWOwASuwABa0AAAAAABEPiM4sS8BFSotsDEsIDwgRyCwC0NjuAQAYiCwAFBYsEBgWWawAWNgsABDYTgtsDIsLhc8LbAzLCA8IEcgsAtDY7gEAGIgsABQWLBAYFlmsAFjYLAAQ2GwAUNjOC2wNCyxAgAWJSAuIEewACNCsAIlSYqKRyNHI2EgWGIbIVmwASNCsjMBARUUKi2wNSywABawBCWwBCVHI0cjYbAJQytlii4jICA8ijgtsDYssAAWsAQlsAQlIC5HI0cjYSCwBCNCsAlDKyCwYFBYILBAUVizAiADIBuzAiYDGllCQiMgsAhDIIojRyNHI2EjRmCwBEOwAmIgsABQWLBAYFlmsAFjYCCwASsgiophILACQ2BkI7ADQ2FkUFiwAkNhG7ADQ2BZsAMlsAJiILAAUFiwQGBZZrABY2EjICCwBCYjRmE4GyOwCENGsAIlsAhDRyNHI2FgILAEQ7ACYiCwAFBYsEBgWWawAWNgIyCwASsjsARDYLABK7AFJWGwBSWwAmIgsABQWLBAYFlmsAFjsAQmYSCwBCVgZCOwAyVgZFBYIRsjIVkjICCwBCYjRmE4WS2wNyywABYgICCwBSYgLkcjRyNhIzw4LbA4LLAAFiCwCCNCICAgRiNHsAErI2E4LbA5LLAAFrADJbACJUcjRyNhsABUWC4gPCMhG7ACJbACJUcjRyNhILAFJbAEJUcjRyNhsAYlsAUlSbACJWG5CAAIAGNjIyBYYhshWWO4BABiILAAUFiwQGBZZrABY2AjLiMgIDyKOCMhWS2wOiywABYgsAhDIC5HI0cjYSBgsCBgZrACYiCwAFBYsEBgWWawAWMjICA8ijgtsDssIyAuRrACJUZSWCA8WS6xKwEUKy2wPCwjIC5GsAIlRlBYIDxZLrErARQrLbA9LCMgLkawAiVGUlggPFkjIC5GsAIlRlBYIDxZLrErARQrLbA+LLA1KyMgLkawAiVGUlggPFkusSsBFCstsD8ssDYriiAgPLAEI0KKOCMgLkawAiVGUlggPFkusSsBFCuwBEMusCsrLbBALLAAFrAEJbAEJiAuRyNHI2GwCUMrIyA8IC4jOLErARQrLbBBLLEIBCVCsAAWsAQlsAQlIC5HI0cjYSCwBCNCsAlDKyCwYFBYILBAUVizAiADIBuzAiYDGllCQiMgR7AEQ7ACYiCwAFBYsEBgWWawAWNgILABKyCKimEgsAJDYGQjsANDYWRQWLACQ2EbsANDYFmwAyWwAmIgsABQWLBAYFlmsAFjYbACJUZhOCMgPCM4GyEgIEYjR7ABKyNhOCFZsSsBFCstsEIssDUrLrErARQrLbBDLLA2KyEjICA8sAQjQiM4sSsBFCuwBEMusCsrLbBELLAAFSBHsAAjQrIAAQEVFBMusDEqLbBFLLAAFSBHsAAjQrIAAQEVFBMusDEqLbBGLLEAARQTsDIqLbBHLLA0Ki2wSCywABZFIyAuIEaKI2E4sSsBFCstsEkssAgjQrBIKy2wSiyyAABBKy2wSyyyAAFBKy2wTCyyAQBBKy2wTSyyAQFBKy2wTiyyAABCKy2wTyyyAAFCKy2wUCyyAQBCKy2wUSyyAQFCKy2wUiyyAAA+Ky2wUyyyAAE+Ky2wVCyyAQA+Ky2wVSyyAQE+Ky2wViyyAABAKy2wVyyyAAFAKy2wWCyyAQBAKy2wWSyyAQFAKy2wWiyyAABDKy2wWyyyAAFDKy2wXCyyAQBDKy2wXSyyAQFDKy2wXiyyAAA/Ky2wXyyyAAE/Ky2wYCyyAQA/Ky2wYSyyAQE/Ky2wYiywNysusSsBFCstsGMssDcrsDsrLbBkLLA3K7A8Ky2wZSywABawNyuwPSstsGYssDgrLrErARQrLbBnLLA4K7A7Ky2waCywOCuwPCstsGkssDgrsD0rLbBqLLA5Ky6xKwEUKy2wayywOSuwOystsGwssDkrsDwrLbBtLLA5K7A9Ky2wbiywOisusSsBFCstsG8ssDorsDsrLbBwLLA6K7A8Ky2wcSywOiuwPSstsHIsswkEAgNFWCEbIyFZQiuwCGWwAyRQeLABFTAtAEu4AMhSWLEBAY5ZsAG5CAAIAGNwsQAFQrIAAQAqsQAFQrMKAgEIKrEABUKzDgABCCqxAAZCugLAAAEACSqxAAdCugBAAAEACSqxAwBEsSQBiFFYsECIWLEDZESxJgGIUVi6CIAAAQRAiGNUWLEDAERZWVlZswwCAQwquAH/hbAEjbECAEQAAA==)format('truetype')}[class*=" mashicon-"]:hover,[class^=mashicon-]:hover{opacity:.8}[class*=" mashicon-"] .text,[class^=mashicon-] .text{font-family:sans-serif;color:#fff}[class*=" mashicon-"] .onoffswitch-label,[class^=mashicon-]{font-size:15px;border-radius:0;cursor:pointer}.mashicon-share:before,[class*=" mashicon-"] .icon:before,[class^=mashicon-] .icon:before{font-family:mashsb-font;font-style:normal;font-weight:400;speak:none;font-size:16px;display:inline-block;text-decoration:inherit;width:1em;margin-right:.7em;text-align:center;font-variant:normal;text-transform:none;margin-top:0;float:left}[class^=mashicon-].mash-center .icon:before{float:none}.mashicon-facebook .icon:before{content:'\e800'}.mashicon-google .icon:before{content:'\e801'}.mashicon-pinterest .icon:before{content:'\e802'}.mashicon-linkedin .icon:before{content:'\e803'}.mashicon-digg .icon:before{content:'\e804'}.mashicon-reddit .icon:before{content:'\e805'}.mashicon-stumbleupon .icon:before{content:'\e806'}.mashicon-twitter .icon:before{content:'\e807'}.mashicon-mail .icon:before{content:'\e808'}.mashicon-vk .icon:before{content:'\e809'}.mashicon-print .icon:before{content:'\e80a'}.mashicon-delicious .icon:before{content:'\e80b'}.mashicon-buffer .icon:before{content:'\e80c'}.mashicon-heart .icon:before{content:'\e80d'}.mashicon-weibo .icon:before{content:'\e80e'}.mashicon-pocket .icon:before{content:'\e80f'}.mashicon-xing .icon:before{content:'\e810'}.mashicon-flattr .icon:before{content:'\e811'}.mashicon-odnoklassniki .icon:before{content:'\e812'}.mashicon-tumblr .icon:before{content:'\e813'}.mashicon-subscribe .icon:before{content:'\e808'}.mashicon-whatsapp .icon:before{content:'\e814'}.mashicon-meneame .icon:before{content:'\e815'}.mashicon-managewp .icon:before{content:'\e816'}.mashicon-mailru .icon:before{content:'\E819'}.mashicon-line .icon:before{content:'\E81A'}.mashicon-yummly .icon:before{content:'\E81B'}.mashicon-frype .icon:before{content:'\e81c'}.mashicon-skype .icon:before{content:'\e81d'}.mashicon-share:before{content:'\e81E'}.mashicon-telegram .icon:before{content:'\e81F'}.mashicon-hackernews .icon:before{content:'\e820'}.mashicon-flipboard .icon:before{content:'\e821'}.mashsb-container{padding-top:10px;padding-bottom:10px}.mashsb-buttons a{min-width:177px}.mashsb-box .mashsb-buttons a{padding:13px;margin-right:3px;margin-bottom:3px;float:left;border:0;text-decoration:none}.mashsb-box .mashsb-buttons a:hover{text-decoration:none}.mashsb-box .mashsb-buttons a.mash-nomargin{margin-right:0}.mashsb-box .mashsb-buttons a.mash-medium{padding:10px}.mashsb-box .mashsb-buttons a.mash-small{padding:6px}.mashsb-buttons .float-right{float:right}.mashsb-buttons .float-left{float:left}.mashicon-facebook{background:#2d5f9a}.mashicon-twitter{background:#00c3f3}.mashicon-google{background:#d73d32}.mashicon-subscribe{background:#fff120}.mashicon-pinterest{background:#cd252b}.mashicon-linkedin{background:#2ba3e1}.mashicon-digg{background:#1b5791}.mashicon-stumbleupon{background:#eb4723}.mashicon-vk{background:#5d83aa}.mashicon-mail{background:#888}.mashicon-print{background:#666}.mashicon-reddit{background:#333}.mashicon-delicious{background:#39f}.mashicon-weibo{background:#ed1c24}.mashicon-pocket{background:#ee4055}.mashicon-xing{background:#135a5b}.mashicon-flattr{background:#8cb55b}.mashicon-odnoklassniki{background:#f4731c}.mashicon-managewp{background:#056cad}.mashicon-tumblr{background:#2c4762}.mashicon-meneame{background:#ff7d12}.mashicon-whatsapp{background:#1d9e11}.mashicon-buffer{background:#000}.mashicon-mailru{background:#044b89}.mashicon-line{background:#1dcd00}.mashicon-yummly{background:#e16120}.mashicon-frype{background:#f60}.mashicon-skype{background:#00afef}.mashicon-telegram{background:#1d94d3}.mashicon-hackernews{background:#f60}.mashicon-flipboard{background:#b31f17}.mashicon-subscribe .icon,.mashicon-subscribe .text{color:#000}.mashsb-count{display:block;padding-bottom:0;font-size:43px;font-weight:700;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;color:#ccc;border:0 solid #FFF;margin-right:10px;margin-top:10px;float:left;line-height:13px}.mashsb-count.mash-medium{font-size:30px;margin-top:5px}.mashsb-count.mash-small{font-size:20px;margin-top:1px}.mashsb-sharetext{font-size:11px;font-family:Arial,sans-serif;color:#8A8C8E}.onoffswitch,.onoffswitch2{-ms-user-select:none;margin-left:0;-webkit-user-select:none;-moz-user-select:none;margin-bottom:3px;color:#FFF}.mashsb-toggle-container{display:none;padding:11px 2% 8px;border:10px solid #FFF120;position:relative;margin-bottom:10px;margin-top:0}[class*=" mashicon-"],[class^=mashicon-]{position:relative;display:inline-block}[class*=" mashicon-"] .text,[class^=mashicon-] .text{padding:0;margin:0}[class*=" mashicon-"] .text:after,[class^=mashicon-] .text:after{line-height:10px}.mashsb-box{line-height:1}.mashsb-count>.counts{clear:both}.onoffswitch{position:relative;display:inline-block;float:left;margin-right:0;width:42px;height:42px;line-height:42px}.onoffswitch.mash-medium{width:36px;height:36px;line-height:36px}.onoffswitch.mash-small{width:28px;height:28px;line-height:28px}.onoffswitch:before{content:"+";display:inline-block;font-weight:700;font-size:30px;font-family:arial;vertical-align:middle}.onoffswitch2{position:relative;display:inline-block;float:left;margin-right:3px;width:42px;height:42px;line-height:42px}.onoffswitch2.mash-medium{width:36px;height:36px;line-height:36px}.onoffswitch2.mash-small{width:28px;height:28px;line-height:28px}.onoffswitch2:before{content:"-";display:inline-block;font-weight:700;font-size:30px;font-family:arial;vertical-align:super}@media only screen and (max-width:568px){[class*=" mashicon-"] .text,[class^=mashicon-] .text{text-indent:-9999px;line-height:0;display:block}[class*=" mashicon-"] .text:after,[class^=mashicon-] .text:after{content:"";text-indent:0;font-size:13px;display:block}[class*=" mashicon-"],[class^=mashicon-]{text-align:center}[class*=" mashicon-"] .icon:before,[class^=mashicon-] .icon:before{float:none;margin-right:0}.mashsb-buttons a{margin-right:3px;margin-bottom:3px;min-width:0;width:41px}.onoffswitch,.onoffswitch-inner:after .onoffswitch2,.onoffswitch-inner:before,.onoffswitch2-inner:after,.onoffswitch2-inner:before{margin-right:0;width:41px}}.mashsb-widget-img{border:1px solid #ccc;margin-right:5px;margin-top:5px;float:left}.mashsb-widget-post-title{font-weight:700}.mashsb-share-widget li{clear:both;min-height:90px;border-bottom:1px solid #f5f5f5;list-style:none;padding-top:8px;padding-bottom:8px}.mashsb-share-widget{margin:0}.mashsb-excerpt{font-size:12px}.mashicon-share{font-size:12px;cursor:default}.mashicon-share:before{font-size:12px;margin-right:5px}.mashicon-share:hover{opacity:1}.mashsb-stretched .mashsb-buttons{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.mashsb-stretched .mashsb-buttons a{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;min-width:0;box-shadow:0 0}.mashsb-buttons .mashsb-shadow{-webkit-box-shadow:1px 2px 5px 0 rgba(0,0,0,.51);-moz-box-shadow:1px 2px 5px 0 rgba(0,0,0,.51);box-shadow:1px 2px 5px 0 rgba(0,0,0,.51)}
|
assets/js/mashsb-admin.js
CHANGED
@@ -32,46 +32,46 @@ jQuery(document).ready(function ($) {
|
|
32 |
});
|
33 |
|
34 |
|
35 |
-
$('#mashsb_settings\\[fb_access_token\\]').on("change paste keyup",function(){
|
36 |
-
|
37 |
-
var two_month = 60 * 60 * 24 * 60 * 1000; // timestamp in miliseconds
|
38 |
-
var expiration_timestamp = (new Date().getTime()) + two_month; // time in miliseconds
|
39 |
-
|
40 |
-
var unixtimestamp = (new Date().getTime() + (60 * 60 * 24 * 60 * 1000)) / 1000; // timestamp in seconds
|
41 |
-
|
42 |
-
var human_date = new Date(expiration_timestamp);
|
43 |
-
|
44 |
-
if ($('#mashsb_settings\\[fb_access_token\\]').val()){
|
45 |
-
check_access_token();
|
46 |
-
document.getElementById('mashsb_expire_token_status').innerHTML = 'Token needs renewal on ' + human_date + '<br>MashShare will notify you shortly before the access token expires.';
|
47 |
-
}else {
|
48 |
-
document.getElementById('mashsb_expire_token_status').innerHTML = '';
|
49 |
-
}
|
50 |
-
});
|
51 |
|
52 |
|
53 |
-
function check_access_token()
|
54 |
-
{
|
55 |
-
$.ajax("https://graph.facebook.com/v2.7/?id=http://www.google.de&access_token=" + $('#mashsb_settings\\[fb_access_token\\]').val())
|
56 |
-
.done(function (e) {
|
57 |
-
$('#mashsb_token_notice').html('');
|
58 |
-
console.log(e);
|
59 |
-
})
|
60 |
-
.fail(function (e) {
|
61 |
-
$('#mashsb_token_notice').html('<span style="color:red;"> <strong>Error:</strong> Access Token Invalid!</span>');
|
62 |
-
console.log(e);
|
63 |
-
})
|
64 |
-
|
65 |
|
66 |
-
$('#mashsb_fb_auth').click(function (e) {
|
67 |
-
e.preventDefault();
|
68 |
-
winWidth = 520;
|
69 |
-
winHeight = 350;
|
70 |
-
var winTop = (screen.height / 2) - (winHeight / 2);
|
71 |
-
var winLeft = (screen.width / 2) - (winWidth / 2);
|
72 |
-
var url = $(this).attr('href');
|
73 |
-
mashsb_fb_auth = window.open(url, 'mashsb_fb_auth', 'top=' + winTop + ',left=' + winLeft + ',toolbar=0,status=0,width=' + winWidth + ',height=' + winHeight + ',resizable=yes');
|
74 |
-
});
|
75 |
|
76 |
// // Share Color Picker
|
77 |
// $('.share_color').colpick({
|
32 |
});
|
33 |
|
34 |
|
35 |
+
// $('#mashsb_settings\\[fb_access_token\\]').on("change paste keyup",function(){
|
36 |
+
//
|
37 |
+
// var two_month = 60 * 60 * 24 * 60 * 1000; // timestamp in miliseconds
|
38 |
+
// var expiration_timestamp = (new Date().getTime()) + two_month; // time in miliseconds
|
39 |
+
//
|
40 |
+
// var unixtimestamp = (new Date().getTime() + (60 * 60 * 24 * 60 * 1000)) / 1000; // timestamp in seconds
|
41 |
+
//
|
42 |
+
// var human_date = new Date(expiration_timestamp);
|
43 |
+
//
|
44 |
+
// if ($('#mashsb_settings\\[fb_access_token\\]').val()){
|
45 |
+
// check_access_token();
|
46 |
+
// document.getElementById('mashsb_expire_token_status').innerHTML = 'Token needs renewal on ' + human_date + '<br>MashShare will notify you shortly before the access token expires.';
|
47 |
+
// }else {
|
48 |
+
// document.getElementById('mashsb_expire_token_status').innerHTML = '';
|
49 |
+
// }
|
50 |
+
// });
|
51 |
|
52 |
|
53 |
+
// function check_access_token()
|
54 |
+
// {
|
55 |
+
// $.ajax("https://graph.facebook.com/v2.7/?id=http://www.google.de&access_token=" + $('#mashsb_settings\\[fb_access_token\\]').val())
|
56 |
+
// .done(function (e) {
|
57 |
+
// $('#mashsb_token_notice').html('');
|
58 |
+
// console.log(e);
|
59 |
+
// })
|
60 |
+
// .fail(function (e) {
|
61 |
+
// $('#mashsb_token_notice').html('<span style="color:red;"> <strong>Error:</strong> Access Token Invalid!</span>');
|
62 |
+
// console.log(e);
|
63 |
+
// })
|
64 |
+
// }
|
65 |
|
66 |
+
// $('#mashsb_fb_auth').click(function (e) {
|
67 |
+
// e.preventDefault();
|
68 |
+
// winWidth = 520;
|
69 |
+
// winHeight = 350;
|
70 |
+
// var winTop = (screen.height / 2) - (winHeight / 2);
|
71 |
+
// var winLeft = (screen.width / 2) - (winWidth / 2);
|
72 |
+
// var url = $(this).attr('href');
|
73 |
+
// mashsb_fb_auth = window.open(url, 'mashsb_fb_auth', 'top=' + winTop + ',left=' + winLeft + ',toolbar=0,status=0,width=' + winWidth + ',height=' + winHeight + ',resizable=yes');
|
74 |
+
// });
|
75 |
|
76 |
// // Share Color Picker
|
77 |
// $('.share_color').colpick({
|
assets/js/mashsb-admin.min.js
CHANGED
@@ -1 +1,1650 @@
|
|
1 |
-
jQuery(document).ready(function(a){function b(){a.ajax("https://graph.facebook.com/v2.7/?id=http://www.google.de&access_token="+a("#mashsb_settings\\[fb_access_token\\]").val()).done(function(b){a("#mashsb_token_notice").html(""),console.log(b)}).fail(function(b){a("#mashsb_token_notice").html('<span style="color:red;"> <strong>Error:</strong> Access Token Invalid!</span>'),console.log(b)})}function c(a,b,c){if(c){var d=new Date;d.setTime(d.getTime()+24*c*60*60*1e3);var e="; expires="+d.toGMTString()}else var e="";document.cookie=a+"="+b+e+"; path=/"}function d(a){for(var b=a+"=",c=document.cookie.split(";"),d=0;d<c.length;d++){for(var e=c[d];" "==e.charAt(0);)e=e.substring(1,e.length);if(0==e.indexOf(b))return e.substring(b.length,e.length)}return null}function e(){var a=jQuery(".mashsb-tabs.active").find("a").attr("href");c("mashsb_active_tab",a)}function f(){var a=d("mashsb_active_tab");return null==a&&(a="#mashsb_settingsgeneral_header"),a}function g(){var a,b;return a=jQuery(".mashsb.nav-tab-wrapper a.nav-tab-active:nth-child(2)"),b=jQuery(".mashsb.nav-tab-wrapper a.nav-tab-active:nth-child(3)"),a.length>0||b.length>0?void 0:f()+"-nav"}a(".mashsb-color-box").each(function(){a(this).colpick({layout:"hex",submit:0,colorScheme:"light",onChange:function(b,c,d,e,f){a(e).css("border-color","#"+c),f||a(e).val(c)}}).keyup(function(){a(this).colpickSetColor(this.value)}),a(this).colpick({layout:"hex",submit:0,colorScheme:"light",onChange:function(b,c,d,e,f){a(e).css("border-color","#"+c),f||a(e).val(c)}}).keyup(function(){a(this).colpickSetColor(this.value)})}),a("#mashsb_settings\\[fb_access_token\\]").on("change paste keyup",function(){var c=5184e6,d=(new Date).getTime()+c,e=(((new Date).getTime()+5184e6)/1e3,new Date(d));a("#mashsb_settings\\[fb_access_token\\]").val()?(b(),document.getElementById("mashsb_expire_token_status").innerHTML="Token needs renewal on "+e+"<br>MashShare will notify you shortly before the access token expires."):document.getElementById("mashsb_expire_token_status").innerHTML=""}),a("#mashsb_fb_auth").click(function(b){b.preventDefault(),winWidth=520,winHeight=350;var c=screen.height/2-winHeight/2,d=screen.width/2-winWidth/2,e=a(this).attr("href");mashsb_fb_auth=window.open(e,"mashsb_fb_auth","top="+c+",left="+d+",toolbar=0,status=0,width="+winWidth+",height="+winHeight+",resizable=yes")}),a("#mashsb_settings\\[responsive_buttons\\]").attr("checked")?a("#mashsb_settings\\[button_width\\]").closest(".row").css("display","none"):a("#mashsb_settings\\[button_width\\]").closest(".row").fadeIn(300).css("display","table-row"),a("#mashsb_settings\\[responsive_buttons\\]").click(function(){a(this).attr("checked")?a("#mashsb_settings\\[button_width\\]").closest(".row").css("display","none"):a("#mashsb_settings\\[button_width\\]").closest(".row").fadeIn(300).css("display","table-row")}),a(".mashsb-chosen-select").chosen({width:"400px"}),a("#mashsb_settings\\[caching_method\\]").change(function(){"refresh_loading"===a("#mashsb_settings\\[caching_method\\]").val()?a("#mashsb_settings\\[mashsharer_cache\\]").closest(".row").fadeIn(300).css("display","table-row"):a("#mashsb_settings\\[mashsharer_cache\\]").closest(".row").css("display","none")}),"refresh_loading"===a("#mashsb_settings\\[caching_method\\]").val()?a("#mashsb_settings\\[mashsharer_cache\\]").closest(".row").fadeIn(300).css("display","table-row"):a("#mashsb_settings\\[mashsharer_cache\\]").closest(".row").css("display","none"),a(".mashsb-tabs").length&&a("#mashsb_container").easytabs({animate:!0,updateHash:!0,defaultTab:g()}),a("#mashsb_container").bind("easytabs:after",function(){0==jQuery(".mashsb.nav-tab-wrapper a.nav-tab-active:nth-child(2)").length&&e()}),a(".mashtab").length&&a(".tabcontent_container").easytabs({animate:!0}),a("#mashsb_network_list").sortable({items:".mashsb_list_item",opacity:.6,cursor:"move",axis:"y",update:function(){var b=a(this).sortable("serialize")+"&action=mashsb_update_order";a.post(ajaxurl,b,function(){})}}),a(".mashsb-helper").click(function(b){b.preventDefault();var c=a(this),d=a(this).next();a(".mashsb-message").not(d).hide();var e=c.position();d.css(d.hasClass("bottom")?{left:e.left-d.width()/2+"px",top:e.top+c.height()+9+"px"}:{left:e.left+c.width()+9+"px",top:e.top+c.height()/2-18+"px"}),d.toggle(),b.stopPropagation()}),a("body").click(function(){a(".mashsb-message").hide()}),a(".mashsb-message").click(function(a){a.stopPropagation()})}),function(a,b,c){function d(a){return a=a||location.href,"#"+a.replace(/^[^#]*#?(.*)$/,"$1")}var e,f="hashchange",g=document,h=a.event.special,i=g.documentMode,j="on"+f in b&&(i===c||i>7);a.fn[f]=function(a){return a?this.bind(f,a):this.trigger(f)},a.fn[f].delay=50,h[f]=a.extend(h[f],{setup:function(){return j?!1:void a(e.start)},teardown:function(){return j?!1:void a(e.stop)}}),e=function(){function e(){var c=d(),g=n(k);c!==k?(m(k=c,g),a(b).trigger(f)):g!==k&&(location.href=location.href.replace(/#.*/,"")+g),h=setTimeout(e,a.fn[f].delay)}var h,i={},k=d(),l=function(a){return a},m=l,n=l;return i.start=function(){h||e()},i.stop=function(){h&&clearTimeout(h),h=c},a.browser.msie&&!j&&function(){var b,c;i.start=function(){b||(c=a.fn[f].src,c=c&&c+d(),b=a('<iframe tabindex="-1" title="empty"/>').hide().one("load",function(){c||m(d()),e()}).attr("src",c||"javascript:0").insertAfter("body")[0].contentWindow,g.onpropertychange=function(){try{"title"===event.propertyName&&(b.document.title=g.title)}catch(a){}})},i.stop=l,n=function(){return d(b.location.href)},m=function(c,d){var e=b.document,h=a.fn[f].domain;c!==d&&(e.title=g.title,e.open(),h&&e.write('<script>document.domain="'+h+'"</script>'),e.close(),b.location.hash=c)}}(),i}()}(jQuery,this),function(a){a.easytabs=function(b,c){var d,e,f,g,h,i,j=this,k=a(b),l={animate:!0,panelActiveClass:"active",tabActiveClass:"active",defaultTab:"li:first-child",animationSpeed:"normal",tabs:"> ul > li",updateHash:!0,cycle:!1,collapsible:!1,collapsedClass:"collapsed",collapsedByDefault:!0,uiTabs:!1,transitionIn:"fadeIn",transitionOut:"fadeOut",transitionInEasing:"swing",transitionOutEasing:"swing",transitionCollapse:"slideUp",transitionUncollapse:"slideDown",transitionCollapseEasing:"swing",transitionUncollapseEasing:"swing",containerClass:"",tabsClass:"",tabClass:"",panelClass:"",cache:!0,event:"click",panelContext:k},m={fast:200,normal:400,slow:600};j.init=function(){j.settings=i=a.extend({},l,c),i.bind_str=i.event+".easytabs",i.uiTabs&&(i.tabActiveClass="ui-tabs-selected",i.containerClass="ui-tabs ui-widget ui-widget-content ui-corner-all",i.tabsClass="ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all",i.tabClass="ui-state-default ui-corner-top",i.panelClass="ui-tabs-panel ui-widget-content ui-corner-bottom"),i.collapsible&&void 0!==c.defaultTab&&void 0===c.collpasedByDefault&&(i.collapsedByDefault=!1),"string"==typeof i.animationSpeed&&(i.animationSpeed=m[i.animationSpeed]),a("a.anchor").remove().prependTo("body"),k.data("easytabs",{}),j.setTransitions(),j.getTabs(),o(),p(),r(),v(),w(),k.attr("data-easytabs",!0)},j.setTransitions=function(){f=i.animate?{show:i.transitionIn,hide:i.transitionOut,speed:i.animationSpeed,collapse:i.transitionCollapse,uncollapse:i.transitionUncollapse,halfSpeed:i.animationSpeed/2}:{show:"show",hide:"hide",speed:0,collapse:"hide",uncollapse:"show",halfSpeed:0}},j.getTabs=function(){var b;j.tabs=k.find(i.tabs),j.panels=a(),j.tabs.each(function(){var c=a(this),d=c.children("a"),e=c.children("a").data("target");c.data("easytabs",{}),void 0!==e&&null!==e?c.data("easytabs").ajax=d.attr("href"):e=d.attr("href"),e=e.match(/#([^\?]+)/)[1],b=i.panelContext.find("#"+e),b.length?(b.data("easytabs",{position:b.css("position"),visibility:b.css("visibility")}),b.not(i.panelActiveClass).hide(),j.panels=j.panels.add(b),c.data("easytabs").panel=b):(j.tabs=j.tabs.not(c),"console"in window&&console.warn("Warning: tab without matching panel for selector '#"+e+"' removed from set"))})},j.selectTab=function(a,b){var c=window.location,d=(c.hash.match(/^[^\?]*/)[0],a.parent().data("easytabs").panel),e=a.parent().data("easytabs").ajax;i.collapsible&&!h&&(a.hasClass(i.tabActiveClass)||a.hasClass(i.collapsedClass))?j.toggleTabCollapse(a,d,e,b):a.hasClass(i.tabActiveClass)&&d.hasClass(i.panelActiveClass)?i.cache||s(a,d,e,b):s(a,d,e,b)},j.toggleTabCollapse=function(a,b,c,d){j.panels.stop(!0,!0),n(k,"easytabs:before",[a,b,i])&&(j.tabs.filter("."+i.tabActiveClass).removeClass(i.tabActiveClass).children().removeClass(i.tabActiveClass),a.hasClass(i.collapsedClass)?(!c||i.cache&&a.parent().data("easytabs").cached||(k.trigger("easytabs:ajax:beforeSend",[a,b]),b.load(c,function(c,d,e){a.parent().data("easytabs").cached=!0,k.trigger("easytabs:ajax:complete",[a,b,c,d,e])})),a.parent().removeClass(i.collapsedClass).addClass(i.tabActiveClass).children().removeClass(i.collapsedClass).addClass(i.tabActiveClass),b.addClass(i.panelActiveClass)[f.uncollapse](f.speed,i.transitionUncollapseEasing,function(){k.trigger("easytabs:midTransition",[a,b,i]),"function"==typeof d&&d()})):(a.addClass(i.collapsedClass).parent().addClass(i.collapsedClass),b.removeClass(i.panelActiveClass)[f.collapse](f.speed,i.transitionCollapseEasing,function(){k.trigger("easytabs:midTransition",[a,b,i]),"function"==typeof d&&d()})))},j.matchTab=function(a){return j.tabs.find("[href='"+a+"'],[data-target='"+a+"']").first()},j.matchInPanel=function(a){return a&&j.validId(a)?j.panels.filter(":has("+a+")").first():[]},j.validId=function(a){return a.substr(1).match(/^[A-Za-z][A-Za-z0-9\-_:\.]*$/)},j.selectTabFromHashChange=function(){var a,b=window.location.hash.match(/^[^\?]*/)[0],c=j.matchTab(b);i.updateHash&&(c.length?(h=!0,j.selectTab(c)):(a=j.matchInPanel(b),a.length?(b="#"+a.attr("id"),c=j.matchTab(b),h=!0,j.selectTab(c)):d.hasClass(i.tabActiveClass)||i.cycle||(""===b||j.matchTab(g).length||k.closest(b).length)&&(h=!0,j.selectTab(e))))},j.cycleTabs=function(b){i.cycle&&(b%=j.tabs.length,$tab=a(j.tabs[b]).children("a").first(),h=!0,j.selectTab($tab,function(){setTimeout(function(){j.cycleTabs(b+1)},i.cycle)}))},j.publicMethods={select:function(b){var c;0===(c=j.tabs.filter(b)).length?0===(c=j.tabs.find("a[href='"+b+"']")).length&&0===(c=j.tabs.find("a"+b)).length&&0===(c=j.tabs.find("[data-target='"+b+"']")).length&&0===(c=j.tabs.find("a[href$='"+b+"']")).length&&a.error("Tab '"+b+"' does not exist in tab set"):c=c.children("a").first(),j.selectTab(c)}};var n=function(b,c,d){var e=a.Event(c);return b.trigger(e,d),e.result!==!1},o=function(){k.addClass(i.containerClass),j.tabs.parent().addClass(i.tabsClass),j.tabs.addClass(i.tabClass),j.panels.addClass(i.panelClass)},p=function(){var b,c=window.location.hash.match(/^[^\?]*/)[0],f=j.matchTab(c).parent();1===f.length?(d=f,i.cycle=!1):(b=j.matchInPanel(c),b.length?(c="#"+b.attr("id"),d=j.matchTab(c).parent()):(d=j.tabs.parent().find(i.defaultTab),0===d.length&&a.error("The specified default tab ('"+i.defaultTab+"') could not be found in the tab set ('"+i.tabs+"') out of "+j.tabs.length+" tabs."))),e=d.children("a").first(),q(f)},q=function(b){var c,f;i.collapsible&&0===b.length&&i.collapsedByDefault?d.addClass(i.collapsedClass).children().addClass(i.collapsedClass):(c=a(d.data("easytabs").panel),f=d.data("easytabs").ajax,!f||i.cache&&d.data("easytabs").cached||(k.trigger("easytabs:ajax:beforeSend",[e,c]),c.load(f,function(a,b,f){d.data("easytabs").cached=!0,k.trigger("easytabs:ajax:complete",[e,c,a,b,f])})),d.data("easytabs").panel.show().addClass(i.panelActiveClass),d.addClass(i.tabActiveClass).children().addClass(i.tabActiveClass)),k.trigger("easytabs:initialised",[e,c])},r=function(){j.tabs.children("a").bind(i.bind_str,function(b){i.cycle=!1,h=!1,j.selectTab(a(this)),b.preventDefault?b.preventDefault():b.returnValue=!1})},s=function(a,b,c,d){if(j.panels.stop(!0,!0),n(k,"easytabs:before",[a,b,i])){var e,l,m,o,p=j.panels.filter(":visible"),q=b.parent(),r=window.location.hash.match(/^[^\?]*/)[0];i.animate&&(e=t(b),l=p.length?u(p):0,m=e-l),g=r,o=function(){k.trigger("easytabs:midTransition",[a,b,i]),i.animate&&"fadeIn"==i.transitionIn&&0>m&&q.animate({height:q.height()+m},f.halfSpeed).css({"min-height":""}),i.updateHash&&!h?window.history.pushState?window.history.pushState(null,null,"#"+b.attr("id")):window.location.hash="#"+b.attr("id"):h=!1,b[f.show](f.speed,i.transitionInEasing,function(){q.css({height:"","min-height":""}),k.trigger("easytabs:after",[a,b,i]),"function"==typeof d&&d()})},!c||i.cache&&a.parent().data("easytabs").cached||(k.trigger("easytabs:ajax:beforeSend",[a,b]),b.load(c,function(c,d,e){a.parent().data("easytabs").cached=!0,k.trigger("easytabs:ajax:complete",[a,b,c,d,e])})),i.animate&&"fadeOut"==i.transitionOut&&(m>0?q.animate({height:q.height()+m},f.halfSpeed):q.css({"min-height":q.height()})),j.tabs.filter("."+i.tabActiveClass).removeClass(i.tabActiveClass).children().removeClass(i.tabActiveClass),j.tabs.filter("."+i.collapsedClass).removeClass(i.collapsedClass).children().removeClass(i.collapsedClass),a.parent().addClass(i.tabActiveClass).children().addClass(i.tabActiveClass),j.panels.filter("."+i.panelActiveClass).removeClass(i.panelActiveClass),b.addClass(i.panelActiveClass),p.length?p[f.hide](f.speed,i.transitionOutEasing,o):b[f.uncollapse](f.speed,i.transitionUncollapseEasing,o)}},t=function(b){if(b.data("easytabs")&&b.data("easytabs").lastHeight)return b.data("easytabs").lastHeight;var c,d,e=b.css("display");try{c=a("<div></div>",{position:"absolute",visibility:"hidden",overflow:"hidden"})}catch(f){c=a("<div></div>",{visibility:"hidden",overflow:"hidden"})}return d=b.wrap(c).css({position:"relative",visibility:"hidden",display:"block"}).outerHeight(),b.unwrap(),b.css({position:b.data("easytabs").position,visibility:b.data("easytabs").visibility,display:e}),b.data("easytabs").lastHeight=d,d},u=function(a){var b=a.outerHeight();return a.data("easytabs")?a.data("easytabs").lastHeight=b:a.data("easytabs",{lastHeight:b}),b},v=function(){"function"==typeof a(window).hashchange?a(window).hashchange(function(){j.selectTabFromHashChange()}):a.address&&"function"==typeof a.address.change&&a.address.change(function(){j.selectTabFromHashChange()})},w=function(){var a;i.cycle&&(a=j.tabs.index(d),setTimeout(function(){j.cycleTabs(a+1)},i.cycle))};j.init()},a.fn.easytabs=function(b){var c=arguments;return this.each(function(){var d=a(this),e=d.data("easytabs");return void 0===e&&(e=new a.easytabs(this,b),d.data("easytabs",e)),e.publicMethods[b]?e.publicMethods[b](Array.prototype.slice.call(c,1)):void 0})}}(jQuery),function(a){var b=function(){var b='<div class="colpick"><div class="colpick_color"><div class="colpick_color_overlay1"><div class="colpick_color_overlay2"><div class="colpick_selector_outer"><div class="colpick_selector_inner"></div></div></div></div></div><div class="colpick_hue"><div class="colpick_hue_arrs"><div class="colpick_hue_larr"></div><div class="colpick_hue_rarr"></div></div></div><div class="colpick_new_color"></div><div class="colpick_current_color"></div><div class="colpick_hex_field"><div class="colpick_field_letter">#</div><input type="text" maxlength="6" size="6" /></div><div class="colpick_rgb_r colpick_field"><div class="colpick_field_letter">R</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_rgb_g colpick_field"><div class="colpick_field_letter">G</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_rgb_b colpick_field"><div class="colpick_field_letter">B</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_hsb_h colpick_field"><div class="colpick_field_letter">H</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_hsb_s colpick_field"><div class="colpick_field_letter">S</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_hsb_b colpick_field"><div class="colpick_field_letter">B</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_submit"></div></div>',c={showEvent:"click",onShow:function(){},onBeforeShow:function(){},onHide:function(){},onChange:function(){},onSubmit:function(){},colorScheme:"light",color:"3289c7",livePreview:!0,flat:!1,layout:"full",submit:1,submitText:"OK",height:156},g=function(b,c){var d=f(b);a(c).data("colpick").fields.eq(1).val(d.r).end().eq(2).val(d.g).end().eq(3).val(d.b).end()},i=function(b,c){a(c).data("colpick").fields.eq(4).val(Math.round(b.h)).end().eq(5).val(Math.round(b.s)).end().eq(6).val(Math.round(b.b)).end()},j=function(b,c){a(c).data("colpick").fields.eq(0).val(h(b))},k=function(b,c){a(c).data("colpick").selector.css("backgroundColor","#"+h({h:b.h,s:100,b:100})),a(c).data("colpick").selectorIndic.css({left:parseInt(a(c).data("colpick").height*b.s/100,10),top:parseInt(a(c).data("colpick").height*(100-b.b)/100,10)})},l=function(b,c){a(c).data("colpick").hue.css("top",parseInt(a(c).data("colpick").height-a(c).data("colpick").height*b.h/360,10))},m=function(b,c){a(c).data("colpick").currentColor.css("backgroundColor","#"+h(b))},n=function(b,c){a(c).data("colpick").newColor.css("backgroundColor","#"+h(b))},o=function(){var b,c=a(this).parent().parent();this.parentNode.className.indexOf("_hex")>0?(c.data("colpick").color=b=d(G(this.value)),g(b,c.get(0)),i(b,c.get(0))):this.parentNode.className.indexOf("_hsb")>0?(c.data("colpick").color=b=E({h:parseInt(c.data("colpick").fields.eq(4).val(),10),s:parseInt(c.data("colpick").fields.eq(5).val(),10),b:parseInt(c.data("colpick").fields.eq(6).val(),10)}),g(b,c.get(0)),j(b,c.get(0))):(c.data("colpick").color=b=e(F({r:parseInt(c.data("colpick").fields.eq(1).val(),10),g:parseInt(c.data("colpick").fields.eq(2).val(),10),b:parseInt(c.data("colpick").fields.eq(3).val(),10)})),j(b,c.get(0)),i(b,c.get(0))),k(b,c.get(0)),l(b,c.get(0)),n(b,c.get(0)),c.data("colpick").onChange.apply(c.parent(),[b,h(b),f(b),c.data("colpick").el,0])},p=function(){a(this).parent().removeClass("colpick_focus")},q=function(){a(this).parent().parent().data("colpick").fields.parent().removeClass("colpick_focus"),a(this).parent().addClass("colpick_focus")},r=function(b){b.preventDefault?b.preventDefault():b.returnValue=!1;var c=a(this).parent().find("input").focus(),d={el:a(this).parent().addClass("colpick_slider"),max:this.parentNode.className.indexOf("_hsb_h")>0?360:this.parentNode.className.indexOf("_hsb")>0?100:255,y:b.pageY,field:c,val:parseInt(c.val(),10),preview:a(this).parent().parent().data("colpick").livePreview};a(document).mouseup(d,t),a(document).mousemove(d,s)},s=function(a){return a.data.field.val(Math.max(0,Math.min(a.data.max,parseInt(a.data.val-a.pageY+a.data.y,10)))),a.data.preview&&o.apply(a.data.field.get(0),[!0]),!1},t=function(b){return o.apply(b.data.field.get(0),[!0]),b.data.el.removeClass("colpick_slider").find("input").focus(),a(document).off("mouseup",t),a(document).off("mousemove",s),!1},u=function(b){b.preventDefault?b.preventDefault():b.returnValue=!1;var c={cal:a(this).parent(),y:a(this).offset().top};a(document).on("mouseup touchend",c,w),a(document).on("mousemove touchmove",c,v);var d="touchstart"==b.type?b.originalEvent.changedTouches[0].pageY:b.pageY;return o.apply(c.cal.data("colpick").fields.eq(4).val(parseInt(360*(c.cal.data("colpick").height-(d-c.y))/c.cal.data("colpick").height,10)).get(0),[c.cal.data("colpick").livePreview]),!1},v=function(a){var b="touchmove"==a.type?a.originalEvent.changedTouches[0].pageY:a.pageY;return o.apply(a.data.cal.data("colpick").fields.eq(4).val(parseInt(360*(a.data.cal.data("colpick").height-Math.max(0,Math.min(a.data.cal.data("colpick").height,b-a.data.y)))/a.data.cal.data("colpick").height,10)).get(0),[a.data.preview]),!1},w=function(b){return g(b.data.cal.data("colpick").color,b.data.cal.get(0)),j(b.data.cal.data("colpick").color,b.data.cal.get(0)),a(document).off("mouseup touchend",w),a(document).off("mousemove touchmove",v),!1},x=function(b){b.preventDefault?b.preventDefault():b.returnValue=!1;var c={cal:a(this).parent(),pos:a(this).offset()};c.preview=c.cal.data("colpick").livePreview,a(document).on("mouseup touchend",c,z),a(document).on("mousemove touchmove",c,y);var d;return"touchstart"==b.type?(pageX=b.originalEvent.changedTouches[0].pageX,d=b.originalEvent.changedTouches[0].pageY):(pageX=b.pageX,d=b.pageY),o.apply(c.cal.data("colpick").fields.eq(6).val(parseInt(100*(c.cal.data("colpick").height-(d-c.pos.top))/c.cal.data("colpick").height,10)).end().eq(5).val(parseInt(100*(pageX-c.pos.left)/c.cal.data("colpick").height,10)).get(0),[c.preview]),!1},y=function(a){var b;return"touchmove"==a.type?(pageX=a.originalEvent.changedTouches[0].pageX,b=a.originalEvent.changedTouches[0].pageY):(pageX=a.pageX,b=a.pageY),o.apply(a.data.cal.data("colpick").fields.eq(6).val(parseInt(100*(a.data.cal.data("colpick").height-Math.max(0,Math.min(a.data.cal.data("colpick").height,b-a.data.pos.top)))/a.data.cal.data("colpick").height,10)).end().eq(5).val(parseInt(100*Math.max(0,Math.min(a.data.cal.data("colpick").height,pageX-a.data.pos.left))/a.data.cal.data("colpick").height,10)).get(0),[a.data.preview]),!1},z=function(b){return g(b.data.cal.data("colpick").color,b.data.cal.get(0)),j(b.data.cal.data("colpick").color,b.data.cal.get(0)),a(document).off("mouseup touchend",z),a(document).off("mousemove touchmove",y),!1},A=function(){var b=a(this).parent(),c=b.data("colpick").color;b.data("colpick").origColor=c,m(c,b.get(0)),b.data("colpick").onSubmit(c,h(c),f(c),b.data("colpick").el)},B=function(b){b.stopPropagation();var c=a("#"+a(this).data("colpickId"));c.data("colpick").onBeforeShow.apply(this,[c.get(0)]);var d=a(this).offset(),e=d.top+this.offsetHeight,f=d.left,g=D(),h=c.width();f+h>g.l+g.w&&(f-=h),c.css({left:f+"px",top:e+"px"}),0!=c.data("colpick").onShow.apply(this,[c.get(0)])&&c.show(),a("html").mousedown({cal:c},C),c.mousedown(function(a){a.stopPropagation()})},C=function(b){0!=b.data.cal.data("colpick").onHide.apply(this,[b.data.cal.get(0)])&&b.data.cal.hide(),a("html").off("mousedown",C)},D=function(){var a="CSS1Compat"==document.compatMode;return{l:window.pageXOffset||(a?document.documentElement.scrollLeft:document.body.scrollLeft),w:window.innerWidth||(a?document.documentElement.clientWidth:document.body.clientWidth)}},E=function(a){return{h:Math.min(360,Math.max(0,a.h)),s:Math.min(100,Math.max(0,a.s)),b:Math.min(100,Math.max(0,a.b))}},F=function(a){return{r:Math.min(255,Math.max(0,a.r)),g:Math.min(255,Math.max(0,a.g)),b:Math.min(255,Math.max(0,a.b))}},G=function(a){var b=6-a.length;if(b>0){for(var c=[],d=0;b>d;d++)c.push("0");c.push(a),a=c.join("")}return a},H=function(){var b=a(this).parent(),c=b.data("colpick").origColor;b.data("colpick").color=c,g(c,b.get(0)),j(c,b.get(0)),i(c,b.get(0)),k(c,b.get(0)),l(c,b.get(0)),n(c,b.get(0))};return{init:function(f){if(f=a.extend({},c,f||{}),"string"==typeof f.color)f.color=d(f.color);else if(void 0!=f.color.r&&void 0!=f.color.g&&void 0!=f.color.b)f.color=e(f.color);else{if(void 0==f.color.h||void 0==f.color.s||void 0==f.color.b)return this;f.color=E(f.color)}return this.each(function(){if(!a(this).data("colpickId")){var c=a.extend({},f);c.origColor=f.color;var d="collorpicker_"+parseInt(1e3*Math.random());a(this).data("colpickId",d);var e=a(b).attr("id",d);e.addClass("colpick_"+c.layout+(c.submit?"":" colpick_"+c.layout+"_ns")),"light"!=c.colorScheme&&e.addClass("colpick_"+c.colorScheme),e.find("div.colpick_submit").html(c.submitText).click(A),c.fields=e.find("input").change(o).blur(p).focus(q),e.find("div.colpick_field_arrs").mousedown(r).end().find("div.colpick_current_color").click(H),c.selector=e.find("div.colpick_color").on("mousedown touchstart",x),c.selectorIndic=c.selector.find("div.colpick_selector_outer"),c.el=this,c.hue=e.find("div.colpick_hue_arrs"),huebar=c.hue.parent();var h=navigator.userAgent.toLowerCase(),s="Microsoft Internet Explorer"===navigator.appName,t=s?parseFloat(h.match(/msie ([0-9]{1,}[\.0-9]{0,})/)[1]):0,v=s&&10>t,w=["#ff0000","#ff0080","#ff00ff","#8000ff","#0000ff","#0080ff","#00ffff","#00ff80","#00ff00","#80ff00","#ffff00","#ff8000","#ff0000"];if(v){var y,z;for(y=0;11>=y;y++)z=a("<div></div>").attr("style","height:8.333333%; filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr="+w[y]+", endColorstr="+w[y+1]+'); -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='+w[y]+", endColorstr="+w[y+1]+')";'),huebar.append(z)}else stopList=w.join(","),huebar.attr("style","background:-webkit-linear-gradient(top,"+stopList+"); background: -o-linear-gradient(top,"+stopList+"); background: -ms-linear-gradient(top,"+stopList+"); background:-moz-linear-gradient(top,"+stopList+"); -webkit-linear-gradient(top,"+stopList+"); background:linear-gradient(to bottom,"+stopList+"); ");e.find("div.colpick_hue").on("mousedown touchstart",u),c.newColor=e.find("div.colpick_new_color"),c.currentColor=e.find("div.colpick_current_color"),e.data("colpick",c),g(c.color,e.get(0)),i(c.color,e.get(0)),j(c.color,e.get(0)),l(c.color,e.get(0)),k(c.color,e.get(0)),m(c.color,e.get(0)),n(c.color,e.get(0)),c.flat?(e.appendTo(this).show(),e.css({position:"relative",display:"block"})):(e.appendTo(document.body),a(this).on(c.showEvent,B),e.css({position:"absolute"}))}})},showPicker:function(){return this.each(function(){a(this).data("colpickId")&&B.apply(this)})},hidePicker:function(){return this.each(function(){a(this).data("colpickId")&&a("#"+a(this).data("colpickId")).hide()})},setColor:function(b,c){if(c="undefined"==typeof c?1:c,"string"==typeof b)b=d(b);else if(void 0!=b.r&&void 0!=b.g&&void 0!=b.b)b=e(b);else{if(void 0==b.h||void 0==b.s||void 0==b.b)return this;b=E(b)}return this.each(function(){if(a(this).data("colpickId")){var d=a("#"+a(this).data("colpickId"));d.data("colpick").color=b,d.data("colpick").origColor=b,g(b,d.get(0)),i(b,d.get(0)),j(b,d.get(0)),l(b,d.get(0)),k(b,d.get(0)),n(b,d.get(0)),d.data("colpick").onChange.apply(d.parent(),[b,h(b),f(b),d.data("colpick").el,1]),c&&m(b,d.get(0))}})}}}(),c=function(a){var a=parseInt(a.indexOf("#")>-1?a.substring(1):a,16);return{r:a>>16,g:(65280&a)>>8,b:255&a}},d=function(a){return e(c(a))},e=function(a){var b={h:0,s:0,b:0},c=Math.min(a.r,a.g,a.b),d=Math.max(a.r,a.g,a.b),e=d-c;return b.b=d,b.s=0!=d?255*e/d:0,b.h=0!=b.s?a.r==d?(a.g-a.b)/e:a.g==d?2+(a.b-a.r)/e:4+(a.r-a.g)/e:-1,b.h*=60,b.h<0&&(b.h+=360),b.s*=100/255,b.b*=100/255,b},f=function(a){var b={},c=a.h,d=255*a.s/100,e=255*a.b/100;if(0==d)b.r=b.g=b.b=e;else{var f=e,g=(255-d)*e/255,h=(f-g)*(c%60)/60;360==c&&(c=0),60>c?(b.r=f,b.b=g,b.g=g+h):120>c?(b.g=f,b.b=g,b.r=f-h):180>c?(b.g=f,b.r=g,b.b=g+h):240>c?(b.b=f,b.r=g,b.g=f-h):300>c?(b.b=f,b.g=g,b.r=g+h):360>c?(b.r=f,b.g=g,b.b=f-h):(b.r=0,b.g=0,b.b=0)}return{r:Math.round(b.r),g:Math.round(b.g),b:Math.round(b.b)}},g=function(b){var c=[b.r.toString(16),b.g.toString(16),b.b.toString(16)];return a.each(c,function(a,b){1==b.length&&(c[a]="0"+b)}),c.join("")},h=function(a){return g(f(a))};a.fn.extend({colpick:b.init,colpickHide:b.hidePicker,colpickShow:b.showPicker,colpickSetColor:b.setColor}),a.extend({colpick:{rgbToHex:g,rgbToHsb:e,hsbToHex:h,hsbToRgb:f,hexToHsb:d,hexToRgb:c}})}(jQuery),window.twttr=function(a,b,c){var d,e=a.getElementsByTagName(b)[0],f=window.twttr||{};return a.getElementById(c)?f:(d=a.createElement(b),d.id=c,d.src="https://platform.twitter.com/widgets.js",e.parentNode.insertBefore(d,e),f._e=[],f.ready=function(a){f._e.push(a)},f)}(document,"script","twitter-wjs");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function ($) {
|
2 |
+
|
3 |
+
$('.mashsb-color-box').each(function () {
|
4 |
+
// Start colorpicker
|
5 |
+
$(this).colpick({
|
6 |
+
layout: 'hex',
|
7 |
+
submit: 0,
|
8 |
+
colorScheme: 'light',
|
9 |
+
onChange: function (hsb, hex, rgb, el, bySetColor) {
|
10 |
+
$(el).css('border-color', '#' + hex);
|
11 |
+
// Fill the text box just if the color was set using the picker, and not the colpickSetColor function.
|
12 |
+
if (!bySetColor)
|
13 |
+
$(el).val(hex);
|
14 |
+
}
|
15 |
+
}).keyup(function () {
|
16 |
+
$(this).colpickSetColor(this.value);
|
17 |
+
});
|
18 |
+
$(this).colpick({
|
19 |
+
layout: 'hex',
|
20 |
+
submit: 0,
|
21 |
+
colorScheme: 'light',
|
22 |
+
onChange: function (hsb, hex, rgb, el, bySetColor) {
|
23 |
+
$(el).css('border-color', '#' + hex);
|
24 |
+
// Fill the text box just if the color was set using the picker, and not the colpickSetColor function.
|
25 |
+
if (!bySetColor)
|
26 |
+
$(el).val(hex);
|
27 |
+
}
|
28 |
+
}).keyup(function () {
|
29 |
+
$(this).colpickSetColor(this.value);
|
30 |
+
});
|
31 |
+
|
32 |
+
});
|
33 |
+
|
34 |
+
|
35 |
+
// $('#mashsb_settings\\[fb_access_token\\]').on("change paste keyup",function(){
|
36 |
+
//
|
37 |
+
// var two_month = 60 * 60 * 24 * 60 * 1000; // timestamp in miliseconds
|
38 |
+
// var expiration_timestamp = (new Date().getTime()) + two_month; // time in miliseconds
|
39 |
+
//
|
40 |
+
// var unixtimestamp = (new Date().getTime() + (60 * 60 * 24 * 60 * 1000)) / 1000; // timestamp in seconds
|
41 |
+
//
|
42 |
+
// var human_date = new Date(expiration_timestamp);
|
43 |
+
//
|
44 |
+
// if ($('#mashsb_settings\\[fb_access_token\\]').val()){
|
45 |
+
// check_access_token();
|
46 |
+
// document.getElementById('mashsb_expire_token_status').innerHTML = 'Token needs renewal on ' + human_date + '<br>MashShare will notify you shortly before the access token expires.';
|
47 |
+
// }else {
|
48 |
+
// document.getElementById('mashsb_expire_token_status').innerHTML = '';
|
49 |
+
// }
|
50 |
+
// });
|
51 |
+
|
52 |
+
|
53 |
+
// function check_access_token()
|
54 |
+
// {
|
55 |
+
// $.ajax("https://graph.facebook.com/v2.7/?id=http://www.google.de&access_token=" + $('#mashsb_settings\\[fb_access_token\\]').val())
|
56 |
+
// .done(function (e) {
|
57 |
+
// $('#mashsb_token_notice').html('');
|
58 |
+
// console.log(e);
|
59 |
+
// })
|
60 |
+
// .fail(function (e) {
|
61 |
+
// $('#mashsb_token_notice').html('<span style="color:red;"> <strong>Error:</strong> Access Token Invalid!</span>');
|
62 |
+
// console.log(e);
|
63 |
+
// })
|
64 |
+
// }
|
65 |
+
|
66 |
+
// $('#mashsb_fb_auth').click(function (e) {
|
67 |
+
// e.preventDefault();
|
68 |
+
// winWidth = 520;
|
69 |
+
// winHeight = 350;
|
70 |
+
// var winTop = (screen.height / 2) - (winHeight / 2);
|
71 |
+
// var winLeft = (screen.width / 2) - (winWidth / 2);
|
72 |
+
// var url = $(this).attr('href');
|
73 |
+
// mashsb_fb_auth = window.open(url, 'mashsb_fb_auth', 'top=' + winTop + ',left=' + winLeft + ',toolbar=0,status=0,width=' + winWidth + ',height=' + winHeight + ',resizable=yes');
|
74 |
+
// });
|
75 |
+
|
76 |
+
// // Share Color Picker
|
77 |
+
// $('.share_color').colpick({
|
78 |
+
// layout: 'hex',
|
79 |
+
// submit: 0,
|
80 |
+
// colorScheme: 'light',
|
81 |
+
// onChange: function (hsb, hex, rgb, el, bySetColor) {
|
82 |
+
// $(el).css('border-color', '#' + hex);
|
83 |
+
// // Fill the text box just if the color was set using the picker, and not the colpickSetColor function.
|
84 |
+
// if (!bySetColor)
|
85 |
+
// $(el).val(hex);
|
86 |
+
// }
|
87 |
+
// }).mouseup(function () {
|
88 |
+
// $(this).colpickSetColor(this.value);
|
89 |
+
// });
|
90 |
+
|
91 |
+
|
92 |
+
// Toggle Admin Settings Dynamic Button Resize + Button Width
|
93 |
+
if ($("#mashsb_settings\\[responsive_buttons\\]").attr('checked')) {
|
94 |
+
$("#mashsb_settings\\[button_width\\]").closest('.row').css("display", "none");
|
95 |
+
} else {
|
96 |
+
$("#mashsb_settings\\[button_width\\]").closest('.row').fadeIn(300).css("display", "table-row");
|
97 |
+
}
|
98 |
+
$("#mashsb_settings\\[responsive_buttons\\]").click(function () {
|
99 |
+
if ($(this).attr('checked')) {
|
100 |
+
$("#mashsb_settings\\[button_width\\]").closest('.row').css("display", "none");
|
101 |
+
} else {
|
102 |
+
$("#mashsb_settings\\[button_width\\]").closest('.row').fadeIn(300).css("display", "table-row");
|
103 |
+
}
|
104 |
+
})
|
105 |
+
|
106 |
+
|
107 |
+
|
108 |
+
// Activate chosen select boxes
|
109 |
+
$(".mashsb-chosen-select").chosen({width: "400px"});
|
110 |
+
|
111 |
+
function mashsb_setCookie(name, value, days) {
|
112 |
+
if (days) {
|
113 |
+
var date = new Date();
|
114 |
+
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
|
115 |
+
var expires = "; expires=" + date.toGMTString();
|
116 |
+
}
|
117 |
+
else
|
118 |
+
var expires = "";
|
119 |
+
document.cookie = name + "=" + value + expires + "; path=/";
|
120 |
+
}
|
121 |
+
|
122 |
+
function mashsb_getCookie(name) {
|
123 |
+
var nameEQ = name + "=";
|
124 |
+
|
125 |
+
var ca = document.cookie.split(";");
|
126 |
+
for (var i = 0; i < ca.length; i++) {
|
127 |
+
var c = ca[i];
|
128 |
+
while (c.charAt(0) == ' ')
|
129 |
+
c = c.substring(1, c.length);
|
130 |
+
if (c.indexOf(nameEQ) == 0)
|
131 |
+
return c.substring(nameEQ.length, c.length);
|
132 |
+
}
|
133 |
+
return null;
|
134 |
+
}
|
135 |
+
|
136 |
+
function mashsb_eraseCookie(name) {
|
137 |
+
setCookie(name, "", -1);
|
138 |
+
}
|
139 |
+
|
140 |
+
|
141 |
+
/* Fade in Caching method settings if needed */
|
142 |
+
$('#mashsb_settings\\[caching_method\\]').change(function () {
|
143 |
+
if ($('#mashsb_settings\\[caching_method\\]').val() === "refresh_loading")
|
144 |
+
{
|
145 |
+
$('#mashsb_settings\\[mashsharer_cache\\]').closest('.row').fadeIn(300).css("display", "table-row");
|
146 |
+
}
|
147 |
+
else
|
148 |
+
{
|
149 |
+
$('#mashsb_settings\\[mashsharer_cache\\]').closest('.row').css("display", "none");
|
150 |
+
}
|
151 |
+
});
|
152 |
+
|
153 |
+
|
154 |
+
/*make visible when setting "Refresh on Loading" is used*/
|
155 |
+
if ($('#mashsb_settings\\[caching_method\\]').val() === "refresh_loading")
|
156 |
+
{
|
157 |
+
$('#mashsb_settings\\[mashsharer_cache\\]').closest('.row').fadeIn(300).css("display", "table-row");
|
158 |
+
}
|
159 |
+
else
|
160 |
+
{
|
161 |
+
$('#mashsb_settings\\[mashsharer_cache\\]').closest('.row').css("display", "none");
|
162 |
+
}
|
163 |
+
|
164 |
+
// Find active tab and set cookie with #ID
|
165 |
+
function find_active_tab() {
|
166 |
+
var tab = jQuery('.mashsb-tabs.active').find("a").attr("href");
|
167 |
+
mashsb_setCookie("mashsb_active_tab", tab);
|
168 |
+
}
|
169 |
+
|
170 |
+
// Get last active tab from cookie or return default value
|
171 |
+
function mashsb_get_tab_from_cookie() {
|
172 |
+
var tab = mashsb_getCookie('mashsb_active_tab');
|
173 |
+
if (tab == null) {
|
174 |
+
tab = '#mashsb_settingsgeneral_header';
|
175 |
+
}
|
176 |
+
return tab;
|
177 |
+
}
|
178 |
+
|
179 |
+
|
180 |
+
function mashsb_get_default_array() {
|
181 |
+
var tab_addons, tab_licenses;
|
182 |
+
var active_sub_tab;
|
183 |
+
|
184 |
+
// If active tab is Add-On Settings return empty defaultTab value
|
185 |
+
tab_addons = jQuery('.mashsb.nav-tab-wrapper a.nav-tab-active:nth-child(2)');
|
186 |
+
tab_licenses = jQuery('.mashsb.nav-tab-wrapper a.nav-tab-active:nth-child(3)');
|
187 |
+
|
188 |
+
if (tab_addons.length > 0 || tab_licenses.length > 0) {
|
189 |
+
return;
|
190 |
+
}
|
191 |
+
// Return active tab from cookie
|
192 |
+
return mashsb_get_tab_from_cookie() + '-nav';
|
193 |
+
}
|
194 |
+
|
195 |
+
// Start easytabs()
|
196 |
+
if ($(".mashsb-tabs").length) {
|
197 |
+
$('#mashsb_container').easytabs({
|
198 |
+
animate: true,
|
199 |
+
updateHash: true,
|
200 |
+
defaultTab: mashsb_get_default_array()
|
201 |
+
});
|
202 |
+
}
|
203 |
+
|
204 |
+
// Get active tab (Not for Add-On Settings)
|
205 |
+
$('#mashsb_container').bind('easytabs:after', function () {
|
206 |
+
if (jQuery('.mashsb.nav-tab-wrapper a.nav-tab-active:nth-child(2)').length == 0) {
|
207 |
+
find_active_tab();
|
208 |
+
}
|
209 |
+
});
|
210 |
+
|
211 |
+
if ($(".mashtab").length) {
|
212 |
+
$('.tabcontent_container').easytabs({
|
213 |
+
animate: true,
|
214 |
+
});
|
215 |
+
}
|
216 |
+
|
217 |
+
// Drag n drop social networks
|
218 |
+
$('#mashsb_network_list').sortable({
|
219 |
+
items: '.mashsb_list_item',
|
220 |
+
opacity: 0.6,
|
221 |
+
cursor: 'move',
|
222 |
+
axis: 'y',
|
223 |
+
update: function () {
|
224 |
+
var order = $(this).sortable('serialize') + '&action=mashsb_update_order';
|
225 |
+
$.post(ajaxurl, order, function (response) {
|
226 |
+
//alert(response);
|
227 |
+
|
228 |
+
});
|
229 |
+
}
|
230 |
+
});
|
231 |
+
|
232 |
+
|
233 |
+
// show / hide helper description
|
234 |
+
$('.mashsb-helper').click(function (e) {
|
235 |
+
e.preventDefault();
|
236 |
+
var icon = $(this),
|
237 |
+
bubble = $(this).next();
|
238 |
+
|
239 |
+
// Close any that are already open
|
240 |
+
$('.mashsb-message').not(bubble).hide();
|
241 |
+
|
242 |
+
var position = icon.position();
|
243 |
+
if (bubble.hasClass('bottom')) {
|
244 |
+
bubble.css({
|
245 |
+
'left': (position.left - bubble.width() / 2) + 'px',
|
246 |
+
'top': (position.top + icon.height() + 9) + 'px'
|
247 |
+
});
|
248 |
+
} else {
|
249 |
+
bubble.css({
|
250 |
+
'left': (position.left + icon.width() + 9) + 'px',
|
251 |
+
'top': (position.top + icon.height() / 2 - 18) + 'px'
|
252 |
+
});
|
253 |
+
}
|
254 |
+
|
255 |
+
bubble.toggle();
|
256 |
+
e.stopPropagation();
|
257 |
+
});
|
258 |
+
|
259 |
+
$('body').click(function () {
|
260 |
+
$('.mashsb-message').hide();
|
261 |
+
});
|
262 |
+
|
263 |
+
$('.mashsb-message').click(function (e) {
|
264 |
+
e.stopPropagation();
|
265 |
+
});
|
266 |
+
|
267 |
+
});
|
268 |
+
|
269 |
+
/*
|
270 |
+
* jQuery hashchange event - v1.3 - 7/21/2010
|
271 |
+
* http://benalman.com/projects/jquery-hashchange-plugin/
|
272 |
+
*
|
273 |
+
* Copyright (c) 2010 "Cowboy" Ben Alman
|
274 |
+
* Dual licensed under the MIT and GPL licenses.
|
275 |
+
* http://benalman.com/about/license/
|
276 |
+
*/
|
277 |
+
(function ($, e, b) {
|
278 |
+
var c = "hashchange", h = document, f, g = $.event.special, i = h.documentMode, d = "on" + c in e && (i === b || i > 7);
|
279 |
+
function a(j) {
|
280 |
+
j = j || location.href;
|
281 |
+
return"#" + j.replace(/^[^#]*#?(.*)$/, "$1")
|
282 |
+
}
|
283 |
+
$.fn[c] = function (j) {
|
284 |
+
return j ? this.bind(c, j) : this.trigger(c)
|
285 |
+
};
|
286 |
+
$.fn[c].delay = 50;
|
287 |
+
g[c] = $.extend(g[c], {setup: function () {
|
288 |
+
if (d) {
|
289 |
+
return false
|
290 |
+
}
|
291 |
+
$(f.start)
|
292 |
+
}, teardown: function () {
|
293 |
+
if (d) {
|
294 |
+
return false
|
295 |
+
}
|
296 |
+
$(f.stop)
|
297 |
+
}});
|
298 |
+
f = (function () {
|
299 |
+
var j = {}, p, m = a(), k = function (q) {
|
300 |
+
return q
|
301 |
+
}, l = k, o = k;
|
302 |
+
j.start = function () {
|
303 |
+
p || n()
|
304 |
+
};
|
305 |
+
j.stop = function () {
|
306 |
+
p && clearTimeout(p);
|
307 |
+
p = b
|
308 |
+
};
|
309 |
+
function n() {
|
310 |
+
var r = a(), q = o(m);
|
311 |
+
if (r !== m) {
|
312 |
+
l(m = r, q);
|
313 |
+
$(e).trigger(c)
|
314 |
+
} else {
|
315 |
+
if (q !== m) {
|
316 |
+
location.href = location.href.replace(/#.*/, "") + q
|
317 |
+
}
|
318 |
+
}
|
319 |
+
p = setTimeout(n, $.fn[c].delay)
|
320 |
+
}
|
321 |
+
$.browser.msie && !d && (function () {
|
322 |
+
var q, r;
|
323 |
+
j.start = function () {
|
324 |
+
if (!q) {
|
325 |
+
r = $.fn[c].src;
|
326 |
+
r = r && r + a();
|
327 |
+
q = $('<iframe tabindex="-1" title="empty"/>').hide().one("load", function () {
|
328 |
+
r || l(a());
|
329 |
+
n()
|
330 |
+
}).attr("src", r || "javascript:0").insertAfter("body")[0].contentWindow;
|
331 |
+
h.onpropertychange = function () {
|
332 |
+
try {
|
333 |
+
if (event.propertyName === "title") {
|
334 |
+
q.document.title = h.title
|
335 |
+
}
|
336 |
+
} catch (s) {
|
337 |
+
}
|
338 |
+
}
|
339 |
+
}
|
340 |
+
};
|
341 |
+
j.stop = k;
|
342 |
+
o = function () {
|
343 |
+
return a(q.location.href)
|
344 |
+
};
|
345 |
+
l = function (v, s) {
|
346 |
+
var u = q.document, t = $.fn[c].domain;
|
347 |
+
if (v !== s) {
|
348 |
+
u.title = h.title;
|
349 |
+
u.open();
|
350 |
+
t && u.write('<script>document.domain="' + t + '"<\/script>');
|
351 |
+
u.close();
|
352 |
+
q.location.hash = v
|
353 |
+
}
|
354 |
+
}
|
355 |
+
})();
|
356 |
+
return j
|
357 |
+
})()
|
358 |
+
})(jQuery, this);
|
359 |
+
|
360 |
+
/*
|
361 |
+
* jQuery EasyTabs plugin 3.2.0
|
362 |
+
*
|
363 |
+
* Copyright (c) 2010-2011 Steve Schwartz (JangoSteve)
|
364 |
+
*
|
365 |
+
* Dual licensed under the MIT and GPL licenses:
|
366 |
+
* http://www.opensource.org/licenses/mit-license.php
|
367 |
+
* http://www.gnu.org/licenses/gpl.html
|
368 |
+
*
|
369 |
+
* Date: Thu May 09 17:30:00 2013 -0500
|
370 |
+
*/
|
371 |
+
(function ($) {
|
372 |
+
|
373 |
+
$.easytabs = function (container, options) {
|
374 |
+
|
375 |
+
// Attach to plugin anything that should be available via
|
376 |
+
// the $container.data('easytabs') object
|
377 |
+
var plugin = this,
|
378 |
+
$container = $(container),
|
379 |
+
defaults = {
|
380 |
+
animate: true,
|
381 |
+
panelActiveClass: "active",
|
382 |
+
tabActiveClass: "active",
|
383 |
+
defaultTab: "li:first-child",
|
384 |
+
animationSpeed: "normal",
|
385 |
+
tabs: "> ul > li",
|
386 |
+
updateHash: true,
|
387 |
+
cycle: false,
|
388 |
+
collapsible: false,
|
389 |
+
collapsedClass: "collapsed",
|
390 |
+
collapsedByDefault: true,
|
391 |
+
uiTabs: false,
|
392 |
+
transitionIn: 'fadeIn',
|
393 |
+
transitionOut: 'fadeOut',
|
394 |
+
transitionInEasing: 'swing',
|
395 |
+
transitionOutEasing: 'swing',
|
396 |
+
transitionCollapse: 'slideUp',
|
397 |
+
transitionUncollapse: 'slideDown',
|
398 |
+
transitionCollapseEasing: 'swing',
|
399 |
+
transitionUncollapseEasing: 'swing',
|
400 |
+
containerClass: "",
|
401 |
+
tabsClass: "",
|
402 |
+
tabClass: "",
|
403 |
+
panelClass: "",
|
404 |
+
cache: true,
|
405 |
+
event: 'click',
|
406 |
+
panelContext: $container
|
407 |
+
},
|
408 |
+
// Internal instance variables
|
409 |
+
// (not available via easytabs object)
|
410 |
+
$defaultTab,
|
411 |
+
$defaultTabLink,
|
412 |
+
transitions,
|
413 |
+
lastHash,
|
414 |
+
skipUpdateToHash,
|
415 |
+
animationSpeeds = {
|
416 |
+
fast: 200,
|
417 |
+
normal: 400,
|
418 |
+
slow: 600
|
419 |
+
},
|
420 |
+
// Shorthand variable so that we don't need to call
|
421 |
+
// plugin.settings throughout the plugin code
|
422 |
+
settings;
|
423 |
+
|
424 |
+
// =============================================================
|
425 |
+
// Functions available via easytabs object
|
426 |
+
// =============================================================
|
427 |
+
|
428 |
+
plugin.init = function () {
|
429 |
+
|
430 |
+
plugin.settings = settings = $.extend({}, defaults, options);
|
431 |
+
settings.bind_str = settings.event + ".easytabs";
|
432 |
+
|
433 |
+
// Add jQuery UI's crazy class names to markup,
|
434 |
+
// so that markup will match theme CSS
|
435 |
+
if (settings.uiTabs) {
|
436 |
+
settings.tabActiveClass = 'ui-tabs-selected';
|
437 |
+
settings.containerClass = 'ui-tabs ui-widget ui-widget-content ui-corner-all';
|
438 |
+
settings.tabsClass = 'ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all';
|
439 |
+
settings.tabClass = 'ui-state-default ui-corner-top';
|
440 |
+
settings.panelClass = 'ui-tabs-panel ui-widget-content ui-corner-bottom';
|
441 |
+
}
|
442 |
+
|
443 |
+
// If collapsible is true and defaultTab specified, assume user wants defaultTab showing (not collapsed)
|
444 |
+
if (settings.collapsible && options.defaultTab !== undefined && options.collpasedByDefault === undefined) {
|
445 |
+
settings.collapsedByDefault = false;
|
446 |
+
}
|
447 |
+
|
448 |
+
// Convert 'normal', 'fast', and 'slow' animation speed settings to their respective speed in milliseconds
|
449 |
+
if (typeof (settings.animationSpeed) === 'string') {
|
450 |
+
settings.animationSpeed = animationSpeeds[settings.animationSpeed];
|
451 |
+
}
|
452 |
+
|
453 |
+
$('a.anchor').remove().prependTo('body');
|
454 |
+
|
455 |
+
// Store easytabs object on container so we can easily set
|
456 |
+
// properties throughout
|
457 |
+
$container.data('easytabs', {});
|
458 |
+
|
459 |
+
plugin.setTransitions();
|
460 |
+
|
461 |
+
plugin.getTabs();
|
462 |
+
|
463 |
+
addClasses();
|
464 |
+
|
465 |
+
setDefaultTab();
|
466 |
+
|
467 |
+
bindToTabClicks();
|
468 |
+
|
469 |
+
initHashChange();
|
470 |
+
|
471 |
+
initCycle();
|
472 |
+
|
473 |
+
// Append data-easytabs HTML attribute to make easy to query for
|
474 |
+
// easytabs instances via CSS pseudo-selector
|
475 |
+
$container.attr('data-easytabs', true);
|
476 |
+
};
|
477 |
+
|
478 |
+
// Set transitions for switching between tabs based on options.
|
479 |
+
// Could be used to update transitions if settings are changes.
|
480 |
+
plugin.setTransitions = function () {
|
481 |
+
transitions = (settings.animate) ? {
|
482 |
+
show: settings.transitionIn,
|
483 |
+
hide: settings.transitionOut,
|
484 |
+
speed: settings.animationSpeed,
|
485 |
+
collapse: settings.transitionCollapse,
|
486 |
+
uncollapse: settings.transitionUncollapse,
|
487 |
+
halfSpeed: settings.animationSpeed / 2
|
488 |
+
} :
|
489 |
+
{
|
490 |
+
show: "show",
|
491 |
+
hide: "hide",
|
492 |
+
speed: 0,
|
493 |
+
collapse: "hide",
|
494 |
+
uncollapse: "show",
|
495 |
+
halfSpeed: 0
|
496 |
+
};
|
497 |
+
};
|
498 |
+
|
499 |
+
// Find and instantiate tabs and panels.
|
500 |
+
// Could be used to reset tab and panel collection if markup is
|
501 |
+
// modified.
|
502 |
+
plugin.getTabs = function () {
|
503 |
+
var $matchingPanel;
|
504 |
+
|
505 |
+
// Find the initial set of elements matching the setting.tabs
|
506 |
+
// CSS selector within the container
|
507 |
+
plugin.tabs = $container.find(settings.tabs),
|
508 |
+
// Instantiate panels as empty jquery object
|
509 |
+
plugin.panels = $(),
|
510 |
+
plugin.tabs.each(function () {
|
511 |
+
var $tab = $(this),
|
512 |
+
$a = $tab.children('a'),
|
513 |
+
// targetId is the ID of the panel, which is either the
|
514 |
+
// `href` attribute for non-ajax tabs, or in the
|
515 |
+
// `data-target` attribute for ajax tabs since the `href` is
|
516 |
+
// the ajax URL
|
517 |
+
targetId = $tab.children('a').data('target');
|
518 |
+
|
519 |
+
$tab.data('easytabs', {});
|
520 |
+
|
521 |
+
// If the tab has a `data-target` attribute, and is thus an ajax tab
|
522 |
+
if (targetId !== undefined && targetId !== null) {
|
523 |
+
$tab.data('easytabs').ajax = $a.attr('href');
|
524 |
+
} else {
|
525 |
+
targetId = $a.attr('href');
|
526 |
+
}
|
527 |
+
targetId = targetId.match(/#([^\?]+)/)[1];
|
528 |
+
|
529 |
+
$matchingPanel = settings.panelContext.find("#" + targetId);
|
530 |
+
|
531 |
+
// If tab has a matching panel, add it to panels
|
532 |
+
if ($matchingPanel.length) {
|
533 |
+
|
534 |
+
// Store panel height before hiding
|
535 |
+
$matchingPanel.data('easytabs', {
|
536 |
+
position: $matchingPanel.css('position'),
|
537 |
+
visibility: $matchingPanel.css('visibility')
|
538 |
+
});
|
539 |
+
|
540 |
+
// Don't hide panel if it's active (allows `getTabs` to be called manually to re-instantiate tab collection)
|
541 |
+
$matchingPanel.not(settings.panelActiveClass).hide();
|
542 |
+
|
543 |
+
plugin.panels = plugin.panels.add($matchingPanel);
|
544 |
+
|
545 |
+
$tab.data('easytabs').panel = $matchingPanel;
|
546 |
+
|
547 |
+
// Otherwise, remove tab from tabs collection
|
548 |
+
} else {
|
549 |
+
plugin.tabs = plugin.tabs.not($tab);
|
550 |
+
if ('console' in window) {
|
551 |
+
console.warn('Warning: tab without matching panel for selector \'#' + targetId + '\' removed from set');
|
552 |
+
}
|
553 |
+
}
|
554 |
+
});
|
555 |
+
};
|
556 |
+
|
557 |
+
// Select tab and fire callback
|
558 |
+
plugin.selectTab = function ($clicked, callback) {
|
559 |
+
var url = window.location,
|
560 |
+
hash = url.hash.match(/^[^\?]*/)[0],
|
561 |
+
$targetPanel = $clicked.parent().data('easytabs').panel,
|
562 |
+
ajaxUrl = $clicked.parent().data('easytabs').ajax;
|
563 |
+
|
564 |
+
// Tab is collapsible and active => toggle collapsed state
|
565 |
+
if (settings.collapsible && !skipUpdateToHash && ($clicked.hasClass(settings.tabActiveClass) || $clicked.hasClass(settings.collapsedClass))) {
|
566 |
+
plugin.toggleTabCollapse($clicked, $targetPanel, ajaxUrl, callback);
|
567 |
+
|
568 |
+
// Tab is not active and panel is not active => select tab
|
569 |
+
} else if (!$clicked.hasClass(settings.tabActiveClass) || !$targetPanel.hasClass(settings.panelActiveClass)) {
|
570 |
+
activateTab($clicked, $targetPanel, ajaxUrl, callback);
|
571 |
+
|
572 |
+
// Cache is disabled => reload (e.g reload an ajax tab).
|
573 |
+
} else if (!settings.cache) {
|
574 |
+
activateTab($clicked, $targetPanel, ajaxUrl, callback);
|
575 |
+
}
|
576 |
+
|
577 |
+
};
|
578 |
+
|
579 |
+
// Toggle tab collapsed state and fire callback
|
580 |
+
plugin.toggleTabCollapse = function ($clicked, $targetPanel, ajaxUrl, callback) {
|
581 |
+
plugin.panels.stop(true, true);
|
582 |
+
|
583 |
+
if (fire($container, "easytabs:before", [$clicked, $targetPanel, settings])) {
|
584 |
+
plugin.tabs.filter("." + settings.tabActiveClass).removeClass(settings.tabActiveClass).children().removeClass(settings.tabActiveClass);
|
585 |
+
|
586 |
+
// If panel is collapsed, uncollapse it
|
587 |
+
if ($clicked.hasClass(settings.collapsedClass)) {
|
588 |
+
|
589 |
+
// If ajax panel and not already cached
|
590 |
+
if (ajaxUrl && (!settings.cache || !$clicked.parent().data('easytabs').cached)) {
|
591 |
+
$container.trigger('easytabs:ajax:beforeSend', [$clicked, $targetPanel]);
|
592 |
+
|
593 |
+
$targetPanel.load(ajaxUrl, function (response, status, xhr) {
|
594 |
+
$clicked.parent().data('easytabs').cached = true;
|
595 |
+
$container.trigger('easytabs:ajax:complete', [$clicked, $targetPanel, response, status, xhr]);
|
596 |
+
});
|
597 |
+
}
|
598 |
+
|
599 |
+
// Update CSS classes of tab and panel
|
600 |
+
$clicked.parent()
|
601 |
+
.removeClass(settings.collapsedClass)
|
602 |
+
.addClass(settings.tabActiveClass)
|
603 |
+
.children()
|
604 |
+
.removeClass(settings.collapsedClass)
|
605 |
+
.addClass(settings.tabActiveClass);
|
606 |
+
|
607 |
+
$targetPanel
|
608 |
+
.addClass(settings.panelActiveClass)
|
609 |
+
[transitions.uncollapse](transitions.speed, settings.transitionUncollapseEasing, function () {
|
610 |
+
$container.trigger('easytabs:midTransition', [$clicked, $targetPanel, settings]);
|
611 |
+
if (typeof callback == 'function')
|
612 |
+
callback();
|
613 |
+
});
|
614 |
+
|
615 |
+
// Otherwise, collapse it
|
616 |
+
} else {
|
617 |
+
|
618 |
+
// Update CSS classes of tab and panel
|
619 |
+
$clicked.addClass(settings.collapsedClass)
|
620 |
+
.parent()
|
621 |
+
.addClass(settings.collapsedClass);
|
622 |
+
|
623 |
+
$targetPanel
|
624 |
+
.removeClass(settings.panelActiveClass)
|
625 |
+
[transitions.collapse](transitions.speed, settings.transitionCollapseEasing, function () {
|
626 |
+
$container.trigger("easytabs:midTransition", [$clicked, $targetPanel, settings]);
|
627 |
+
if (typeof callback == 'function')
|
628 |
+
callback();
|
629 |
+
});
|
630 |
+
}
|
631 |
+
}
|
632 |
+
};
|
633 |
+
|
634 |
+
|
635 |
+
// Find tab with target panel matching value
|
636 |
+
plugin.matchTab = function (hash) {
|
637 |
+
return plugin.tabs.find("[href='" + hash + "'],[data-target='" + hash + "']").first();
|
638 |
+
};
|
639 |
+
|
640 |
+
// Find panel with `id` matching value
|
641 |
+
plugin.matchInPanel = function (hash) {
|
642 |
+
return (hash && plugin.validId(hash) ? plugin.panels.filter(':has(' + hash + ')').first() : []);
|
643 |
+
};
|
644 |
+
|
645 |
+
// Make sure hash is a valid id value (admittedly strict in that HTML5 allows almost anything without a space)
|
646 |
+
// but jQuery has issues with such id values anyway, so we can afford to be strict here.
|
647 |
+
plugin.validId = function (id) {
|
648 |
+
return id.substr(1).match(/^[A-Za-z][A-Za-z0-9\-_:\.]*$/);
|
649 |
+
};
|
650 |
+
|
651 |
+
// Select matching tab when URL hash changes
|
652 |
+
plugin.selectTabFromHashChange = function () {
|
653 |
+
var hash = window.location.hash.match(/^[^\?]*/)[0],
|
654 |
+
$tab = plugin.matchTab(hash),
|
655 |
+
$panel;
|
656 |
+
|
657 |
+
if (settings.updateHash) {
|
658 |
+
|
659 |
+
// If hash directly matches tab
|
660 |
+
if ($tab.length) {
|
661 |
+
skipUpdateToHash = true;
|
662 |
+
plugin.selectTab($tab);
|
663 |
+
|
664 |
+
} else {
|
665 |
+
$panel = plugin.matchInPanel(hash);
|
666 |
+
|
667 |
+
// If panel contains element matching hash
|
668 |
+
if ($panel.length) {
|
669 |
+
hash = '#' + $panel.attr('id');
|
670 |
+
$tab = plugin.matchTab(hash);
|
671 |
+
skipUpdateToHash = true;
|
672 |
+
plugin.selectTab($tab);
|
673 |
+
|
674 |
+
// If default tab is not active...
|
675 |
+
} else if (!$defaultTab.hasClass(settings.tabActiveClass) && !settings.cycle) {
|
676 |
+
|
677 |
+
// ...and hash is blank or matches a parent of the tab container or
|
678 |
+
// if the last tab (before the hash updated) was one of the other tabs in this container.
|
679 |
+
if (hash === '' || plugin.matchTab(lastHash).length || $container.closest(hash).length) {
|
680 |
+
skipUpdateToHash = true;
|
681 |
+
plugin.selectTab($defaultTabLink);
|
682 |
+
}
|
683 |
+
}
|
684 |
+
}
|
685 |
+
}
|
686 |
+
};
|
687 |
+
|
688 |
+
// Cycle through tabs
|
689 |
+
plugin.cycleTabs = function (tabNumber) {
|
690 |
+
if (settings.cycle) {
|
691 |
+
tabNumber = tabNumber % plugin.tabs.length;
|
692 |
+
$tab = $(plugin.tabs[tabNumber]).children("a").first();
|
693 |
+
skipUpdateToHash = true;
|
694 |
+
plugin.selectTab($tab, function () {
|
695 |
+
setTimeout(function () {
|
696 |
+
plugin.cycleTabs(tabNumber + 1);
|
697 |
+
}, settings.cycle);
|
698 |
+
});
|
699 |
+
}
|
700 |
+
};
|
701 |
+
|
702 |
+
// Convenient public methods
|
703 |
+
plugin.publicMethods = {
|
704 |
+
select: function (tabSelector) {
|
705 |
+
var $tab;
|
706 |
+
|
707 |
+
// Find tab container that matches selector (like 'li#tab-one' which contains tab link)
|
708 |
+
if (($tab = plugin.tabs.filter(tabSelector)).length === 0) {
|
709 |
+
|
710 |
+
// Find direct tab link that matches href (like 'a[href="#panel-1"]')
|
711 |
+
if (($tab = plugin.tabs.find("a[href='" + tabSelector + "']")).length === 0) {
|
712 |
+
|
713 |
+
// Find direct tab link that matches selector (like 'a#tab-1')
|
714 |
+
if (($tab = plugin.tabs.find("a" + tabSelector)).length === 0) {
|
715 |
+
|
716 |
+
// Find direct tab link that matches data-target (lik 'a[data-target="#panel-1"]')
|
717 |
+
if (($tab = plugin.tabs.find("[data-target='" + tabSelector + "']")).length === 0) {
|
718 |
+
|
719 |
+
// Find direct tab link that ends in the matching href (like 'a[href$="#panel-1"]', which would also match http://example.com/currentpage/#panel-1)
|
720 |
+
if (($tab = plugin.tabs.find("a[href$='" + tabSelector + "']")).length === 0) {
|
721 |
+
|
722 |
+
$.error('Tab \'' + tabSelector + '\' does not exist in tab set');
|
723 |
+
}
|
724 |
+
}
|
725 |
+
}
|
726 |
+
}
|
727 |
+
} else {
|
728 |
+
// Select the child tab link, since the first option finds the tab container (like <li>)
|
729 |
+
$tab = $tab.children("a").first();
|
730 |
+
}
|
731 |
+
plugin.selectTab($tab);
|
732 |
+
}
|
733 |
+
};
|
734 |
+
|
735 |
+
// =============================================================
|
736 |
+
// Private functions
|
737 |
+
// =============================================================
|
738 |
+
|
739 |
+
// Triggers an event on an element and returns the event result
|
740 |
+
var fire = function (obj, name, data) {
|
741 |
+
var event = $.Event(name);
|
742 |
+
obj.trigger(event, data);
|
743 |
+
return event.result !== false;
|
744 |
+
}
|
745 |
+
|
746 |
+
// Add CSS classes to markup (if specified), called by init
|
747 |
+
var addClasses = function () {
|
748 |
+
$container.addClass(settings.containerClass);
|
749 |
+
plugin.tabs.parent().addClass(settings.tabsClass);
|
750 |
+
plugin.tabs.addClass(settings.tabClass);
|
751 |
+
plugin.panels.addClass(settings.panelClass);
|
752 |
+
};
|
753 |
+
|
754 |
+
// Set the default tab, whether from hash (bookmarked) or option,
|
755 |
+
// called by init
|
756 |
+
var setDefaultTab = function () {
|
757 |
+
var hash = window.location.hash.match(/^[^\?]*/)[0],
|
758 |
+
$selectedTab = plugin.matchTab(hash).parent(),
|
759 |
+
$panel;
|
760 |
+
|
761 |
+
// If hash directly matches one of the tabs, active on page-load
|
762 |
+
if ($selectedTab.length === 1) {
|
763 |
+
$defaultTab = $selectedTab;
|
764 |
+
settings.cycle = false;
|
765 |
+
|
766 |
+
} else {
|
767 |
+
$panel = plugin.matchInPanel(hash);
|
768 |
+
|
769 |
+
// If one of the panels contains the element matching the hash,
|
770 |
+
// make it active on page-load
|
771 |
+
if ($panel.length) {
|
772 |
+
hash = '#' + $panel.attr('id');
|
773 |
+
$defaultTab = plugin.matchTab(hash).parent();
|
774 |
+
|
775 |
+
// Otherwise, make the default tab the one that's active on page-load
|
776 |
+
} else {
|
777 |
+
$defaultTab = plugin.tabs.parent().find(settings.defaultTab);
|
778 |
+
if ($defaultTab.length === 0) {
|
779 |
+
$.error("The specified default tab ('" + settings.defaultTab + "') could not be found in the tab set ('" + settings.tabs + "') out of " + plugin.tabs.length + " tabs.");
|
780 |
+
}
|
781 |
+
}
|
782 |
+
}
|
783 |
+
|
784 |
+
$defaultTabLink = $defaultTab.children("a").first();
|
785 |
+
|
786 |
+
activateDefaultTab($selectedTab);
|
787 |
+
};
|
788 |
+
|
789 |
+
// Activate defaultTab (or collapse by default), called by setDefaultTab
|
790 |
+
var activateDefaultTab = function ($selectedTab) {
|
791 |
+
var defaultPanel,
|
792 |
+
defaultAjaxUrl;
|
793 |
+
|
794 |
+
if (settings.collapsible && $selectedTab.length === 0 && settings.collapsedByDefault) {
|
795 |
+
$defaultTab
|
796 |
+
.addClass(settings.collapsedClass)
|
797 |
+
.children()
|
798 |
+
.addClass(settings.collapsedClass);
|
799 |
+
|
800 |
+
} else {
|
801 |
+
|
802 |
+
defaultPanel = $($defaultTab.data('easytabs').panel);
|
803 |
+
defaultAjaxUrl = $defaultTab.data('easytabs').ajax;
|
804 |
+
|
805 |
+
if (defaultAjaxUrl && (!settings.cache || !$defaultTab.data('easytabs').cached)) {
|
806 |
+
$container.trigger('easytabs:ajax:beforeSend', [$defaultTabLink, defaultPanel]);
|
807 |
+
defaultPanel.load(defaultAjaxUrl, function (response, status, xhr) {
|
808 |
+
$defaultTab.data('easytabs').cached = true;
|
809 |
+
$container.trigger('easytabs:ajax:complete', [$defaultTabLink, defaultPanel, response, status, xhr]);
|
810 |
+
});
|
811 |
+
}
|
812 |
+
|
813 |
+
$defaultTab.data('easytabs').panel
|
814 |
+
.show()
|
815 |
+
.addClass(settings.panelActiveClass);
|
816 |
+
|
817 |
+
$defaultTab
|
818 |
+
.addClass(settings.tabActiveClass)
|
819 |
+
.children()
|
820 |
+
.addClass(settings.tabActiveClass);
|
821 |
+
}
|
822 |
+
|
823 |
+
// Fire event when the plugin is initialised
|
824 |
+
$container.trigger("easytabs:initialised", [$defaultTabLink, defaultPanel]);
|
825 |
+
};
|
826 |
+
|
827 |
+
// Bind tab-select funtionality to namespaced click event, called by
|
828 |
+
// init
|
829 |
+
var bindToTabClicks = function () {
|
830 |
+
plugin.tabs.children("a").bind(settings.bind_str, function (e) {
|
831 |
+
|
832 |
+
// Stop cycling when a tab is clicked
|
833 |
+
settings.cycle = false;
|
834 |
+
|
835 |
+
// Hash will be updated when tab is clicked,
|
836 |
+
// don't cause tab to re-select when hash-change event is fired
|
837 |
+
skipUpdateToHash = false;
|
838 |
+
|
839 |
+
// Select the panel for the clicked tab
|
840 |
+
plugin.selectTab($(this));
|
841 |
+
|
842 |
+
// Don't follow the link to the anchor
|
843 |
+
e.preventDefault ? e.preventDefault() : e.returnValue = false;
|
844 |
+
});
|
845 |
+
};
|
846 |
+
|
847 |
+
// Activate a given tab/panel, called from plugin.selectTab:
|
848 |
+
//
|
849 |
+
// * fire `easytabs:before` hook
|
850 |
+
// * get ajax if new tab is an uncached ajax tab
|
851 |
+
// * animate out previously-active panel
|
852 |
+
// * fire `easytabs:midTransition` hook
|
853 |
+
// * update URL hash
|
854 |
+
// * animate in newly-active panel
|
855 |
+
// * update CSS classes for inactive and active tabs/panels
|
856 |
+
//
|
857 |
+
// TODO: This could probably be broken out into many more modular
|
858 |
+
// functions
|
859 |
+
var activateTab = function ($clicked, $targetPanel, ajaxUrl, callback) {
|
860 |
+
plugin.panels.stop(true, true);
|
861 |
+
|
862 |
+
if (fire($container, "easytabs:before", [$clicked, $targetPanel, settings])) {
|
863 |
+
var $visiblePanel = plugin.panels.filter(":visible"),
|
864 |
+
$panelContainer = $targetPanel.parent(),
|
865 |
+
targetHeight,
|
866 |
+
visibleHeight,
|
867 |
+
heightDifference,
|
868 |
+
showPanel,
|
869 |
+
hash = window.location.hash.match(/^[^\?]*/)[0];
|
870 |
+
|
871 |
+
if (settings.animate) {
|
872 |
+
targetHeight = getHeightForHidden($targetPanel);
|
873 |
+
visibleHeight = $visiblePanel.length ? setAndReturnHeight($visiblePanel) : 0;
|
874 |
+
heightDifference = targetHeight - visibleHeight;
|
875 |
+
}
|
876 |
+
|
877 |
+
// Set lastHash to help indicate if defaultTab should be
|
878 |
+
// activated across multiple tab instances.
|
879 |
+
lastHash = hash;
|
880 |
+
|
881 |
+
// TODO: Move this function elsewhere
|
882 |
+
showPanel = function () {
|
883 |
+
// At this point, the previous panel is hidden, and the new one will be selected
|
884 |
+
$container.trigger("easytabs:midTransition", [$clicked, $targetPanel, settings]);
|
885 |
+
|
886 |
+
// Gracefully animate between panels of differing heights, start height change animation *after* panel change if panel needs to contract,
|
887 |
+
// so that there is no chance of making the visible panel overflowing the height of the target panel
|
888 |
+
if (settings.animate && settings.transitionIn == 'fadeIn') {
|
889 |
+
if (heightDifference < 0)
|
890 |
+
$panelContainer.animate({
|
891 |
+
height: $panelContainer.height() + heightDifference
|
892 |
+
}, transitions.halfSpeed).css({'min-height': ''});
|
893 |
+
}
|
894 |
+
|
895 |
+
if (settings.updateHash && !skipUpdateToHash) {
|
896 |
+
//window.location = url.toString().replace((url.pathname + hash), (url.pathname + $clicked.attr("href")));
|
897 |
+
// Not sure why this behaves so differently, but it's more straight forward and seems to have less side-effects
|
898 |
+
if (window.history.pushState) {
|
899 |
+
window.history.pushState(null, null, '#' + $targetPanel.attr('id'));
|
900 |
+
}
|
901 |
+
else {
|
902 |
+
window.location.hash = '#' + $targetPanel.attr('id');
|
903 |
+
}
|
904 |
+
} else {
|
905 |
+
skipUpdateToHash = false;
|
906 |
+
}
|
907 |
+
|
908 |
+
$targetPanel
|
909 |
+
[transitions.show](transitions.speed, settings.transitionInEasing, function () {
|
910 |
+
$panelContainer.css({height: '', 'min-height': ''}); // After the transition, unset the height
|
911 |
+
$container.trigger("easytabs:after", [$clicked, $targetPanel, settings]);
|
912 |
+
// callback only gets called if selectTab actually does something, since it's inside the if block
|
913 |
+
if (typeof callback == 'function') {
|
914 |
+
callback();
|
915 |
+
}
|
916 |
+
});
|
917 |
+
};
|
918 |
+
|
919 |
+
if (ajaxUrl && (!settings.cache || !$clicked.parent().data('easytabs').cached)) {
|
920 |
+
$container.trigger('easytabs:ajax:beforeSend', [$clicked, $targetPanel]);
|
921 |
+
$targetPanel.load(ajaxUrl, function (response, status, xhr) {
|
922 |
+
$clicked.parent().data('easytabs').cached = true;
|
923 |
+
$container.trigger('easytabs:ajax:complete', [$clicked, $targetPanel, response, status, xhr]);
|
924 |
+
});
|
925 |
+
}
|
926 |
+
|
927 |
+
// Gracefully animate between panels of differing heights, start height change animation *before* panel change if panel needs to expand,
|
928 |
+
// so that there is no chance of making the target panel overflowing the height of the visible panel
|
929 |
+
if (settings.animate && settings.transitionOut == 'fadeOut') {
|
930 |
+
if (heightDifference > 0) {
|
931 |
+
$panelContainer.animate({
|
932 |
+
height: ($panelContainer.height() + heightDifference)
|
933 |
+
}, transitions.halfSpeed);
|
934 |
+
} else {
|
935 |
+
// Prevent height jumping before height transition is triggered at midTransition
|
936 |
+
$panelContainer.css({'min-height': $panelContainer.height()});
|
937 |
+
}
|
938 |
+
}
|
939 |
+
|
940 |
+
// Change the active tab *first* to provide immediate feedback when the user clicks
|
941 |
+
plugin.tabs.filter("." + settings.tabActiveClass).removeClass(settings.tabActiveClass).children().removeClass(settings.tabActiveClass);
|
942 |
+
plugin.tabs.filter("." + settings.collapsedClass).removeClass(settings.collapsedClass).children().removeClass(settings.collapsedClass);
|
943 |
+
$clicked.parent().addClass(settings.tabActiveClass).children().addClass(settings.tabActiveClass);
|
944 |
+
|
945 |
+
plugin.panels.filter("." + settings.panelActiveClass).removeClass(settings.panelActiveClass);
|
946 |
+
$targetPanel.addClass(settings.panelActiveClass);
|
947 |
+
|
948 |
+
if ($visiblePanel.length) {
|
949 |
+
$visiblePanel
|
950 |
+
[transitions.hide](transitions.speed, settings.transitionOutEasing, showPanel);
|
951 |
+
} else {
|
952 |
+
$targetPanel
|
953 |
+
[transitions.uncollapse](transitions.speed, settings.transitionUncollapseEasing, showPanel);
|
954 |
+
}
|
955 |
+
}
|
956 |
+
};
|
957 |
+
|
958 |
+
// Get heights of panels to enable animation between panels of
|
959 |
+
// differing heights, called by activateTab
|
960 |
+
var getHeightForHidden = function ($targetPanel) {
|
961 |
+
|
962 |
+
if ($targetPanel.data('easytabs') && $targetPanel.data('easytabs').lastHeight) {
|
963 |
+
return $targetPanel.data('easytabs').lastHeight;
|
964 |
+
}
|
965 |
+
|
966 |
+
// this is the only property easytabs changes, so we need to grab its value on each tab change
|
967 |
+
var display = $targetPanel.css('display'),
|
968 |
+
outerCloak,
|
969 |
+
height;
|
970 |
+
|
971 |
+
// Workaround with wrapping height, because firefox returns wrong
|
972 |
+
// height if element itself has absolute positioning.
|
973 |
+
// but try/catch block needed for IE7 and IE8 because they throw
|
974 |
+
// an "Unspecified error" when trying to create an element
|
975 |
+
// with the css position set.
|
976 |
+
try {
|
977 |
+
outerCloak = $('<div></div>', {'position': 'absolute', 'visibility': 'hidden', 'overflow': 'hidden'});
|
978 |
+
} catch (e) {
|
979 |
+
outerCloak = $('<div></div>', {'visibility': 'hidden', 'overflow': 'hidden'});
|
980 |
+
}
|
981 |
+
height = $targetPanel
|
982 |
+
.wrap(outerCloak)
|
983 |
+
.css({'position': 'relative', 'visibility': 'hidden', 'display': 'block'})
|
984 |
+
.outerHeight();
|
985 |
+
|
986 |
+
$targetPanel.unwrap();
|
987 |
+
|
988 |
+
// Return element to previous state
|
989 |
+
$targetPanel.css({
|
990 |
+
position: $targetPanel.data('easytabs').position,
|
991 |
+
visibility: $targetPanel.data('easytabs').visibility,
|
992 |
+
display: display
|
993 |
+
});
|
994 |
+
|
995 |
+
// Cache height
|
996 |
+
$targetPanel.data('easytabs').lastHeight = height;
|
997 |
+
|
998 |
+
return height;
|
999 |
+
};
|
1000 |
+
|
1001 |
+
// Since the height of the visible panel may have been manipulated due to interaction,
|
1002 |
+
// we want to re-cache the visible height on each tab change, called
|
1003 |
+
// by activateTab
|
1004 |
+
var setAndReturnHeight = function ($visiblePanel) {
|
1005 |
+
var height = $visiblePanel.outerHeight();
|
1006 |
+
|
1007 |
+
if ($visiblePanel.data('easytabs')) {
|
1008 |
+
$visiblePanel.data('easytabs').lastHeight = height;
|
1009 |
+
} else {
|
1010 |
+
$visiblePanel.data('easytabs', {lastHeight: height});
|
1011 |
+
}
|
1012 |
+
return height;
|
1013 |
+
};
|
1014 |
+
|
1015 |
+
// Setup hash-change callback for forward- and back-button
|
1016 |
+
// functionality, called by init
|
1017 |
+
var initHashChange = function () {
|
1018 |
+
|
1019 |
+
// enabling back-button with jquery.hashchange plugin
|
1020 |
+
// http://benalman.com/projects/jquery-hashchange-plugin/
|
1021 |
+
if (typeof $(window).hashchange === 'function') {
|
1022 |
+
$(window).hashchange(function () {
|
1023 |
+
plugin.selectTabFromHashChange();
|
1024 |
+
});
|
1025 |
+
} else if ($.address && typeof $.address.change === 'function') { // back-button with jquery.address plugin http://www.asual.com/jquery/address/docs/
|
1026 |
+
$.address.change(function () {
|
1027 |
+
plugin.selectTabFromHashChange();
|
1028 |
+
});
|
1029 |
+
}
|
1030 |
+
};
|
1031 |
+
|
1032 |
+
// Begin cycling if set in options, called by init
|
1033 |
+
var initCycle = function () {
|
1034 |
+
var tabNumber;
|
1035 |
+
if (settings.cycle) {
|
1036 |
+
tabNumber = plugin.tabs.index($defaultTab);
|
1037 |
+
setTimeout(function () {
|
1038 |
+
plugin.cycleTabs(tabNumber + 1);
|
1039 |
+
}, settings.cycle);
|
1040 |
+
}
|
1041 |
+
};
|
1042 |
+
|
1043 |
+
|
1044 |
+
plugin.init();
|
1045 |
+
|
1046 |
+
};
|
1047 |
+
|
1048 |
+
$.fn.easytabs = function (options) {
|
1049 |
+
var args = arguments;
|
1050 |
+
|
1051 |
+
return this.each(function () {
|
1052 |
+
var $this = $(this),
|
1053 |
+
plugin = $this.data('easytabs');
|
1054 |
+
|
1055 |
+
// Initialization was called with $(el).easytabs( { options } );
|
1056 |
+
if (undefined === plugin) {
|
1057 |
+
plugin = new $.easytabs(this, options);
|
1058 |
+
$this.data('easytabs', plugin);
|
1059 |
+
}
|
1060 |
+
|
1061 |
+
// User called public method
|
1062 |
+
if (plugin.publicMethods[options]) {
|
1063 |
+
return plugin.publicMethods[options](Array.prototype.slice.call(args, 1));
|
1064 |
+
}
|
1065 |
+
});
|
1066 |
+
};
|
1067 |
+
|
1068 |
+
})(jQuery);
|
1069 |
+
|
1070 |
+
|
1071 |
+
/*
|
1072 |
+
colpick Color Picker
|
1073 |
+
Copyright 2013 Jose Vargas. Licensed under GPL license. Based on Stefan Petre's Color Picker www.eyecon.ro, dual licensed under the MIT and GPL licenses
|
1074 |
+
|
1075 |
+
For usage and examples: colpick.com/plugin
|
1076 |
+
*/
|
1077 |
+
|
1078 |
+
(function ($) {
|
1079 |
+
var colpick = function () {
|
1080 |
+
var
|
1081 |
+
tpl = '<div class="colpick"><div class="colpick_color"><div class="colpick_color_overlay1"><div class="colpick_color_overlay2"><div class="colpick_selector_outer"><div class="colpick_selector_inner"></div></div></div></div></div><div class="colpick_hue"><div class="colpick_hue_arrs"><div class="colpick_hue_larr"></div><div class="colpick_hue_rarr"></div></div></div><div class="colpick_new_color"></div><div class="colpick_current_color"></div><div class="colpick_hex_field"><div class="colpick_field_letter">#</div><input type="text" maxlength="6" size="6" /></div><div class="colpick_rgb_r colpick_field"><div class="colpick_field_letter">R</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_rgb_g colpick_field"><div class="colpick_field_letter">G</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_rgb_b colpick_field"><div class="colpick_field_letter">B</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_hsb_h colpick_field"><div class="colpick_field_letter">H</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_hsb_s colpick_field"><div class="colpick_field_letter">S</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_hsb_b colpick_field"><div class="colpick_field_letter">B</div><input type="text" maxlength="3" size="3" /><div class="colpick_field_arrs"><div class="colpick_field_uarr"></div><div class="colpick_field_darr"></div></div></div><div class="colpick_submit"></div></div>',
|
1082 |
+
defaults = {
|
1083 |
+
showEvent: 'click',
|
1084 |
+
onShow: function () {
|
1085 |
+
},
|
1086 |
+
onBeforeShow: function () {
|
1087 |
+
},
|
1088 |
+
onHide: function () {
|
1089 |
+
},
|
1090 |
+
onChange: function () {
|
1091 |
+
},
|
1092 |
+
onSubmit: function () {
|
1093 |
+
},
|
1094 |
+
colorScheme: 'light',
|
1095 |
+
color: '3289c7',
|
1096 |
+
livePreview: true,
|
1097 |
+
flat: false,
|
1098 |
+
layout: 'full',
|
1099 |
+
submit: 1,
|
1100 |
+
submitText: 'OK',
|
1101 |
+
height: 156
|
1102 |
+
},
|
1103 |
+
//Fill the inputs of the plugin
|
1104 |
+
fillRGBFields = function (hsb, cal) {
|
1105 |
+
var rgb = hsbToRgb(hsb);
|
1106 |
+
$(cal).data('colpick').fields
|
1107 |
+
.eq(1).val(rgb.r).end()
|
1108 |
+
.eq(2).val(rgb.g).end()
|
1109 |
+
.eq(3).val(rgb.b).end();
|
1110 |
+
},
|
1111 |
+
fillHSBFields = function (hsb, cal) {
|
1112 |
+
$(cal).data('colpick').fields
|
1113 |
+
.eq(4).val(Math.round(hsb.h)).end()
|
1114 |
+
.eq(5).val(Math.round(hsb.s)).end()
|
1115 |
+
.eq(6).val(Math.round(hsb.b)).end();
|
1116 |
+
},
|
1117 |
+
fillHexFields = function (hsb, cal) {
|
1118 |
+
$(cal).data('colpick').fields.eq(0).val(hsbToHex(hsb));
|
1119 |
+
},
|
1120 |
+
//Set the round selector position
|
1121 |
+
setSelector = function (hsb, cal) {
|
1122 |
+
$(cal).data('colpick').selector.css('backgroundColor', '#' + hsbToHex({h: hsb.h, s: 100, b: 100}));
|
1123 |
+
$(cal).data('colpick').selectorIndic.css({
|
1124 |
+
left: parseInt($(cal).data('colpick').height * hsb.s / 100, 10),
|
1125 |
+
top: parseInt($(cal).data('colpick').height * (100 - hsb.b) / 100, 10)
|
1126 |
+
});
|
1127 |
+
},
|
1128 |
+
//Set the hue selector position
|
1129 |
+
setHue = function (hsb, cal) {
|
1130 |
+
$(cal).data('colpick').hue.css('top', parseInt($(cal).data('colpick').height - $(cal).data('colpick').height * hsb.h / 360, 10));
|
1131 |
+
},
|
1132 |
+
//Set current and new colors
|
1133 |
+
setCurrentColor = function (hsb, cal) {
|
1134 |
+
$(cal).data('colpick').currentColor.css('backgroundColor', '#' + hsbToHex(hsb));
|
1135 |
+
},
|
1136 |
+
setNewColor = function (hsb, cal) {
|
1137 |
+
$(cal).data('colpick').newColor.css('backgroundColor', '#' + hsbToHex(hsb));
|
1138 |
+
},
|
1139 |
+
//Called when the new color is changed
|
1140 |
+
change = function (ev) {
|
1141 |
+
var cal = $(this).parent().parent(), col;
|
1142 |
+
if (this.parentNode.className.indexOf('_hex') > 0) {
|
1143 |
+
cal.data('colpick').color = col = hexToHsb(fixHex(this.value));
|
1144 |
+
fillRGBFields(col, cal.get(0));
|
1145 |
+
fillHSBFields(col, cal.get(0));
|
1146 |
+
} else if (this.parentNode.className.indexOf('_hsb') > 0) {
|
1147 |
+
cal.data('colpick').color = col = fixHSB({
|
1148 |
+
h: parseInt(cal.data('colpick').fields.eq(4).val(), 10),
|
1149 |
+
s: parseInt(cal.data('colpick').fields.eq(5).val(), 10),
|
1150 |
+
b: parseInt(cal.data('colpick').fields.eq(6).val(), 10)
|
1151 |
+
});
|
1152 |
+
fillRGBFields(col, cal.get(0));
|
1153 |
+
fillHexFields(col, cal.get(0));
|
1154 |
+
} else {
|
1155 |
+
cal.data('colpick').color = col = rgbToHsb(fixRGB({
|
1156 |
+
r: parseInt(cal.data('colpick').fields.eq(1).val(), 10),
|
1157 |
+
g: parseInt(cal.data('colpick').fields.eq(2).val(), 10),
|
1158 |
+
b: parseInt(cal.data('colpick').fields.eq(3).val(), 10)
|
1159 |
+
}));
|
1160 |
+
fillHexFields(col, cal.get(0));
|
1161 |
+
fillHSBFields(col, cal.get(0));
|
1162 |
+
}
|
1163 |
+
setSelector(col, cal.get(0));
|
1164 |
+
setHue(col, cal.get(0));
|
1165 |
+
setNewColor(col, cal.get(0));
|
1166 |
+
cal.data('colpick').onChange.apply(cal.parent(), [col, hsbToHex(col), hsbToRgb(col), cal.data('colpick').el, 0]);
|
1167 |
+
},
|
1168 |
+
//Change style on blur and on focus of inputs
|
1169 |
+
blur = function (ev) {
|
1170 |
+
$(this).parent().removeClass('colpick_focus');
|
1171 |
+
},
|
1172 |
+
focus = function () {
|
1173 |
+
$(this).parent().parent().data('colpick').fields.parent().removeClass('colpick_focus');
|
1174 |
+
$(this).parent().addClass('colpick_focus');
|
1175 |
+
},
|
1176 |
+
//Increment/decrement arrows functions
|
1177 |
+
downIncrement = function (ev) {
|
1178 |
+
ev.preventDefault ? ev.preventDefault() : ev.returnValue = false;
|
1179 |
+
var field = $(this).parent().find('input').focus();
|
1180 |
+
var current = {
|
1181 |
+
el: $(this).parent().addClass('colpick_slider'),
|
1182 |
+
max: this.parentNode.className.indexOf('_hsb_h') > 0 ? 360 : (this.parentNode.className.indexOf('_hsb') > 0 ? 100 : 255),
|
1183 |
+
y: ev.pageY,
|
1184 |
+
field: field,
|
1185 |
+
val: parseInt(field.val(), 10),
|
1186 |
+
preview: $(this).parent().parent().data('colpick').livePreview
|
1187 |
+
};
|
1188 |
+
$(document).mouseup(current, upIncrement);
|
1189 |
+
$(document).mousemove(current, moveIncrement);
|
1190 |
+
},
|
1191 |
+
moveIncrement = function (ev) {
|
1192 |
+
ev.data.field.val(Math.max(0, Math.min(ev.data.max, parseInt(ev.data.val - ev.pageY + ev.data.y, 10))));
|
1193 |
+
if (ev.data.preview) {
|
1194 |
+
change.apply(ev.data.field.get(0), [true]);
|
1195 |
+
}
|
1196 |
+
return false;
|
1197 |
+
},
|
1198 |
+
upIncrement = function (ev) {
|
1199 |
+
change.apply(ev.data.field.get(0), [true]);
|
1200 |
+
ev.data.el.removeClass('colpick_slider').find('input').focus();
|
1201 |
+
$(document).off('mouseup', upIncrement);
|
1202 |
+
$(document).off('mousemove', moveIncrement);
|
1203 |
+
return false;
|
1204 |
+
},
|
1205 |
+
//Hue slider functions
|
1206 |
+
downHue = function (ev) {
|
1207 |
+
ev.preventDefault ? ev.preventDefault() : ev.returnValue = false;
|
1208 |
+
var current = {
|
1209 |
+
cal: $(this).parent(),
|
1210 |
+
y: $(this).offset().top
|
1211 |
+
};
|
1212 |
+
$(document).on('mouseup touchend', current, upHue);
|
1213 |
+
$(document).on('mousemove touchmove', current, moveHue);
|
1214 |
+
|
1215 |
+
var pageY = ((ev.type == 'touchstart') ? ev.originalEvent.changedTouches[0].pageY : ev.pageY);
|
1216 |
+
change.apply(
|
1217 |
+
current.cal.data('colpick')
|
1218 |
+
.fields.eq(4).val(parseInt(360 * (current.cal.data('colpick').height - (pageY - current.y)) / current.cal.data('colpick').height, 10))
|
1219 |
+
.get(0),
|
1220 |
+
[current.cal.data('colpick').livePreview]
|
1221 |
+
);
|
1222 |
+
return false;
|
1223 |
+
},
|
1224 |
+
moveHue = function (ev) {
|
1225 |
+
var pageY = ((ev.type == 'touchmove') ? ev.originalEvent.changedTouches[0].pageY : ev.pageY);
|
1226 |
+
change.apply(
|
1227 |
+
ev.data.cal.data('colpick')
|
1228 |
+
.fields.eq(4).val(parseInt(360 * (ev.data.cal.data('colpick').height - Math.max(0, Math.min(ev.data.cal.data('colpick').height, (pageY - ev.data.y)))) / ev.data.cal.data('colpick').height, 10))
|
1229 |
+
.get(0),
|
1230 |
+
[ev.data.preview]
|
1231 |
+
);
|
1232 |
+
return false;
|
1233 |
+
},
|
1234 |
+
upHue = function (ev) {
|
1235 |
+
fillRGBFields(ev.data.cal.data('colpick').color, ev.data.cal.get(0));
|
1236 |
+
fillHexFields(ev.data.cal.data('colpick').color, ev.data.cal.get(0));
|
1237 |
+
$(document).off('mouseup touchend', upHue);
|
1238 |
+
$(document).off('mousemove touchmove', moveHue);
|
1239 |
+
return false;
|
1240 |
+
},
|
1241 |
+
//Color selector functions
|
1242 |
+
downSelector = function (ev) {
|
1243 |
+
ev.preventDefault ? ev.preventDefault() : ev.returnValue = false;
|
1244 |
+
var current = {
|
1245 |
+
cal: $(this).parent(),
|
1246 |
+
pos: $(this).offset()
|
1247 |
+
};
|
1248 |
+
current.preview = current.cal.data('colpick').livePreview;
|
1249 |
+
|
1250 |
+
$(document).on('mouseup touchend', current, upSelector);
|
1251 |
+
$(document).on('mousemove touchmove', current, moveSelector);
|
1252 |
+
|
1253 |
+
var payeX, pageY;
|
1254 |
+
if (ev.type == 'touchstart') {
|
1255 |
+
pageX = ev.originalEvent.changedTouches[0].pageX,
|
1256 |
+
pageY = ev.originalEvent.changedTouches[0].pageY;
|
1257 |
+
} else {
|
1258 |
+
pageX = ev.pageX;
|
1259 |
+
pageY = ev.pageY;
|
1260 |
+
}
|
1261 |
+
|
1262 |
+
change.apply(
|
1263 |
+
current.cal.data('colpick').fields
|
1264 |
+
.eq(6).val(parseInt(100 * (current.cal.data('colpick').height - (pageY - current.pos.top)) / current.cal.data('colpick').height, 10)).end()
|
1265 |
+
.eq(5).val(parseInt(100 * (pageX - current.pos.left) / current.cal.data('colpick').height, 10))
|
1266 |
+
.get(0),
|
1267 |
+
[current.preview]
|
1268 |
+
);
|
1269 |
+
return false;
|
1270 |
+
},
|
1271 |
+
moveSelector = function (ev) {
|
1272 |
+
var payeX, pageY;
|
1273 |
+
if (ev.type == 'touchmove') {
|
1274 |
+
pageX = ev.originalEvent.changedTouches[0].pageX,
|
1275 |
+
pageY = ev.originalEvent.changedTouches[0].pageY;
|
1276 |
+
} else {
|
1277 |
+
pageX = ev.pageX;
|
1278 |
+
pageY = ev.pageY;
|
1279 |
+
}
|
1280 |
+
|
1281 |
+
change.apply(
|
1282 |
+
ev.data.cal.data('colpick').fields
|
1283 |
+
.eq(6).val(parseInt(100 * (ev.data.cal.data('colpick').height - Math.max(0, Math.min(ev.data.cal.data('colpick').height, (pageY - ev.data.pos.top)))) / ev.data.cal.data('colpick').height, 10)).end()
|
1284 |
+
.eq(5).val(parseInt(100 * (Math.max(0, Math.min(ev.data.cal.data('colpick').height, (pageX - ev.data.pos.left)))) / ev.data.cal.data('colpick').height, 10))
|
1285 |
+
.get(0),
|
1286 |
+
[ev.data.preview]
|
1287 |
+
);
|
1288 |
+
return false;
|
1289 |
+
},
|
1290 |
+
upSelector = function (ev) {
|
1291 |
+
fillRGBFields(ev.data.cal.data('colpick').color, ev.data.cal.get(0));
|
1292 |
+
fillHexFields(ev.data.cal.data('colpick').color, ev.data.cal.get(0));
|
1293 |
+
$(document).off('mouseup touchend', upSelector);
|
1294 |
+
$(document).off('mousemove touchmove', moveSelector);
|
1295 |
+
return false;
|
1296 |
+
},
|
1297 |
+
//Submit button
|
1298 |
+
clickSubmit = function (ev) {
|
1299 |
+
var cal = $(this).parent();
|
1300 |
+
var col = cal.data('colpick').color;
|
1301 |
+
cal.data('colpick').origColor = col;
|
1302 |
+
setCurrentColor(col, cal.get(0));
|
1303 |
+
cal.data('colpick').onSubmit(col, hsbToHex(col), hsbToRgb(col), cal.data('colpick').el);
|
1304 |
+
},
|
1305 |
+
//Show/hide the color picker
|
1306 |
+
show = function (ev) {
|
1307 |
+
// Prevent the trigger of any direct parent
|
1308 |
+
ev.stopPropagation();
|
1309 |
+
var cal = $('#' + $(this).data('colpickId'));
|
1310 |
+
cal.data('colpick').onBeforeShow.apply(this, [cal.get(0)]);
|
1311 |
+
var pos = $(this).offset();
|
1312 |
+
var top = pos.top + this.offsetHeight;
|
1313 |
+
var left = pos.left;
|
1314 |
+
var viewPort = getViewport();
|
1315 |
+
var calW = cal.width();
|
1316 |
+
if (left + calW > viewPort.l + viewPort.w) {
|
1317 |
+
left -= calW;
|
1318 |
+
}
|
1319 |
+
cal.css({left: left + 'px', top: top + 'px'});
|
1320 |
+
if (cal.data('colpick').onShow.apply(this, [cal.get(0)]) != false) {
|
1321 |
+
cal.show();
|
1322 |
+
}
|
1323 |
+
//Hide when user clicks outside
|
1324 |
+
$('html').mousedown({cal: cal}, hide);
|
1325 |
+
cal.mousedown(function (ev) {
|
1326 |
+
ev.stopPropagation();
|
1327 |
+
})
|
1328 |
+
},
|
1329 |
+
hide = function (ev) {
|
1330 |
+
if (ev.data.cal.data('colpick').onHide.apply(this, [ev.data.cal.get(0)]) != false) {
|
1331 |
+
ev.data.cal.hide();
|
1332 |
+
}
|
1333 |
+
$('html').off('mousedown', hide);
|
1334 |
+
},
|
1335 |
+
getViewport = function () {
|
1336 |
+
var m = document.compatMode == 'CSS1Compat';
|
1337 |
+
return {
|
1338 |
+
l: window.pageXOffset || (m ? document.documentElement.scrollLeft : document.body.scrollLeft),
|
1339 |
+
w: window.innerWidth || (m ? document.documentElement.clientWidth : document.body.clientWidth)
|
1340 |
+
};
|
1341 |
+
},
|
1342 |
+
//Fix the values if the user enters a negative or high value
|
1343 |
+
fixHSB = function (hsb) {
|
1344 |
+
return {
|
1345 |
+
h: Math.min(360, Math.max(0, hsb.h)),
|
1346 |
+
s: Math.min(100, Math.max(0, hsb.s)),
|
1347 |
+
b: Math.min(100, Math.max(0, hsb.b))
|
1348 |
+
};
|
1349 |
+
},
|
1350 |
+
fixRGB = function (rgb) {
|
1351 |
+
return {
|
1352 |
+
r: Math.min(255, Math.max(0, rgb.r)),
|
1353 |
+
g: Math.min(255, Math.max(0, rgb.g)),
|
1354 |
+
b: Math.min(255, Math.max(0, rgb.b))
|
1355 |
+
};
|
1356 |
+
},
|
1357 |
+
fixHex = function (hex) {
|
1358 |
+
var len = 6 - hex.length;
|
1359 |
+
if (len > 0) {
|
1360 |
+
var o = [];
|
1361 |
+
for (var i = 0; i < len; i++) {
|
1362 |
+
o.push('0');
|
1363 |
+
}
|
1364 |
+
o.push(hex);
|
1365 |
+
hex = o.join('');
|
1366 |
+
}
|
1367 |
+
return hex;
|
1368 |
+
},
|
1369 |
+
restoreOriginal = function () {
|
1370 |
+
var cal = $(this).parent();
|
1371 |
+
var col = cal.data('colpick').origColor;
|
1372 |
+
cal.data('colpick').color = col;
|
1373 |
+
fillRGBFields(col, cal.get(0));
|
1374 |
+
fillHexFields(col, cal.get(0));
|
1375 |
+
fillHSBFields(col, cal.get(0));
|
1376 |
+
setSelector(col, cal.get(0));
|
1377 |
+
setHue(col, cal.get(0));
|
1378 |
+
setNewColor(col, cal.get(0));
|
1379 |
+
};
|
1380 |
+
return {
|
1381 |
+
init: function (opt) {
|
1382 |
+
opt = $.extend({}, defaults, opt || {});
|
1383 |
+
//Set color
|
1384 |
+
if (typeof opt.color == 'string') {
|
1385 |
+
opt.color = hexToHsb(opt.color);
|
1386 |
+
} else if (opt.color.r != undefined && opt.color.g != undefined && opt.color.b != undefined) {
|
1387 |
+
opt.color = rgbToHsb(opt.color);
|
1388 |
+
} else if (opt.color.h != undefined && opt.color.s != undefined && opt.color.b != undefined) {
|
1389 |
+
opt.color = fixHSB(opt.color);
|
1390 |
+
} else {
|
1391 |
+
return this;
|
1392 |
+
}
|
1393 |
+
|
1394 |
+
//For each selected DOM element
|
1395 |
+
return this.each(function () {
|
1396 |
+
//If the element does not have an ID
|
1397 |
+
if (!$(this).data('colpickId')) {
|
1398 |
+
var options = $.extend({}, opt);
|
1399 |
+
options.origColor = opt.color;
|
1400 |
+
//Generate and assign a random ID
|
1401 |
+
var id = 'collorpicker_' + parseInt(Math.random() * 1000);
|
1402 |
+
$(this).data('colpickId', id);
|
1403 |
+
//Set the tpl's ID and get the HTML
|
1404 |
+
var cal = $(tpl).attr('id', id);
|
1405 |
+
//Add class according to layout
|
1406 |
+
cal.addClass('colpick_' + options.layout + (options.submit ? '' : ' colpick_' + options.layout + '_ns'));
|
1407 |
+
//Add class if the color scheme is not default
|
1408 |
+
if (options.colorScheme != 'light') {
|
1409 |
+
cal.addClass('colpick_' + options.colorScheme);
|
1410 |
+
}
|
1411 |
+
//Setup submit button
|
1412 |
+
cal.find('div.colpick_submit').html(options.submitText).click(clickSubmit);
|
1413 |
+
//Setup input fields
|
1414 |
+
options.fields = cal.find('input').change(change).blur(blur).focus(focus);
|
1415 |
+
cal.find('div.colpick_field_arrs').mousedown(downIncrement).end().find('div.colpick_current_color').click(restoreOriginal);
|
1416 |
+
//Setup hue selector
|
1417 |
+
options.selector = cal.find('div.colpick_color').on('mousedown touchstart', downSelector);
|
1418 |
+
options.selectorIndic = options.selector.find('div.colpick_selector_outer');
|
1419 |
+
//Store parts of the plugin
|
1420 |
+
options.el = this;
|
1421 |
+
options.hue = cal.find('div.colpick_hue_arrs');
|
1422 |
+
huebar = options.hue.parent();
|
1423 |
+
//Paint the hue bar
|
1424 |
+
var UA = navigator.userAgent.toLowerCase();
|
1425 |
+
var isIE = navigator.appName === 'Microsoft Internet Explorer';
|
1426 |
+
var IEver = isIE ? parseFloat(UA.match(/msie ([0-9]{1,}[\.0-9]{0,})/)[1]) : 0;
|
1427 |
+
var ngIE = (isIE && IEver < 10);
|
1428 |
+
var stops = ['#ff0000', '#ff0080', '#ff00ff', '#8000ff', '#0000ff', '#0080ff', '#00ffff', '#00ff80', '#00ff00', '#80ff00', '#ffff00', '#ff8000', '#ff0000'];
|
1429 |
+
if (ngIE) {
|
1430 |
+
var i, div;
|
1431 |
+
for (i = 0; i <= 11; i++) {
|
1432 |
+
div = $('<div></div>').attr('style', 'height:8.333333%; filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=' + stops[i] + ', endColorstr=' + stops[i + 1] + '); -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=' + stops[i] + ', endColorstr=' + stops[i + 1] + ')";');
|
1433 |
+
huebar.append(div);
|
1434 |
+
}
|
1435 |
+
} else {
|
1436 |
+
stopList = stops.join(',');
|
1437 |
+
huebar.attr('style', 'background:-webkit-linear-gradient(top,' + stopList + '); background: -o-linear-gradient(top,' + stopList + '); background: -ms-linear-gradient(top,' + stopList + '); background:-moz-linear-gradient(top,' + stopList + '); -webkit-linear-gradient(top,' + stopList + '); background:linear-gradient(to bottom,' + stopList + '); ');
|
1438 |
+
}
|
1439 |
+
cal.find('div.colpick_hue').on('mousedown touchstart', downHue);
|
1440 |
+
options.newColor = cal.find('div.colpick_new_color');
|
1441 |
+
options.currentColor = cal.find('div.colpick_current_color');
|
1442 |
+
//Store options and fill with default color
|
1443 |
+
cal.data('colpick', options);
|
1444 |
+
fillRGBFields(options.color, cal.get(0));
|
1445 |
+
fillHSBFields(options.color, cal.get(0));
|
1446 |
+
fillHexFields(options.color, cal.get(0));
|
1447 |
+
setHue(options.color, cal.get(0));
|
1448 |
+
setSelector(options.color, cal.get(0));
|
1449 |
+
setCurrentColor(options.color, cal.get(0));
|
1450 |
+
setNewColor(options.color, cal.get(0));
|
1451 |
+
//Append to body if flat=false, else show in place
|
1452 |
+
if (options.flat) {
|
1453 |
+
cal.appendTo(this).show();
|
1454 |
+
cal.css({
|
1455 |
+
position: 'relative',
|
1456 |
+
display: 'block'
|
1457 |
+
});
|
1458 |
+
} else {
|
1459 |
+
cal.appendTo(document.body);
|
1460 |
+
$(this).on(options.showEvent, show);
|
1461 |
+
cal.css({
|
1462 |
+
position: 'absolute'
|
1463 |
+
});
|
1464 |
+
}
|
1465 |
+
}
|
1466 |
+
});
|
1467 |
+
},
|
1468 |
+
//Shows the picker
|
1469 |
+
showPicker: function () {
|
1470 |
+
return this.each(function () {
|
1471 |
+
if ($(this).data('colpickId')) {
|
1472 |
+
show.apply(this);
|
1473 |
+
}
|
1474 |
+
});
|
1475 |
+
},
|
1476 |
+
//Hides the picker
|
1477 |
+
hidePicker: function () {
|
1478 |
+
return this.each(function () {
|
1479 |
+
if ($(this).data('colpickId')) {
|
1480 |
+
$('#' + $(this).data('colpickId')).hide();
|
1481 |
+
}
|
1482 |
+
});
|
1483 |
+
},
|
1484 |
+
//Sets a color as new and current (default)
|
1485 |
+
setColor: function (col, setCurrent) {
|
1486 |
+
setCurrent = (typeof setCurrent === "undefined") ? 1 : setCurrent;
|
1487 |
+
if (typeof col == 'string') {
|
1488 |
+
col = hexToHsb(col);
|
1489 |
+
} else if (col.r != undefined && col.g != undefined && col.b != undefined) {
|
1490 |
+
col = rgbToHsb(col);
|
1491 |
+
} else if (col.h != undefined && col.s != undefined && col.b != undefined) {
|
1492 |
+
col = fixHSB(col);
|
1493 |
+
} else {
|
1494 |
+
return this;
|
1495 |
+
}
|
1496 |
+
return this.each(function () {
|
1497 |
+
if ($(this).data('colpickId')) {
|
1498 |
+
var cal = $('#' + $(this).data('colpickId'));
|
1499 |
+
cal.data('colpick').color = col;
|
1500 |
+
cal.data('colpick').origColor = col;
|
1501 |
+
fillRGBFields(col, cal.get(0));
|
1502 |
+
fillHSBFields(col, cal.get(0));
|
1503 |
+
fillHexFields(col, cal.get(0));
|
1504 |
+
setHue(col, cal.get(0));
|
1505 |
+
setSelector(col, cal.get(0));
|
1506 |
+
|
1507 |
+
setNewColor(col, cal.get(0));
|
1508 |
+
cal.data('colpick').onChange.apply(cal.parent(), [col, hsbToHex(col), hsbToRgb(col), cal.data('colpick').el, 1]);
|
1509 |
+
if (setCurrent) {
|
1510 |
+
setCurrentColor(col, cal.get(0));
|
1511 |
+
}
|
1512 |
+
}
|
1513 |
+
});
|
1514 |
+
}
|
1515 |
+
};
|
1516 |
+
}();
|
1517 |
+
//Color space convertions
|
1518 |
+
var hexToRgb = function (hex) {
|
1519 |
+
var hex = parseInt(((hex.indexOf('#') > -1) ? hex.substring(1) : hex), 16);
|
1520 |
+
return {r: hex >> 16, g: (hex & 0x00FF00) >> 8, b: (hex & 0x0000FF)};
|
1521 |
+
};
|
1522 |
+
var hexToHsb = function (hex) {
|
1523 |
+
return rgbToHsb(hexToRgb(hex));
|
1524 |
+
};
|
1525 |
+
var rgbToHsb = function (rgb) {
|
1526 |
+
var hsb = {h: 0, s: 0, b: 0};
|
1527 |
+
var min = Math.min(rgb.r, rgb.g, rgb.b);
|
1528 |
+
var max = Math.max(rgb.r, rgb.g, rgb.b);
|
1529 |
+
var delta = max - min;
|
1530 |
+
hsb.b = max;
|
1531 |
+
hsb.s = max != 0 ? 255 * delta / max : 0;
|
1532 |
+
if (hsb.s != 0) {
|
1533 |
+
if (rgb.r == max)
|
1534 |
+
hsb.h = (rgb.g - rgb.b) / delta;
|
1535 |
+
else if (rgb.g == max)
|
1536 |
+
hsb.h = 2 + (rgb.b - rgb.r) / delta;
|
1537 |
+
else
|
1538 |
+
hsb.h = 4 + (rgb.r - rgb.g) / delta;
|
1539 |
+
} else
|
1540 |
+
hsb.h = -1;
|
1541 |
+
hsb.h *= 60;
|
1542 |
+
if (hsb.h < 0)
|
1543 |
+
hsb.h += 360;
|
1544 |
+
hsb.s *= 100 / 255;
|
1545 |
+
hsb.b *= 100 / 255;
|
1546 |
+
return hsb;
|
1547 |
+
};
|
1548 |
+
var hsbToRgb = function (hsb) {
|
1549 |
+
var rgb = {};
|
1550 |
+
var h = hsb.h;
|
1551 |
+
var s = hsb.s * 255 / 100;
|
1552 |
+
var v = hsb.b * 255 / 100;
|
1553 |
+
if (s == 0) {
|
1554 |
+
rgb.r = rgb.g = rgb.b = v;
|
1555 |
+
} else {
|
1556 |
+
var t1 = v;
|
1557 |
+
var t2 = (255 - s) * v / 255;
|
1558 |
+
var t3 = (t1 - t2) * (h % 60) / 60;
|
1559 |
+
if (h == 360)
|
1560 |
+
h = 0;
|
1561 |
+
if (h < 60) {
|
1562 |
+
rgb.r = t1;
|
1563 |
+
rgb.b = t2;
|
1564 |
+
rgb.g = t2 + t3
|
1565 |
+
}
|
1566 |
+
else if (h < 120) {
|
1567 |
+
rgb.g = t1;
|
1568 |
+
rgb.b = t2;
|
1569 |
+
rgb.r = t1 - t3
|
1570 |
+
}
|
1571 |
+
else if (h < 180) {
|
1572 |
+
rgb.g = t1;
|
1573 |
+
rgb.r = t2;
|
1574 |
+
rgb.b = t2 + t3
|
1575 |
+
}
|
1576 |
+
else if (h < 240) {
|
1577 |
+
rgb.b = t1;
|
1578 |
+
rgb.r = t2;
|
1579 |
+
rgb.g = t1 - t3
|
1580 |
+
}
|
1581 |
+
else if (h < 300) {
|
1582 |
+
rgb.b = t1;
|
1583 |
+
rgb.g = t2;
|
1584 |
+
rgb.r = t2 + t3
|
1585 |
+
}
|
1586 |
+
else if (h < 360) {
|
1587 |
+
rgb.r = t1;
|
1588 |
+
rgb.g = t2;
|
1589 |
+
rgb.b = t1 - t3
|
1590 |
+
}
|
1591 |
+
else {
|
1592 |
+
rgb.r = 0;
|
1593 |
+
rgb.g = 0;
|
1594 |
+
rgb.b = 0
|
1595 |
+
}
|
1596 |
+
}
|
1597 |
+
return {r: Math.round(rgb.r), g: Math.round(rgb.g), b: Math.round(rgb.b)};
|
1598 |
+
};
|
1599 |
+
var rgbToHex = function (rgb) {
|
1600 |
+
var hex = [
|
1601 |
+
rgb.r.toString(16),
|
1602 |
+
rgb.g.toString(16),
|
1603 |
+
rgb.b.toString(16)
|
1604 |
+
];
|
1605 |
+
$.each(hex, function (nr, val) {
|
1606 |
+
if (val.length == 1) {
|
1607 |
+
hex[nr] = '0' + val;
|
1608 |
+
}
|
1609 |
+
});
|
1610 |
+
return hex.join('');
|
1611 |
+
};
|
1612 |
+
var hsbToHex = function (hsb) {
|
1613 |
+
return rgbToHex(hsbToRgb(hsb));
|
1614 |
+
};
|
1615 |
+
$.fn.extend({
|
1616 |
+
colpick: colpick.init,
|
1617 |
+
colpickHide: colpick.hidePicker,
|
1618 |
+
colpickShow: colpick.showPicker,
|
1619 |
+
colpickSetColor: colpick.setColor
|
1620 |
+
});
|
1621 |
+
$.extend({
|
1622 |
+
colpick: {
|
1623 |
+
rgbToHex: rgbToHex,
|
1624 |
+
rgbToHsb: rgbToHsb,
|
1625 |
+
hsbToHex: hsbToHex,
|
1626 |
+
hsbToRgb: hsbToRgb,
|
1627 |
+
hexToHsb: hexToHsb,
|
1628 |
+
hexToRgb: hexToRgb
|
1629 |
+
}
|
1630 |
+
});
|
1631 |
+
})(jQuery);
|
1632 |
+
|
1633 |
+
// Load twitter button async
|
1634 |
+
window.twttr = (function (d, s, id) {
|
1635 |
+
var js, fjs = d.getElementsByTagName(s)[0],
|
1636 |
+
t = window.twttr || {};
|
1637 |
+
if (d.getElementById(id))
|
1638 |
+
return t;
|
1639 |
+
js = d.createElement(s);
|
1640 |
+
js.id = id;
|
1641 |
+
js.src = "https://platform.twitter.com/widgets.js";
|
1642 |
+
fjs.parentNode.insertBefore(js, fjs);
|
1643 |
+
|
1644 |
+
t._e = [];
|
1645 |
+
t.ready = function (f) {
|
1646 |
+
t._e.push(f);
|
1647 |
+
};
|
1648 |
+
|
1649 |
+
return t;
|
1650 |
+
}(document, "script", "twitter-wjs"));
|
includes/admin/admin-notices.php
CHANGED
@@ -47,7 +47,7 @@ function mashsb_admin_messages() {
|
|
47 |
return;
|
48 |
}
|
49 |
|
50 |
-
mashsb_update_notice_101();
|
51 |
|
52 |
if( mashsb_is_admin_page() && !function_exists( 'curl_init' ) ) {
|
53 |
echo '<div class="error">';
|
47 |
return;
|
48 |
}
|
49 |
|
50 |
+
//mashsb_update_notice_101();
|
51 |
|
52 |
if( mashsb_is_admin_page() && !function_exists( 'curl_init' ) ) {
|
53 |
echo '<div class="error">';
|
includes/admin/settings/register-settings.php
CHANGED
@@ -276,13 +276,13 @@ function mashsb_get_registered_settings() {
|
|
276 |
// 'type' => 'text',
|
277 |
// 'size' => 'medium'
|
278 |
// ),
|
279 |
-
array(
|
280 |
-
'id' => 'fb_access_token',
|
281 |
-
'name' => __( 'Facebook Access Token', 'mashsb' ),
|
282 |
-
'desc' => __( 'Required for getting accurate facebook share numbers! Connecting with facebook increases the facebook API call rate limit to 200 calls per hour. This is enough for even huge websites with a lot of traffic as MashShare is caching the calls.', 'mashsb' ),
|
283 |
-
'type' => 'fboauth',
|
284 |
-
'size' => 'medium'
|
285 |
-
),
|
286 |
'mashsharer_hashtag' => array(
|
287 |
'id' => 'mashsharer_hashtag',
|
288 |
'name' => __( 'Twitter Username', 'mashsb' ),
|
276 |
// 'type' => 'text',
|
277 |
// 'size' => 'medium'
|
278 |
// ),
|
279 |
+
// array(
|
280 |
+
// 'id' => 'fb_access_token',
|
281 |
+
// 'name' => __( 'Facebook Access Token', 'mashsb' ),
|
282 |
+
// 'desc' => __( 'Required for getting accurate facebook share numbers! Connecting with facebook increases the facebook API call rate limit to 200 calls per hour. This is enough for even huge websites with a lot of traffic as MashShare is caching the calls.', 'mashsb' ),
|
283 |
+
// 'type' => 'fboauth',
|
284 |
+
// 'size' => 'medium'
|
285 |
+
// ),
|
286 |
'mashsharer_hashtag' => array(
|
287 |
'id' => 'mashsharer_hashtag',
|
288 |
'name' => __( 'Twitter Username', 'mashsb' ),
|
includes/mashengine.php
CHANGED
@@ -25,7 +25,9 @@ class mashengine {
|
|
25 |
$this->data = new stdClass;
|
26 |
$this->data->total = 0;
|
27 |
$data = $this->getSharesALL();
|
28 |
-
return $data;
|
|
|
|
|
29 |
}
|
30 |
|
31 |
/* Collect share count from facebook and twitter */
|
@@ -45,7 +47,7 @@ class mashengine {
|
|
45 |
public function getSharesFBTW() {
|
46 |
global $mashsb_options;
|
47 |
|
48 |
-
$fb_mode = isset( $mashsb_options['facebook_count_mode'] ) ? $mashsb_options['facebook_count_mode'] : '';
|
49 |
|
50 |
$post_data = null;
|
51 |
$headers = null;
|
@@ -61,55 +63,32 @@ class mashengine {
|
|
61 |
$RollingCurlX->setOptions( $options );
|
62 |
switch ( $fb_mode ) {
|
63 |
case $fb_mode === 'likes':
|
64 |
-
if( empty( $mashsb_options['fb_access_token'] ) ) {
|
65 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
66 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
67 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
68 |
}else {
|
69 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
70 |
}
|
71 |
-
|
72 |
-
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
73 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
74 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
75 |
-
}else{
|
76 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
77 |
-
}
|
78 |
-
}
|
79 |
break;
|
80 |
case $fb_mode === 'total':
|
81 |
-
if( empty( $mashsb_options['fb_access_token'] ) ) {
|
82 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
83 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
84 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
85 |
}else{
|
86 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
87 |
}
|
88 |
-
|
89 |
-
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
90 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
91 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
92 |
-
}else{
|
93 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
94 |
-
}
|
95 |
-
}
|
96 |
break;
|
97 |
default:
|
98 |
-
|
99 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
100 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
101 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
102 |
}else{
|
103 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
104 |
}
|
105 |
-
|
106 |
-
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
107 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
108 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
109 |
-
}else{
|
110 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
111 |
-
}
|
112 |
-
}
|
113 |
}
|
114 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
115 |
$RollingCurlX->addRequest( "http://public.newsharecounts.com/count.json?url=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('twitter'), $headers );
|
@@ -133,8 +112,8 @@ class mashengine {
|
|
133 |
|
134 |
public function getSharesALL() {
|
135 |
global $mashsb_options;
|
136 |
-
|
137 |
-
|
138 |
$post_data = null;
|
139 |
$headers = null;
|
140 |
|
@@ -147,54 +126,33 @@ class mashengine {
|
|
147 |
$RollingCurlX->setOptions( $options );
|
148 |
switch ( $fb_mode ) {
|
149 |
case $fb_mode === 'likes':
|
150 |
-
|
151 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
152 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
153 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
154 |
-
}else{}
|
155 |
-
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
156 |
-
} else {
|
157 |
-
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
158 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->https_scheme_url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
159 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->http_scheme_url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
160 |
}else{
|
161 |
-
$RollingCurlX->addRequest( "
|
162 |
}
|
163 |
-
|
164 |
break;
|
165 |
case $fb_mode === 'total':
|
166 |
-
|
167 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
168 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
169 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
170 |
}else{
|
171 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
172 |
}
|
173 |
-
|
174 |
-
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
175 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->https_scheme_url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
176 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->http_scheme_url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
177 |
-
}else{
|
178 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
179 |
-
}
|
180 |
-
}
|
181 |
break;
|
182 |
default:
|
183 |
-
if( empty( $mashsb_options['fb_access_token'] ) ) {
|
184 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
185 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
186 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
187 |
}else{
|
188 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
189 |
}
|
190 |
-
|
191 |
-
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
192 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->https_scheme_url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
193 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->http_scheme_url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
194 |
-
}else{
|
195 |
-
$RollingCurlX->addRequest( "https://graph.facebook.com/v2.7/?id=" . $this->url . '&access_token=' . sanitize_text_field( $mashsb_options['fb_access_token'] ), $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
196 |
-
}
|
197 |
-
}
|
198 |
}
|
199 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
200 |
$RollingCurlX->addRequest( "http://public.newsharecounts.com/count.json?url=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('twitter'), $headers );
|
@@ -243,7 +201,8 @@ class mashengine {
|
|
243 |
$count = $share_count + $comment_count;
|
244 |
break;
|
245 |
case "google":
|
246 |
-
preg_match( '/window\.__SSR = {c: ([\d]+)TEST/', $data, $matches );
|
|
|
247 |
if( isset( $matches[0] ) )
|
248 |
$count = str_replace( 'window.__SSR = {c: ', '', $matches[0] );
|
249 |
break;
|
@@ -291,9 +250,10 @@ class mashengine {
|
|
291 |
$this->data->shares->$service[0] = $count;
|
292 |
* */
|
293 |
$this->data->total += $count;
|
294 |
-
|
295 |
MASHSB()->logger->info( 'MashEngine - URL: ' . $url . ' ' . $service[0] . ': ' . $count );
|
296 |
mashdebug()->info( 'MashEngine - URL: ' . $url . ' ' . $service[0] . ': ' . $count );
|
|
|
297 |
}
|
298 |
return;
|
299 |
}
|
25 |
$this->data = new stdClass;
|
26 |
$this->data->total = 0;
|
27 |
$data = $this->getSharesALL();
|
28 |
+
//return $data;
|
29 |
+
return $this->data;
|
30 |
+
//wp_die(var_dump($this->data->total));
|
31 |
}
|
32 |
|
33 |
/* Collect share count from facebook and twitter */
|
47 |
public function getSharesFBTW() {
|
48 |
global $mashsb_options;
|
49 |
|
50 |
+
$fb_mode = isset( $mashsb_options['facebook_count_mode'] ) ? $mashsb_options['facebook_count_mode'] : 'shares';
|
51 |
|
52 |
$post_data = null;
|
53 |
$headers = null;
|
63 |
$RollingCurlX->setOptions( $options );
|
64 |
switch ( $fb_mode ) {
|
65 |
case $fb_mode === 'likes':
|
|
|
66 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
67 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
68 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
69 |
}else {
|
70 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
71 |
}
|
72 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
73 |
break;
|
74 |
case $fb_mode === 'total':
|
|
|
75 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
76 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
77 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
78 |
}else{
|
79 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
80 |
}
|
81 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
82 |
break;
|
83 |
default:
|
84 |
+
|
85 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
86 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
87 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
88 |
}else{
|
89 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
90 |
}
|
91 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
92 |
}
|
93 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
94 |
$RollingCurlX->addRequest( "http://public.newsharecounts.com/count.json?url=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('twitter'), $headers );
|
112 |
|
113 |
public function getSharesALL() {
|
114 |
global $mashsb_options;
|
115 |
+
|
116 |
+
$fb_mode = isset( $mashsb_options['facebook_count_mode'] ) ? $mashsb_options['facebook_count_mode'] : 'shares';
|
117 |
$post_data = null;
|
118 |
$headers = null;
|
119 |
|
126 |
$RollingCurlX->setOptions( $options );
|
127 |
switch ( $fb_mode ) {
|
128 |
case $fb_mode === 'likes':
|
129 |
+
|
130 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
131 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
132 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
|
|
|
|
|
|
|
|
|
|
|
|
133 |
}else{
|
134 |
+
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_likes'), $headers );
|
135 |
}
|
136 |
+
|
137 |
break;
|
138 |
case $fb_mode === 'total':
|
139 |
+
|
140 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
141 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
142 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
143 |
}else{
|
144 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_total'), $headers );
|
145 |
}
|
146 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
147 |
break;
|
148 |
default:
|
|
|
149 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
150 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
151 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->http_scheme_url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
152 |
}else{
|
153 |
$RollingCurlX->addRequest( "http://graph.facebook.com/?id=" . $this->url, $post_data, array($this, 'getCount'), array('facebook_shares'), $headers );
|
154 |
}
|
155 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
156 |
}
|
157 |
if( isset( $mashsb_options['cumulate_http_https'] ) ) {
|
158 |
$RollingCurlX->addRequest( "http://public.newsharecounts.com/count.json?url=" . $this->https_scheme_url, $post_data, array($this, 'getCount'), array('twitter'), $headers );
|
201 |
$count = $share_count + $comment_count;
|
202 |
break;
|
203 |
case "google":
|
204 |
+
//preg_match( '/window\.__SSR = {c: ([\d]+)TEST/', $data, $matches );
|
205 |
+
preg_match("#window\.__SSR = {c: ([\d]+)#", $data, $matches);
|
206 |
if( isset( $matches[0] ) )
|
207 |
$count = str_replace( 'window.__SSR = {c: ', '', $matches[0] );
|
208 |
break;
|
250 |
$this->data->shares->$service[0] = $count;
|
251 |
* */
|
252 |
$this->data->total += $count;
|
253 |
+
$this->data->{$service[0]} = $count;
|
254 |
MASHSB()->logger->info( 'MashEngine - URL: ' . $url . ' ' . $service[0] . ': ' . $count );
|
255 |
mashdebug()->info( 'MashEngine - URL: ' . $url . ' ' . $service[0] . ': ' . $count );
|
256 |
+
//echo 'MashEngine - URL: ' . $url . ' ' . $service[0] . ': ' . $count;
|
257 |
}
|
258 |
return;
|
259 |
}
|
includes/template-functions.php
CHANGED
@@ -459,8 +459,12 @@ function mashsb_getNetworks( $is_shortcode = false, $services = 0 ) {
|
|
459 |
|
460 |
$enablednetworks[$key]['id'] == 'whatsapp' ? $display = 'style="display:none;"' : $display = ''; // Whatsapp button is made visible via js when opened on mobile devices
|
461 |
|
462 |
-
|
463 |
-
|
|
|
|
|
|
|
|
|
464 |
$output .= $onoffswitch;
|
465 |
$output .= $startsecondaryshares;
|
466 |
|
459 |
|
460 |
$enablednetworks[$key]['id'] == 'whatsapp' ? $display = 'style="display:none;"' : $display = ''; // Whatsapp button is made visible via js when opened on mobile devices
|
461 |
|
462 |
+
// Lets use the data attribute to prevent that pininit.js is overwriting our pinterest button PR https://secure.helpscout.net/conversation/257066283/954/?folderId=924740
|
463 |
+
if ('pinterest' === $enablednetworks[$key]['id'] ) {
|
464 |
+
$output .= '<a ' . $display . ' class="mashicon-' . $enablednetworks[$key]['id'] . $class_size . $class_margin . $class_center . $class_style . '" href="#" data-mashsb-url="'. arrNetworks( $enablednetworks[$key]['id'], $is_shortcode ) . '" target="_blank" rel="nofollow"><span class="icon"></span><span class="text">' . $name . '</span></a>';
|
465 |
+
} else {
|
466 |
+
$output .= '<a ' . $display . ' class="mashicon-' . $enablednetworks[$key]['id'] . $class_size . $class_margin . $class_center . $class_style . '" href="' . arrNetworks( $enablednetworks[$key]['id'], $is_shortcode ) . '" target="_blank" rel="nofollow"><span class="icon"></span><span class="text">' . $name . '</span></a>';
|
467 |
+
}
|
468 |
$output .= $onoffswitch;
|
469 |
$output .= $startsecondaryshares;
|
470 |
|
mashshare.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* Description: Mashshare is a Share functionality inspired by the the great website Mashable for Facebook and Twitter. More networks available.
|
7 |
* Author: René Hermenau
|
8 |
* Author URI: https://www.mashshare.net
|
9 |
-
* Version: 3.2.
|
10 |
* Text Domain: mashsb
|
11 |
* Domain Path: /languages
|
12 |
* Credits: Thanks go to Pippin Williamson and the edd team. When we started with Mashshare we decided to use the EDD code base and
|
@@ -37,7 +37,7 @@ if( !defined( 'ABSPATH' ) )
|
|
37 |
|
38 |
// Plugin version
|
39 |
if( !defined( 'MASHSB_VERSION' ) ) {
|
40 |
-
define( 'MASHSB_VERSION', '3.2.
|
41 |
}
|
42 |
|
43 |
// Debug mode
|
6 |
* Description: Mashshare is a Share functionality inspired by the the great website Mashable for Facebook and Twitter. More networks available.
|
7 |
* Author: René Hermenau
|
8 |
* Author URI: https://www.mashshare.net
|
9 |
+
* Version: 3.2.7
|
10 |
* Text Domain: mashsb
|
11 |
* Domain Path: /languages
|
12 |
* Credits: Thanks go to Pippin Williamson and the edd team. When we started with Mashshare we decided to use the EDD code base and
|
37 |
|
38 |
// Plugin version
|
39 |
if( !defined( 'MASHSB_VERSION' ) ) {
|
40 |
+
define( 'MASHSB_VERSION', '3.2.7' );
|
41 |
}
|
42 |
|
43 |
// Debug mode
|
readme.txt
CHANGED
@@ -9,7 +9,7 @@ License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
|
9 |
Tags: Share buttons, Social Sharing, social media, Facebook, Twitter, Subscribe, Traffic posts, pages, widget, social share buttons, analytics, email
|
10 |
Requires at least: 3.6+
|
11 |
Tested up to: 4.7
|
12 |
-
Stable tag: 3.2.
|
13 |
|
14 |
Social Media Share Buttons for Twitter, Facebook and other social networks. Highly customizable Social Media ecosystem
|
15 |
|
@@ -319,6 +319,14 @@ Read here more FAQ: [https://www.mashshare.net/faq/](https://www.mashshare.net/f
|
|
319 |
|
320 |
== Changelog ==
|
321 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
322 |
= 3.2.5 =
|
323 |
* Fix: Fix a bug where only for http schemed urls the shares are returned. This happens only when no FB APP secret is used.
|
324 |
* Fix: Default table options are not stored on plugin update
|
9 |
Tags: Share buttons, Social Sharing, social media, Facebook, Twitter, Subscribe, Traffic posts, pages, widget, social share buttons, analytics, email
|
10 |
Requires at least: 3.6+
|
11 |
Tested up to: 4.7
|
12 |
+
Stable tag: 3.2.7
|
13 |
|
14 |
Social Media Share Buttons for Twitter, Facebook and other social networks. Highly customizable Social Media ecosystem
|
15 |
|
319 |
|
320 |
== Changelog ==
|
321 |
|
322 |
+
= 3.2.7 =
|
323 |
+
* Tweak: Remove FB access token generator
|
324 |
+
|
325 |
+
= 3.2.6 =
|
326 |
+
* Fix: Google and Facebook share count not calculated correctly
|
327 |
+
* Fix: pinit.js converts pinterest button into a pinterest native icon. Needs MashShare Networks 2.3.9 or later!
|
328 |
+
* Tweak: Remove admin notice for creating Facebook Access Token
|
329 |
+
|
330 |
= 3.2.5 =
|
331 |
* Fix: Fix a bug where only for http schemed urls the shares are returned. This happens only when no FB APP secret is used.
|
332 |
* Fix: Default table options are not stored on plugin update
|