# HG changeset patch # User cavaliet # Date 1354015950 -3600 # Node ID c62fe82604ef08cc4bc9caaa20dde72f158ab207 # Parent 89e152523cb686787a20c92366e943e5f4107395 first home view and static files diff -r 89e152523cb6 -r c62fe82604ef .hgignore --- a/.hgignore Mon Nov 26 18:42:56 2012 +0100 +++ b/.hgignore Tue Nov 27 12:32:30 2012 +0100 @@ -4,4 +4,6 @@ syntax: regexp ^\.hgcheck$ syntax: regexp +^\.pydevproject$ +syntax: regexp ^integration/js/hashcut\.js$ \ No newline at end of file diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/common.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/common.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,965 @@ +/* fonts */ +@font-face { + font-family: 'Open Sans'; + font-weight: normal; + font-style: normal; + src: local('Open Sans'), local('OpenSans'), + url("fonts/OpenSans-Regular.eot") format("eot"), + url("fonts/OpenSans-Regular.woff") format("woff"), + url("fonts/OpenSans-Regular.ttf") format("truetype"), + url("fonts/OpenSans-Regular.svg#OpenSans-Regular") format("svg"); +} +@font-face { + font-family: 'Open Sans'; + font-weight: normal; + font-style: italic; + src: local('Open Sans Italic'), local('OpenSans-Italic'), + url("fonts/OpenSans-Italic.eot") format("eot"), + url("fonts/OpenSans-Italic.woff") format("woff"), + url("fonts/OpenSans-Italic.ttf") format("truetype"), + url("fonts/OpenSans-Italic.svg#OpenSans-Italic") format("svg"); +} +@font-face { + font-family: 'Open Sans'; + font-weight: 300; + font-style: normal; + src: local('Open Sans Light'), local('OpenSans-Light'), + url("fonts/OpenSans-Light.eot") format("eot"), + url("fonts/OpenSans-Light.woff") format("woff"), + url("fonts/OpenSans-Light.ttf") format("truetype"), + url("fonts/OpenSans-Light.svg#OpenSans-Regular") format("svg"); +} +@font-face { + font-family: 'Open Sans'; + font-weight: 600; + font-style: normal; + src: local('Open Sans Semibold'), local('OpenSans-Semibold'), + url("fonts/OpenSans-Semibold.eot") format("eot"), + url("fonts/OpenSans-Semibold.woff") format("woff"), + url("fonts/OpenSans-Semibold.ttf") format("truetype"), + url("fonts/OpenSans-Semibold.svg#OpenSans-Semibold") format("svg"); +} +@font-face { + font-family: 'Open Sans'; + font-weight: 600; + font-style: italic; + src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), + url("fonts/OpenSans-SemiboldItalic.eot") format("eot"), + url("fonts/OpenSans-SemiboldItalic.woff") format("woff"), + url("fonts/OpenSans-SemiboldItalic.ttf") format("truetype"), + url("fonts/OpenSans-SemiboldItalic.svg#OpenSans-SemiboldItalic") format("svg"); +} +@font-face { + font-family: 'Open Sans'; + font-weight: bold; + font-style: normal; + src: local('Open Sans Bold'), local('OpenSans-Bold'), + url("fonts/OpenSans-Bold.eot") format("eot"), + url("fonts/OpenSans-Bold.woff") format("woff"), + url("fonts/OpenSans-Bold.ttf") format("truetype"), + url("fonts/OpenSans-Bold.svg#OpenSans-Bold") format("svg"); +} +/* custom reset */ +body{ + height: 100%; + font-family: 'Open Sans'; +} +a{ + color:#000; + text-decoration: none; +} +textarea { + resize: none; +} + +input, textarea { + font-family: 'Open Sans'; +} + +/* common */ +.wrapper{ + background-color: #FFF; + background-image: url(../img/bg.png); + background-repeat: repeat-x; +} +.wrap{ + min-height:100%; + width: 960px; + margin: 0 auto; + font-weight: 400; + color:#333333; + font-size: 13px; + height: 100%; +} +.wrap-header-top{ + padding-top: 5px; + background-color: #370078; + height: 53px; + margin-bottom: 1px; +} +.wrap-header-top-content{ + width: 960px; + margin: 0 auto; +} +/* header - title-video-wrap */ +.title-video-wrap{ + width: 380px; +} +.title-video-wrap .title-video { + margin-top: 10px; + left: 0; + font-size: 18px; + font-weight: bold; + color: #30036d; + text-decoration: underline; +} +.title-video-wrap .title-video:hover { + text-decoration: none; +} +.title-video-wrap .open-popin { + color: #30036d; + background-image: url(../img/pencil-icon.png); + background-repeat: no-repeat; + background-position: right 6px; + padding-right: 20px; + min-height: 20px; +} +.title-header{ + width: 460px; + float: left; + height: 60px; +} + +.wrap-header{ + background-color: #e2dbfd; +} +.header{ + position: relative; + width: 960px; + margin: 0 auto; + height: 60px; +} +.header .title-video-wrap, +.header h1, +.header .profil-wrap{ + position: relative; + float: left; + height: 60px; +} +.header h1{ + display: inline-block; + height: 60px; + width: 250px; +} +.header h1 a img, +.header h1 a span{ + float: left; +} +.header h1 a{ + padding-top: 8px; +} +.header h1 a span{ + font-size: 20px; + text-align: center; + padding: 0px 0 0 6px; + font-weight: 300; +} +/* header - profil-wrap */ +.header .profil-wrap{ + float: right; + width: 250px; +} +.header .profil-wrap a{ + width: 160px; + display: block; + text-align: right; + position: absolute; + right: 0; + font-size: 14px; + color: #30036d; + padding-right: 18px; +} +.header .profil-wrap a:hover{ + color: #FF00FC; +} +.header .profil-wrap a.all-hashcut{ + top: 12px; + background: url(../img/arrow-top.png) right 2px no-repeat; +} +.header .profil-wrap a.my-profil{ + top: 32px; + background: url(../img/arrow-bot.png) right 4px no-repeat; +} +/* content */ +.content{ + width: 960px; + min-height: 750px; +} +/* popin */ +.popin{ + padding-top: 12px; + position: absolute; + top: 0; + z-index: 10; +} +.pointer{ + position: absolute; + top: 0; +} +.popin-content{ + padding: 8px; + border: 1px solid #867a97; + background: url(../img/bg-jaune.png); +} +.popin-content input[type=text], +.popin-content input[type=password], +.popin-content textarea{ + padding: 0 4px; + font-size: 12px; + border: 1px solid #867a97; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.popin-content input[type=text], +.popin-content input[type=password] { + line-height: 20px; + height: 20px; +} +/* popin - user */ + +.popin { + display: none; +} + +.user.popin{ + top: 48px; + right: 0; +} +.user.popin img.pointer{ + right: 36px; +} +.button { + margin-top: 2px; + display: block; + font-size: 12px; + border: none; + padding: 0; + width: 150px; + background-color: #30036D; + color: #FFF; + text-align: center; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + cursor: pointer; + height: 22px; + line-height: 22px; +} + +.button:hover{ + background-color: #FF00FC +} +.user.login h2, +.user.signup h2 { + color: #de2500; + font-size: 14px; + font-weight: 600; + margin-bottom: 12px; +} + +.user.info h2 { + color: #7628df; + font-size: 18px; + font-weight: 600;margin-bottom: 2px; +} + +.user label{ + width: 84px; + font-size: 12px; + display: inline-block; + line-height: 10px; +} +.user p { + display: block; + line-height: 18px; + margin-bottom: 8px; + overflow: hidden; +} +.user input[type=text], +.user input[type=password] { + position: relative; + width: 110px; + padding: 0 5px; + height: 18px; + display: inline-block; +} +.user .button { + float: right; +} +/* popin - user - info */ +.user.info { + text-align: right; +} +.user h3{ + color: #30036d; + font-size: 14px; + margin-bottom: 10px; +} +.user .nb-hashcut{ + color: #de2500; + font-size: 14px; + text-decoration: underline; + display: block; + margin-bottom: 12px; +} +.user .nb-hashcut:hover{ + text-decoration: none; +} +.user.popin.info .popin-content a.change-account:hover{ + background-color: #FF00FC; +} +/* popin - user - signup */ +.signup-button{ + background-color: #de2500; +} +.user .popin-content{ + min-width: 205px; +} +/* footer */ +.footer{ + border-top: 1px solid black; + width: 100%; + padding-top: 8px; +} +.footer .links-left{ + float: left; +} +.footer .links-left li{ + margin-bottom: 4px; +} +.footer .links-left li a{ + border-bottom: 1px solid #cccccc; +} +.footer .links-left li a:hover{ + border-bottom: none; +} +.footer .links-right{ + float: right; +} +.footer .links-right li{ + line-height: 40px; + float: right; + margin-left: 8px; +} +.footer .links-right li img { + vertical-align: middle; +} +/* video-item */ +.hashcut-video-wrap{ + padding-left: 10px; + overflow: hidden; + margin-bottom: 16px; +} +.video-item{ + width: 300px; + float: left; + margin-right: 20px; +} + +.video-item h3{ + font-size: 12px; +} +.video-item h3 strong{ + font-weight: 600; +} +.video-item h3 span{ + color: #de2500; +} +.video-item .screenshot{ + display: inline-block; + margin-bottom: 8px; +} +.video-item h3 a{ + border-bottom: 1px solid #bababa; + display: inline-block; + line-height: 12px; +} +.video-item h3 a:hover{ + border-bottom: none; +} +.pagination{ + text-align: center; +} +.pagination a{ + font-size: 14px; + color: #7628df; + text-decoration: underline; +} +.pagination a:hover{ + text-decoration: none; +} +.pagination a.active{ + color: #de2500; + text-decoration: none; +} + +/* content */ +.left-content, +.right-content{ + float: left; +} +.left-content h2, +.right-content h2{ + padding: 6px 0; + margin: 8px 0 14px; + border-bottom: 1px solid #333333; + color: #30036d; + font-size: 18px; + font-weight: 600; + clear: both; +} +/* left-content */ +.left-content{ + width: 630px; + margin-right: 20px; +} +/* right-content */ +.right-content{ + width: 310px; +} +/* list-video */ +.list-video { + overflow: hidden; + overflow-y: auto; + height: 680px; +} +.item-video { + margin-bottom: 1px; + padding: 5px 10px 5px 10px; + clear: both; + width: auto; + min-height: 62px; + display: block; + position: relative; +} +.item-video .thumbnail{ + float: left; + margin-right: 4px; + max-width: 80px; + max-height: 60px; + box-shadow: 2px 2px 2px #333333; +} +.item-video .video-info{ + margin-left: 88px; +} +.item-video .title-video{ + font-size: 13px; + font-weight: 600; + color: #30036d; + margin-bottom: 1px; +} +.item-video .description{ + font-size: 11px; + margin-bottom: 1px; +} +.item-video .time-length{ + font-size: 12px; + font-weight: 600; +} +.item-video .time-length span{ + color: #de2500; +} +.item-video .media-count-wrap { + width: 30px; + text-align: center; + position: absolute; + top: 45px; + left: 75px; + height: 15px; + display: none; +} +.item-video .media-count{ + color: #FFF; + font-size: 10px; + line-height: 15px; + background-color: #ff00fc; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + padding: 0 3px; + border: 1px solid #DE2500; +} +.item-video .subtitle{ + margin-bottom: 2px; + color: #de2500; + font-size: 11px; +} +.item-video .duration{ + color: #7628df; + font-size: 12px; + font-weight: 600; +} +/* frise */ +.frise{ + height: 22px; + position: relative; + border: 1px solid #333333; +} + +.mashup-frise { + cursor: pointer; +} + +.frise-overflow { + position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; +} +.bloc-pvw .frise { + margin: 7px 5px 2px; +} + +.aucun-segment{ + font-weight: 600; + font-style: italic; + text-align: center; + line-height: 20px; + width: 100%; + z-index:0; + background: #CCCCCC; +} +.frise-segment{ + position: absolute; + height: 100%; +} +.mashup-frise .frise-segment { + -moz-box-shadow: inset 1px 1px 1px #333333; + -webkit-box-shadow: inset 1px 1px 1px #333333; + box-shadow: inset 1px 1px 1px #333333; +} +.frise-segment.active, .mashup-frise .frise-segment.active { + background-image: url(../img/pinstripe-purple.png); + background-repeat: repeat; +} +.frise-indication{ + height: 100%; + line-height: 22px; + display: inline-block; + position: absolute; + color: #FFF; + top:0; + left: 0px; + font-size: 10px; + width: 30px; + text-align: center; + background: url(../img/bg-indication.png) 15px 0 no-repeat; + margin-left: -15px; + text-shadow: 1px 1px 1px #000000; +} +.frise-position { + width: 1px; top: -8px; bottom: 0; margin-left: -0.5px; position: absolute; + z-index: 3; background: #FF00FC; +} +/* col-middle - bloc-segmentation - popin.segmentation */ + +.pointer-padder { + left: 5px; + position: absolute; + right: 5px; + top: 0; +} + +.pointer-padder .pointer { + top: 0; margin-left: -10px; +} + +.segment-info { + padding-top: 12px; + overflow: hidden; + position: relative; +} + +/* popin - frise-description */ + +.annotation-title { + color: #de2500; + font-size: 14px; + font-weight: bold; +} +.annotation-time { + color: #7628DF; +} +.mashup-description table{ + font-size: 12px; +} +.mashup-description th{ + text-align: left; + font-weight: 600; + display: block; + min-width: 75px; +} +.mashup-description td{ + line-height: 15px; + padding-left: 2px; +} +.mashup-description th, +.mashup-description td, +.mashup-description h2{ + padding-bottom: 8px; +} +.mashup-description .tools{ + float: right; +} + +.video { + background: #333333; + position: relative; +} +.video-wait { + display: none; + position: absolute; left: 0; top: 0; width: 100%; height: 100%; + background-color: rgba(120, 120, 140, .6); + background-image: url(../img/reel.gif); + background-position: center; + background-repeat: no-repeat; + z-index: 3; +} +.widget { + position: relative; +} + +.segment-tooltip-wrapper { + position: absolute; height: 0; width: 0; + top: 0; z-index: 7; display: none; left: 50%; +} + +.segment-tooltip { + padding: 4px; border: 1px solid #867a97; background: url(../img/bg-jaune.png); + width: 130px; position: absolute; bottom: 14px; left: -70px; + font-size: 12px; font-weight: 600; text-align: center; color: #DE2500; +} + +.segment-tooltip-tip { + position: absolute; top: -15px; left: -10px; background: url(../img/inv-triangle.png); + width: 20px; height: 13px; +} + +/* Styles from Metadataplayer */ + +/* Slider Widget */ + +.Ldt-Slider-Container { + background: #969696; + background: -moz-linear-gradient(left, #747474 50%, #B6B8B8 50%); + background: -webkit-linear-gradient(left, #747474 50%, #B6B8B8 50%); + border-top: 1px solid #969696; + height: 4px; + position: relative; z-index: 5; +} + +.Ldt-Slider { + border: none; border-radius: 0; padding: 0; height: 100%; background: #B6B8B8; +} + +.Ldt-Slider .ui-slider-handle { + border-radius: 8px; top: -2px; background: #ff00fc; border: 1px solid #ffffff; +} + +.Ldt-Slider .ui-slider-range { + background: #747474; +} + +.Ldt-Slider-Time { + position: absolute; top: -16px; background: #ffffc0; color: #000000; border-radius: 3px; z-index: 8; + font-size: 10px; width: 34px; border: 1px solid #999999; padding: 1px; margin-left: -14px; + display: none; text-align: center; font-weight: bold; +} + +/* Controller Widget */ + +.Ldt-Ctrl { + font-size: 10px; + background:url('../img/player_gradient.png') repeat-x transparent ; + height: 25px; + border: 1px solid #969696; + position: relative; +} + +.Ldt-Ctrl-Left { + float:left; width: 300px; +} + +.Ldt-Ctrl-Right { + float: right; +} + +.Ldt-Ctrl-button { + float: left; + width: 30px; height: 25px; + background: url('../img/player-sprites.png'); + cursor: pointer; +} + +.Ldt-Ctrl-spacer { + float: left; width: 1px; height: 25px; background: #969696; +} + +.Ldt-Ctrl-Play { + margin: 0 15px; +} + +.Ldt-Ctrl-Play-PlayState { + background-position: 0 0; +} + +.Ldt-Ctrl-Play-PlayState:hover { + background-position: 0 -25px; +} + +.Ldt-Ctrl-Play-PlayState:active { + background-position: 0 -50px; +} + +.Ldt-Ctrl-Play-PauseState { + background-position: -30px 0; +} + +.Ldt-Ctrl-Play-PauseState:hover { + background-position: -30px -25px; +} + +.Ldt-Ctrl-Play-PauseState:active { + background-position: -30px -50px; +} + +.Ldt-Ctrl-InOutBlock { + display: none; +} + +.segment-mode .Ldt-Ctrl-InOutBlock { + display: block; +} + +.Ldt-Ctrl-SetIn, .Ldt-Ctrl-SetOut { + margin: 0 2px; +} + +.Ldt-Ctrl-SetIn { + background-position: -60px 0; +} + +.Ldt-Ctrl-SetIn:hover { + background-position: -60px -25px; +} + +.Ldt-Ctrl-SetIn:active { + background-position: -60px -50px; +} + +.Ldt-Ctrl-SetOut { + background-position: -90px 0; +} + +.Ldt-Ctrl-SetOut:hover { + background-position: -90px -25px; +} + +.Ldt-Ctrl-SetOut:active { + background-position: -90px -50px; +} + +.Ldt-Ctrl-Time { + float: left; + margin: 7px 5px 0; + font-size: 12px; + font-family: Arial, Verdana, sans-serif; +} + +.Ldt-Ctrl-Time-Elapsed { + float: left; + color: #4a4a4a; +} + +.Ldt-Ctrl-Time-Separator { + margin: 0 4px; + float: left; +} + +.Ldt-Ctrl-Time-Total { + float: left; + color: #b2b2b2; +} + +.Ldt-Ctrl-Sound { + margin: 0 2px; +} + +.Ldt-Ctrl-Sound-Full { + background-position: -120px 0; +} + +.Ldt-Ctrl-Sound-Full:hover { + background-position: -120px -25px; +} + +.Ldt-Ctrl-Sound-Full:active { + background-position: -120px -50px; +} + +.Ldt-Ctrl-Sound-Mute { + background-position: -150px 0; +} + +.Ldt-Ctrl-Sound-Mute:hover { + background-position: -150px -25px; +} + +.Ldt-Ctrl-Sound-Mute:active { + background-position: -150px -50px; +} + +.Ldt-Ctrl-Sound-Half { + background-position: -180px 0; +} + +.Ldt-Ctrl-Sound-Half:hover { + background-position: -180px -25px; +} + +.Ldt-Ctrl-Sound-Half:active { + background-position: -180px -50px; +} + +.Ldt-Ctrl-Volume-Control { + display: none; + position: absolute; + background:url('../img/player_gradient.png') repeat-x transparent ; + height: 25px; + width: 100px; top: 25px; right: -1px; z-index: 100; + padding: 0 2px; + border: 1px solid #b6b8b8; +} + +.Ldt-Ctrl-Volume-Bar { + height: 5px; margin: 9px 3px 0; background: #cccccc; border: 1px solid #999999; border-radius: 2px; +} + +.Ldt-Ctrl-Volume-Control .ui-slider-handle { + width: 6px; height: 19px; background: #a8a8a8; border: 1px solid #999999; border-radius: 2px; top: -8px; margin-left: -4px; + cursor: pointer; +} + +.Ldt-Ctrl-Volume-Control:hover .ui-slider-handle { + background: #F7268E; +} + +/* Social Share Widget */ + +.Ldt-Social { + float: right; margin-top: 10px; +} + +.Ldt-Social a { + float: left; width: 24px; height: 24px; background: url(../img/socialbuttons.png); +} + +.Ldt-Social-Url-Container { + float: left; width: 24px; height: 24px; position: relative; +} + +a.Ldt-Social-Url { + margin: 0; background-position: -96px 0; +} + +a.Ldt-Social-Url:hover { + background-position: -96px -24px; +} + +.Ldt-Social-UrlPop { + position: absolute; left: 20px; top: -2px; background: url(../img/socialcopy.png); + padding: 3px 0 0 12px; width: 218px; height: 27px; + display: none; +} + +.Ldt-Social-Input, .Ldt-Social-CopyBtn { + font-size: 11px; margin: 1px; border: 1px solid #ccc; height: 16px; + padding: 1px; border-radius: 2px; display: inline-block; +} + +.Ldt-Social-Input:hover, .Ldt-Social-CopyBtn.hover { + border-color: #8080ff; +} + +.Ldt-Social-Input { + width: 150px; +} + +.Ldt-Social-CopyBtn { + font-weight: bold; width: 50px; text-align: center; background: #f0f0ff; line-height: 16px; width: 46px; +} + +.Ldt-Social-CopyBtn.hover { + background: #ffe0a0; +} + +.Ldt-Social-CopyBtn.active { + background: #ff8000; +} + +a.Ldt-Social-Twitter { + background-position: 0 0; +} + +a.Ldt-Social-Twitter:hover { + background-position: 0 -24px; +} + +a.Ldt-Social-Fb { + background-position: -24px 0; +} + +a.Ldt-Social-Fb:hover { + background-position: -24px -24px; +} + +a.Ldt-Social-Gplus { + background-position: -48px 0; +} + +a.Ldt-Social-Gplus:hover { + background-position: -48px -24px; +} + +a.Ldt-Social-Mail { + background-position: -72px 0; +} + +a.Ldt-Social-Mail:hover { + background-position: -72px -24px; +} + + +.media-segment-list-inner { + position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: url(../img/bg-segments.png); +} + +.media-segment-section { + position: absolute; height: 8px; cursor: pointer; + -moz-box-shadow: inset 1px 1px 1px #808080; + -webkit-box-shadow: inset 1px 1px 1px #808080; + box-shadow: inset 1px 1px 1px #808080; +} + +.media-segment-popin h3, .media-found-popin h3{ + padding: 0; + color: #de2500; + margin-bottom: 4px; + font-weight: 600; +} + +.media-segment-popin p{ + font-size: 12px; +} + +.media-segment-popin span{ + color: #7628df; +} diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/edition.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/edition.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,526 @@ +/* Block modes */ + +.empty-mode .bloc-pvw, +.empty-mode .bloc-segmentation, +.segment-mode .bloc-pvw, +.pvw-mode .bloc-segmentation { + display: none; +} + +/* header - title-video-wrap */ +.title-video-wrap{ + width: 460px; +} +.title-video-wrap .time-length{ + margin-top: 5px; + color: #333333; + font-size: 14px; +} +.mashup-total-duration { + color: #de2500; +} +/* popin - update-title */ +.update-title { + top: 34px; + left: 220px; +} +.update-title .pointer{ + left: 50px; +} +/* col */ +.col-middle, +.col-left, +.col-right{ + float: left; +} +/* col-middle */ +.col-middle{ + width: 460px; + min-height: 1px; +} +.col-middle-header{ + height: 35px; + font-size: 16px; + clear: both; +} +/* Tabs */ +.tab { + height: 35px; + line-height: 35px; + color: #30036d; + padding: 0 10px; + width: 210px; + float: left; + background-position: 0 -35px; +} +.tab:hover{ + color: #FF00FC; +} +.tab.disable, +.tab.disable:hover{ + color: #796891; +} +.tab-segment { + background-image: url(../img/bg-segmenter.png); +} +.tab-pvw { + background-image: url(../img/bg-previsualiser.png); text-align: right; +} + +.pvw-mode .tab-pvw, .segment-mode .tab-segment { + width: 250px; background-position: 0 0; font-weight: 600; +} + +.segment-mode .tab-pvw, .pvw-mode .tab-segment { + width: 170px; color: #796891; +} + +.tab-media-title { + font-style: italic; font-weight: normal; +} + +.empty-mode .tab-media-title, .pvw-mode .tab-media-title { + display: none; +} + +/* col-middle - bloc-segmentation */ +.bloc-segmentation{ + position: relative; +} + +/* col-middle - bloc-segmentation - popin.segmentation */ + +.segmentation { + position: relative; + overflow: hidden; + padding-top: 12px; +} + +.segmentation h2{ + font-size: 14px; + font-weight: 600; + color:#de2500; + margin: 5px 0 2px; +} + +.time-tangle { + color: #7628df; cursor: w-resize; position: relative; +} +.time-tangle:hover, +.time-tangle.active { + color: #FF00FC; border-bottom: 1px dashed #7628df; +} +.time-tangle:hover:after, +.time-tangle.active:after { + color: #7628DF; position: absolute; top: 18px; left: 50%; width: 160px; + margin-left: -80px; font-size: 12px; text-align: center; + content: "glisser pour modifier" +} + +.time-tangle.deactivate:hover { + border: none; color: #7628DF; +} + +.time-tangle.deactivate:hover:after { + display: none; +} + +.segmentation form{ + overflow: hidden; +} +.form-segment-left, +.form-segment-right{ + float: left; +} +.segmentation .form-segment-left{ + width: 230px; +} + +.segmentation label, .update-title label { + display: block; + font-size: 12px; + font-weight: 600; + margin: 8px 0 4px; +} +.segmentation textarea, .update-title textarea { + width: 200px; + height: 69px; + max-width: 200px; + font-size: 12px; +} + +.segmentation textarea { + margin-bottom: 32px; +} + +.segmentation input[type=text], .update-title input[type=text]{ + font-size: 12px; + width: 200px; + height: 20px; +} + +.add-segment { + position: absolute; right: 10px; bottom: 10px; +} + +.media-segments h2{ + color: #30036d; + font-size: 14px; + font-weight: 600; + margin: 10px 8px 2px; +} + +.media-segment-list { + margin: 8px 5px 0 6px; + padding-bottom: 1px; + position: relative; +} + +.media-segment-popin .pointer{ + margin-left: 140px +} + +.media-segment-popin { + padding-top: 12px; overflow: hidden; + top: 2px; width: 300px; margin-left: -151px; + display: none; +} + +.media-segment-popin p{ + margin-right: 155px; + font-size: 12px; +} + +.media-found-segments { + clear: both; padding-top: 5px; +} + +.media-found-segments .media-segment-list { + margin: 0; +} + +.media-found-list { + padding-bottom: 1px; position: relative; +} + +.media-current-section { + background: url(../img/pinstripe-purple.png); + top: -2px; bottom: -2px; margin-left: -1px; padding: 2px 1px; + position: absolute; +} + +.media-found-popin { + padding-top: 12px; overflow: hidden; + top: 2px; width: 170px; display: none; + margin-left: -86px; +} + +.media-found-popin .pointer { + margin-left: 75px; +} + +.reprendre-segment{ + float: right; + display: block; +} +/* col-middle - bloc-vide */ +.tutorial{ + padding: 0 10px; + color: #FFF; + font-weight: 600; + display: none; +} +.empty-mode .tutorial { + display: block; +} +.tutorial h2{ + padding-top: 16px; + font-size: 18px; + margin-bottom: 20px; +} +.tutorial ol{ + padding-left: 22px; +} +.tutorial li:first-child{ + width: 324px; +} +.tutorial li{ + list-style: decimal; + font-size: 14px; + margin-bottom: 16px; + padding-left: 20px; +} +/* col-left */ +.col-left, +.col-right{ + width: 250px; + min-height: 750px; + background: url(../img/bg-col.png) repeat-x 0 0 #e6e6e6; +} +.left-head { + background: url(../img/bg-video-search.png) 0 0 repeat-x #906ebe; + height: 70px; + padding-left: 10px; + margin-bottom: 1px; +} +.left-head h2{ + padding-top: 8px; + margin-bottom: 12px; + color: #30036d; + font-size: 16px; + font-weight: 600; +} +.left-head input { + width: 222px; + font-size: 14px; + border: none; + height: 20px; + padding: 0 4px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + background: #FFF url(../img/zoom-icon.png) 214px 3px no-repeat; +} + +.col-left input::-webkit-input-placeholder{ + color: #b48aed; + font-style: italic; +} +.col-left input:-moz-placeholder { + color: #b48aed; + font-style: italic; +} + +.col-left .item-video:hover, +.col-left .item-video.active{ + background: url(../img/arrow-item-video-sprite.png) right center no-repeat; +} +/* col-right */ +.col-right{ + width: 250px; +} +.col-right .liste-segment{ + height: 70px; + background: url(../img/bg-liste-segment.png) repeat-x 0 0; + padding: 0 10px; + width: 230px; +} +.col-right .liste-segment h2{ + text-align: right; + color: #30036D; + font-weight: 600; + font-size: 16px; + margin-bottom: 12px; + padding-top: 8px; +} +.col-right .frise{ + width: 228px; + position: relative; + height: 20px; +} + +.col-right .frise-indication{ + line-height: 20px; +} + +.col-right .item-video:hover, +.col-right .item-video.active{ + background: url(../img/arrow-item-video-sprite.png) left center no-repeat; +} + +.item-video { + cursor: pointer; +} + +/* tools */ +.tools { + height: 17px; +} +.tools li{ + float: left; +} +.tools a{ + display: block; + width: 17px; + height: 17px; + background: url(../img/tools-sprite.png) no-repeat 0 0; +} +.tools a.edit{ + background-position: 2px 0; +} +.tools a.edit:hover{ + background-position: 2px -32px; +} +.tools a.edit.disable:hover, +.tools a.edit.disable{ + background-position: 2px -16px; +} +.tools a.bottom{ + background-position: -19px 0; +} +.tools a.bottom:hover{ + background-position: -19px -32px; +} +.tools a.bottom.disable:hover, +.tools a.bottom.disable{ + background-position: -19px -16px; +} +.tools a.top{ + background-position: -40px 0; +} +.tools a.top:hover{ + background-position: -40px -32px; +} +.tools a.top.disable:hover, +.tools a.top.disable{ + background-position: -40px -16px; +} +.tools a.delete{ + background-position: -61px 0; +} +.tools a.delete:hover{ + background-position: -61px -32px; +} +.tools a.delete.disable:hover, +.tools a.delete.disable{ + background-position: -61px -16px; +} + + +/* Video */ + +.video{ + width: 460px; + height: 300px; +} +.publier-button{ + position: absolute; + width: 69px; + height: 67px; + background: url(../img/publier-button-sprite.png) 0 0 no-repeat; + left: 382px; + top: 10px; + z-index: 4; +} +.publier-button:hover{ + background-position: 0 -67px; +} +.publier-button.disable, .publier-button.disable:hover{ + background-position: 0 -134px; +} + +/* Slice Widget */ + +.Ldt-Slice { + border-radius: 0; border: none; padding: 0; margin: 12px 6px; background: #B6B8B8; height: 8px; +} + +.Ldt-Slice .ui-slider-handle { + width: 7px; height: 20px; top: 0; border: none; margin: 0; padding: 0; + background: url(../img/slice-handles.png); border-radius: 0; cursor: pointer; +} + +.ui-slider-handle.Ldt-Slice-left-handle { + margin-left: -7px; +} + +.ui-slider-handle.Ldt-Slice-left-handle.ui-state-hover, .ui-slider-handle.Ldt-Slice-left-handle.ui-state-active { + background-position: 0 -20px; +} + +.ui-slider-handle.Ldt-Slice-right-handle { + margin-left: 0; background-position: -7px 0; +} + +.ui-slider-handle.Ldt-Slice-right-handle.ui-state-hover, .ui-slider-handle.Ldt-Slice-right-handle.ui-state-active { + background-position: -7px -20px; +} + +.Ldt-Slider { + margin: 0 6px; +} + +.Ldt-Slice .ui-slider-range { + background: url(../img/pinstripe-purple.png); +} + +/* Validate */ + +.validate { + float: right; width: 20px; height: 20px; cursor: pointer; background: url(../img/helpwarn.png); + position: relative; +} + +.validate:hover { + background-position: -20px 0; +} + +.validate.warning { + background-position: 0 -20px; +} + +.validate.warning:hover { + background-position: -20px -20px; +} + +.validate.critical { + background-position: 0 -40px; +} + +.validate.critical:hover { + background-position: -20px -40px; +} + +.item-video .validate { + margin-right: -5px; +} + +.liste-segment .validate { + margin: 6px -1px 0 2px; +} + +.validate-tooltip { + position: absolute; top: 16px; left: -225px; width: 235px; padding: 16px 8px 0; + background: url(../img/tooltip.png) top no-repeat; z-index: 6; min-height: 30px; + color: #FFFFFF; display: none; cursor: auto; +} + +.validate-tooltip ul { + padding-left: 14px; list-style: disc; font-size: 12px; +} + +.validate-tooltip li { + margin: 2px 0; +} + +.validate:hover .validate-tooltip { + display: block; +} + +.validate:hover .validate-tooltip:hover { + display: none; +} + +.validate-tooltip:after { + bottom: -10px; content: ""; height: 10px; + left: 0; position: absolute; width: 100%; + background: url(../img/tooltip.png) bottom no-repeat; +} + +.tagit { + border: 1px solid #867A97; + padding: 0 4px; width: 200px; + font-size: 12px; font-family: 'Open Sans'; +} + +ul.tagit li.tagit-choice { + padding: 3px 18px 3px 3px; +} + +ul.tagit li.tagit-new { + padding: 0; +} + +ul.tagit input[type="text"] { + width: 100px; +} diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Bold.eot Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Bold.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Bold.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Bold.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,587 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:55:15 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Bold.ttf Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Bold.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Bold.woff Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Bold.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-BoldItalic.eot Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-BoldItalic.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-BoldItalic.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-BoldItalic.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,600 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:39:46 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-BoldItalic.ttf Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-BoldItalic.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-BoldItalic.woff Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-BoldItalic.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Italic.eot Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Italic.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Italic.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Italic.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,612 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:47:08 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Italic.ttf Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Italic.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Italic.woff Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Italic.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Light.eot Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Light.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Light.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Light.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,581 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:49:24 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Light.ttf Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Light.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Light.woff Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Light.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Regular.eot Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Regular.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Regular.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Regular.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,592 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:45:52 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Regular.ttf Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Regular.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Regular.woff Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Regular.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Semibold.eot Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Semibold.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Semibold.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Semibold.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,587 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:43:29 2011 + By www-data +Digitized data copyright (c) 2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Semibold.ttf Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Semibold.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Semibold.woff Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-Semibold.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-SemiboldItalic.eot Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-SemiboldItalic.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-SemiboldItalic.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-SemiboldItalic.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,609 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:40:58 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-SemiboldItalic.ttf Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-SemiboldItalic.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-SemiboldItalic.woff Binary file src/hashcut/static/hashcut/bpi/css/fonts/OpenSans-SemiboldItalic.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/home.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/home.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,87 @@ +/* header */ +.title-header h2{ + width: 100%; + text-align: center; + line-height: 60px; +} +.title-header h2 a{ + color: #de2500; + font-size: 24px; + text-decoration: underline; + font-weight: bold; +} +.title-header h2 a:hover{ + text-decoration: none; +} + +/* left-content */ + +.news .video-item:nth-child(2n+2){ + margin-right: 0; +} + + + +.last .video-item:nth-child(4n+4){ + margin-right: 0; +} +.last .video-item{ + width: 140px; + height: 130px; + float: left; + margin: 0 20px 12px 0; +} + +/* right-content */ + +.definition p{ + font-size: 12px; + line-height: 14px; + margin-bottom: 12px; +} +.definition p strong{ + font-weight: bold; +} +.definition p a{ + color: #7628df; + text-decoration: underline; +} +.definition p a:hover{ + text-decoration: none; +} +.how-to li{ + background-image: url(../img/how-to-sprite.png); + background-repeat: no-repeat; + margin-bottom: 2px; +} +.how-to li h3{ + color: #de2500; + font-size: 18px; + font-weight: bold; + margin-bottom: 12px; +} +.how-to li p{ + font-size: 12px; + word-wrap: break-word; + width: 210px; +} +.how-to li.inscription{ + height: 84px; + background-position: 212px 0; +} +.how-to li.creation{ + height: 100px; + background-position: 212px -128px; +} +.how-to li.creation{ + height: 100px; + background-position: 212px -128px; +} +.how-to li.publier{ + height: 90px; + background-position: 212px -266px; +} +.how-to li.next-step{ + height: 24px; + background-position: 212px -377px; +} \ No newline at end of file diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/players.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/players.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,128 @@ +.more-info-wrap{ + padding-right: 10px; +} +.more-info{ + text-align: left; +} +.more-info th{ + font-weight: 600; + font-style: normal; + font-size: 12px; + width: 78px; +} +.more-info td{ + padding-bottom: 12px; + font-size: 12px; +} +.more-info a{ + text-decoration: underline; +} +.more-info a:hover{ + text-decoration: none; +} +.info-title a{ + color:#30036d; + font-size: 14px; + font-weight: bold; +} +.info-duration td{ + color: #de2500; +} +.info-author a{ + color: #7628df; +} +.cloner{ + float: right; margin-bottom: 8px; +} +.list-video{ + height: auto; + margin-left: -10px; + max-height: 450px; +} +.item-video:hover, +.item-video.active{ + background: url(../img/arrow-item-video-sprite.png) left center no-repeat; +} +.time-length{ + margin-bottom: 5px; +} +.item-video .frise{ + width: 100%; + height: 8px; + background-color: #999999; + display: block; +} +.title-video a { + color: #30036d; +} +.item-video .title-video a:hover { + text-decoration: underline; +} +.item-video .frise{ + border:none; +} +.bloc-video{ + padding-left: 10px; +} +.video { + height: 400px; + width: 620px; +} +.bloc-pvw{ + margin-top: 7px; +} +.popin-content h2{ + margin: 0; + border:none; +} +.Ldt-Ctrl { + margin-bottom: 6px; +} +.Ldt-Slider { + margin: 0; +} +.frise-segment { + cursor: pointer; +} +.segment-info .pointer { + margin-left: -10px; +} + +.media-segment-popin .pointer{ + margin-left: 105px +} + +.media-segment-popin { + padding-top: 12px; overflow: hidden; + top: 2px; width: 230px; margin-left: -116px; + display: none; +} + +.media-segment-list { + margin: 8px 0 0; + padding-bottom: 1px; + position: relative; +} + +.active .media-segment-section, .media-segment:hover .media-segment-section { + -moz-box-shadow: inset 0 0 2px 2px #fc00ff, 0 0 2px #fc00ff; + -webkit-box-shadow: inset 0 0 2px 2px #fc00ff, 0 0 2px #fc00ff; + box-shadow: inset 0 0 2px 2px #fc00ff, 0 0 2px #fc00ff; +} + +.mashup-link { + display: none; + font-size: 13px; + color: #30036D; + margin-top: 5px; +} + +.mashup-link a { + color: #30036D; + font-weight: 600; + text-decoration: underline; +} + +.mashup-link a:hover { + text-decoration: none; +} diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/profil.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/profil.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,17 @@ +.title-content{ + padding: 20px 0 6px; + border-bottom: 1px solid #333333; + color: #30036d; + font-size: 18px; + font-weight: 600; + margin-bottom: 14px; +} +.title-content a{ + color: #ff00fc; +} +.profil .video-item{ + margin-bottom: 16px; +} +.profil .video-item:nth-child(3n+3){ + margin-right: 0; +} diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/css/reset.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/bpi/css/reset.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,77 @@ +/* http://meyerweb.com/eric/tools/css/reset/ + v2.0 | 20110126 + License: none (public domain) +*/ + +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, +footer, header, hgroup, menu, nav, section { + display: block; +} +body { + line-height: 1; +} +ol, ul { + list-style: none; +} +blockquote, q { + quotes: none; +} +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} + +.clearfix:after { + content: "."; + display: block; + clear: both; + visibility: hidden; + line-height: 0; + height: 0; +} + +.clearfix { + display: inline-block; +} + +html[xmlns] .clearfix { + display: block; +} + +* html .clearfix { + height: 1%; +} +.clear{ + clear: both; +} + +input::-moz-focus-inner { + border: 0 none; + padding: 0; +} \ No newline at end of file diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/apercu-video.jpg Binary file src/hashcut/static/hashcut/bpi/img/apercu-video.jpg has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/arrow-bot.png Binary file src/hashcut/static/hashcut/bpi/img/arrow-bot.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/arrow-item-video-sprite.png Binary file src/hashcut/static/hashcut/bpi/img/arrow-item-video-sprite.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/arrow-top.png Binary file src/hashcut/static/hashcut/bpi/img/arrow-top.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/bg-col.png Binary file src/hashcut/static/hashcut/bpi/img/bg-col.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/bg-degrade.png Binary file src/hashcut/static/hashcut/bpi/img/bg-degrade.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/bg-indication.png Binary file src/hashcut/static/hashcut/bpi/img/bg-indication.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/bg-jaune.png Binary file src/hashcut/static/hashcut/bpi/img/bg-jaune.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/bg-liste-segment.png Binary file src/hashcut/static/hashcut/bpi/img/bg-liste-segment.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/bg-previsualiser.png Binary file src/hashcut/static/hashcut/bpi/img/bg-previsualiser.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/bg-segmenter.png Binary file src/hashcut/static/hashcut/bpi/img/bg-segmenter.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/bg-segments.png Binary file src/hashcut/static/hashcut/bpi/img/bg-segments.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/bg-video-search.png Binary file src/hashcut/static/hashcut/bpi/img/bg-video-search.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/bg.png Binary file src/hashcut/static/hashcut/bpi/img/bg.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/border-right-segment.png Binary file src/hashcut/static/hashcut/bpi/img/border-right-segment.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/hashcut-logo.png Binary file src/hashcut/static/hashcut/bpi/img/hashcut-logo.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/helpwarn.png Binary file src/hashcut/static/hashcut/bpi/img/helpwarn.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/how-to-sprite.png Binary file src/hashcut/static/hashcut/bpi/img/how-to-sprite.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/inv-triangle.png Binary file src/hashcut/static/hashcut/bpi/img/inv-triangle.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/logo-cinecast.png Binary file src/hashcut/static/hashcut/bpi/img/logo-cinecast.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/logo-iri.png Binary file src/hashcut/static/hashcut/bpi/img/logo-iri.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/pencil-icon.png Binary file src/hashcut/static/hashcut/bpi/img/pencil-icon.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/pinstripe-purple.png Binary file src/hashcut/static/hashcut/bpi/img/pinstripe-purple.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/player-sprites.png Binary file src/hashcut/static/hashcut/bpi/img/player-sprites.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/player_gradient.png Binary file src/hashcut/static/hashcut/bpi/img/player_gradient.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/pompidou-logo.png Binary file src/hashcut/static/hashcut/bpi/img/pompidou-logo.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/popin-triangle.png Binary file src/hashcut/static/hashcut/bpi/img/popin-triangle.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/publier-button-sprite.png Binary file src/hashcut/static/hashcut/bpi/img/publier-button-sprite.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/reel.gif Binary file src/hashcut/static/hashcut/bpi/img/reel.gif has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/slice-handles.png Binary file src/hashcut/static/hashcut/bpi/img/slice-handles.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/socialbuttons.png Binary file src/hashcut/static/hashcut/bpi/img/socialbuttons.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/socialcopy.png Binary file src/hashcut/static/hashcut/bpi/img/socialcopy.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/tools-sprite.png Binary file src/hashcut/static/hashcut/bpi/img/tools-sprite.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/tooltip.png Binary file src/hashcut/static/hashcut/bpi/img/tooltip.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/visuel-home-last.jpg Binary file src/hashcut/static/hashcut/bpi/img/visuel-home-last.jpg has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/visuel-home-news.jpg Binary file src/hashcut/static/hashcut/bpi/img/visuel-home-news.jpg has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/visuel-player-bar.jpg Binary file src/hashcut/static/hashcut/bpi/img/visuel-player-bar.jpg has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/visuel-segment.png Binary file src/hashcut/static/hashcut/bpi/img/visuel-segment.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/bpi/img/zoom-icon.png Binary file src/hashcut/static/hashcut/bpi/img/zoom-icon.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/common.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/common.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,965 @@ +/* fonts */ +@font-face { + font-family: 'Open Sans'; + font-weight: normal; + font-style: normal; + src: local('Open Sans'), local('OpenSans'), + url("fonts/OpenSans-Regular.eot") format("eot"), + url("fonts/OpenSans-Regular.woff") format("woff"), + url("fonts/OpenSans-Regular.ttf") format("truetype"), + url("fonts/OpenSans-Regular.svg#OpenSans-Regular") format("svg"); +} +@font-face { + font-family: 'Open Sans'; + font-weight: normal; + font-style: italic; + src: local('Open Sans Italic'), local('OpenSans-Italic'), + url("fonts/OpenSans-Italic.eot") format("eot"), + url("fonts/OpenSans-Italic.woff") format("woff"), + url("fonts/OpenSans-Italic.ttf") format("truetype"), + url("fonts/OpenSans-Italic.svg#OpenSans-Italic") format("svg"); +} +@font-face { + font-family: 'Open Sans'; + font-weight: 300; + font-style: normal; + src: local('Open Sans Light'), local('OpenSans-Light'), + url("fonts/OpenSans-Light.eot") format("eot"), + url("fonts/OpenSans-Light.woff") format("woff"), + url("fonts/OpenSans-Light.ttf") format("truetype"), + url("fonts/OpenSans-Light.svg#OpenSans-Regular") format("svg"); +} +@font-face { + font-family: 'Open Sans'; + font-weight: 600; + font-style: normal; + src: local('Open Sans Semibold'), local('OpenSans-Semibold'), + url("fonts/OpenSans-Semibold.eot") format("eot"), + url("fonts/OpenSans-Semibold.woff") format("woff"), + url("fonts/OpenSans-Semibold.ttf") format("truetype"), + url("fonts/OpenSans-Semibold.svg#OpenSans-Semibold") format("svg"); +} +@font-face { + font-family: 'Open Sans'; + font-weight: 600; + font-style: italic; + src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), + url("fonts/OpenSans-SemiboldItalic.eot") format("eot"), + url("fonts/OpenSans-SemiboldItalic.woff") format("woff"), + url("fonts/OpenSans-SemiboldItalic.ttf") format("truetype"), + url("fonts/OpenSans-SemiboldItalic.svg#OpenSans-SemiboldItalic") format("svg"); +} +@font-face { + font-family: 'Open Sans'; + font-weight: bold; + font-style: normal; + src: local('Open Sans Bold'), local('OpenSans-Bold'), + url("fonts/OpenSans-Bold.eot") format("eot"), + url("fonts/OpenSans-Bold.woff") format("woff"), + url("fonts/OpenSans-Bold.ttf") format("truetype"), + url("fonts/OpenSans-Bold.svg#OpenSans-Bold") format("svg"); +} +/* custom reset */ +body{ + height: 100%; + font-family: 'Open Sans'; +} +a{ + color:#000; + text-decoration: none; +} +textarea { + resize: none; +} + +input, textarea { + font-family: 'Open Sans'; +} + +/* common */ +.wrapper{ + background-color: #FFF; + background-image: url(../img/bg.png); + background-repeat: repeat-x; +} +.wrap{ + min-height:100%; + width: 960px; + margin: 0 auto; + font-weight: 400; + color:#333333; + font-size: 13px; + height: 100%; +} +.wrap-header-top{ + padding-top: 5px; + background-color: #370078; + height: 53px; + margin-bottom: 1px; +} +.wrap-header-top-content{ + width: 960px; + margin: 0 auto; +} +/* header - title-video-wrap */ +.title-video-wrap{ + width: 380px; +} +.title-video-wrap .title-video { + margin-top: 10px; + left: 0; + font-size: 18px; + font-weight: bold; + color: #30036d; + text-decoration: underline; +} +.title-video-wrap .title-video:hover { + text-decoration: none; +} +.title-video-wrap .open-popin { + color: #30036d; + background-image: url(../img/pencil-icon.png); + background-repeat: no-repeat; + background-position: right 6px; + padding-right: 20px; + min-height: 20px; +} +.title-header{ + width: 460px; + float: left; + height: 60px; +} + +.wrap-header{ + background-color: #e2dbfd; +} +.header{ + position: relative; + width: 960px; + margin: 0 auto; + height: 60px; +} +.header .title-video-wrap, +.header h1, +.header .profil-wrap{ + position: relative; + float: left; + height: 60px; +} +.header h1{ + display: inline-block; + height: 60px; + width: 250px; +} +.header h1 a img, +.header h1 a span{ + float: left; +} +.header h1 a{ + padding-top: 8px; +} +.header h1 a span{ + font-size: 20px; + text-align: center; + padding: 0px 0 0 6px; + font-weight: 300; +} +/* header - profil-wrap */ +.header .profil-wrap{ + float: right; + width: 250px; +} +.header .profil-wrap a{ + width: 160px; + display: block; + text-align: right; + position: absolute; + right: 0; + font-size: 14px; + color: #30036d; + padding-right: 18px; +} +.header .profil-wrap a:hover{ + color: #FF00FC; +} +.header .profil-wrap a.all-hashcut{ + top: 12px; + background: url(../img/arrow-top.png) right 2px no-repeat; +} +.header .profil-wrap a.my-profil{ + top: 32px; + background: url(../img/arrow-bot.png) right 4px no-repeat; +} +/* content */ +.content{ + width: 960px; + min-height: 750px; +} +/* popin */ +.popin{ + padding-top: 12px; + position: absolute; + top: 0; + z-index: 10; +} +.pointer{ + position: absolute; + top: 0; +} +.popin-content{ + padding: 8px; + border: 1px solid #867a97; + background: url(../img/bg-jaune.png); +} +.popin-content input[type=text], +.popin-content input[type=password], +.popin-content textarea{ + padding: 0 4px; + font-size: 12px; + border: 1px solid #867a97; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.popin-content input[type=text], +.popin-content input[type=password] { + line-height: 20px; + height: 20px; +} +/* popin - user */ + +.popin { + display: none; +} + +.user.popin{ + top: 48px; + right: 0; +} +.user.popin img.pointer{ + right: 36px; +} +.button { + margin-top: 2px; + display: block; + font-size: 12px; + border: none; + padding: 0; + width: 150px; + background-color: #30036D; + color: #FFF; + text-align: center; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + cursor: pointer; + height: 22px; + line-height: 22px; +} + +.button:hover{ + background-color: #FF00FC +} +.user.login h2, +.user.signup h2 { + color: #de2500; + font-size: 14px; + font-weight: 600; + margin-bottom: 12px; +} + +.user.info h2 { + color: #7628df; + font-size: 18px; + font-weight: 600;margin-bottom: 2px; +} + +.user label{ + width: 84px; + font-size: 12px; + display: inline-block; + line-height: 10px; +} +.user p { + display: block; + line-height: 18px; + margin-bottom: 8px; + overflow: hidden; +} +.user input[type=text], +.user input[type=password] { + position: relative; + width: 110px; + padding: 0 5px; + height: 18px; + display: inline-block; +} +.user .button { + float: right; +} +/* popin - user - info */ +.user.info { + text-align: right; +} +.user h3{ + color: #30036d; + font-size: 14px; + margin-bottom: 10px; +} +.user .nb-hashcut{ + color: #de2500; + font-size: 14px; + text-decoration: underline; + display: block; + margin-bottom: 12px; +} +.user .nb-hashcut:hover{ + text-decoration: none; +} +.user.popin.info .popin-content a.change-account:hover{ + background-color: #FF00FC; +} +/* popin - user - signup */ +.signup-button{ + background-color: #de2500; +} +.user .popin-content{ + min-width: 205px; +} +/* footer */ +.footer{ + border-top: 1px solid black; + width: 100%; + padding-top: 8px; +} +.footer .links-left{ + float: left; +} +.footer .links-left li{ + margin-bottom: 4px; +} +.footer .links-left li a{ + border-bottom: 1px solid #cccccc; +} +.footer .links-left li a:hover{ + border-bottom: none; +} +.footer .links-right{ + float: right; +} +.footer .links-right li{ + line-height: 40px; + float: right; + margin-left: 8px; +} +.footer .links-right li img { + vertical-align: middle; +} +/* video-item */ +.hashcut-video-wrap{ + padding-left: 10px; + overflow: hidden; + margin-bottom: 16px; +} +.video-item{ + width: 300px; + float: left; + margin-right: 20px; +} + +.video-item h3{ + font-size: 12px; +} +.video-item h3 strong{ + font-weight: 600; +} +.video-item h3 span{ + color: #de2500; +} +.video-item .screenshot{ + display: inline-block; + margin-bottom: 8px; +} +.video-item h3 a{ + border-bottom: 1px solid #bababa; + display: inline-block; + line-height: 12px; +} +.video-item h3 a:hover{ + border-bottom: none; +} +.pagination{ + text-align: center; +} +.pagination a{ + font-size: 14px; + color: #7628df; + text-decoration: underline; +} +.pagination a:hover{ + text-decoration: none; +} +.pagination a.active{ + color: #de2500; + text-decoration: none; +} + +/* content */ +.left-content, +.right-content{ + float: left; +} +.left-content h2, +.right-content h2{ + padding: 6px 0; + margin: 8px 0 14px; + border-bottom: 1px solid #333333; + color: #30036d; + font-size: 18px; + font-weight: 600; + clear: both; +} +/* left-content */ +.left-content{ + width: 630px; + margin-right: 20px; +} +/* right-content */ +.right-content{ + width: 310px; +} +/* list-video */ +.list-video { + overflow: hidden; + overflow-y: auto; + height: 680px; +} +.item-video { + margin-bottom: 1px; + padding: 5px 10px 5px 10px; + clear: both; + width: auto; + min-height: 62px; + display: block; + position: relative; +} +.item-video .thumbnail{ + float: left; + margin-right: 4px; + max-width: 80px; + max-height: 60px; + box-shadow: 2px 2px 2px #333333; +} +.item-video .video-info{ + margin-left: 88px; +} +.item-video .title-video{ + font-size: 13px; + font-weight: 600; + color: #30036d; + margin-bottom: 1px; +} +.item-video .description{ + font-size: 11px; + margin-bottom: 1px; +} +.item-video .time-length{ + font-size: 12px; + font-weight: 600; +} +.item-video .time-length span{ + color: #de2500; +} +.item-video .media-count-wrap { + width: 30px; + text-align: center; + position: absolute; + top: 45px; + left: 75px; + height: 15px; + display: none; +} +.item-video .media-count{ + color: #FFF; + font-size: 10px; + line-height: 15px; + background-color: #ff00fc; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + padding: 0 3px; + border: 1px solid #DE2500; +} +.item-video .subtitle{ + margin-bottom: 2px; + color: #de2500; + font-size: 11px; +} +.item-video .duration{ + color: #7628df; + font-size: 12px; + font-weight: 600; +} +/* frise */ +.frise{ + height: 22px; + position: relative; + border: 1px solid #333333; +} + +.mashup-frise { + cursor: pointer; +} + +.frise-overflow { + position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; +} +.bloc-pvw .frise { + margin: 7px 5px 2px; +} + +.aucun-segment{ + font-weight: 600; + font-style: italic; + text-align: center; + line-height: 20px; + width: 100%; + z-index:0; + background: #CCCCCC; +} +.frise-segment{ + position: absolute; + height: 100%; +} +.mashup-frise .frise-segment { + -moz-box-shadow: inset 1px 1px 1px #333333; + -webkit-box-shadow: inset 1px 1px 1px #333333; + box-shadow: inset 1px 1px 1px #333333; +} +.frise-segment.active, .mashup-frise .frise-segment.active { + background-image: url(../img/pinstripe-purple.png); + background-repeat: repeat; +} +.frise-indication{ + height: 100%; + line-height: 22px; + display: inline-block; + position: absolute; + color: #FFF; + top:0; + left: 0px; + font-size: 10px; + width: 30px; + text-align: center; + background: url(../img/bg-indication.png) 15px 0 no-repeat; + margin-left: -15px; + text-shadow: 1px 1px 1px #000000; +} +.frise-position { + width: 1px; top: -8px; bottom: 0; margin-left: -0.5px; position: absolute; + z-index: 3; background: #FF00FC; +} +/* col-middle - bloc-segmentation - popin.segmentation */ + +.pointer-padder { + left: 5px; + position: absolute; + right: 5px; + top: 0; +} + +.pointer-padder .pointer { + top: 0; margin-left: -10px; +} + +.segment-info { + padding-top: 12px; + overflow: hidden; + position: relative; +} + +/* popin - frise-description */ + +.annotation-title { + color: #de2500; + font-size: 14px; + font-weight: bold; +} +.annotation-time { + color: #7628DF; +} +.mashup-description table{ + font-size: 12px; +} +.mashup-description th{ + text-align: left; + font-weight: 600; + display: block; + min-width: 75px; +} +.mashup-description td{ + line-height: 15px; + padding-left: 2px; +} +.mashup-description th, +.mashup-description td, +.mashup-description h2{ + padding-bottom: 8px; +} +.mashup-description .tools{ + float: right; +} + +.video { + background: #333333; + position: relative; +} +.video-wait { + display: none; + position: absolute; left: 0; top: 0; width: 100%; height: 100%; + background-color: rgba(120, 120, 140, .6); + background-image: url(../img/reel.gif); + background-position: center; + background-repeat: no-repeat; + z-index: 3; +} +.widget { + position: relative; +} + +.segment-tooltip-wrapper { + position: absolute; height: 0; width: 0; + top: 0; z-index: 7; display: none; left: 50%; +} + +.segment-tooltip { + padding: 4px; border: 1px solid #867a97; background: url(../img/bg-jaune.png); + width: 130px; position: absolute; bottom: 14px; left: -70px; + font-size: 12px; font-weight: 600; text-align: center; color: #DE2500; +} + +.segment-tooltip-tip { + position: absolute; top: -15px; left: -10px; background: url(../img/inv-triangle.png); + width: 20px; height: 13px; +} + +/* Styles from Metadataplayer */ + +/* Slider Widget */ + +.Ldt-Slider-Container { + background: #969696; + background: -moz-linear-gradient(left, #747474 50%, #B6B8B8 50%); + background: -webkit-linear-gradient(left, #747474 50%, #B6B8B8 50%); + border-top: 1px solid #969696; + height: 4px; + position: relative; z-index: 5; +} + +.Ldt-Slider { + border: none; border-radius: 0; padding: 0; height: 100%; background: #B6B8B8; +} + +.Ldt-Slider .ui-slider-handle { + border-radius: 8px; top: -2px; background: #ff00fc; border: 1px solid #ffffff; +} + +.Ldt-Slider .ui-slider-range { + background: #747474; +} + +.Ldt-Slider-Time { + position: absolute; top: -16px; background: #ffffc0; color: #000000; border-radius: 3px; z-index: 8; + font-size: 10px; width: 34px; border: 1px solid #999999; padding: 1px; margin-left: -14px; + display: none; text-align: center; font-weight: bold; +} + +/* Controller Widget */ + +.Ldt-Ctrl { + font-size: 10px; + background:url('../img/player_gradient.png') repeat-x transparent ; + height: 25px; + border: 1px solid #969696; + position: relative; +} + +.Ldt-Ctrl-Left { + float:left; width: 300px; +} + +.Ldt-Ctrl-Right { + float: right; +} + +.Ldt-Ctrl-button { + float: left; + width: 30px; height: 25px; + background: url('../img/player-sprites.png'); + cursor: pointer; +} + +.Ldt-Ctrl-spacer { + float: left; width: 1px; height: 25px; background: #969696; +} + +.Ldt-Ctrl-Play { + margin: 0 15px; +} + +.Ldt-Ctrl-Play-PlayState { + background-position: 0 0; +} + +.Ldt-Ctrl-Play-PlayState:hover { + background-position: 0 -25px; +} + +.Ldt-Ctrl-Play-PlayState:active { + background-position: 0 -50px; +} + +.Ldt-Ctrl-Play-PauseState { + background-position: -30px 0; +} + +.Ldt-Ctrl-Play-PauseState:hover { + background-position: -30px -25px; +} + +.Ldt-Ctrl-Play-PauseState:active { + background-position: -30px -50px; +} + +.Ldt-Ctrl-InOutBlock { + display: none; +} + +.segment-mode .Ldt-Ctrl-InOutBlock { + display: block; +} + +.Ldt-Ctrl-SetIn, .Ldt-Ctrl-SetOut { + margin: 0 2px; +} + +.Ldt-Ctrl-SetIn { + background-position: -60px 0; +} + +.Ldt-Ctrl-SetIn:hover { + background-position: -60px -25px; +} + +.Ldt-Ctrl-SetIn:active { + background-position: -60px -50px; +} + +.Ldt-Ctrl-SetOut { + background-position: -90px 0; +} + +.Ldt-Ctrl-SetOut:hover { + background-position: -90px -25px; +} + +.Ldt-Ctrl-SetOut:active { + background-position: -90px -50px; +} + +.Ldt-Ctrl-Time { + float: left; + margin: 7px 5px 0; + font-size: 12px; + font-family: Arial, Verdana, sans-serif; +} + +.Ldt-Ctrl-Time-Elapsed { + float: left; + color: #4a4a4a; +} + +.Ldt-Ctrl-Time-Separator { + margin: 0 4px; + float: left; +} + +.Ldt-Ctrl-Time-Total { + float: left; + color: #b2b2b2; +} + +.Ldt-Ctrl-Sound { + margin: 0 2px; +} + +.Ldt-Ctrl-Sound-Full { + background-position: -120px 0; +} + +.Ldt-Ctrl-Sound-Full:hover { + background-position: -120px -25px; +} + +.Ldt-Ctrl-Sound-Full:active { + background-position: -120px -50px; +} + +.Ldt-Ctrl-Sound-Mute { + background-position: -150px 0; +} + +.Ldt-Ctrl-Sound-Mute:hover { + background-position: -150px -25px; +} + +.Ldt-Ctrl-Sound-Mute:active { + background-position: -150px -50px; +} + +.Ldt-Ctrl-Sound-Half { + background-position: -180px 0; +} + +.Ldt-Ctrl-Sound-Half:hover { + background-position: -180px -25px; +} + +.Ldt-Ctrl-Sound-Half:active { + background-position: -180px -50px; +} + +.Ldt-Ctrl-Volume-Control { + display: none; + position: absolute; + background:url('../img/player_gradient.png') repeat-x transparent ; + height: 25px; + width: 100px; top: 25px; right: -1px; z-index: 100; + padding: 0 2px; + border: 1px solid #b6b8b8; +} + +.Ldt-Ctrl-Volume-Bar { + height: 5px; margin: 9px 3px 0; background: #cccccc; border: 1px solid #999999; border-radius: 2px; +} + +.Ldt-Ctrl-Volume-Control .ui-slider-handle { + width: 6px; height: 19px; background: #a8a8a8; border: 1px solid #999999; border-radius: 2px; top: -8px; margin-left: -4px; + cursor: pointer; +} + +.Ldt-Ctrl-Volume-Control:hover .ui-slider-handle { + background: #F7268E; +} + +/* Social Share Widget */ + +.Ldt-Social { + float: right; margin-top: 10px; +} + +.Ldt-Social a { + float: left; width: 24px; height: 24px; background: url(../img/socialbuttons.png); +} + +.Ldt-Social-Url-Container { + float: left; width: 24px; height: 24px; position: relative; +} + +a.Ldt-Social-Url { + margin: 0; background-position: -96px 0; +} + +a.Ldt-Social-Url:hover { + background-position: -96px -24px; +} + +.Ldt-Social-UrlPop { + position: absolute; left: 20px; top: -2px; background: url(../img/socialcopy.png); + padding: 3px 0 0 12px; width: 218px; height: 27px; + display: none; +} + +.Ldt-Social-Input, .Ldt-Social-CopyBtn { + font-size: 11px; margin: 1px; border: 1px solid #ccc; height: 16px; + padding: 1px; border-radius: 2px; display: inline-block; +} + +.Ldt-Social-Input:hover, .Ldt-Social-CopyBtn.hover { + border-color: #8080ff; +} + +.Ldt-Social-Input { + width: 150px; +} + +.Ldt-Social-CopyBtn { + font-weight: bold; width: 50px; text-align: center; background: #f0f0ff; line-height: 16px; width: 46px; +} + +.Ldt-Social-CopyBtn.hover { + background: #ffe0a0; +} + +.Ldt-Social-CopyBtn.active { + background: #ff8000; +} + +a.Ldt-Social-Twitter { + background-position: 0 0; +} + +a.Ldt-Social-Twitter:hover { + background-position: 0 -24px; +} + +a.Ldt-Social-Fb { + background-position: -24px 0; +} + +a.Ldt-Social-Fb:hover { + background-position: -24px -24px; +} + +a.Ldt-Social-Gplus { + background-position: -48px 0; +} + +a.Ldt-Social-Gplus:hover { + background-position: -48px -24px; +} + +a.Ldt-Social-Mail { + background-position: -72px 0; +} + +a.Ldt-Social-Mail:hover { + background-position: -72px -24px; +} + + +.media-segment-list-inner { + position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: url(../img/bg-segments.png); +} + +.media-segment-section { + position: absolute; height: 8px; cursor: pointer; + -moz-box-shadow: inset 1px 1px 1px #808080; + -webkit-box-shadow: inset 1px 1px 1px #808080; + box-shadow: inset 1px 1px 1px #808080; +} + +.media-segment-popin h3, .media-found-popin h3{ + padding: 0; + color: #de2500; + margin-bottom: 4px; + font-weight: 600; +} + +.media-segment-popin p{ + font-size: 12px; +} + +.media-segment-popin span{ + color: #7628df; +} diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/edition.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/edition.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,526 @@ +/* Block modes */ + +.empty-mode .bloc-pvw, +.empty-mode .bloc-segmentation, +.segment-mode .bloc-pvw, +.pvw-mode .bloc-segmentation { + display: none; +} + +/* header - title-video-wrap */ +.title-video-wrap{ + width: 460px; +} +.title-video-wrap .time-length{ + margin-top: 5px; + color: #333333; + font-size: 14px; +} +.mashup-total-duration { + color: #de2500; +} +/* popin - update-title */ +.update-title { + top: 34px; + left: 220px; +} +.update-title .pointer{ + left: 50px; +} +/* col */ +.col-middle, +.col-left, +.col-right{ + float: left; +} +/* col-middle */ +.col-middle{ + width: 460px; + min-height: 1px; +} +.col-middle-header{ + height: 35px; + font-size: 16px; + clear: both; +} +/* Tabs */ +.tab { + height: 35px; + line-height: 35px; + color: #30036d; + padding: 0 10px; + width: 210px; + float: left; + background-position: 0 -35px; +} +.tab:hover{ + color: #FF00FC; +} +.tab.disable, +.tab.disable:hover{ + color: #796891; +} +.tab-segment { + background-image: url(../img/bg-segmenter.png); +} +.tab-pvw { + background-image: url(../img/bg-previsualiser.png); text-align: right; +} + +.pvw-mode .tab-pvw, .segment-mode .tab-segment { + width: 250px; background-position: 0 0; font-weight: 600; +} + +.segment-mode .tab-pvw, .pvw-mode .tab-segment { + width: 170px; color: #796891; +} + +.tab-media-title { + font-style: italic; font-weight: normal; +} + +.empty-mode .tab-media-title, .pvw-mode .tab-media-title { + display: none; +} + +/* col-middle - bloc-segmentation */ +.bloc-segmentation{ + position: relative; +} + +/* col-middle - bloc-segmentation - popin.segmentation */ + +.segmentation { + position: relative; + overflow: hidden; + padding-top: 12px; +} + +.segmentation h2{ + font-size: 14px; + font-weight: 600; + color:#de2500; + margin: 5px 0 2px; +} + +.time-tangle { + color: #7628df; cursor: w-resize; position: relative; +} +.time-tangle:hover, +.time-tangle.active { + color: #FF00FC; border-bottom: 1px dashed #7628df; +} +.time-tangle:hover:after, +.time-tangle.active:after { + color: #7628DF; position: absolute; top: 18px; left: 50%; width: 160px; + margin-left: -80px; font-size: 12px; text-align: center; + content: "glisser pour modifier" +} + +.time-tangle.deactivate:hover { + border: none; color: #7628DF; +} + +.time-tangle.deactivate:hover:after { + display: none; +} + +.segmentation form{ + overflow: hidden; +} +.form-segment-left, +.form-segment-right{ + float: left; +} +.segmentation .form-segment-left{ + width: 230px; +} + +.segmentation label, .update-title label { + display: block; + font-size: 12px; + font-weight: 600; + margin: 8px 0 4px; +} +.segmentation textarea, .update-title textarea { + width: 200px; + height: 69px; + max-width: 200px; + font-size: 12px; +} + +.segmentation textarea { + margin-bottom: 32px; +} + +.segmentation input[type=text], .update-title input[type=text]{ + font-size: 12px; + width: 200px; + height: 20px; +} + +.add-segment { + position: absolute; right: 10px; bottom: 10px; +} + +.media-segments h2{ + color: #30036d; + font-size: 14px; + font-weight: 600; + margin: 10px 8px 2px; +} + +.media-segment-list { + margin: 8px 5px 0 6px; + padding-bottom: 1px; + position: relative; +} + +.media-segment-popin .pointer{ + margin-left: 140px +} + +.media-segment-popin { + padding-top: 12px; overflow: hidden; + top: 2px; width: 300px; margin-left: -151px; + display: none; +} + +.media-segment-popin p{ + margin-right: 155px; + font-size: 12px; +} + +.media-found-segments { + clear: both; padding-top: 5px; +} + +.media-found-segments .media-segment-list { + margin: 0; +} + +.media-found-list { + padding-bottom: 1px; position: relative; +} + +.media-current-section { + background: url(../img/pinstripe-purple.png); + top: -2px; bottom: -2px; margin-left: -1px; padding: 2px 1px; + position: absolute; +} + +.media-found-popin { + padding-top: 12px; overflow: hidden; + top: 2px; width: 170px; display: none; + margin-left: -86px; +} + +.media-found-popin .pointer { + margin-left: 75px; +} + +.reprendre-segment{ + float: right; + display: block; +} +/* col-middle - bloc-vide */ +.tutorial{ + padding: 0 10px; + color: #FFF; + font-weight: 600; + display: none; +} +.empty-mode .tutorial { + display: block; +} +.tutorial h2{ + padding-top: 16px; + font-size: 18px; + margin-bottom: 20px; +} +.tutorial ol{ + padding-left: 22px; +} +.tutorial li:first-child{ + width: 324px; +} +.tutorial li{ + list-style: decimal; + font-size: 14px; + margin-bottom: 16px; + padding-left: 20px; +} +/* col-left */ +.col-left, +.col-right{ + width: 250px; + min-height: 750px; + background: url(../img/bg-col.png) repeat-x 0 0 #e6e6e6; +} +.left-head { + background: url(../img/bg-video-search.png) 0 0 repeat-x #906ebe; + height: 70px; + padding-left: 10px; + margin-bottom: 1px; +} +.left-head h2{ + padding-top: 8px; + margin-bottom: 12px; + color: #30036d; + font-size: 16px; + font-weight: 600; +} +.left-head input { + width: 222px; + font-size: 14px; + border: none; + height: 20px; + padding: 0 4px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + background: #FFF url(../img/zoom-icon.png) 214px 3px no-repeat; +} + +.col-left input::-webkit-input-placeholder{ + color: #b48aed; + font-style: italic; +} +.col-left input:-moz-placeholder { + color: #b48aed; + font-style: italic; +} + +.col-left .item-video:hover, +.col-left .item-video.active{ + background: url(../img/arrow-item-video-sprite.png) right center no-repeat; +} +/* col-right */ +.col-right{ + width: 250px; +} +.col-right .liste-segment{ + height: 70px; + background: url(../img/bg-liste-segment.png) repeat-x 0 0; + padding: 0 10px; + width: 230px; +} +.col-right .liste-segment h2{ + text-align: right; + color: #30036D; + font-weight: 600; + font-size: 16px; + margin-bottom: 12px; + padding-top: 8px; +} +.col-right .frise{ + width: 228px; + position: relative; + height: 20px; +} + +.col-right .frise-indication{ + line-height: 20px; +} + +.col-right .item-video:hover, +.col-right .item-video.active{ + background: url(../img/arrow-item-video-sprite.png) left center no-repeat; +} + +.item-video { + cursor: pointer; +} + +/* tools */ +.tools { + height: 17px; +} +.tools li{ + float: left; +} +.tools a{ + display: block; + width: 17px; + height: 17px; + background: url(../img/tools-sprite.png) no-repeat 0 0; +} +.tools a.edit{ + background-position: 2px 0; +} +.tools a.edit:hover{ + background-position: 2px -32px; +} +.tools a.edit.disable:hover, +.tools a.edit.disable{ + background-position: 2px -16px; +} +.tools a.bottom{ + background-position: -19px 0; +} +.tools a.bottom:hover{ + background-position: -19px -32px; +} +.tools a.bottom.disable:hover, +.tools a.bottom.disable{ + background-position: -19px -16px; +} +.tools a.top{ + background-position: -40px 0; +} +.tools a.top:hover{ + background-position: -40px -32px; +} +.tools a.top.disable:hover, +.tools a.top.disable{ + background-position: -40px -16px; +} +.tools a.delete{ + background-position: -61px 0; +} +.tools a.delete:hover{ + background-position: -61px -32px; +} +.tools a.delete.disable:hover, +.tools a.delete.disable{ + background-position: -61px -16px; +} + + +/* Video */ + +.video{ + width: 460px; + height: 300px; +} +.publier-button{ + position: absolute; + width: 69px; + height: 67px; + background: url(../img/publier-button-sprite.png) 0 0 no-repeat; + left: 382px; + top: 10px; + z-index: 4; +} +.publier-button:hover{ + background-position: 0 -67px; +} +.publier-button.disable, .publier-button.disable:hover{ + background-position: 0 -134px; +} + +/* Slice Widget */ + +.Ldt-Slice { + border-radius: 0; border: none; padding: 0; margin: 12px 6px; background: #B6B8B8; height: 8px; +} + +.Ldt-Slice .ui-slider-handle { + width: 7px; height: 20px; top: 0; border: none; margin: 0; padding: 0; + background: url(../img/slice-handles.png); border-radius: 0; cursor: pointer; +} + +.ui-slider-handle.Ldt-Slice-left-handle { + margin-left: -7px; +} + +.ui-slider-handle.Ldt-Slice-left-handle.ui-state-hover, .ui-slider-handle.Ldt-Slice-left-handle.ui-state-active { + background-position: 0 -20px; +} + +.ui-slider-handle.Ldt-Slice-right-handle { + margin-left: 0; background-position: -7px 0; +} + +.ui-slider-handle.Ldt-Slice-right-handle.ui-state-hover, .ui-slider-handle.Ldt-Slice-right-handle.ui-state-active { + background-position: -7px -20px; +} + +.Ldt-Slider { + margin: 0 6px; +} + +.Ldt-Slice .ui-slider-range { + background: url(../img/pinstripe-purple.png); +} + +/* Validate */ + +.validate { + float: right; width: 20px; height: 20px; cursor: pointer; background: url(../img/helpwarn.png); + position: relative; +} + +.validate:hover { + background-position: -20px 0; +} + +.validate.warning { + background-position: 0 -20px; +} + +.validate.warning:hover { + background-position: -20px -20px; +} + +.validate.critical { + background-position: 0 -40px; +} + +.validate.critical:hover { + background-position: -20px -40px; +} + +.item-video .validate { + margin-right: -5px; +} + +.liste-segment .validate { + margin: 6px -1px 0 2px; +} + +.validate-tooltip { + position: absolute; top: 16px; left: -225px; width: 235px; padding: 16px 8px 0; + background: url(../img/tooltip.png) top no-repeat; z-index: 6; min-height: 30px; + color: #FFFFFF; display: none; cursor: auto; +} + +.validate-tooltip ul { + padding-left: 14px; list-style: disc; font-size: 12px; +} + +.validate-tooltip li { + margin: 2px 0; +} + +.validate:hover .validate-tooltip { + display: block; +} + +.validate:hover .validate-tooltip:hover { + display: none; +} + +.validate-tooltip:after { + bottom: -10px; content: ""; height: 10px; + left: 0; position: absolute; width: 100%; + background: url(../img/tooltip.png) bottom no-repeat; +} + +.tagit { + border: 1px solid #867A97; + padding: 0 4px; width: 200px; + font-size: 12px; font-family: 'Open Sans'; +} + +ul.tagit li.tagit-choice { + padding: 3px 18px 3px 3px; +} + +ul.tagit li.tagit-new { + padding: 0; +} + +ul.tagit input[type="text"] { + width: 100px; +} diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Bold.eot Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Bold.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Bold.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Bold.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,587 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:55:15 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Bold.ttf Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Bold.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Bold.woff Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Bold.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-BoldItalic.eot Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-BoldItalic.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-BoldItalic.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/fonts/OpenSans-BoldItalic.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,600 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:39:46 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-BoldItalic.ttf Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-BoldItalic.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-BoldItalic.woff Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-BoldItalic.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Italic.eot Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Italic.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Italic.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Italic.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,612 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:47:08 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Italic.ttf Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Italic.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Italic.woff Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Italic.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Light.eot Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Light.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Light.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Light.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,581 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:49:24 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Light.ttf Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Light.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Light.woff Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Light.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Regular.eot Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Regular.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Regular.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Regular.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,592 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:45:52 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Regular.ttf Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Regular.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Regular.woff Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Regular.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Semibold.eot Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Semibold.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Semibold.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Semibold.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,587 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:43:29 2011 + By www-data +Digitized data copyright (c) 2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Semibold.ttf Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Semibold.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Semibold.woff Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-Semibold.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-SemiboldItalic.eot Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-SemiboldItalic.eot has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-SemiboldItalic.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/fonts/OpenSans-SemiboldItalic.svg Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,609 @@ + + + + +Created by FontForge 20110222 at Thu May 12 12:40:58 2011 + By www-data +Digitized data copyright (c) 2010-2011, Google Corporation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-SemiboldItalic.ttf Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-SemiboldItalic.ttf has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/fonts/OpenSans-SemiboldItalic.woff Binary file src/hashcut/static/hashcut/iri/css/fonts/OpenSans-SemiboldItalic.woff has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/home.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/home.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,87 @@ +/* header */ +.title-header h2{ + width: 100%; + text-align: center; + line-height: 60px; +} +.title-header h2 a{ + color: #de2500; + font-size: 24px; + text-decoration: underline; + font-weight: bold; +} +.title-header h2 a:hover{ + text-decoration: none; +} + +/* left-content */ + +.news .video-item:nth-child(2n+2){ + margin-right: 0; +} + + + +.last .video-item:nth-child(4n+4){ + margin-right: 0; +} +.last .video-item{ + height: 130px; + width: 140px; + float: left; + margin: 0 20px 12px 0; +} + +/* right-content */ + +.definition p{ + font-size: 12px; + line-height: 14px; + margin-bottom: 12px; +} +.definition p strong{ + font-weight: bold; +} +.definition p a{ + color: #7628df; + text-decoration: underline; +} +.definition p a:hover{ + text-decoration: none; +} +.how-to li{ + background-image: url(../img/how-to-sprite.png); + background-repeat: no-repeat; + margin-bottom: 2px; +} +.how-to li h3{ + color: #de2500; + font-size: 18px; + font-weight: bold; + margin-bottom: 12px; +} +.how-to li p{ + font-size: 12px; + word-wrap: break-word; + width: 210px; +} +.how-to li.inscription{ + height: 84px; + background-position: 212px 0; +} +.how-to li.creation{ + height: 100px; + background-position: 212px -128px; +} +.how-to li.creation{ + height: 100px; + background-position: 212px -128px; +} +.how-to li.publier{ + height: 90px; + background-position: 212px -266px; +} +.how-to li.next-step{ + height: 24px; + background-position: 212px -377px; +} \ No newline at end of file diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/players.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/players.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,128 @@ +.more-info-wrap{ + padding-right: 10px; +} +.more-info{ + text-align: left; +} +.more-info th{ + font-weight: 600; + font-style: normal; + font-size: 12px; + width: 78px; +} +.more-info td{ + padding-bottom: 12px; + font-size: 12px; +} +.more-info a{ + text-decoration: underline; +} +.more-info a:hover{ + text-decoration: none; +} +.info-title a{ + color:#30036d; + font-size: 14px; + font-weight: bold; +} +.info-duration td{ + color: #de2500; +} +.info-author a{ + color: #7628df; +} +.cloner{ + float: right; margin-bottom: 8px; +} +.list-video{ + height: auto; + margin-left: -10px; + max-height: 450px; +} +.item-video:hover, +.item-video.active{ + background: url(../img/arrow-item-video-sprite.png) left center no-repeat; +} +.time-length{ + margin-bottom: 5px; +} +.item-video .frise{ + width: 100%; + height: 8px; + background-color: #999999; + display: block; +} +.title-video a { + color: #30036d; +} +.item-video .title-video a:hover { + text-decoration: underline; +} +.item-video .frise{ + border:none; +} +.bloc-video{ + padding-left: 10px; +} +.video { + height: 400px; + width: 620px; +} +.bloc-pvw{ + margin-top: 7px; +} +.popin-content h2{ + margin: 0; + border:none; +} +.Ldt-Ctrl { + margin-bottom: 6px; +} +.Ldt-Slider { + margin: 0; +} +.frise-segment { + cursor: pointer; +} +.segment-info .pointer { + margin-left: -10px; +} + +.media-segment-popin .pointer{ + margin-left: 105px +} + +.media-segment-popin { + padding-top: 12px; overflow: hidden; + top: 2px; width: 230px; margin-left: -116px; + display: none; +} + +.media-segment-list { + margin: 8px 0 0; + padding-bottom: 1px; + position: relative; +} + +.active .media-segment-section, .media-segment:hover .media-segment-section { + -moz-box-shadow: inset 0 0 2px 2px #fc00ff, 0 0 2px #fc00ff; + -webkit-box-shadow: inset 0 0 2px 2px #fc00ff, 0 0 2px #fc00ff; + box-shadow: inset 0 0 2px 2px #fc00ff, 0 0 2px #fc00ff; +} + +.mashup-link { + display: none; + font-size: 13px; + color: #30036D; + margin-top: 5px; +} + +.mashup-link a { + color: #30036D; + font-weight: 600; + text-decoration: underline; +} + +.mashup-link a:hover { + text-decoration: none; +} diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/profil.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/profil.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,17 @@ +.title-content{ + padding: 20px 0 6px; + border-bottom: 1px solid #333333; + color: #30036d; + font-size: 18px; + font-weight: 600; + margin-bottom: 14px; +} +.title-content a{ + color: #ff00fc; +} +.profil .video-item{ + margin-bottom: 16px; +} +.profil .video-item:nth-child(3n+3){ + margin-right: 0; +} diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/css/reset.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/iri/css/reset.css Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,77 @@ +/* http://meyerweb.com/eric/tools/css/reset/ + v2.0 | 20110126 + License: none (public domain) +*/ + +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, +footer, header, hgroup, menu, nav, section { + display: block; +} +body { + line-height: 1; +} +ol, ul { + list-style: none; +} +blockquote, q { + quotes: none; +} +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} + +.clearfix:after { + content: "."; + display: block; + clear: both; + visibility: hidden; + line-height: 0; + height: 0; +} + +.clearfix { + display: inline-block; +} + +html[xmlns] .clearfix { + display: block; +} + +* html .clearfix { + height: 1%; +} +.clear{ + clear: both; +} + +input::-moz-focus-inner { + border: 0 none; + padding: 0; +} \ No newline at end of file diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/apercu-video.jpg Binary file src/hashcut/static/hashcut/iri/img/apercu-video.jpg has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/arrow-bot.png Binary file src/hashcut/static/hashcut/iri/img/arrow-bot.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/arrow-item-video-sprite.png Binary file src/hashcut/static/hashcut/iri/img/arrow-item-video-sprite.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/arrow-top.png Binary file src/hashcut/static/hashcut/iri/img/arrow-top.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/bg-col.png Binary file src/hashcut/static/hashcut/iri/img/bg-col.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/bg-degrade.png Binary file src/hashcut/static/hashcut/iri/img/bg-degrade.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/bg-indication.png Binary file src/hashcut/static/hashcut/iri/img/bg-indication.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/bg-jaune.png Binary file src/hashcut/static/hashcut/iri/img/bg-jaune.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/bg-liste-segment.png Binary file src/hashcut/static/hashcut/iri/img/bg-liste-segment.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/bg-previsualiser.png Binary file src/hashcut/static/hashcut/iri/img/bg-previsualiser.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/bg-segmenter.png Binary file src/hashcut/static/hashcut/iri/img/bg-segmenter.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/bg-segments.png Binary file src/hashcut/static/hashcut/iri/img/bg-segments.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/bg-video-search.png Binary file src/hashcut/static/hashcut/iri/img/bg-video-search.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/bg.png Binary file src/hashcut/static/hashcut/iri/img/bg.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/border-right-segment.png Binary file src/hashcut/static/hashcut/iri/img/border-right-segment.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/hashcut-logo.png Binary file src/hashcut/static/hashcut/iri/img/hashcut-logo.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/helpwarn.png Binary file src/hashcut/static/hashcut/iri/img/helpwarn.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/how-to-sprite.png Binary file src/hashcut/static/hashcut/iri/img/how-to-sprite.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/inv-triangle.png Binary file src/hashcut/static/hashcut/iri/img/inv-triangle.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/logo-cinecast.png Binary file src/hashcut/static/hashcut/iri/img/logo-cinecast.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/logo-iri.png Binary file src/hashcut/static/hashcut/iri/img/logo-iri.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/pencil-icon.png Binary file src/hashcut/static/hashcut/iri/img/pencil-icon.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/pinstripe-purple.png Binary file src/hashcut/static/hashcut/iri/img/pinstripe-purple.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/player-sprites.png Binary file src/hashcut/static/hashcut/iri/img/player-sprites.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/player_gradient.png Binary file src/hashcut/static/hashcut/iri/img/player_gradient.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/pompidou-logo.png Binary file src/hashcut/static/hashcut/iri/img/pompidou-logo.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/popin-triangle.png Binary file src/hashcut/static/hashcut/iri/img/popin-triangle.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/publier-button-sprite.png Binary file src/hashcut/static/hashcut/iri/img/publier-button-sprite.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/reel.gif Binary file src/hashcut/static/hashcut/iri/img/reel.gif has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/slice-handles.png Binary file src/hashcut/static/hashcut/iri/img/slice-handles.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/socialbuttons.png Binary file src/hashcut/static/hashcut/iri/img/socialbuttons.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/socialcopy.png Binary file src/hashcut/static/hashcut/iri/img/socialcopy.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/tools-sprite.png Binary file src/hashcut/static/hashcut/iri/img/tools-sprite.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/tooltip.png Binary file src/hashcut/static/hashcut/iri/img/tooltip.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/visuel-home-last.jpg Binary file src/hashcut/static/hashcut/iri/img/visuel-home-last.jpg has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/visuel-home-news.jpg Binary file src/hashcut/static/hashcut/iri/img/visuel-home-news.jpg has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/visuel-player-bar.jpg Binary file src/hashcut/static/hashcut/iri/img/visuel-player-bar.jpg has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/visuel-segment.png Binary file src/hashcut/static/hashcut/iri/img/visuel-segment.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/iri/img/zoom-icon.png Binary file src/hashcut/static/hashcut/iri/img/zoom-icon.png has changed diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/js/common.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/js/common.js Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,26 @@ +$(function(){ + + $(".open-popin").click(function(){ + var target = $(this).attr("href"); + if($(target).is(':visible')){ + $(".popin").hide(); + }else{ + $(".popin").hide(); + $(target).show(); + } + return false; + }); + + $(".change-account").click(function() { + $(".user").hide(); + $(".user.login").show(); + }); + $(".signup-button").click(function() { + $(".user").hide(); + $(".user.signup").show(); + }); + $(".login-form, .signup-form").submit(function() { + $(".user").hide(); + }); + +}); \ No newline at end of file diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/js/compile.bat --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/js/compile.bat Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,9 @@ +@echo off + +type init.js > hashcut.js + +set jsfiles=i18n model ldt-serializer segmentapi-serializer contentapi-serializer mashupcore editor mashupplayer mediaplayer social + +FOR %%f IN (%jsfiles%) DO (type %%f.js >> hashcut.js) + +echo Hashcut.js compiled successfully! diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/js/compile.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/js/compile.sh Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,10 @@ +#!/bin/sh + +cat init.js > hashcut.js + +jsfiles="i18n model ldt-serializer segmentapi-serializer contentapi-serializer mashupcore editor mashupplayer mediaplayer social" + +for jsfile in $jsfiles +do + cat $jsfile.js >> hashcut.js +done diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/js/contentapi-serializer.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/js/contentapi-serializer.js Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,27 @@ +IriSP.serializers.content = { + deSerialize : function(_data, _source) { + var _medialist = new IriSP.Model.List(_source.directory); + + function deserializeObject(_m, i) { + var _media = new IriSP.Model.Media(_m.iri_id, _source); + _media.video = _m.media_url; + _media.title = _m.title; + _media.description = _m.description; + _media.setDuration(_m.duration); + _media.thumbnail = _m.image; + _media.color = IriSP.vizcolors[i % IriSP.vizcolors.length]; + _media.keywords = _m.tags; + _medialist.push(_media); + } + + if (typeof _data.objects !== "undefined") { + IriSP._(_data.objects).each(deserializeObject); + } else { + deserializeObject(_data, 0); + } + + _source.addList("media", _medialist); + } +}; + +/* END contentapi-serializer.js */ diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/js/editor.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/js/editor.js Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,875 @@ +IriSP.editor = function(options) { + + /* Load Media List */ + + var directory = new IriSP.Model.Directory(), + apidirectory = new IriSP.Model.Directory(), + project = directory.remoteSource({ + url: IriSP.endpoints.content, + url_params: _({}).extend(options.filter), + serializer: IriSP.serializers.content + }), +/* project = directory.remoteSource({ + url: options.url, + serializer: IriSP.serializers.medialist + }), +*/ + mashup = new IriSP.Model.Mashup(false, project), + mediatemplate = _.template( + '
  • ' + + '<%= title %>' + + '

    <%= title %>

    <%= description %>

    ' + + '

    <%= IriSP.translate("Duration:") %> <%= duration.toString() %>

  • ' + ), + segmenttemplate = _.template( + '
  • ' + + '<%= annotation.getMedia().title %>' + + '
    • <%= annotation.status_messages.join("
    • ") %>

    <%= annotation.getMedia().title %>

    ' + + '

    <%= annotation.title %>

    <%= annotation.begin.toString() %> - <%= annotation.end.toString() %> (<%= annotation.getDuration().toString() %>)

    ' + + '
  • ' + ), + mediasegmenttemplate = _.template( + '
    ' + + '
    ' + + '
    ' + + '

    <%= annotation.title %>

    <%= IriSP.translate("Clone segment") %>' + + '

    <%= IriSP.translate("From:") %> <%= annotation.begin.toString() %> <%= IriSP.translate("to:") %> <%= annotation.end.toString() %> (<%= IriSP.translate("duration:") %> <%= annotation.getDuration().toString() %>)

    ' + + '
    ' + ), + mediasegmentlisttemplate = _.template( + '
    <%= segments %>
    ' + ), + mediafoundtemplate = _.template( + '
    ' + + '
    ' + + '

    <%= title %>

    <%= IriSP.translate("Clone segment") %>' + + '
    ' + ), + mediafoundlisttemplate = _.template( + '
    <%= segments %>
    ' + ), + mashupstatus = '', + addMode, currentMedia, currentSegment; + + IriSP.mashupcore(project, mashup); + + /* Validation of segments and mashup */ + + var segmentcritical = [ + { + validate: function(_s) { + return (_s.getDuration() >= 1000); + }, + message: "A segment must be at least one second long" + }, + { + validate: function(_s) { + return (_s.getDuration() < 180000); + }, + message: "A segment must be at most three minutes long" + }, + { + validate: function(_s) { + return (!!_s.title && _s.title !== IriSP.translate("Untitled segment")); + }, + message: "A segment must have a title" + } + ]; + var segmentwarning = [ + { + validate: function(_s) { + return (!!_s.description); + }, + message: "A segment should have a description" + }, + { + validate: function(_s) { + return (!!_s.keywords.length); + }, + message: "A segment should have tags" + } + ]; + + var mashupcritical = [ + { + validate: function(_m) { + return _m.segments.length > 2; + }, + message: "A hashcut must be made from at least three segments" + }, + { + validate: function(_m) { + return (!!_m.title && _m.title !== IriSP.translate("Untitled Hashcut")); + }, + message: "A hashcut must have a title" + } + ]; + var mashupwarning = [ + { + validate: function(_m) { + return !!_m.description + }, + message: "A hashcut should have a description" + } + ]; + + /* Fill left column with Media List */ + + project.onLoad(function() { + var html = ''; + project.getMedias().forEach(function(_m) { + html += mediatemplate(_m); + }); + $(".col-left .list-video").html(html); + project.getMedias().forEach(function(_m) { + apidirectory.remoteSource({ + url: IriSP.endpoints.segment, + url_params: { + iri_id: _m.id, + limit: 0 + }, + serializer: IriSP.serializers.segmentapi + }).onLoad(function() { + var medias = this.getMedias(), + annotations = this.getAnnotations(); + if (medias && medias.length) { + var mediaid = medias[0].id; + el = $(".item-video[data-media-id='" + mediaid + "'] .media-count"); + el.text(annotations.length).parent().show(); + mediasegmentscache[mediaid] = annotations; + if (currentMedia && mediaid === currentMedia.id && currentSegment) { + showOtherSegments(); + } + } + }); + }); + }); + + /* Search Media with left column form */ + + $(".col-left input").on("keyup change input paste", function() { + var val = $(this).val(); + if (val) { + var find = IriSP.Model.regexpFromTextOrArray(val, true), + replace = IriSP.Model.regexpFromTextOrArray(val, false); + } + $(".col-left .item-video").each(function() { + var li = $(this), + mediaid = li.attr("data-media-id"), + media = directory.getElement(mediaid); + if (!val) { + li.find(".title-video").text(media.title); + li.find(".description").text(media.description); + li.find(".media-found-segments").html(""); + li.show(); + } else { + var apimedia = apidirectory.getElement(mediaid); + if (apimedia) { + var annotations = apimedia.getAnnotations().searchByTextFields(val); + } else { + var annotations = []; + } + var found = find.test(media.title) || find.test(media.description) || annotations.length; + if (found) { + li.find(".title-video").html(media.title.replace(replace, '$1')); + li.find(".description").html(media.description.replace(replace, '$1')); + var html = '', + k = 230 / media.duration, + lines = []; + _(annotations).each(function(_a, i) { + var pos = k * (_a.begin + _a.end) / 2, + corrpos = Math.max(76, Math.min(156, pos)), + line = IriSP._(lines).find(function(line) { + return !IriSP._(line.annotations).find(function(ann) { + return ann.begin < _a.end && ann.end > _a.begin + }); + }); + if (!line) { + line = { index: lines.length, annotations: []}; + lines.push(line); + } + line.annotations.push(_a); + vizdata = { + annotation : _a, + left : k * _a.begin, + width : k * _a.getDuration(), + top: 8 * line.index, + color: IriSP.vizcolors[i % IriSP.vizcolors.length], + title: _a.title.replace(replace, '$1'), + popleft : corrpos, + pointerpos : (pos - corrpos), + } + html += mediafoundtemplate(vizdata); + }); + html = mediafoundlisttemplate({ + height: 8 * lines.length, + segments: html + }); + li.find(".media-found-segments").html(html); + li.show(); + } else { + li.hide(); + } + } + }) + }); + + /* Fill right column when mashup is updated */ + + function updateMashupUI() { + var listhtml = '', critical = false, warning = false, messages = []; + mashup.segments.forEach(function(_s) { + listhtml += segmenttemplate(_s); + if (_s.annotation.status === "critical") { + critical = true; + } + }); + if (critical) { + messages.push("One or more segments are invalid"); + } + + _(mashupcritical).each(function(sc) { + if (!sc.validate(mashup)) { + critical = true; + messages.push(sc.message); + } + }); + _(mashupwarning).each(function(sc) { + if (!sc.validate(mashup)) { + warning = true; + messages.push(sc.message); + } + }); + mashup.status = critical ? "critical" : (warning ? "warning" : "valid"); + if (!messages.length) { + messages.push("Your hashcut is valid!"); + } + mashupstatus = ' - ' + _(messages).map(IriSP.translate).join('\n - '); + + $(".publier-button").toggleClass("disable", critical); + + $(".liste-segment .validate").removeClass("critical warning valid").addClass(mashup.status); + $(".liste-segment .validate-tooltip").html(""); + + $(".col-right .list-video").html(listhtml).find(".item-video:last-child .bottom, .item-video:first-child .top").addClass("disable"); + + project.trigger("mouseout-annotation"); + } + + mashup.on("setcurrent", function() { + currentMedia = mashup; + }); + + mashup.on("change",updateMashupUI); + + /* Slice Widget */ + + var sliceSlider = $(".Ldt-Slice"), + sliceStartTime, + slidersRange = 920; + + sliceSlider.slider({ + range: true, + values: [0, slidersRange], + min: 0, + max: slidersRange, + start: function() { + if (currentMedia) { + if (!currentMedia.getPaused()) { + currentMedia.pause(); + } + } + }, + slide: function(event, ui) { + if (currentMedia && currentSegment) { + var t = currentMedia.duration * ui.value / slidersRange; + if (ui.value === ui.values[0]) { + currentSegment.setBegin(t); + } else { + currentSegment.setEnd(t); + } + } + } + }); + + sliceSlider.find(".ui-slider-handle:first") + .addClass("Ldt-Slice-left-handle") + .click(function() { + if (currentMedia && currentSegment) { + currentMedia.setCurrentTime(currentSegment.begin); + } + }); + sliceSlider.find(".ui-slider-handle:last") + .addClass("Ldt-Slice-right-handle") + .click(function() { + if (currentMedia && currentSegment) { + currentMedia.setCurrentTime(currentSegment.end); + } + }); + + + /* Update Segment UI */ + + function updateSegmentUI() { + if (currentMedia && currentSegment) { + var start = currentSegment.begin, + end = currentSegment.end, + dur = currentSegment.getDuration(), + f = slidersRange / currentMedia.duration, + tangleStart = $(".tangle-start"), + tangleEnd = $(".tangle-end"), + tangleDuration = $(".tangle-duration"), + k = 100 / currentMedia.duration, + p = k * (start + end) / 2; + sliceSlider.slider( "values", [ f * start, f * end ] ); + tangleStart.text(start.toString(tangleStart.hasClass("active"))).attr("data-milliseconds",start.milliseconds); + tangleEnd.text(end.toString(tangleEnd.hasClass("active"))).attr("data-milliseconds",end.milliseconds); + tangleDuration.text(dur.toString(tangleDuration.hasClass("active"))).attr("data-milliseconds",dur.milliseconds); + $(".segmentation .pointer").css("left", p + "%"); + $(".media-current-section").css({ + left: (k * start) + "%", + width: (k * dur) + "%" + }); + var messages = [], + critical = false, + warning = false; + _(segmentcritical).each(function(sc) { + if (!sc.validate(currentSegment)) { + critical = true; + messages.push(sc.message); + } + }); + _(segmentwarning).each(function(sc) { + if (!sc.validate(currentSegment)) { + warning = true; + messages.push(sc.message); + } + }); + currentSegment.status = critical ? "critical" : (warning ? "warning" : "valid"); + if (!messages.length) { + messages.push("This segment is valid!") + } + currentSegment.status_messages = _(messages).map(IriSP.translate); + + $(".segmentation .validate").removeClass("critical warning valid").addClass(currentSegment.status); + $(".segmentation .validate-tooltip").html(""); + } + } + + var mediasegmentscache = {}; + + function setMedia(media) { + if (currentMedia) { + currentMedia.pause(); + } + currentMedia = media; + project.trigger("set-current", media); + if (currentMedia.elementType == "media") { + showSegmentation(); + $(".tab-media-title").text(currentMedia.title); + + addMode = !(currentSegment && mashup.hasAnnotation(currentSegment)); + + if (!currentSegment) { + currentSegment = new IriSP.Model.Annotation(false, project); + currentSegment.setMedia(currentMedia.id); + currentSegment.setBegin(currentMedia.getCurrentTime()); + currentSegment.setEnd(Math.min(currentMedia.getCurrentTime() + 180000, currentMedia.duration)); + currentSegment.title = IriSP.translate("Untitled segment"); + currentSegment.color = currentMedia.color; + currentSegment.thumbnail = currentMedia.thumbnail; + currentSegment.created = new Date(); + currentSegment.keywords = []; + currentSegment.description = ""; + currentSegment.on("change-begin", function() { + if (currentMedia && currentSegment === this) { + currentMedia.setCurrentTime(this.begin); + updateSegmentUI(); + } + }); + currentSegment.on("change-end", function() { + if (currentMedia && currentSegment === this) { + currentMedia.setCurrentTime(this.end); + updateSegmentUI(); + } + }); + } + if (currentMedia.loaded) { + currentMedia.setCurrentTime(currentSegment.begin); + } + $(".add-segment").val(IriSP.translate(addMode ? "Add segment to hashcut" : "Save segment")); + $(".create-or-edit").text(IriSP.translate(addMode ? "Create new segment" : "Edit existing segment")); + media.show(); + $("#segment-title").val(currentSegment.title); + $("#segment-description").val(currentSegment.description); + var segment_tags = $("#segment-tags"); + segment_tags.tagit("option","onTagRemoved",function(){}); + segment_tags.tagit("option","onTagAdded",function(){}); + segment_tags.tagit("removeAll"); + _(currentSegment.keywords).each(function(tag) { + segment_tags.tagit("createTag",tag); + }); + segment_tags.tagit("option","onTagRemoved",updateSegmentTags); + segment_tags.tagit("option","onTagAdded",updateSegmentTags); + updateSegmentUI(); + var relatedSegments = mashup.segments.filter(function(_s) { + return _s.getMedia() === currentMedia && _s.annotation !== currentSegment; + }); + if (relatedSegments.length) { + $(".self-media-segments").show(); + } else { + $(".self-media-segments").hide(); + } + $(".self-media-segments .media-segments-list").html(mediaSegmentList(_(relatedSegments).pluck("annotation"))); + showOtherSegments(); + project.trigger("mouseout-annotation"); + } + if (currentMedia.elementType === "mashup") { + showPreview(); + } + } + + function mediaSegmentList(_annotations) { + var html = '', + k = $(".Ldt-Slider").width() / currentMedia.duration, + lines = []; + _(_annotations).each(function(_a, i) { + var pos = k * (_a.begin + _a.end) / 2, + corrpos = Math.max(145, Math.min(305, pos)), + line = IriSP._(lines).find(function(line) { + return !IriSP._(line.annotations).find(function(ann) { + return ann.begin < _a.end && ann.end > _a.begin + }); + }); + if (!line) { + line = { index: lines.length, annotations: []}; + lines.push(line); + } + line.annotations.push(_a); + vizdata = { + annotation : _a, + popleft : corrpos, + left : k * _a.begin, + width : k * _a.getDuration(), + height: 8, + top: 8 * line.index, + pointerpos : (pos - corrpos), + color: IriSP.vizcolors[i % IriSP.vizcolors.length] + } + html += mediasegmenttemplate(vizdata); + }); + return mediasegmentlisttemplate({ + height: 8 * lines.length, + left: k * currentSegment.begin, + width: k * currentSegment.getDuration(), + segments: html + }); + } + + /* Show Related Segments */ + + function showOtherSegments() { + var annotations = mediasegmentscache[currentMedia.id]; + $(".other-media-segments .media-segments-list").html(mediaSegmentList(annotations)); + if (annotations && annotations.length) { + $(".other-media-segments").show(); + } + else { + $(".other-media-segments").hide(); + } + } + /* Set In, Out */ + + $(".Ldt-Ctrl-SetIn").click(function() { + if (currentMedia && currentSegment) { + currentSegment.setBegin(currentMedia.getCurrentTime()); + } + }); + $(".Ldt-Ctrl-SetOut").click(function() { + if (currentMedia && currentSegment) { + currentSegment.setEnd(currentMedia.getCurrentTime()); + } + }); + + /* Segment Form interaction */ + + $("#segment-title").on("keyup change input paste", function() { + if (currentMedia && currentSegment) { + currentSegment.title = $(this).val(); + updateSegmentUI(); + mashup.trigger("change"); + } + }); + $("#segment-title").on("focus click", function() { + if ($(this).val() === IriSP.translate("Untitled segment")) { + $(this).val(""); + } + }); + $("#segment-description").on("keyup change input paste", function() { + if (currentMedia && currentSegment) { + currentSegment.description = $(this).val(); + mashup.trigger("change"); + } + }); + $("#segment-form").submit(function() { + if (addMode) { + mashup.addAnnotation(currentSegment); + currentSegment = undefined; + setMedia(currentMedia); + } else { + mashup.trigger("change"); + var segment = mashup.getAnnotation(currentSegment); + currentSegment = undefined; + setMedia(mashup); + if (segment) { + mashup.setCurrentTime(segment.begin); + mashup.trigger("enter-annotation",segment); + } + } + return false; + }); + + $("#segment-tags").tagit(); + + + /* We have to defer this function because the tagit events + * are triggered before the data are updated */ + function updateSegmentTags() { + window.setTimeout(function() { + if (currentMedia && currentSegment) { + currentSegment.keywords = $("#segment-tags").tagit("assignedTags"); + } + }, 0); + } + + /* Click on media items */ + + $(".col-left").on("click", ".item-video", function() { + currentSegment = undefined; + setMedia(project.getElement($(this).attr("data-media-id"))); + }); + + /* Click on Tabs */ + + function showSegmentation() { + $(".col-middle").removeClass("empty-mode pvw-mode").addClass("segment-mode"); + return false; + } + function showPreview() { + $(".col-middle").removeClass("empty-mode segment-mode").addClass("pvw-mode"); + return false; + } + function showEmpty() { + $("video").hide(); + $(".col-middle").removeClass("pvw-mode segment-mode").addClass("empty-mode"); + return false; + } + + $(".tab-pvw").click(function() { + if (mashup.segments.length) { + setMedia(mashup); + } + }); + + /* Click on segments */ + + function reorganizeMashup() { + var ids = $(".organize-segments .item-video").map(function(){return $(this).attr("data-segment-id")}); + mashup.setAnnotationsById(ids); + } + + project.on("mouseover-annotation", function(annotation) { + var mediaid = annotation.getMedia().id; + $(".media").removeClass("active"); + $(".media[data-media-id='" + mediaid + "']").addClass("active"); + }); + + project.on("mouseout-annotation", function() { + $(".media").removeClass("active"); + var mediaid = undefined; + if (currentMedia && currentMedia.elementType === "media") { + mediaid = currentMedia.id; + if (currentSegment) { + $(".annotation").removeClass("active"); + $(".annotation[data-segment-id='" + currentSegment.id + "']").addClass("active"); + } + } + if (currentMedia === mashup && mashup.currentMedia) { + mediaid = mashup.currentMedia.id + } + $(".media[data-media-id='" + mediaid + "']").addClass("active"); + }); + + $(".organize-segments") + .sortable({ + stop : reorganizeMashup + }) + .on("mouseover", ".item-video", function() { + project.trigger("mouseover-annotation", project.getElement($(this).attr("data-segment-id"))); + }) + .on("mouseout", ".item-video", function() { + project.trigger("mouseout-annotation"); + }) + .on("click", ".item-video", function() { + project.trigger("click-annotation", project.getElement($(this).attr("data-segment-id"))); + }) + .on("click", ".edit", function(e) { + var currentItem = $(this).parents(".item-video"), + media = project.getElement(currentItem.attr("data-media-id")), + segment = project.getElement(currentItem.attr("data-segment-id")); + currentSegment = segment; + setMedia(media); + return false; + }) + .on("click", ".top", function(e){ + var currentItem = $(this).parents(".item-video"); + currentItem.insertBefore(currentItem.prev()); + reorganizeMashup(); + return false; + }) + .on("click", ".bottom", function(e){ + var currentItem = $(this).parents(".item-video"); + currentItem.insertAfter(currentItem.next()); + reorganizeMashup(); + return false; + }) + .on("click", ".delete", function(e){ + var id = $(this).parents(".item-video").attr("data-segment-id"); + mashup.removeAnnotationById(id); + if (!mashup.segments.length) { + showEmpty(); + } + return false; + }); + + /* Tangles */ + var tangleMsPerPixel = 100, + activeTangle, + tangleStartX, + tangleStartVal, + tangleHasMoved; + + $(".time-tangle").mousedown(function(evt) { + activeTangle = $(this); + activeTangle.addClass("active"); + tangleStartVal = +activeTangle.attr("data-milliseconds"); + tangleStartX = evt.pageX; + tangleHasMoved = false; + $(this).siblings(".time-tangle").addClass("deactivate"); + return false; + }); + $(document) + .mousemove(function(evt) { + if (activeTangle) { + tangleHasMoved = true; + var newval = new IriSP.Model.Time(tangleMsPerPixel * (evt.pageX - tangleStartX) + tangleStartVal); + activeTangle.trigger("valuechange", newval); + return false; + } + }) + .mouseup(function() { + if (activeTangle) { + activeTangle.text(activeTangle.text().replace(/\.\d+$/,'')); + $(".time-tangle").removeClass("active deactivate"); + activeTangle = undefined; + } + }); + + $(".tangle-start") + .mouseup(function(evt) { + if (!tangleHasMoved && currentMedia && currentSegment) { + currentMedia.setCurrentTime(currentSegment.begin); + } + }) + .on("valuechange", function(evt, val) { + if (currentMedia && currentSegment) { + currentSegment.setBegin(val); + } + }); + $(".tangle-end") + .mouseup(function(evt) { + if (!tangleHasMoved && currentMedia && currentSegment) { + currentMedia.setCurrentTime(currentSegment.end); + } + }) + .on("valuechange", function(evt, val) { + if (currentMedia && currentSegment) { + currentSegment.setEnd(val); + } + }); + $(".tangle-duration").on("valuechange", function(evt, val) { + if (currentMedia && currentSegment) { + currentSegment.setDuration(val); + } + }); + + /* Click on current segment in Preview */ + + $(".mashup-description .edit").click(function() { + if (mashup.currentAnnotation) { + currentSegment = mashup.currentAnnotation.annotation; + setMedia(mashup.currentAnnotation.getMedia()); + } + return false; + }); + + /* Handling related segments */ + + function cloneSegment(sid) { + var s = directory.getElement(sid) || apidirectory.getElement(sid), + media = directory.getElement(s.getMedia().id); + + currentSegment = new IriSP.Model.Annotation(false, project); + currentSegment.setMedia(media.id); + currentSegment.setBegin(s.begin); + currentSegment.setEnd(s.end); + currentSegment.title = IriSP.translate("Copy of ") + s.title; + currentSegment.description = s.description; + currentSegment.keywords = s.keywords; + currentSegment.color = media.color; + currentSegment.thumbnail = media.thumbnail; + currentSegment.created = new Date(); + currentSegment.on("change-begin", function() { + if (currentMedia && currentSegment === this) { + currentMedia.setCurrentTime(this.begin); + updateSegmentUI(); + } + }); + currentSegment.on("change-end", function() { + if (currentMedia && currentSegment === this) { + currentMedia.setCurrentTime(this.end); + updateSegmentUI(); + } + }); + setMedia(media); + } + + $(".media-segments-list").on("mouseover", ".media-segment", function() { + $(this).find(".media-segment-popin").show(); + }).on("mouseout", ".media-segment", function() { + $(this).find(".media-segment-popin").hide(); + }).on("click", ".reprendre-segment", function() { + cloneSegment($(this).attr("data-segment-id")); + return false; + }).on("click", ".media-segment-section", function() { + var sid = $(this).attr("data-segment-id"), + s = directory.getElement(sid) || apidirectory.getElement(sid); + if (s.media.id === currentMedia.id) { + currentMedia.setCurrentTime(s.begin); + } + }); + + $(".col-left").on("mouseover", ".media-segment", function() { + $(this).find(".media-found-popin").show(); + }).on("mouseout", ".media-segment", function() { + $(this).find(".media-found-popin").hide(); + }).on("click", ".clone-segment", function() { + cloneSegment($(this).attr("data-segment-id")); + return false; + }); + /* Changing Hashcut Title and description */ + + mashup.title = IriSP.translate("Untitled Hashcut"); + $(".title-video-wrap a").text(mashup.title); + $("#hashcut-title").val(mashup.title); + + $("#hashcut-title").on("keyup change input paste", function() { + mashup.title = $(this).val(); + $(".title-video-wrap a").text(mashup.title); + mashup.trigger("change"); + }); + $("#hashcut-title").on("focus click", function() { + if ($(this).val() === IriSP.translate("Untitled Hashcut")) { + $(this).val(""); + } + }); + + $("#hashcut-description").on("keyup change input paste", function() { + mashup.description = $(this).val(); + mashup.trigger("change"); + }); + + $("#hashcut-form").submit(function() { + $(".update-title").hide(); + return false; + }) + + /* Publication */ + + function onLeave() { + return IriSP.translate("You haven't published your hashcut yet.\nIf you leave this page, it will be lost"); + } + + $(window).on("beforeunload", onLeave); + + $(".publier-button").click(function() { + if ($(this).hasClass("disable")) { + alert(IriSP.translate("The mashup can't be published because:")+"\n\n"+mashupstatus); + return false; + } + var postproject = directory.newLocalSource(), + medias = mashup.getMedias() + annotations = mashup.getOriginalAnnotations(); + postproject.addList("annotationType"); + postproject.addList("tag"); + medias.forEach(function(_m) { + var anntype = new IriSP.Model.AnnotationType(false, postproject); + anntype.title = "Segments from " + _m.title; + anntype.media = _m; + postproject.getAnnotationTypes().push(anntype); + }); + annotations.forEach(function(_a) { + _a.setAnnotationType( + postproject.getAnnotationTypes().filter( + function(_at) { return _at.media === _a.getMedia() } + )[0].id); + var tagids = []; + _(_a.keywords).each(function(keyword) { + var tags = postproject.getTags().searchByTitle(keyword); + if (tags.length) { + tagids.push(tags[0].id); + } else { + var tag = new IriSP.Model.Tag(false, postproject); + tag.title = tag.description = keyword; + postproject.getTags().push(tag); + tagids.push(tag.id); + } + }); + _a.setTags(tagids); + }); + postproject.addList("annotation",annotations); + postproject.addList("media",medias); + postproject.addList("mashup",[mashup]); + postproject.creator = "admin"; + postproject.created = new Date(); + postproject.modified = new Date(); + postproject.title = mashup.title; + postproject.description = mashup.description; + $.ajax({ + type: "POST", + url: IriSP.endpoints.project, + data: IriSP.serializers.ldt.serialize(postproject), + contentType: "application/cinelab", +// headers: {"X-CSRFToken": "{{csrf_token}}"}, + success: function(data, status, request){ + var location = request.getResponseHeader("Location"), + projid = location.match(/([^/]+)\/?$/)[1], + destination = IriSP.endpoints.hashcut_page + projid; + $(window).off("beforeunload", onLeave); + document.location.href = destination; + }, + error: function(jqXHR, textStatus, errorThrown){ + console.log(arguments); + alert(IriSP.translate("Server error\nYour hashcut couldn't be published")); + } + }); + //TODO: ADD WAITING SCREEN + + return false; + }); + + mashup.trigger("change"); +} + +/* END editor.js */ diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/js/i18n.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/js/i18n.js Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,60 @@ +IriSP.messages = { + fr: { + "Duration:" : "Durée :", + "duration:" : "durée :", + "Edit segment": "Éditer le segment", + "Move segment down": "Descendre le segment", + "Move segment up": "Remonter le segment", + "Delete segment": "Supprimer le segment", + "Clone segment": "Cloner le segment", + "From:": "De :", + "to:": "à :", + "Untitled segment": "Segment sans titre", + "Untitled Hashcut": "Hashcut sans titre", + "Copy of ": "Copie de ", + "A segment must be at least one second long": "Le segment doit durer au moins une seconde", + "A segment must be at most three minutes long": "Le segment doit durer moins de trois minutes", + "A segment must have a title": "Le segment doit avoir un titre", + "A segment should have a description": "Il est recommandé de donner une description au segment", + "A segment should have tags": "Il est recommandé de taguer le segment", + "A hashcut must be made from at least three segments": "Un hashcut doit être composé d'au moins trois segments", + "A hashcut must have a title": "Un titre doit être donné au hashcut", + "A hashcut should have a description": "Il est recommandé de donner une description au hashcut", + "One or more segments are invalid": "Un ou plusieurs segments ne sont pas valides", + "Your hashcut is valid!": "Votre hashcut est valide !", + "This segment is valid!": "Ce segment est valide !", + "Add segment to hashcut": "Ajouter au Hashcut", + "Save segment": "Sauvegarder", + "Create new segment": "Créer un nouveau segment", + "Edit existing segment": "Modifier le segment", + "The hashcut can't be published because:": "Le Hashcut ne peut pas être publié pour les raisons suivantes :", + "Server error\nYour hashcut couldn't be published": "Erreur serveur\nVotre hashcut n'a pas pu être publié", + "You haven't published your hashcut yet.\nIf you leave this page, it will be lost": "Vous n'avez pas encore publié votre Hashcut.\nSi vous quittez cette page, il sera perdu.", + "From hashcut:": "Du hashcut :" + } +}; + +((function() { + var lang = IriSP.language || navigator.language || navigator.userLanguage || "en", + srcs = [ ]; + if (typeof IriSP.messages[lang] === "object") { + srcs.push(IriSP.messages[lang]) + } + if (lang.substr(0,2) !== lang && typeof IriSP.messages[lang.substr(0,2)] === "object") { + srcs.push(IriSP.messages[lang.substr(0,2)]) + } + srcs.push({}); + var l = srcs.length; + + IriSP.translate = function(_str) { + for (var i = 0; i < l; i++) { + if (typeof srcs[i][_str] !== "undefined") { + return srcs[i][_str]; + } + } + return _str; + } + +}) ()); + +/* END i18n.js */ diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/js/init.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/js/init.js Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,39 @@ +/* + * Copyright 2012 Institut de recherche et d'innovation + * contributor(s) : Raphael Velt, Karim Hamidou, Samuel Huron, Thibaut Cavalie, Anthony Ly + * + * contact@iri.centrepompidou.fr + * http://www.iri.centrepompidou.fr + * + * This software is a computer program whose purpose is to show and add annotations on a video . + * This software is governed by the CeCILL-C license under French law and + * abiding by the rules of distribution of free software. You can use, + * modify and/ or redistribute the software under the terms of the CeCILL-C + * license as circulated by CEA, CNRS and INRIA at the following URL + * "http://www.cecill.info". + * + * The fact that you are presently reading this means that you have had + * knowledge of the CeCILL-C license and that you accept its terms. +*/ + +var IriSP = { + serializers: {} +}; + +IriSP._ = _; + +IriSP.jQuery = jQuery; + +/* COLOR SCHEMES + * Color Brewer Set1 (9 classes): [ "#E41A1C", "#377EB8", "#4DAF4A", "#984EA3", "#FF7F00", "#FFFF33", "#A65628", "#F781BF", "#999999" ] + * Color Brewer Set3 (12 classes): ["#8DD3C7", "#FFFFB3", "#BEBADA", "#FB8072", "#80B1D3", "#FDB462", "#B3DE69", "#FCCDE5", "#D9D9D9", "#BC80BD", "#CCEBC5", "#FFED6F"] + * Color Brewer Paired (11 classes): ["#A6CEE3", "#1F78B4", "#B2DF8A", "#33A02C", "#FB9A99", "#E31A1C", "#FDBF6F", "#FF7F00", "#CAB2D6", "#6A3D9A", "#FFFF99" ] + * d3 Category10: ["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"]; + * d3 Category20: ["#1f77b4 ", "#aec7e8 ", "#ff7f0e ", "#ffbb78 ", "#2ca02c ", "#98df8a ", "#d62728 ", "#ff9896 ", "#9467bd ", "#c5b0d5 ", "#8c564b ", "#c49c94 ", "#e377c2 ", "#f7b6d2 ", "#7f7f7f ", "#c7c7c7 ", "#bcbd22 ", "#dbdb8d ", "#17becf ", "#9edae5"]; + * d3 Category20b: ["#393b79 ", "#5254a3 ", "#6b6ecf ", "#9c9ede ", "#637939 ", "#8ca252 ", "#b5cf6b ", "#cedb9c ", "#8c6d31 ", "#bd9e39 ", "#e7ba52 ", "#e7cb94 ", "#843c39 ", "#ad494a ", "#d6616b ", "#e7969c ", "#7b4173 ", "#a55194 ", "#ce6dbd ", "#de9ed6"]; + * d3 Category20c: ["#3182bd ", "#6baed6 ", "#9ecae1 ", "#c6dbef ", "#e6550d ", "#fd8d3c ", "#fdae6b ", "#fdd0a2 ", "#31a354 ", "#74c476 ", "#a1d99b ", "#c7e9c0 ", "#756bb1 ", "#9e9ac8 ", "#bcbddc ", "#dadaeb ", "#636363 ", "#969696 ", "#bdbdbd ", "#d9d9d9"]; + */ + +IriSP.vizcolors = ["#1f77b4 ", "#aec7e8 ", "#ff7f0e ", "#ffbb78 ", "#2ca02c ", "#98df8a ", "#d62728 ", "#ff9896 ", "#9467bd ", "#c5b0d5 ", "#8c564b ", "#c49c94 ", "#e377c2 ", "#f7b6d2 ", "#7f7f7f ", "#c7c7c7 ", "#bcbd22 ", "#dbdb8d ", "#17becf ", "#9edae5"]; + +/* END init.js */ diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/js/ldt-serializer.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/js/ldt-serializer.js Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,287 @@ +/* LDT Platform Serializer */ + +if (typeof IriSP.serializers === "undefined") { + IriSP.serializers = {} +} + +IriSP.serializers.ldt = { + types : { + media : { + serialized_name : "medias", + deserializer : function(_data, _source) { + var _res = new IriSP.Model.Media(_data.id, _source); + _res.video = ( + typeof _data.url !== "undefined" + ? _data.url + : ( + typeof _data.href !== "undefined" + ? _data.href + : null + ) + ); + if (typeof _data.meta.item !== "undefined" && _data.meta.item.name === "streamer") { + _res.streamer = _data.meta.item.value; + } + _res.title = _data.meta["dc:title"]; + _res.description = _data.meta["dc:description"]; + _res.setDuration(_data.meta["dc:duration"]); + _res.url = _data.meta.url; + if (typeof _data.meta.img !== "undefined" && _data.meta.img.src !== "undefined") { + _res.thumbnail = _data.meta.img.src; + } + return _res; + }, + serializer : function(_data, _source, _dest) { + var _res = { + id : _data.id, + url : _data.video, + meta : { + "dc:title": _data.title || "", + "dc:description": _data.description || "", + "dc:created" : IriSP.Model.dateToIso(_data.created || _source.created), + "dc:modified" : IriSP.Model.dateToIso(_data.modified || _source.modified), + "dc:creator" : _data.creator || _source.creator, + "dc:contributor" : _data.contributor || _source.contributor || _data.creator || _source.creator, + "dc:duration" : _data.duration.milliseconds + } + } + _dest.medias.push(_res); + var _list = { + id: IriSP.Model.getUID(), + meta : { + "dc:title": _data.title || "", + "dc:description": _data.description || "", + "dc:created" : IriSP.Model.dateToIso(_data.created || _source.created), + "dc:modified" : IriSP.Model.dateToIso(_data.modified || _source.modified), + "dc:creator" : _data.creator || _source.creator, + "dc:contributor" : _data.contributor || _source.contributor || _data.creator || _source.creator, + "id-ref": _data.id + }, + items: _source.getAnnotationTypes().filter(function(_at) { + return _at.media === _data; + }).map(function(_at) { + return { + "id-ref": _at.id + } + }) + } + _dest.lists.push(_list); + _dest.views[0].contents.push(_data.id); + } + }, + tag : { + serialized_name : "tags", + model_name : "tag", + deserializer : function(_data, _source) { + var _res = new IriSP.Model.Tag(_data.id, _source); + _res.title = _data.meta["dc:title"]; + return _res; + }, + serializer : function(_data, _source, _dest) { + var _res = { + id : _data.id, + meta : { + "dc:title": _data.title || "", + "dc:description": _data.description || "", + "dc:created" : IriSP.Model.dateToIso(_data.created || _source.created), + "dc:modified" : IriSP.Model.dateToIso(_data.modified || _source.modified), + "dc:creator" : _data.creator || _source.creator, + "dc:contributor" : _data.contributor || _source.contributor || _data.creator || _source.creator, + } + } + _dest.tags.push(_res); + } + }, + annotationType : { + serialized_name : "annotation-types", + deserializer : function(_data, _source) { + var _res = new IriSP.Model.AnnotationType(_data.id, _source); + _res.title = _data["dc:title"]; + _res.description = _data["dc:description"]; + return _res; + }, + serializer : function(_data, _source, _dest) { + var _res = { + id : _data.id, + "dc:title": _data.title || "", + "dc:description": _data.description || "", + "dc:created" : IriSP.Model.dateToIso(_data.created || _source.created), + "dc:modified" : IriSP.Model.dateToIso(_data.modified || _source.modified), + "dc:creator" : _data.creator || _source.creator, + "dc:contributor" : _data.contributor || _source.contributor || _data.creator || _source.creator, + } + _dest["annotation-types"].push(_res); + _dest.views[0].annotation_types.push(_data.id); + } + }, + annotation : { + serialized_name : "annotations", + deserializer : function(_data, _source) { + var _res = new IriSP.Model.Annotation(_data.id, _source); + _res.title = _data.content.title || ""; + _res.description = _data.content.description || ""; + if (typeof _data.content.img !== "undefined" && _data.content.img.src !== "undefined") { + _res.thumbnail = _data.content.img.src; + } + _res.created = IriSP.Model.isoToDate(_data.meta["dc:created"]); + if (typeof _data.color !== "undefined") { + var _c = parseInt(_data.color).toString(16); + while (_c.length < 6) { + _c = '0' + _c; + } + _res.color = '#' + _c; + } + _res.setMedia(_data.media); + _res.setAnnotationType(_data.meta["id-ref"]); + _res.setTags(IriSP._(_data.tags).pluck("id-ref")); + _res.keywords = _res.getTagTexts(); + _res.setBegin(_data.begin); + _res.setEnd(_data.end); + _res.creator = _data.meta["dc:creator"] || ""; + _res.project = _data.meta.project || ""; + if (typeof _data.meta["dc:source"] !== "undefined" && typeof _data.meta["dc:source"].content !== "undefined") { + _res.source = JSON.parse(_data.meta["dc:source"].content); + } + if (typeof _data.content.audio !== "undefined" && _data.content.audio.href) { + _res.audio = _data.content.audio; + } + return _res; + }, + serializer : function(_data, _source, _dest) { + var _color = parseInt(_data.color.replace(/^#/,''),16).toString(); + var _res = { + id : _data.id, + begin : _data.begin.milliseconds, + end : _data.end.milliseconds, + content : { + title : _data.title || "", + description : _data.description || "", + audio : _data.audio, + img: { + src: _data.thumbnail + } + }, + color: _color, + media : _data.media.id, + meta : { + "id-ref" : _data.getAnnotationType().id, + "dc:created" : IriSP.Model.dateToIso(_data.created || _source.created), + "dc:modified" : IriSP.Model.dateToIso(_data.modified || _source.modified), + "dc:creator" : _data.creator || _source.creator, + "dc:contributor" : _data.contributor || _source.contributor || _data.creator || _source.creator, +// project : _source.projectId + }, + tags : IriSP._(_data.tag.id).map(function(_id) { + return { + "id-ref" : _id + } + }) + } + _dest.annotations.push(_res); + } + }, + mashup : { + serialized_name : "lists", + deserializer : function(_data, _source) { + if (typeof _data.meta !== "object" || typeof _data.meta.listtype !== "string" || _data.meta.listtype !== "mashup") { + return undefined; + } + var _res = new IriSP.Model.Mashup(_data.id, _source); + _res.title = _data.meta["dc:title"]; + _res.description = _data.meta["dc:description"]; + _res.creator = _data.meta["dc:creator"]; + _res.setAnnotationsById(_data.items); + return _res; + }, + serializer : function(_data, _source, _dest) { + var _res = { + meta : { + "dc:title": _data.title || "", + "dc:description": _data.description || "", + "dc:created" : IriSP.Model.dateToIso(_data.created || _source.created), + "dc:modified" : IriSP.Model.dateToIso(_data.modified || _source.modified), + "dc:creator" : _data.creator || _source.creator, + "dc:contributor" : _data.contributor || _source.contributor || _data.creator || _source.creator, + listtype: "mashup" + }, + items: _data.segments.map(function(_annotation) { + return _annotation.annotation.id; + }), + id: _data.id + } + _dest.lists.push(_res); + } + } + }, + serialize : function(_source) { + var _res = { + meta: { + "dc:creator": _source.creator, + "dc:contributor" : _source.contributor || _source.creator, + "dc:created": IriSP.Model.dateToIso(_source.created), + "dc:modified" : IriSP.Model.dateToIso(_source.modified), + "dc:title": _source.title || "", + "dc:description": _source.description || "", + id: _source.projectId || _source.id + }, + views: [ + { + id: IriSP.Model.getUID(), + contents: [], + annotation_types: [] + } + ], + lists: [], + "annotation-types": [], + medias: [], + tags: [], + annotations: [] + }, + _this = this; + _source.forEach(function(_list, _typename) { + if (typeof _this.types[_typename] !== "undefined") { + _list.forEach(function(_el) { + _this.types[_typename].serializer(_el, _source, _res); + }); + } + }); + return JSON.stringify(_res); + }, + deSerialize : function(_data, _source) { + if (typeof _data !== "object" || _data === null) { + return; + } + IriSP._(this.types).forEach(function(_type, _typename) { + var _listdata = _data[_type.serialized_name], + _list = new IriSP.Model.List(_source.directory); + if (typeof _listdata !== "undefined" && _listdata !== null) { + if (_listdata.hasOwnProperty("length")) { + var _l = _listdata.length; + for (var _i = 0; _i < _l; _i++) { + var _element = _type.deserializer(_listdata[_i], _source); + if (typeof _element !== "undefined" && _element) { + _list.push(_element); + } + } + } else { + var _element = _type.deserializer(_listdata, _source); + if (typeof _element !== "undefined" && _element) { + _list.push(_element); + } + } + } + _source.addList(_typename, _list); + }); + + if (typeof _data.meta !== "undefined") { + _source.projectId = _data.meta.id; + } + + if (typeof _data.meta !== "undefined" && typeof _data.meta.main_media !== "undefined" && typeof _data.meta.main_media["id-ref"] !== "undefined") { + _source.currentMedia = _source.getElement(_data.meta.main_media["id-ref"]); + } + } +} + +/* END ldt-serializer.js */ + diff -r 89e152523cb6 -r c62fe82604ef src/hashcut/static/hashcut/js/mashupcore.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hashcut/static/hashcut/js/mashupcore.js Tue Nov 27 12:32:30 2012 +0100 @@ -0,0 +1,663 @@ +IriSP.mashupcore = function(project, mashup) { + + var currentMedia, + intervaltemplate = _.template('<%= time.toString() %>'), + viztemplate = _.template('
    '); + + function updateMashupUI() { + var vizhtml = '', t = 0, k = mashup.duration ? (100 / mashup.duration) : 0; + mashup.segments.forEach(function(_s) { + var vizdata = { + left: k * t, + width: k * _s.duration, + color: _s.color, + segmentid: _s.annotation.id + } + vizhtml += viztemplate(vizdata); + t += _s.duration.milliseconds; + }); + + var intervals = [ 1000, 2000, 5000, 10000, 30000, 60000, 120000, 300000, 600000, 900000, 1800000, 3600000, 7200000 ]; + + function createIntervals(maxn) { + for (var i = 0; i < intervals.length; i++) { + if (mashup.duration / intervals[i] <= maxn) { + var html = ''; + for (var j = intervals[i]; j < mashup.duration; j += intervals[i]) { + html += intervaltemplate({ left: k * j, time: new IriSP.Model.Time(j) }); + } + return html; + } + } + return ""; + } + + $(".mashup-total-duration").text(mashup.duration.toString()); + $(".mashup-frise .frise-segments").html(vizhtml); + $(".mashup-frise .frise-indications").html(createIntervals(6)); + + if (currentMedia === mashup) { + $(".Ldt-Ctrl-Time-Total").text(currentMedia.duration.toString()); + if (mashupTimecode > mashup.duration) { + mashup.setCurrentTime(mashup.duration); + } + changeCurrentAnnotation(); + mashup.trigger("enter-annotation",mashup.currentAnnotation); + } + + } + + /* Slider */ + + var timeSlider = $(".Ldt-Slider"), + timeSliderContainer = $(".Ldt-Slider-Container"), + slidersRange = 920; + timeSlider.slider({ + range: "min", + value: 0, + min: 0, + max: slidersRange, + slide: function(event, ui) { + if (currentMedia) { + var t = currentMedia.duration * ui.value / slidersRange; + currentMedia.setCurrentTime(t); + } + } + }); + + var timeSliderHandle = timeSlider.find('.ui-slider-handle'), + timeSliderMaximized = false, + timeSliderTimeoutId = false, + timeSliderMinimizedHeight = 4, + timeSliderMaximizedHeight = 10, + timeSliderTimeoutDuration = 1500, + timeTooltip = $(".Ldt-Slider-Time"); + + timeSliderContainer.css(calculateSliderCss(timeSliderMinimizedHeight)); + timeSliderHandle.css(calculateHandleCss(timeSliderMinimizedHeight)); + + function timeSliderMouseOver() { + if (timeSliderTimeoutId) { + window.clearTimeout(timeSliderTimeoutId); + timeSliderTimeoutId = false; + } + if (!timeSliderMaximized) { + timeSliderAnimateToHeight(timeSliderMaximizedHeight); + timeSliderMaximized = true; + } + } + + function timeSliderMouseOut() { + timeTooltip.hide(); + if (timeSliderTimeoutId) { + clearTimeout(timeSliderTimeoutId); + timeSliderTimeoutId = false; + } + timeSliderTimeoutId = setTimeout(function() { + if (timeSliderMaximized) { + timeSliderAnimateToHeight(timeSliderMinimizedHeight); + timeSliderMaximized = false; + } + timeSliderTimeoutId = false; + }, timeSliderTimeoutDuration); + } + + timeSliderContainer + .mouseover(function() { + timeTooltip.show(); + timeSliderMouseOver(); + }) + .mouseout(timeSliderMouseOut); + timeSlider.mousemove(function(_e) { + if (!currentMedia) { + return; + } + var _x = _e.pageX - timeSlider.offset().left, + _t = new IriSP.Model.Time( + Math.max(0, currentMedia.duration * Math.min(1, _x / timeSlider.width())) + ); + timeTooltip.text(_t.toString()).css("left",_x); + }); + + $(".Ldt-Ctrl").mouseover(timeSliderMouseOver).mouseout(timeSliderMouseOut); + + function timeSliderAnimateToHeight(_height) { + timeSliderContainer.stop().animate( + calculateSliderCss(_height), + 500, + function() { + IriSP.jQuery(this).css("overflow","visible"); + }); + timeSliderHandle.stop().animate( + calculateHandleCss(_height), + 500, + function() { + IriSP.jQuery(this).css("overflow","visible"); + }); + } + + function calculateSliderCss(_size) { + return { + height: _size + "px", + "margin-top": (timeSliderMinimizedHeight - _size) + "px" + }; + } + + function calculateHandleCss(_size) { + return { + height: (2 + _size) + "px", + width: (2 + _size) + "px", + "margin-left": -Math.ceil(2 + _size / 2) + "px" + } + } + + /* Controller Widget */ + + var volBlock = $(".Ldt-Ctrl-Volume-Control"); + + $('.Ldt-Ctrl-Sound') + .click(function() { + if (currentMedia) { + currentMedia.setMuted(!currentMedia.getMuted()); + } + }) + .mouseover(function() { + volBlock.show(); + }) + .mouseout(function() { + volBlock.hide(); + }); + volBlock.mouseover(function() { + volBlock.show(); + }).mouseout(function() { + volBlock.hide(); + }); + + var volBar = $(".Ldt-Ctrl-Volume-Bar"); + + function ctrlVolumeUpdater() { + if (currentMedia) { + var _muted = currentMedia.getMuted(), + _vol = currentMedia.getVolume(); + if (_vol === false) { + _vol = .5; + } + var _soundCtl = $(".Ldt-Ctrl-Sound"); + _soundCtl.removeClass("Ldt-Ctrl-Sound-Mute Ldt-Ctrl-Sound-Half Ldt-Ctrl-Sound-Full"); + if (_muted) { + _soundCtl.attr("title", "Activer le son") + .addClass("Ldt-Ctrl-Sound-Mute"); + } else { + _soundCtl.attr("title", "Couper le son") + .addClass(_vol < .5 ? "Ldt-Ctrl-Sound-Half" : "Ldt-Ctrl-Sound-Full" ) + } + volBar.slider("value", _muted ? 0 : 100 * _vol); + volBar.attr("title",'Volume : ' + Math.floor(100 * _vol) + '%'); + } + } + + volBar.slider({ + slide: function(event, ui) { + if (currentMedia) { + currentMedia.setVolume(ui.value / 100); + } + } + }); + + $(".Ldt-Ctrl-Play").click(function() { + if (currentMedia) { + if (currentMedia.getPaused()) { + currentMedia.play(); + } else { + currentMedia.pause(); + } + } + }); + + /* UI Events */ + + function onCurrentMediaPlay() { + $(".Ldt-Ctrl-Play") + .attr("title", "Pause") + .removeClass("Ldt-Ctrl-Play-PlayState") + .addClass("Ldt-Ctrl-Play-PauseState") + } + + function onCurrentMediaPause() { + $(".Ldt-Ctrl-Play") + .attr("title", "Lecture") + .removeClass("Ldt-Ctrl-Play-PauseState") + .addClass("Ldt-Ctrl-Play-PlayState") + } + + function onCurrentMediaTimeupdate(_time) { + $(".Ldt-Ctrl-Time-Elapsed").text(_time.toString()); + timeSlider.slider("value",slidersRange * _time / currentMedia.duration); + } + + /* Mashup Player */ + + mashup.currentMedia = null; + mashup.currentAnnotation = null; + mashup.seeking = false; + var mashupSegmentBegin, + mashupSegmentEnd, + mashupTimecode = 0, + seekdiv = $(".video-wait"), + mashupTimedelta; + + function showSeek() { + if (currentMedia.seeking) { + seekdiv.show(); + } + } + + function changeCurrentAnnotation() { + if (mashupTimecode >= mashup.duration) { + if (!mashup.paused) { + mashup.paused = true; + mashup.trigger("pause"); + } + mashupTimecode = 0; + } + var _annotation = mashup.getAnnotationAtTime( mashupTimecode ); + if (typeof _annotation === "undefined") { + if (mashup.currentMedia) { + mashup.currentMedia.pause(); + if (!mashup.paused) { + mashup.paused = true; + mashup.trigger("pause"); + } + } + return; + } + mashup.currentAnnotation = _annotation; + mashupSegmentBegin = mashup.currentAnnotation.annotation.begin.milliseconds; + mashupSegmentEnd = mashup.currentAnnotation.annotation.end.milliseconds; + mashupTimedelta = mashupSegmentBegin - mashup.currentAnnotation.begin.milliseconds; + mashup.currentMedia = mashup.currentAnnotation.getMedia(); + + project.getMedias().forEach(function(_media) { + if (_media !== mashup.currentMedia) { + _media.hide(); + _media.pause(); + } else { + _media.show(); + } + }); + + mashup.currentMedia.setCurrentTime( mashupTimecode + mashupTimedelta); + mashup.currentMedia.seeking = true; + + if (!mashup.paused) { + mashup.currentMedia.play(); + mashup.seeking = true; + setTimeout(showSeek,200); + } + mashup.trigger("timeupdate", new IriSP.Model.Time(mashupTimecode)); + + } + + function addMedia(media) { + if (media.has_player) { + return; + } + media.has_player = true; + var videoid = "video_" + media.id, + videoEl = $('