Skip to content

Instantly share code, notes, and snippets.

@aron
Created June 27, 2011 08:59
Show Gist options
  • Save aron/1048540 to your computer and use it in GitHub Desktop.
Save aron/1048540 to your computer and use it in GitHub Desktop.
.annotator-notice,.annotator-filter *,.annotator-widget *{font-family:"Helvetica Neue",Arial,Helvetica,sans-serif!important;font-weight:normal!important;text-align:left!important;margin:0!important;padding:0!important;background:none!important;-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;transition:none!important;-moz-box-shadow:none!important;-webkit-box-shadow:none!important;-o-box-shadow:none!important;box-shadow:none!important;color:#909090!important;!important}.annotator-adder{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAA3CAYAAADuQbOpAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MEVGMDAzMUQzOEYxMTFFMDlEMzBEQjFGNjc4QjA5NjAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MEVGMDAzMUUzOEYxMTFFMDlEMzBEQjFGNjc4QjA5NjAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowRUYwMDMxQjM4RjExMUUwOUQzMERCMUY2NzhCMDk2MCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowRUYwMDMxQzM4RjExMUUwOUQzMERCMUY2NzhCMDk2MCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqTirkQAABk0SURBVHja7FwJdBTH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')!important;background-repeat:no-repeat!important;!important}.annotator-resize,.annotator-widget::after,.annotator-editor a::after,.annotator-viewer .annotator-controls button,.annotator-filter .annotator-filter-navigation button::after,.annotator-filter .annotator-filter-property .annotator-filter-clear{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAEiCAYAAAD0w4JOAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTgzMTc5QkE0NEQ0MTFFMDg0NThDMTEyQTJBNDEwMkUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTgzMTc5QkI0NEQ0MTFFMDg0NThDMTEyQTJBNDEwMkUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0QTgyRjZDRDQ0RDMxMUUwODQ1OEMxMTJBMkE0MTAyRSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0QTgyRjZDRTQ0RDMxMUUwODQ1OEMxMTJBMkE0MTAyRSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvMEaMUAAA9eSURBVHja7JsJVBRX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')!important;background-repeat:no-repeat!important;!important}.annotator-hl{background:rgba(255,255,10,0.3)!important;!important}.annotator-wrapper{position:relative!important;!important}.annotator-adder,.annotator-outer,.annotator-notice{z-index:9999!important;!important}.annotator-adder,.annotator-outer,.annotator-widget,.annotator-notice{position:absolute!important;font-size:10px!important;line-height:1!important;!important}.annotator-hide{display:none!important;visibility:hidden!important;!important}.annotator-adder{margin-top:-41px!important;margin-left:-25px!important;width:50px!important;height:55px!important;background-position:left top!important;!important}.annotator-adder:hover{background-position:center top!important;!important}.annotator-adder:active{background-position:center right!important;!important}.annotator-adder button{display:block!important;width:36px!important;height:41px!important;margin:0 auto!important;border:none!important;background:none!important;text-indent:-999em!important;cursor:pointer!important;!important}.annotator-outer{width:0!important;height:0!important;!important}.annotator-widget{margin:0!important;padding:0!important;bottom:8px!important;left:-18px!important;min-width:265px!important;background-color:rgba(251,251,251,0.98)!important;border:1px solid rgba(122,122,122,0.6)!important;-webkit-border-radius:5px!important;-moz-border-radius:5px!important;border-radius:5px!important;-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.2)!important;-moz-box-shadow:0 5px 15px rgba(0,0,0,0.2)!important;-o-box-shadow:0 5px 15px rgba(0,0,0,0.2)!important;box-shadow:0 5px 15px rgba(0,0,0,0.2)!important;!important}.annotator-invert-x .annotator-widget{left:auto!important;right:-18px!important;!important}.annotator-invert-y .annotator-widget{bottom:auto!important;top:8px!important;!important}.annotator-widget strong{font-weight:bold!important;!important}.annotator-widget .annotator-listing,.annotator-widget .annotator-item{padding:0!important;margin:0!important;list-style:none!important;!important}.annotator-widget::after{content:""!important;display:block!important;width:18px!important;height:10px!important;background-position:0 0!important;position:absolute!important;bottom:-10px!important;left:8px!important;!important}.annotator-invert-x .annotator-widget::after{left:auto!important;right:8px!important;!important}.annotator-invert-y .annotator-widget::after{background-position:0 -15px!important;bottom:auto!important;top:-9px!important;!important}.annotator-widget .annotator-item,.annotator-editor .annotator-item input,.annotator-editor .annotator-item textarea{position:relative!important;font-size:12px!important;!important}.annotator-viewer .annotator-item{border-top:2px solid rgba(122,122,122,0.2)!important;!important}.annotator-widget .annotator-item:first-child{border-top:none!important;!important}.annotator-editor .annotator-item,.annotator-viewer div{border-top:1px solid rgba(133,133,133,0.11)!important;!important}.annotator-viewer div{padding:6px 6px!important;!important}.annotator-viewer .annotator-item ol,.annotator-viewer .annotator-item ul{padding:4px 16px!important;!important}.annotator-viewer div:first-of-type,.annotator-editor .annotator-item:first-child textarea{padding-top:12px!important;padding-bottom:12px!important;color:#3c3c3c!important;font-size:13px!important;font-style:italic!important;line-height:1.3!important;border-top:none!important;!important}.annotator-viewer .annotator-controls{position:relative!important;top:5px!important;right:5px!important;padding-left:5px!important;opacity:0!important;-webkit-transition:opacity .2s ease-in!important;-moz-transition:opacity .2s ease-in!important;-o-transition:opacity .2s ease-in!important;transition:opacity .2s ease-in!important;float:right!important;!important}.annotator-viewer li:hover .annotator-controls,.annotator-viewer li .annotator-controls.annotator-visible{opacity:1!important;!important}.annotator-viewer .annotator-controls button{cursor:pointer!important;display:inline-block!important;width:13px!important;height:13px!important;margin-left:2px!important;border:none!important;opacity:.2!important;text-indent:-900em!important;background-color:transparent!important;outline:none!important;!important}.annotator-viewer .annotator-controls button:hover,.annotator-viewer .annotator-controls button:focus{opacity:.9!important;!important}.annotator-viewer .annotator-controls button:active{opacity:1!important;!important}.annotator-viewer .annotator-controls button[disabled]{display:none!important;!important}.annotator-viewer .annotator-controls .annotator-edit{background-position:0 -60px!important;!important}.annotator-viewer .annotator-controls .annotator-delete{background-position:0 -75px!important;!important}.annotator-editor .annotator-item{position:relative!important;!important}.annotator-editor .annotator-item label{top:0!important;display:inline!important;cursor:pointer!important;!important}.annotator-editor .annotator-item input,.annotator-editor .annotator-item textarea{display:block!important;min-width:100%!important;padding:10px 8px!important;border:none!important;margin:0!important;color:#3c3c3c!important;background:none!important;-webkit-box-sizing:border-box!important;-moz-box-sizing:border-box!important;-o-box-sizing:border-box!important;box-sizing:border-box!important;resize:none!important;!important}.annotator-editor .annotator-item textarea::-webkit-scrollbar{height:8px!important;width:8px!important;!important}.annotator-editor .annotator-item textarea::-webkit-scrollbar-track-piece{margin:13px 0 3px!important;background-color:#e5e5e5!important;-webkit-border-radius:4px!important;!important}.annotator-editor .annotator-item textarea::-webkit-scrollbar-thumb:vertical{height:25px!important;background-color:#ccc!important;-webkit-border-radius:4px!important;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1)!important;!important}.annotator-editor .annotator-item textarea::-webkit-scrollbar-thumb:horizontal{width:25px!important;background-color:#ccc!important;-webkit-border-radius:4px!important;!important}.annotator-editor .annotator-item:first-child textarea{min-height:5.5em!important;-webkit-border-radius:5px 5px 0 0!important;-moz-border-radius:5px 5px 0 0!important;-o-border-radius:5px 5px 0 0!important;border-radius:5px 5px 0 0!important;!important}.annotator-editor .annotator-item input:focus,.annotator-editor .annotator-item textarea:focus{background-color:#f3f3f3!important;outline:none!important;!important}.annotator-editor .annotator-item input[type=radio],.annotator-editor .annotator-item input[type=checkbox]{width:auto!important;min-width:0!important;padding:0!important;display:inline!important;margin:0 4px 0 0!important;cursor:pointer!important;!important}.annotator-editor .annotator-checkbox{padding:8px 6px!important;!important}.annotator-filter,.annotator-filter .annotator-filter-navigation button,.annotator-editor .annotator-controls{text-align:right!important;padding:3px!important;border-top:1px solid #d4d4d4!important;background-color:#d4d4d4!important;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),color-stop(0.6,#dcdcdc),to(#d2d2d2))!important;background-image:-moz-linear-gradient(-90deg,#f5f5f5,#dcdcdc 60%,#d2d2d2)!important;background-image:-webkit-linear-gradient(-90deg,#f5f5f5,#dcdcdc 60%,#d2d2d2)!important;background-image:linear-gradient(-90deg,#f5f5f5,#dcdcdc 60%,#d2d2d2)!important;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.7),inset -1px 0 0 rgba(255,255,255,0.7),inset 0 1px 0 rgba(255,255,255,0.7)!important;-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.7),inset -1px 0 0 rgba(255,255,255,0.7),inset 0 1px 0 rgba(255,255,255,0.7)!important;-o-box-shadow:inset 1px 0 0 rgba(255,255,255,0.7),inset -1px 0 0 rgba(255,255,255,0.7),inset 0 1px 0 rgba(255,255,255,0.7)!important;box-shadow:inset 1px 0 0 rgba(255,255,255,0.7),inset -1px 0 0 rgba(255,255,255,0.7),inset 0 1px 0 rgba(255,255,255,0.7)!important;-webkit-border-radius:0 0 5px 5px!important;-moz-border-radius:0 0 5px 5px!important;-o-border-radius:0 0 5px 5px!important;border-radius:0 0 5px 5px!important;!important}.annotator-invert-y .annotator-controls{border-top:none!important;border-bottom:1px solid #b4b4b4!important;-webkit-border-radius:5px 5px 0 0!important;-moz-border-radius:5px 5px 0 0!important;-o-border-radius:5px 5px 0 0!important;border-radius:5px 5px 0 0!important;!important}.annotator-editor a,.annotator-filter .annotator-filter-property label{position:relative!important;display:inline-block!important;padding:0 6px 0 22px!important;color:#363636!important;text-shadow:0 1px 0 rgba(255,255,255,0.75)!important;text-decoration:none!important;line-height:24px!important;font-size:12px!important;font-weight:bold!important;border:1px solid #a2a2a2!important;background-color:#d4d4d4!important;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),color-stop(0.5,#d2d2d2),color-stop(0.5,#bebebe),to(#d2d2d2))!important;background-image:-moz-linear-gradient(-90deg,#f5f5f5,#d2d2d2 50%,#bebebe 50%,#d2d2d2)!important;background-image:-webkit-linear-gradient(-90deg,#f5f5f5,#d2d2d2 50%,#bebebe 50%,#d2d2d2)!important;background-image:linear-gradient(-90deg,#f5f5f5,#d2d2d2 50%,#bebebe 50%,#d2d2d2)!important;-webkit-box-shadow:inset 0 0 5px rgba(255,255,255,0.2),inset 0 0 1px rgba(255,255,255,0.8)!important;-moz-box-shadow:inset 0 0 5px rgba(255,255,255,0.2),inset 0 0 1px rgba(255,255,255,0.8)!important;-o-box-shadow:inset 0 0 5px rgba(255,255,255,0.2),inset 0 0 1px rgba(255,255,255,0.8)!important;box-shadow:inset 0 0 5px rgba(255,255,255,0.2),inset 0 0 1px rgba(255,255,255,0.8)!important;-webkit-border-radius:5px!important;-moz-border-radius:5px!important;-o-border-radius:5px!important;border-radius:5px!important;!important}.annotator-editor a::after{position:absolute!important;top:50%!important;left:5px!important;display:block!important;content:""!important;width:15px!important;height:15px!important;margin-top:-7px!important;background-position:0 -90px!important;!important}.annotator-editor a:hover,.annotator-editor a:focus,.annotator-editor a.annotator-focus,.annotator-filter .annotator-filter-active label,.annotator-filter .annotator-filter-navigation button:hover{outline:none!important;border-color:#435aa0!important;background-color:#3865f9!important;background-image:-webkit-gradient(linear,left top,left bottom,from(#7691fb),color-stop(0.5,#5075fb),color-stop(0.5,#3865f9),to(#3665fa))!important;background-image:-moz-linear-gradient(-90deg,#7691fb,#5075fb 50%,#3865f9 50%,#3665fa)!important;background-image:-webkit-linear-gradient(-90deg,#7691fb,#5075fb 50%,#3865f9 50%,#3665fa)!important;background-image:linear-gradient(-90deg,#7691fb,#5075fb 50%,#3865f9 50%,#3665fa)!important;color:#fff!important;text-shadow:0 -1px 0 rgba(0,0,0,0.42)!important;!important}.annotator-editor a:hover::after,.annotator-editor a:focus::after{margin-top:-8px!important;background-position:0 -105px!important;!important}.annotator-editor a:active,.annotator-filter .annotator-filter-navigation button:active{border-color:#700c49!important;background-color:#d12e8e!important;background-image:-webkit-gradient(linear,left top,left bottom,from(#fc7cca),color-stop(0.5,#e85db2),color-stop(0.5,#d12e8e),to(#ff009c))!important;background-image:-moz-linear-gradient(-90deg,#fc7cca,#e85db2 50%,#d12e8e 50%,#ff009c)!important;background-image:-webkit-linear-gradient(-90deg,#fc7cca,#e85db2 50%,#d12e8e 50%,#ff009c)!important;background-image:linear-gradient(-90deg,#fc7cca,#e85db2 50%,#d12e8e 50%,#ff009c)!important;!important}.annotator-editor a.annotator-save::after{background-position:0 -120px!important;!important}.annotator-editor a.annotator-save:hover::after,.annotator-editor a.annotator-save:focus::after,.annotator-editor a.annotator-save.annotator-focus::after{margin-top:-8px!important;background-position:0 -135px!important;!important}.annotator-editor .annotator-widget::after{background-position:0 -30px!important;!important}.annotator-editor.annotator-invert-y .annotator-widget::after{background-position:0 -45px!important;height:11px!important;!important}.annotator-resize{position:absolute!important;top:0!important;right:0!important;width:12px!important;height:12px!important;background-position:2px -150px!important;!important}.annotator-invert-x .annotator-resize{right:auto!important;left:0!important;background-position:0 -195px!important;!important}.annotator-invert-y .annotator-resize{top:auto!important;bottom:0!important;background-position:2px -165px!important;!important}.annotator-invert-y.annotator-invert-x .annotator-resize{background-position:0 -180px!important;!important}.annotator-notice{color:#fff!important;position:absolute!important;position:fixed!important;top:-54px!important;left:0!important;width:100%!important;font-size:14px!important;line-height:50px!important;text-align:center!important;background:black!important;background:rgba(0,0,0,0.9)!important;border-bottom:4px solid #d4d4d4!important;-webkit-transition:top .4s ease-out!important;-moz-transition:top .4s ease-out!important;-o-transition:top .4s ease-out!important;transition:top .4s ease-out!important;!important}.ie6 .annotator-notice{position:absolute!important;!important}.annotator-notice-success{border-color:#3665f9!important;!important}.annotator-notice-error{border-color:#ff7e00!important;!important}.annotator-notice p{margin:0!important;!important}.annotator-notice a{color:#fff!important;!important}.annotator-notice-show{top:0!important;!important}.annotator-tags{margin-bottom:-2px!important;!important}.annotator-tags .annotator-tag{display:inline-block!important;padding:0 8px!important;margin-bottom:2px!important;line-height:1.6!important;font-weight:bold!important;background-color:#e6e6e6!important;-webkit-border-radius:8px!important;-moz-border-radius:8px!important;-o-border-radius:8px!important;border-radius:8px!important;!important}.annotator-filter{z-index:10000!important;position:fixed!important;top:0!important;right:0!important;left:0!important;text-align:left!important;line-height:0!important;border:none!important;border-bottom:1px solid #878787!important;padding-left:10px!important;padding-right:10px!important;-webkit-border-radius:0!important;-moz-border-radius:0!important;-o-border-radius:0!important;border-radius:0!important;-webkit-box-shadow:inset 0 -1px 0 rgba(255,255,255,0.3)!important;-moz-box-shadow:inset 0 -1px 0 rgba(255,255,255,0.3)!important;-o-box-shadow:inset 0 -1px 0 rgba(255,255,255,0.3)!important;box-shadow:inset 0 -1px 0 rgba(255,255,255,0.3)!important;!important}.annotator-filter strong{font-size:12px!important;font-weight:bold!important;color:#3c3c3c!important;text-shadow:0 1px 0 rgba(255,255,255,0.7)!important;position:relative!important;top:-9px!important;!important}.annotator-filter .annotator-filter-property,.annotator-filter .annotator-filter-navigation{position:relative!important;display:inline-block!important;overflow:hidden!important;line-height:10px!important;padding:2px 0!important;margin-right:8px!important;!important}.annotator-filter .annotator-filter-property label,.annotator-filter .annotator-filter-navigation button{display:block!important;float:left!important;line-height:20px!important;-webkit-border-radius:10px 0 0 10px!important;-moz-border-radius:10px 0 0 10px!important;-o-border-radius:10px 0 0 10px!important;border-radius:10px 0 0 10px!important;!important}.annotator-filter .annotator-filter-property label{padding-left:8px!important;!important}.annotator-filter .annotator-filter-property input{display:block!important;float:right!important;-webkit-appearance:none!important;background-color:#fff!important;border:1px solid #878787!important;border-left:none!important;padding:2px 4px!important;line-height:16px!important;min-height:16px!important;font-size:12px!important;width:150px!important;color:#333!important;background-color:#f8f8f8!important;-webkit-border-radius:0 10px 10px 0!important;-moz-border-radius:0 10px 10px 0!important;-o-border-radius:0 10px 10px 0!important;border-radius:0 10px 10px 0!important;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.2)!important;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.2)!important;-o-box-shadow:inset 0 1px 1px rgba(0,0,0,0.2)!important;box-shadow:inset 0 1px 1px rgba(0,0,0,0.2)!important;!important}.annotator-filter .annotator-filter-property input:focus{outline:none!important;background-color:#fff!important;!important}.annotator-filter .annotator-filter-clear{position:absolute!important;right:3px!important;top:6px!important;border:none!important;text-indent:-900em!important;width:15px!important;height:15px!important;background-position:0 -90px!important;opacity:.4!important;!important}.annotator-filter .annotator-filter-clear:hover,.annotator-filter .annotator-filter-clear:focus{opacity:.8!important;!important}.annotator-filter .annotator-filter-clear:active{opacity:1!important;!important}.annotator-filter .annotator-filter-navigation button{border:1px solid #a2a2a2!important;padding:0!important;text-indent:-900px!important;width:20px!important;min-height:22px!important;-webkit-box-shadow:inset 0 0 5px rgba(255,255,255,0.2),inset 0 0 1px rgba(255,255,255,0.8)!important;-moz-box-shadow:inset 0 0 5px rgba(255,255,255,0.2),inset 0 0 1px rgba(255,255,255,0.8)!important;-o-box-shadow:inset 0 0 5px rgba(255,255,255,0.2),inset 0 0 1px rgba(255,255,255,0.8)!important;box-shadow:inset 0 0 5px rgba(255,255,255,0.2),inset 0 0 1px rgba(255,255,255,0.8)!important;!important}.annotator-filter .annotator-filter-navigation button,.annotator-filter .annotator-filter-navigation button:hover,.annotator-filter .annotator-filter-navigation button:focus{color:transparent!important;!important}.annotator-filter .annotator-filter-navigation button::after{position:absolute!important;top:9px!important;left:8px!important;content:""!important;display:block!important;width:7px!important;height:7px!important;background-position:0 -210px!important;!important}.annotator-filter .annotator-filter-navigation button:hover::after{background-position:0 -225px!important;!important}.annotator-filter .annotator-filter-navigation .annotator-filter-next{-webkit-border-radius:0 10px 10px 0!important;-moz-border-radius:0 10px 10px 0!important;-o-border-radius:0 10px 10px 0!important;border-radius:0 10px 10px 0!important;border-left:none!important;!important}.annotator-filter .annotator-filter-navigation .annotator-filter-next::after{left:auto!important;right:9px!important;background-position:0 -240px!important;!important}.annotator-filter .annotator-filter-navigation .annotator-filter-next:hover::after{background-position:0 -256px!important;!important}.annotator-hl-active{background:rgba(255,255,10,0.8)!important;!important}.annotator-hl-filtered{background-color:transparent!important;!important}
(function(){var h,n,b,o,i,l,a,e,d,c,p,r,j;var m=Array.prototype.slice,g=function(s,t){return function(){return s.apply(t,arguments)}},k=Object.prototype.hasOwnProperty,q=function(v,t){for(var s in t){if(k.call(t,s)){v[s]=t[s]}}function u(){this.constructor=v}u.prototype=t.prototype;v.prototype=new u;v.__super__=t.prototype;return v},f=Array.prototype.indexOf||function(u){for(var t=0,s=this.length;t<s;t++){if(this[t]===u){return t}}return -1};if(!(typeof jQuery!=="undefined"&&jQuery!==null?(j=jQuery.fn)!=null?j.jquery:void 0:void 0)){console.error("Annotator requires jQuery: have you included lib/vendor/jquery.js?")}if(!(JSON&&JSON.parse&&JSON.stringify)){console.error("Annotator requires a JSON implementation: have you included lib/vendor/json2.js?")}h=jQuery.sub();h.flatten=function(t){var s;s=function(v){var w,y,x,u;y=[];for(x=0,u=v.length;x<u;x++){w=v[x];y=y.concat(w&&h.isArray(w)?s(w):w)}return y};return s(t)};h.plugin=function(t,s){return jQuery.fn[t]=function(v){var u;u=Array.prototype.slice.call(arguments,1);return this.each(function(){var w;w=h.data(this,t);if(w){return v&&w[v].apply(w,u)}else{w=new s(this,v);return h.data(this,t,w)}})}};h.fn.textNodes=function(){var s;s=function(v){var y,w,u,x,t;if(v&&v.nodeType!==3){x=h(v).contents().get();t=[];for(w=0,u=x.length;w<u;w++){y=x[w];t.push(s(y))}return t}else{return v}};return this.map(function(){return h.flatten(s(this))})};h.fn.xpath=function(s){var t;t=this.map(function(){var v,u,w;w="";v=this;while(v&&v.nodeType===1&&v!==s){u=h(v.parentNode).children(v.tagName).index(v)+1;u=u>1?"["+u+"]":"";w="/"+v.tagName.toLowerCase()+u+w;v=v.parentNode}return w});return t.get()};h.escape=function(s){return s.replace(/&(?!\w+;)/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")};h.fn.escape=function(s){if(arguments.length){return this.html(h.escape(s))}return this.html()};l=["log","debug","info","warn","exception","assert","dir","dirxml","trace","group","groupEnd","groupCollapsed","time","timeEnd","profile","profileEnd","count","clear","table","error","notifyFirebug","firebug","userObjects"];if(typeof console!=="undefined"&&console!==null){if(!(console.group!=null)){console.group=function(s){return console.log("GROUP: ",s)}}if(!(console.groupCollapsed!=null)){console.groupCollapsed=console.group}for(d=0,p=l.length;d<p;d++){i=l[d];if(!(console[i]!=null)){console[i]=function(){return console.log("Not implemented: console."+name)}}}}else{this.console={};for(c=0,r=l.length;c<r;c++){i=l[c];this.console[i]=function(){}}this.console.error=function(){var s;s=1<=arguments.length?m.call(arguments,0):[];return alert("ERROR: "+(s.join(", ")))};this.console.warn=function(){var s;s=1<=arguments.length?m.call(arguments,0):[];return alert("WARNING: "+(s.join(", ")))}}b=(function(){s.prototype.events={};s.prototype.options={};s.prototype.element=null;function s(u,t){this.options=h.extend(true,{},this.options,t);this.element=h(u);this.on=this.subscribe;this.addEvents()}s.prototype.addEvents=function(){var w,y,x,t,v,A,z,u;A=this.events;u=[];for(x in A){y=A[x];z=x.split(" "),t=2<=z.length?m.call(z,0,v=z.length-1):(v=0,[]),w=z[v++];u.push(this.addEvent(t.join(" "),w,y))}return u};s.prototype.addEvent=function(t,v,w){var x,u;x=g(function(){return this[w].apply(this,arguments)},this);u=typeof t==="string"&&t.replace(/\s+/g,"")==="";if(u){t=this.element}if(typeof t==="string"){this.element.delegate(t,v,x)}else{if(this.isCustomEvent(v)){this.subscribe(v,x)}else{h(t).bind(v,x)}}return this};s.prototype.isCustomEvent=function(u){var t;t="blur focus focusin focusout load resize scroll unload click dblclick\nmousedown mouseup mousemove mouseover mouseout mouseenter mouseleave\nchange select submit keydown keypress keyup error".split(/[^a-z]+/);u=u.split(".")[0];return h.inArray(u,t)===-1};s.prototype.publish=function(){this.element.trigger.apply(this.element,arguments);return this};s.prototype.subscribe=function(t,v){var u;u=function(){return v.apply(this,[].slice.call(arguments,1))};u.guid=v.guid=(h.guid+=1);this.element.bind(t,u);return this};s.prototype.unsubscribe=function(){this.element.unbind.apply(this.element,arguments);return this};return s})();o={};o.sniff=function(s){if(s.commonAncestorContainer!=null){return new o.BrowserRange(s)}else{if(typeof s.start==="string"){return new o.SerializedRange(s)}else{if(s.start&&typeof s.start==="object"){return new o.NormalizedRange(s)}else{console.error("Couldn't not sniff range type");return false}}}};o.BrowserRange=(function(){function s(t){this.commonAncestorContainer=t.commonAncestorContainer;this.startContainer=t.startContainer;this.startOffset=t.startOffset;this.endContainer=t.endContainer;this.endOffset=t.endOffset}s.prototype.normalize=function(B){var A,w,C,z,v,u,y,t,x;if(this.tainted){console.error("You may only call normalize() once on a BrowserRange!");return false}else{this.tainted=true}u={};C={};x=["start","end"];for(y=0,t=x.length;y<t;y++){v=x[y];w=this[v+"Container"];z=this[v+"Offset"];if(w.nodeType===1){A=w.childNodes[z];w=A||w.childNodes[z-1];while(w.nodeType!==3){w=w.firstChild}z=A?0:w.nodeValue.length}u[v]=w;u[v+"Offset"]=z}C.start=u.startOffset>0?u.start.splitText(u.startOffset):u.start;if(u.start===u.end){if((u.endOffset-u.startOffset)<C.start.nodeValue.length){C.start.splitText(u.endOffset-u.startOffset)}C.end=C.start}else{if(u.endOffset<u.end.nodeValue.length){u.end.splitText(u.endOffset)}C.end=u.end}C.commonAncestor=this.commonAncestorContainer;while(C.commonAncestor.nodeType!==1){C.commonAncestor=C.commonAncestor.parentNode}return new o.NormalizedRange(C)};s.prototype.serialize=function(t,u){return this.normalize(t).serialize(t,u)};return s})();o.NormalizedRange=(function(){function s(t){this.commonAncestor=t.commonAncestor;this.start=t.start;this.end=t.end}s.prototype.normalize=function(t){return this};s.prototype.limit=function(x){var t,w,u,v,z,y;t=h.grep(this.textNodes(),function(A){return A.parentNode===x||h.contains(x,A.parentNode)});if(!t.length){return null}this.start=t[0];this.end=t[t.length-1];u=h(this.start).parents();y=h(this.end).parents();for(v=0,z=y.length;v<z;v++){w=y[v];if(u.index(w)!==-1){this.commonAncestor=w;break}}return this};s.prototype.serialize=function(v,w){var u,t,x;t=function(C,B){var A,z,E,H,G,F,D,y;if(w){H=h(C).parents(":not("+w+")").eq(0)}else{H=h(C).parent()}F=H.xpath(v)[0];G=H.textNodes();z=G.slice(0,G.index(C));E=0;for(D=0,y=z.length;D<y;D++){A=z[D];E+=A.nodeValue.length}if(B){return[F,E+C.nodeValue.length]}else{return[F,E]}};x=t(this.start);u=t(this.end,true);return new o.SerializedRange({start:x[0],end:u[0],startOffset:x[1],endOffset:u[1]})};s.prototype.text=function(){var t;return((function(){var v,x,w,u;w=this.textNodes();u=[];for(v=0,x=w.length;v<x;v++){t=w[v];u.push(t.nodeValue)}return u}).call(this)).join("")};s.prototype.textNodes=function(){var t,w,u,v;u=h(this.commonAncestor).textNodes();v=[u.index(this.start),u.index(this.end)],w=v[0],t=v[1];return h.makeArray(u.slice(w,(t+1)||9000000000))};return s})();o.SerializedRange=(function(){function s(t){this.start=t.start;this.startOffset=t.startOffset;this.end=t.end;this.endOffset=t.endOffset}s.prototype.normalize=function(G){var K,C,B,I,z,E,F,H,D,A,y,u,t,L,J,x,w,v;E=function(M){return document.evaluate(M,document,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue};H=h(G).xpath()[0];A=this.start.split("/");B=this.end.split("/");C=[];D={};for(I=0,x=A.length;0<=x?I<x:I>x;0<=x?I++:I--){if(A[I]===B[I]){C.push(A[I])}else{break}}K=H+C.join("/");D.commonAncestorContainer=E(K);if(!D.commonAncestorContainer){console.error("Error deserializing range: can't find XPath '"+K+"'. Is this the right document?");return null}w=["start","end"];for(u=0,L=w.length;u<L;u++){F=w[u];z=0;v=h(E(H+this[F])).textNodes();for(t=0,J=v.length;t<J;t++){y=v[t];if(z+y.nodeValue.length>=this[F+"Offset"]){D[F+"Container"]=y;D[F+"Offset"]=this[F+"Offset"]-z;break}else{z+=y.nodeValue.length}}}return new o.BrowserRange(D).normalize(G)};s.prototype.serialize=function(t,u){return this.normalize(t).serialize(t,u)};s.prototype.toObject=function(){return{start:this.start,startOffset:this.startOffset,end:this.end,endOffset:this.endOffset}};return s})();a={getGlobal:function(){return(function(){return this})()},mousePosition:function(s,u){var t;t=h(u).offset();return{top:s.pageY-t.top,left:s.pageX-t.left}}};e=this.Annotator;n=(function(){q(s,b);s.prototype.events={".annotator-adder button click":"onAdderClick",".annotator-adder button mousedown":"onAdderMousedown",".annotator-hl mouseover":"onHighlightMouseover",".annotator-hl mouseout":"startViewerHideTimer"};s.prototype.html={hl:'<span class="annotator-hl"></span>',adder:'<div class="annotator-adder"><button>Annotate</button></div>',wrapper:'<div class="annotator-wrapper"></div>'};s.prototype.options={};s.prototype.plugins={};s.prototype.editor=null;s.prototype.viewer=null;s.prototype.selectedRanges=null;s.prototype.mouseIsDown=false;s.prototype.ignoreMouseup=false;s.prototype.viewerHideTimer=null;function s(v,u){this.onDeleteAnnotation=g(this.onDeleteAnnotation,this);this.onEditAnnotation=g(this.onEditAnnotation,this);this.onAdderClick=g(this.onAdderClick,this);this.onAdderMousedown=g(this.onAdderMousedown,this);this.onHighlightMouseover=g(this.onHighlightMouseover,this);this.checkForEndSelection=g(this.checkForEndSelection,this);this.checkForStartSelection=g(this.checkForStartSelection,this);this.clearViewerHideTimer=g(this.clearViewerHideTimer,this);this.startViewerHideTimer=g(this.startViewerHideTimer,this);this.showViewer=g(this.showViewer,this);this.onEditorSubmit=g(this.onEditorSubmit,this);this.onEditorHide=g(this.onEditorHide,this);this.showEditor=g(this.showEditor,this);var t,w,x;s.__super__.constructor.apply(this,arguments);this.plugins={};if(!s.supported()){return this}this._setupDocumentEvents()._setupWrapper()._setupViewer()._setupEditor();x=this.html;for(t in x){w=x[t];if(t!=="wrapper"){this[t]=h(w).appendTo(this.wrapper).hide()}}}s.prototype._setupWrapper=function(){this.wrapper=h(this.html.wrapper);this.element.find("script").remove();this.element.wrapInner(this.wrapper);this.wrapper=this.element.find(".annotator-wrapper");return this};s.prototype._setupViewer=function(){this.viewer=new s.Viewer();this.viewer.hide().on("edit",this.onEditAnnotation).on("delete",this.onDeleteAnnotation).addField({load:g(function(u,t){h(u).escape(t.text||"");return this.publish("annotationViewerTextField",[u,t])},this)}).element.appendTo(this.wrapper).bind({mouseover:this.clearViewerHideTimer,mouseout:this.startViewerHideTimer});return this};s.prototype._setupEditor=function(){this.editor=new s.Editor();this.editor.hide().on("hide",this.onEditorHide).on("save",this.onEditorSubmit).addField({type:"textarea",label:"Comments\u2026",load:function(u,t){return h(u).find("textarea").val(t.text||"")},submit:function(u,t){return t.text=h(u).find("textarea").val()}});this.editor.element.appendTo(this.wrapper);return this};s.prototype._setupDocumentEvents=function(){h(document).bind({mouseup:this.checkForEndSelection,mousedown:this.checkForStartSelection});return this};s.prototype.getSelectedRanges=function(){var w,u,t,v;v=a.getGlobal().getSelection();t=[];if(!v.isCollapsed){t=(function(){var y,x;x=[];for(u=0,y=v.rangeCount;0<=y?u<y:u>y;0<=y?u++:u--){w=new o.BrowserRange(v.getRangeAt(u));x.push(w.normalize().limit(this.wrapper[0]))}return x}).call(this)}return h.grep(t,function(x){return x})};s.prototype.createAnnotation=function(){var t;t={};this.publish("beforeAnnotationCreated",[t]);return t};s.prototype.setupAnnotation=function(t,v){var u,z,y,w,x,A;if(v==null){v=true}t.ranges||(t.ranges=this.selectedRanges);z=(function(){var C,E,D,B;D=t.ranges;B=[];for(C=0,E=D.length;C<E;C++){y=D[C];w=o.sniff(y);B.push(w.normalize(this.wrapper[0]))}return B}).call(this);z=h.grep(z,function(B){return B!==null});t.quote=[];t.ranges=[];t.highlights=[];for(x=0,A=z.length;x<A;x++){u=z[x];t.quote.push(h.trim(u.text()));t.ranges.push(u.serialize(this.wrapper[0],".annotator-hl"));h.merge(t.highlights,this.highlightRange(u))}t.quote=t.quote.join(" / ");h(t.highlights).data("annotation",t);if(v){this.publish("annotationCreated",[t])}return t};s.prototype.updateAnnotation=function(t){this.publish("beforeAnnotationUpdated",[t]);this.publish("annotationUpdated",[t]);return t};s.prototype.deleteAnnotation=function(t){var v,u,x,w;w=t.highlights;for(u=0,x=w.length;u<x;u++){v=w[u];h(v).replaceWith(v.childNodes)}this.publish("annotationDeleted",[t]);return t};s.prototype.loadAnnotations=function(u){var v,t;if(u==null){u=[]}t=g(function(y){var A,w,x,z;if(y==null){y=[]}w=y.splice(0,10);for(x=0,z=w.length;x<z;x++){A=w[x];this.setupAnnotation(A,false)}if(y.length>0){return setTimeout((function(){return t(y)}),100)}else{return this.publish("annotationsLoaded",[v])}},this);v=u.slice();if(u.length){t(u)}return this};s.prototype.dumpAnnotations=function(){if(this.plugins.Store){return this.plugins.Store.dumpAnnotations()}else{return console.warn("Can't dump annotations without Store plugin.")}};s.prototype.highlightRange=function(u){var t,v,w;return t=(function(){var y,A,z,x;z=u.textNodes();x=[];for(y=0,A=z.length;y<A;y++){v=z[y];w=this.hl.clone().show();x.push(h(v).wrap(w).parent().get(0))}return x}).call(this)};s.prototype.addPlugin=function(v,u){var t,w;if(this.plugins[v]){console.error("You cannot have more than one instance of any plugin.")}else{t=s.Plugin[v];if(typeof t==="function"){this.plugins[v]=new t(this.element[0],u);this.plugins[v].annotator=this;if(typeof(w=this.plugins[v]).pluginInit==="function"){w.pluginInit()}}else{console.error("Could not load "+v+" plugin. Have you included the appropriate <script> tag?")}}return this};s.prototype.showEditor=function(t,u){this.editor.element.css(u);this.editor.load(t);return this};s.prototype.onEditorHide=function(){this.publish("annotationEditorHidden",[this.editor]);return this.ignoreMouseup=false};s.prototype.onEditorSubmit=function(t){this.publish("annotationEditorSubmit",[this.editor,t]);if(t.ranges===void 0){return this.setupAnnotation(t)}else{return this.updateAnnotation(t)}};s.prototype.showViewer=function(u,t){this.viewer.element.css(t);this.viewer.load(u);return this.publish("annotationViewerShown",[this.viewer,u])};s.prototype.startViewerHideTimer=function(){if(!this.viewerHideTimer){return this.viewerHideTimer=setTimeout((function(t){return t.viewer.hide()}),250,this)}};s.prototype.clearViewerHideTimer=function(){clearTimeout(this.viewerHideTimer);return this.viewerHideTimer=false};s.prototype.checkForStartSelection=function(t){if(!(t&&this.isAnnotator(t.target))){this.startViewerHideTimer();return this.mouseIsDown=true}};s.prototype.checkForEndSelection=function(w){var t,u,v,y,x;this.mouseIsDown=false;if(this.ignoreMouseup){return}this.selectedRanges=this.getSelectedRanges();x=this.selectedRanges;for(v=0,y=x.length;v<y;v++){u=x[v];t=u.commonAncestor;if(this.isAnnotator(t)){return}}if(w&&this.selectedRanges.length){return this.adder.css(a.mousePosition(w,this.wrapper[0])).show()}else{return this.adder.hide()}};s.prototype.isAnnotator=function(t){return !!h(t).parents().andSelf().filter("[class^=annotator-]").not(this.wrapper).length};s.prototype.onHighlightMouseover=function(t){var u;this.clearViewerHideTimer();if(this.mouseIsDown||this.viewer.isShown()){return false}u=h(t.target).parents(".annotator-hl").andSelf().map(function(){return h(this).data("annotation")});return this.showViewer(h.makeArray(u),a.mousePosition(t,this.wrapper[0]))};s.prototype.onAdderMousedown=function(t){if(t!=null){t.preventDefault()}return this.ignoreMouseup=true};s.prototype.onAdderClick=function(u){var t;if(u!=null){u.preventDefault()}t=this.adder.position();this.adder.hide();return this.showEditor(this.createAnnotation(),t)};s.prototype.onEditAnnotation=function(t){var u;u=this.viewer.element.position();this.viewer.hide();return this.showEditor(t,u)};s.prototype.onDeleteAnnotation=function(t){this.viewer.hide();return this.deleteAnnotation(t)};return s})();n.Plugin=(function(){q(s,b);function s(u,t){s.__super__.constructor.apply(this,arguments)}s.prototype.pluginInit=function(){};return s})();n.$=h;n.supported=function(){return(function(){return !!this.getSelection})()};n.noConflict=function(){a.getGlobal().Annotator=e;return this};h.plugin("annotator",n);this.Annotator=n;n.Widget=(function(){q(s,b);s.prototype.classes={hide:"annotator-hide",invert:{x:"annotator-invert-x",y:"annotator-invert-y"}};function s(u,t){s.__super__.constructor.apply(this,arguments);this.classes=h.extend({},n.Widget.prototype.classes,this.classes)}s.prototype.checkOrientation=function(){var w,x,t,v,u;this.resetOrientation();u=h(a.getGlobal());v=this.element.children(":first");x=v.offset();t={top:u.scrollTop(),right:u.width()+u.scrollLeft()};w={top:x.top,right:x.left+v.width()};if((w.top-t.top)<0){this.invertY()}if((w.right-t.right)>0){this.invertX()}return this};s.prototype.resetOrientation=function(){this.element.removeClass(this.classes.invert.x).removeClass(this.classes.invert.y);return this};s.prototype.invertX=function(){this.element.addClass(this.classes.invert.x);return this};s.prototype.invertY=function(){this.element.addClass(this.classes.invert.y);return this};return s})();n.Editor=(function(){q(s,n.Widget);s.prototype.events={"form submit":"submit",".annotator-save click":"submit",".annotator-cancel click":"hide",".annotator-cancel mouseover":"onCancelButtonMouseover","textarea keydown":"processKeypress"};s.prototype.classes={hide:"annotator-hide",focus:"annotator-focus"};s.prototype.html='<div class="annotator-outer annotator-editor">\n <form class="annotator-widget">\n <ul class="annotator-listing"></ul>\n <div class="annotator-controls">\n <a href="#cancel" class="annotator-cancel">Cancel</a>\n <a href="#save" class="annotator-save annotator-focus">Save</a>\n </div>\n <span class="annotator-resize"></span>\n </form>\n<div>';s.prototype.options={};function s(t){this.onCancelButtonMouseover=g(this.onCancelButtonMouseover,this);this.processKeypress=g(this.processKeypress,this);this.submit=g(this.submit,this);this.load=g(this.load,this);this.hide=g(this.hide,this);this.show=g(this.show,this);s.__super__.constructor.call(this,h(this.html)[0],t);this.fields=[];this.annotation={};this.setupDragabbles()}s.prototype.show=function(t){if(t!=null){t.preventDefault()}this.element.removeClass(this.classes.hide);this.element.find(".annotator-save").addClass(this.classes.focus);this.element.find(":input:first").focus();return this.checkOrientation().publish("show")};s.prototype.hide=function(t){if(t!=null){t.preventDefault()}this.element.addClass(this.classes.hide);return this.publish("hide")};s.prototype.load=function(t){var v,u,x,w;this.annotation=t;this.publish("load",[this.annotation]);w=this.fields;for(u=0,x=w.length;u<x;u++){v=w[u];v.load(v.element,this.annotation)}return this.show()};s.prototype.submit=function(u){var v,t,x,w;if(u!=null){u.preventDefault()}w=this.fields;for(t=0,x=w.length;t<x;t++){v=w[t];v.submit(v.element,this.annotation)}this.publish("save",[this.annotation]);return this.hide()};s.prototype.addField=function(u){var v,w,t;w=h.extend({id:"annotator-field-"+(new Date()).getTime(),type:"input",label:"",load:function(){},submit:function(){}},u);t=null;v=h('<li class="annotator-item" />');w.element=v[0];switch(w.type){case"textarea":t=h("<textarea />");break;case"input":case"checkbox":t=h("<input />")}v.append(t);t.attr({id:w.id,placeholder:w.label});if(w.type==="checkbox"){t[0].type="checkbox";v.addClass("annotator-checkbox");v.append(h("<label />",{"for":w.id,html:w.label}))}this.element.find("ul:first").append(v);this.fields.push(w);return w.element};s.prototype.checkOrientation=function(){var t,v,u;s.__super__.checkOrientation.apply(this,arguments);u=this.element.find("ul");t=this.element.find(".annotator-controls");v=function(){return u.children().each(function(){return h(this).parent().prepend(this)})};if(this.element.hasClass(this.classes.invert.y)&&u.is(":first-child")){t.insertBefore(u);v()}else{if(t.is(":first-child")){t.insertAfter(u);v()}}return this};s.prototype.processKeypress=function(t){if(t.keyCode===27){return this.hide()}else{if(t.keyCode===13&&!t.shiftKey){return this.submit()}}};s.prototype.onCancelButtonMouseover=function(){return this.element.find("."+this.classes.focus).removeClass(this.classes.focus)};s.prototype.setupDragabbles=function(){var v,C,y,t,x,A,w,u,z,B;t=null;v=this.classes;y=this.element;z=null;u=y.find(".annotator-resize");C=y.find(".annotator-controls");B=false;x=function(D){if(D.target===this){t={element:this,top:D.pageY,left:D.pageX};z=y.find("textarea:first");h(window).bind({"mouseup.annotator-editor-resize":w,"mousemove.annotator-editor-resize":A});return D.preventDefault()}};w=function(){t=null;return h(window).unbind(".annotator-editor-resize")};A=g(function(H){var I,F,E,D,G;if(t&&B===false){I={top:H.pageY-t.top,left:H.pageX-t.left};if(t.element===u[0]){D=z.outerHeight();G=z.outerWidth();F=y.hasClass(v.invert.x)?-1:1;E=y.hasClass(v.invert.y)?1:-1;z.height(D+(I.top*E));z.width(G+(I.left*F));if(z.outerHeight()!==D){t.top=H.pageY}if(z.outerWidth()!==G){t.left=H.pageX}}else{if(t.element===C[0]){y.css({top:parseInt(y.css("top"),10)+I.top,left:parseInt(y.css("left"),10)+I.left});t.top=H.pageY;t.left=H.pageX}}B=true;return setTimeout(function(){return B=false},1000/60)}},this);u.bind("mousedown",x);return C.bind("mousedown",x)};return s})();n.Viewer=(function(){q(s,n.Widget);s.prototype.events={".annotator-edit click":"onEditClick",".annotator-delete click":"onDeleteClick"};s.prototype.classes={hide:"annotator-hide",showControls:"annotator-visible"};s.prototype.html={element:'<div class="annotator-outer annotator-viewer">\n <ul class="annotator-widget annotator-listing"></ul>\n</div>',item:'<li class="annotator-annotation annotator-item">\n <span class="annotator-controls">\n <button class="annotator-edit">Edit</button>\n <button class="annotator-delete">Delete</button>\n </span>\n</li>'};function s(t){this.onDeleteClick=g(this.onDeleteClick,this);this.onEditClick=g(this.onEditClick,this);this.load=g(this.load,this);this.hide=g(this.hide,this);this.show=g(this.show,this);s.__super__.constructor.call(this,h(this.html.element)[0],t);this.item=h(this.html.item)[0];this.fields=[];this.annotations=[]}s.prototype.show=function(u){var t;if(u!=null){u.preventDefault()}t=this.element.find(".annotator-controls").addClass(this.classes.showControls);setTimeout((g(function(){return t.removeClass(this.classes.showControls)},this)),500);this.element.removeClass(this.classes.hide);return this.checkOrientation().publish("show")};s.prototype.isShown=function(){return !this.element.hasClass(this.classes.hide)};s.prototype.hide=function(t){if(t!=null){t.preventDefault()}this.element.addClass(this.classes.hide);return this.publish("hide")};s.prototype.load=function(B){var y,A,F,G,E,z,D,H,C,x,v,t,I,w,u;this.annotations=B||[];C=this.element.find("ul:first").empty();w=this.annotations;for(x=0,t=w.length;x<t;x++){y=w[x];H=h(this.item).clone().appendTo(C).data("annotation",y);F=H.find(".annotator-controls");E=F.find(".annotator-edit");G=F.find(".annotator-delete");A={showEdit:function(){return E.removeAttr("disabled")},hideEdit:function(){return E.attr("disabled","disabled")},showDelete:function(){return G.removeAttr("disabled")},hideDelete:function(){return G.attr("disabled","disabled")}};u=this.fields;for(v=0,I=u.length;v<I;v++){D=u[v];z=h(D.element).clone().appendTo(H)[0];D.load(z,y,A)}}this.publish("load",[this.annotations]);return this.show()};s.prototype.addField=function(t){var u;u=h.extend({load:function(){}},t);u.element=h("<div />")[0];this.fields.push(u);u.element;return this};s.prototype.onEditClick=function(t){return this.onButtonClick(t,"edit")};s.prototype.onDeleteClick=function(t){return this.onButtonClick(t,"delete")};s.prototype.onButtonClick=function(v,t){var u;u=h(v.target).parents(".annotator-annotation");return this.publish(t,[u.data("annotation")])};return s})();n=n||{};n.Notification=(function(){q(s,b);s.prototype.events={click:"hide"};s.prototype.options={html:"<div class='annotator-notice'></div>",classes:{show:"annotator-notice-show",info:"annotator-notice-info",success:"annotator-notice-success",error:"annotator-notice-error"}};function s(t){this.hide=g(this.hide,this);this.show=g(this.show,this);s.__super__.constructor.call(this,h(this.options.html).appendTo(document.body)[0],t)}s.prototype.show=function(u,t){if(t==null){t=n.Notification.INFO}h(this.element).addClass(this.options.classes.show).addClass(this.options.classes[t]).escape(u||"");setTimeout(this.hide,5000);return this};s.prototype.hide=function(){h(this.element).removeClass(this.options.classes.show);return this};return s})();n.Notification.INFO="show";n.Notification.SUCCESS="success";n.Notification.ERROR="error";h(function(){var s;s=new n.Notification;n.showNotification=s.show;return n.hideNotification=s.hide});n.Plugin.Store=(function(){q(s,n.Plugin);s.prototype.events={annotationCreated:"annotationCreated",annotationDeleted:"annotationDeleted",annotationUpdated:"annotationUpdated"};s.prototype.options={prefix:"/store",autoFetch:true,annotationData:{},loadFromSearch:false,urls:{create:"/annotations",read:"/annotations/:id",update:"/annotations/:id",destroy:"/annotations/:id",search:"/search"}};function s(u,t){this._onError=g(this._onError,this);this._onBeforeSend=g(this._onBeforeSend,this);this._onLoadAnnotationsFromSearch=g(this._onLoadAnnotationsFromSearch,this);this._onLoadAnnotations=g(this._onLoadAnnotations,this);this._getAnnotations=g(this._getAnnotations,this);s.__super__.constructor.apply(this,arguments);this.annotations=[]}s.prototype.pluginInit=function(){var t;if(!n.supported()){return}t=this.element.data("annotator:auth");if(t){return t.withToken(this._getAnnotations)}else{return this._getAnnotations()}};s.prototype._getAnnotations=function(){if(this.options.loadFromSearch){return this.loadAnnotationsFromSearch(this.options.loadFromSearch)}else{return this.loadAnnotations()}};s.prototype.annotationCreated=function(t){if(f.call(this.annotations,t)<0){this.registerAnnotation(t);return this._apiRequest("create",t,g(function(u){if(!(u.id!=null)){console.warn("Warning: No ID returned from server for annotation ",t)}return this.updateAnnotation(t,u)},this))}else{return this.updateAnnotation(t,{})}};s.prototype.annotationUpdated=function(t){if(f.call(this.annotations,t)>=0){return this._apiRequest("update",t,(g(function(u){return this.updateAnnotation(t,u)},this)))}};s.prototype.annotationDeleted=function(t){if(f.call(this.annotations,t)>=0){return this._apiRequest("destroy",t,(g(function(){return this.unregisterAnnotation(t)},this)))}};s.prototype.registerAnnotation=function(t){return this.annotations.push(t)};s.prototype.unregisterAnnotation=function(t){return this.annotations.splice(this.annotations.indexOf(t),1)};s.prototype.updateAnnotation=function(t,u){if(f.call(this.annotations,t)<0){console.error("Trying to update unregistered annotation!")}else{h.extend(t,u)}return h(t.highlights).data("annotation",t)};s.prototype.loadAnnotations=function(){return this._apiRequest("read",null,this._onLoadAnnotations)};s.prototype._onLoadAnnotations=function(t){if(t==null){t=[]}this.annotations=t;return this.annotator.loadAnnotations(t.slice())};s.prototype.loadAnnotationsFromSearch=function(t){return this._apiRequest("search",t,this._onLoadAnnotationsFromSearch)};s.prototype._onLoadAnnotationsFromSearch=function(t){if(t==null){t={}}return this._onLoadAnnotations(t.rows||[])};s.prototype.dumpAnnotations=function(){var v,u,x,w,t;w=this.annotations;t=[];for(u=0,x=w.length;u<x;u++){v=w[u];t.push(JSON.parse(this._dataFor(v)))}return t};s.prototype._apiRequest=function(w,x,y){var z,u,v,t;z=x&&x.id;t=this._urlFor(w,z);u=this._apiRequestOptions(w,x,y);v=h.ajax(t,u);v._id=z;v._action=w;return v};s.prototype._apiRequestOptions=function(u,v,w){var t;t={type:this._methodFor(u),beforeSend:this._onBeforeSend,dataType:"json",success:w||function(){},error:this._onError};if(u==="search"){t=h.extend(t,{data:v})}else{t=h.extend(t,{data:v&&this._dataFor(v),contentType:"application/json; charset=utf-8"})}return t};s.prototype._urlFor=function(v,w){var t,u;t=w!=null?"/"+w:"";u=this.options.prefix||"/";u+=this.options.urls[v];u=u.replace(/\/:id/,t);return u};s.prototype._methodFor=function(u){var t;t={create:"POST",read:"GET",update:"PUT",destroy:"DELETE",search:"GET"};return t[u]};s.prototype._dataFor=function(t){var u,v;v=t.highlights;delete t.highlights;h.extend(t,this.options.annotationData);u=JSON.stringify(t);if(v){t.highlights=v}return u};s.prototype._onBeforeSend=function(x){var w,u,v,t;w=this.element.data("annotator:headers");if(w){t=[];for(u in w){v=w[u];t.push(x.setRequestHeader(u,v))}return t}};s.prototype._onError=function(v){var u,t;u=v._action;t="Sorry we could not "+u+" this annotation";if(v._action==="search"){t="Sorry we could not search the store for annotations"}else{if(v._action==="read"&&!v._id){t="Sorry we could not "+u+" the annotations from the store"}}switch(v.status){case 401:t="Sorry you are not allowed to "+u+" this annotation";break;case 404:t="Sorry we could not connect to the annotations store";break;case 500:t="Sorry something went wrong with the annotation store"}n.showNotification(t,n.Notification.ERROR);return console.error("API request failed: '"+v.status+"'")};return s})();n.Plugin.Permissions=(function(){q(s,n.Plugin);s.prototype.events={beforeAnnotationCreated:"addFieldsToAnnotation"};s.prototype.options={showViewPermissionsCheckbox:true,showEditPermissionsCheckbox:true,userId:function(t){return t},userString:function(t){return t},userAuthorize:function(t,u){return this.userId(t)===u},user:"",permissions:{read:[],update:[],"delete":[],admin:[]}};function s(u,t){this.updateViewer=g(this.updateViewer,this);this.updateAnnotationPermissions=g(this.updateAnnotationPermissions,this);this.updatePermissionsField=g(this.updatePermissionsField,this);this.addFieldsToAnnotation=g(this.addFieldsToAnnotation,this);s.__super__.constructor.apply(this,arguments);if(this.options.user){this.setUser(this.options.user);delete this.options.user}}s.prototype.pluginInit=function(){var t,u;if(!n.supported()){return}u=this;t=function(w,v){return function(y,x){return u[w].call(u,v,y,x)}};if(this.options.showViewPermissionsCheckbox===true){this.annotator.editor.addField({type:"checkbox",label:"Allow anyone to <strong>view</strong> this annotation",load:t("updatePermissionsField","read"),submit:t("updateAnnotationPermissions","read")})}if(this.options.showEditPermissionsCheckbox===true){this.annotator.editor.addField({type:"checkbox",label:"Allow anyone to <strong>edit</strong> this annotation",load:t("updatePermissionsField","update"),submit:t("updateAnnotationPermissions","update")})}this.annotator.viewer.addField({load:this.updateViewer});if(this.annotator.plugins.Filter){return this.annotator.plugins.Filter.addFilter({label:"User",property:"user",isFiltered:g(function(x,w){var v,y,A,z;w=this.options.userString(w);if(!(x&&w)){return false}z=x.split(/\s*/);for(y=0,A=z.length;y<A;y++){v=z[y];if(w.indexOf(v)===-1){return false}}return true},this)})}};s.prototype.setUser=function(t){return this.user=t};s.prototype.addFieldsToAnnotation=function(t){if(t){t.permissions=this.options.permissions;if(this.user){return t.user=this.user}}};s.prototype.authorize=function(x,t,u){var v,y,w,z;if(u===void 0){u=this.user}if(t.permissions){y=t.permissions[x]||[];if(y.length===0){return true}for(w=0,z=y.length;w<z;w++){v=y[w];if(this.options.userAuthorize.call(this.options,u,v)){return true}}return false}else{if(t.user){return u&&this.options.userId(u)===t.user}}return true};s.prototype.updatePermissionsField=function(v,x,t){var w,u;x=h(x).show();u=x.find("input").removeAttr("disabled");if(!this.authorize("admin",t)){x.hide()}if(this.authorize(v,t||{},null)){u.attr("checked","checked");w={permissions:this.options.permissions};if(this.authorize(v,w,null)){return u.attr("disabled","disabled")}}else{return u.removeAttr("checked")}};s.prototype.updateAnnotationPermissions=function(v,w,t){var x,u;if(!t.permissions){t.permissions=this.options.permissions}x=v+"-permissions";if(h(w).find("input").is(":checked")){h.data(t,x,t.permissions[v]);return t.permissions[v]=[]}else{u=h.data(t,x);if(u){return t.permissions[v]=u}}};s.prototype.updateViewer=function(w,t,v){var u,x;w=h(w);x=this.options.userString(t.user);if(t.user&&x&&typeof x==="string"){u=n.$.escape(this.options.userString(t.user));w.html(u).addClass("annotator-user")}else{w.remove()}if(t.permissions){if(!this.authorize("update",t)){v.hideEdit()}if(!this.authorize("delete",t)){return v.hideDelete()}}else{if(t.user&&!this.authorize(null,t)){v.hideEdit();return v.hideDelete()}}};return s})();n.Plugin.Unsupported=(function(){q(s,n.Plugin);function s(){s.__super__.constructor.apply(this,arguments)}s.prototype.options={message:"Sorry your current browser does not support the Annotator"};s.prototype.pluginInit=function(){if(!n.supported()){return h(g(function(){n.showNotification(this.options.message);if((window.XMLHttpRequest===void 0)&&(ActiveXObject!==void 0)){return h("html").addClass("ie6")}},this))}};return s})();n.Plugin.Tags=(function(){q(s,n.Plugin);function s(){this.setAnnotationTags=g(this.setAnnotationTags,this);this.updateField=g(this.updateField,this);s.__super__.constructor.apply(this,arguments)}s.prototype.field=null;s.prototype.input=null;s.prototype.pluginInit=function(){if(!n.supported()){return}this.field=this.annotator.editor.addField({label:"Add some tags here\u2026",load:this.updateField,submit:this.setAnnotationTags});this.annotator.viewer.addField({load:this.updateViewer});if(this.annotator.plugins.Filter){this.annotator.plugins.Filter.addFilter({label:"Tag",property:"tags",isFiltered:function(z,B){var y,x,u,C,w,v,t,A;if(z&&(B!=null?B.length:void 0)){u=0;x=z.split(/\s+/g);for(w=0,t=x.length;w<t;w++){y=x[w];for(v=0,A=B.length;v<A;v++){C=B[v];if(C.indexOf(y)!==-1){u+=1}}}}return u===x.length}})}return this.input=h(this.field).find(":input")};s.prototype.parseTags=function(u){var t;u=h.trim(u);t=[];if(u){t=u.split(/\s+/)}return t};s.prototype.stringifyTags=function(t){return t.join(" ")};s.prototype.updateField=function(v,t){var u;u="";if(t.tags){u=this.stringifyTags(t.tags)}return this.input.val(u)};s.prototype.setAnnotationTags=function(u,t){return t.tags=this.parseTags(this.input.val())};s.prototype.updateViewer=function(u,t){u=h(u);if(t.tags&&h.isArray(t.tags)&&t.tags.length){return u.addClass("annotator-tags").html(function(){var v;return v=h.map(t.tags,function(w){return'<span class="annotator-tag">'+n.$.escape(w)+"</span>"}).join(" ")})}else{return u.remove()}};return s})()}).call(this);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment