Removed old ext directory as the new vendor will replace its contents
3904
assets/ext/bootstrap/css/bootstrap-grid.css
vendored
325
assets/ext/bootstrap/css/bootstrap-reboot.css
vendored
|
@ -1,325 +0,0 @@
|
|||
/*!
|
||||
* Bootstrap Reboot v4.5.0 (https://getbootstrap.com/)
|
||||
* Copyright 2011-2020 The Bootstrap Authors
|
||||
* Copyright 2011-2020 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
|
||||
*/
|
||||
*,
|
||||
*::before,
|
||||
*::after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
html {
|
||||
font-family: sans-serif;
|
||||
line-height: 1.15;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
|
||||
display: block;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
||||
font-size: 1rem;
|
||||
font-weight: 400;
|
||||
line-height: 1.5;
|
||||
color: #212529;
|
||||
text-align: left;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
[tabindex="-1"]:focus:not(:focus-visible) {
|
||||
outline: 0 !important;
|
||||
}
|
||||
|
||||
hr {
|
||||
box-sizing: content-box;
|
||||
height: 0;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
p {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
abbr[title],
|
||||
abbr[data-original-title] {
|
||||
text-decoration: underline;
|
||||
-webkit-text-decoration: underline dotted;
|
||||
text-decoration: underline dotted;
|
||||
cursor: help;
|
||||
border-bottom: 0;
|
||||
-webkit-text-decoration-skip-ink: none;
|
||||
text-decoration-skip-ink: none;
|
||||
}
|
||||
|
||||
address {
|
||||
margin-bottom: 1rem;
|
||||
font-style: normal;
|
||||
line-height: inherit;
|
||||
}
|
||||
|
||||
ol,
|
||||
ul,
|
||||
dl {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
ol ol,
|
||||
ul ul,
|
||||
ol ul,
|
||||
ul ol {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
dt {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
dd {
|
||||
margin-bottom: .5rem;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 0 0 1rem;
|
||||
}
|
||||
|
||||
b,
|
||||
strong {
|
||||
font-weight: bolder;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
sub,
|
||||
sup {
|
||||
position: relative;
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -.25em;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -.5em;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #007bff;
|
||||
text-decoration: none;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #0056b3;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
a:not([href]) {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:not([href]):hover {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
pre,
|
||||
code,
|
||||
kbd,
|
||||
samp {
|
||||
font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
pre {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
overflow: auto;
|
||||
-ms-overflow-style: scrollbar;
|
||||
}
|
||||
|
||||
figure {
|
||||
margin: 0 0 1rem;
|
||||
}
|
||||
|
||||
img {
|
||||
vertical-align: middle;
|
||||
border-style: none;
|
||||
}
|
||||
|
||||
svg {
|
||||
overflow: hidden;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
caption {
|
||||
padding-top: 0.75rem;
|
||||
padding-bottom: 0.75rem;
|
||||
color: #6c757d;
|
||||
text-align: left;
|
||||
caption-side: bottom;
|
||||
}
|
||||
|
||||
th {
|
||||
text-align: inherit;
|
||||
}
|
||||
|
||||
label {
|
||||
display: inline-block;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
button {
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
button:focus {
|
||||
outline: 1px dotted;
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
}
|
||||
|
||||
input,
|
||||
button,
|
||||
select,
|
||||
optgroup,
|
||||
textarea {
|
||||
margin: 0;
|
||||
font-family: inherit;
|
||||
font-size: inherit;
|
||||
line-height: inherit;
|
||||
}
|
||||
|
||||
button,
|
||||
input {
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
button,
|
||||
select {
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
[role="button"] {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
select {
|
||||
word-wrap: normal;
|
||||
}
|
||||
|
||||
button,
|
||||
[type="button"],
|
||||
[type="reset"],
|
||||
[type="submit"] {
|
||||
-webkit-appearance: button;
|
||||
}
|
||||
|
||||
button:not(:disabled),
|
||||
[type="button"]:not(:disabled),
|
||||
[type="reset"]:not(:disabled),
|
||||
[type="submit"]:not(:disabled) {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
button::-moz-focus-inner,
|
||||
[type="button"]::-moz-focus-inner,
|
||||
[type="reset"]::-moz-focus-inner,
|
||||
[type="submit"]::-moz-focus-inner {
|
||||
padding: 0;
|
||||
border-style: none;
|
||||
}
|
||||
|
||||
input[type="radio"],
|
||||
input[type="checkbox"] {
|
||||
box-sizing: border-box;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
textarea {
|
||||
overflow: auto;
|
||||
resize: vertical;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
min-width: 0;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
legend {
|
||||
display: block;
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
padding: 0;
|
||||
margin-bottom: .5rem;
|
||||
font-size: 1.5rem;
|
||||
line-height: inherit;
|
||||
color: inherit;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
progress {
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
[type="number"]::-webkit-inner-spin-button,
|
||||
[type="number"]::-webkit-outer-spin-button {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
[type="search"] {
|
||||
outline-offset: -2px;
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
[type="search"]::-webkit-search-decoration {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
::-webkit-file-upload-button {
|
||||
font: inherit;
|
||||
-webkit-appearance: button;
|
||||
}
|
||||
|
||||
output {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
summary {
|
||||
display: list-item;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
template {
|
||||
display: none;
|
||||
}
|
||||
|
||||
[hidden] {
|
||||
display: none !important;
|
||||
}
|
||||
/*# sourceMappingURL=bootstrap-reboot.css.map */
|
|
@ -1,8 +0,0 @@
|
|||
/*!
|
||||
* Bootstrap Reboot v4.5.0 (https://getbootstrap.com/)
|
||||
* Copyright 2011-2020 The Bootstrap Authors
|
||||
* Copyright 2011-2020 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
|
||||
*/*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]){color:inherit;text-decoration:none}a:not([href]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}
|
||||
/*# sourceMappingURL=bootstrap-reboot.min.css.map */
|
10278
assets/ext/bootstrap/css/bootstrap.css
vendored
7
assets/ext/bootstrap/css/bootstrap.min.css
vendored
7033
assets/ext/bootstrap/js/bootstrap.bundle.js
vendored
4420
assets/ext/bootstrap/js/bootstrap.js
vendored
7
assets/ext/bootstrap/js/bootstrap.min.js
vendored
|
@ -1,6 +0,0 @@
|
|||
.cc-window{opacity:1;-webkit-transition:opacity 1s ease;transition:opacity 1s ease}.cc-window.cc-invisible{opacity:0}.cc-animate.cc-revoke{-webkit-transition:transform 1s ease;-webkit-transition:-webkit-transform 1s ease;transition:-webkit-transform 1s ease;transition:transform 1s ease;transition:transform 1s ease,-webkit-transform 1s ease}.cc-animate.cc-revoke.cc-top{-webkit-transform:translateY(-2em);transform:translateY(-2em)}.cc-animate.cc-revoke.cc-bottom{-webkit-transform:translateY(2em);transform:translateY(2em)}.cc-animate.cc-revoke.cc-active.cc-top{-webkit-transform:translateY(0);transform:translateY(0)}.cc-animate.cc-revoke.cc-active.cc-bottom{-webkit-transform:translateY(0);transform:translateY(0)}.cc-revoke:hover{-webkit-transform:translateY(0);transform:translateY(0)}.cc-grower{max-height:0;overflow:hidden;-webkit-transition:max-height 1s;transition:max-height 1s}
|
||||
.cc-revoke,.cc-window{position:fixed;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box;font-family:Helvetica,Calibri,Arial,sans-serif;font-size:16px;line-height:1.5em;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;z-index:9999}.cc-window.cc-static{position:static}.cc-window.cc-floating{padding:2em;max-width:24em;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.cc-window.cc-banner{padding:1em 1.8em;width:100%;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.cc-revoke{padding:.5em}.cc-revoke:hover{text-decoration:underline}.cc-header{font-size:18px;font-weight:700}.cc-btn,.cc-close,.cc-link,.cc-revoke{cursor:pointer}.cc-link{opacity:.8;display:inline-block;padding:.2em;text-decoration:underline}.cc-link:hover{opacity:1}.cc-link:active,.cc-link:visited{color:initial}.cc-btn{display:block;padding:.4em .8em;font-size:.9em;font-weight:700;border-width:2px;border-style:solid;text-align:center;white-space:nowrap}.cc-highlight .cc-btn:first-child{background-color:transparent;border-color:transparent}.cc-highlight .cc-btn:first-child:focus,.cc-highlight .cc-btn:first-child:hover{background-color:transparent;text-decoration:underline}.cc-close{display:block;position:absolute;top:.5em;right:.5em;font-size:1.6em;opacity:.9;line-height:.75}.cc-close:focus,.cc-close:hover{opacity:1}
|
||||
.cc-revoke.cc-top{top:0;left:3em;border-bottom-left-radius:.5em;border-bottom-right-radius:.5em}.cc-revoke.cc-bottom{bottom:0;left:3em;border-top-left-radius:.5em;border-top-right-radius:.5em}.cc-revoke.cc-left{left:3em;right:unset}.cc-revoke.cc-right{right:3em;left:unset}.cc-top{top:1em}.cc-left{left:1em}.cc-right{right:1em}.cc-bottom{bottom:1em}.cc-floating>.cc-link{margin-bottom:1em}.cc-floating .cc-message{display:block;margin-bottom:1em}.cc-window.cc-floating .cc-compliance{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.cc-window.cc-banner{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.cc-banner.cc-top{left:0;right:0;top:0}.cc-banner.cc-bottom{left:0;right:0;bottom:0}.cc-banner .cc-message{display:block;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;max-width:100%;margin-right:1em}.cc-compliance{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:justify;align-content:space-between}.cc-floating .cc-compliance>.cc-btn{-webkit-box-flex:1;-ms-flex:1;flex:1}.cc-btn+.cc-btn{margin-left:.5em}
|
||||
@media print{.cc-revoke,.cc-window{display:none}}@media screen and (max-width:900px){.cc-btn{white-space:normal}}@media screen and (max-width:414px) and (orientation:portrait),screen and (max-width:736px) and (orientation:landscape){.cc-window.cc-top{top:0}.cc-window.cc-bottom{bottom:0}.cc-window.cc-banner,.cc-window.cc-floating,.cc-window.cc-left,.cc-window.cc-right{left:0;right:0}.cc-window.cc-banner{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.cc-window.cc-banner .cc-compliance{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.cc-window.cc-floating{max-width:none}.cc-window .cc-message{margin-bottom:1em}.cc-window.cc-banner{-webkit-box-align:unset;-ms-flex-align:unset;align-items:unset}.cc-window.cc-banner .cc-message{margin-right:0}}
|
||||
.cc-floating.cc-theme-classic{padding:1.2em;border-radius:5px}.cc-floating.cc-type-info.cc-theme-classic .cc-compliance{text-align:center;display:inline;-webkit-box-flex:0;-ms-flex:none;flex:none}.cc-theme-classic .cc-btn{border-radius:5px}.cc-theme-classic .cc-btn:last-child{min-width:140px}.cc-floating.cc-type-info.cc-theme-classic .cc-btn{display:inline-block}
|
||||
.cc-theme-edgeless.cc-window{padding:0}.cc-floating.cc-theme-edgeless .cc-message{margin:2em;margin-bottom:1.5em}.cc-banner.cc-theme-edgeless .cc-btn{margin:0;padding:.8em 1.8em;height:100%}.cc-banner.cc-theme-edgeless .cc-message{margin-left:1em}.cc-floating.cc-theme-edgeless .cc-btn+.cc-btn{margin-left:0}
|
9
assets/ext/datejs/date.min.js
vendored
5
assets/ext/fontawesome/js/fontawesome.min.js
vendored
5
assets/ext/fontawesome/js/solid.min.js
vendored
|
@ -1,10 +0,0 @@
|
|||
<html>
|
||||
<head>
|
||||
<title>403 Forbidden</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<p>Directory access is forbidden.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,9 +0,0 @@
|
|||
/*!
|
||||
* FullCalendar v3.10.1
|
||||
* Docs & License: https://fullcalendar.io/
|
||||
* (c) 2019 Adam Shaw
|
||||
*//*!
|
||||
* FullCalendar v3.10.1 Print Stylesheet
|
||||
* Docs & License: https://fullcalendar.io/
|
||||
* (c) 2019 Adam Shaw
|
||||
*/.fc-bg,.fc-bgevent-container,.fc-bgevent-skeleton,.fc-business-container,.fc-event .fc-resizer,.fc-helper-container,.fc-helper-skeleton,.fc-highlight-container,.fc-highlight-skeleton{display:none}.fc tbody .fc-row,.fc-time-grid{min-height:0!important}.fc-time-grid .fc-event.fc-not-end:after,.fc-time-grid .fc-event.fc-not-start:before{content:"..."}.fc{max-width:100%!important}.fc-event{background:#fff!important;color:#000!important;page-break-inside:avoid}.fc hr,.fc tbody,.fc td,.fc th,.fc thead,.fc-row{border-color:#ccc!important;background:#fff!important}.fc tbody .fc-row{height:auto!important}.fc tbody .fc-row .fc-content-skeleton{position:static;padding-bottom:0!important}.fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td{padding-bottom:1em}.fc tbody .fc-row .fc-content-skeleton table{height:1em}.fc-more,.fc-more-cell{display:none!important}.fc tr.fc-limited{display:table-row!important}.fc td.fc-limited{display:table-cell!important}.fc-agenda-view .fc-axis,.fc-popover{display:none}.fc-slats,.fc-time-grid hr{display:none!important}.fc button,.fc-button-group,.fc-time-grid .fc-event .fc-time span{display:none}.fc-time-grid .fc-content-skeleton{position:static}.fc-time-grid .fc-content-skeleton table{height:4em}.fc-time-grid .fc-event-container{margin:0!important}.fc-time-grid .fc-event{position:static!important;margin:3px 2px!important}.fc-time-grid .fc-event.fc-not-end{border-bottom-width:1px!important}.fc-time-grid .fc-event.fc-not-start{border-top-width:1px!important}.fc-time-grid .fc-event .fc-time{white-space:normal!important}.fc-time-grid .fc-event .fc-time:after{content:attr(data-full)}.fc-day-grid-container,.fc-scroller,.fc-time-grid-container{overflow:visible!important;height:auto!important}.fc-row{border:0!important;margin:0!important}
|
|
@ -1,38 +0,0 @@
|
|||
|
||||
(function($){$.fn.editable=function(target,options){if('disable'==target){$(this).data('disabled.editable',true);return;}
|
||||
if('enable'==target){$(this).data('disabled.editable',false);return;}
|
||||
if('destroy'==target){$(this).unbind($(this).data('event.editable')).removeData('disabled.editable').removeData('event.editable');return;}
|
||||
var settings=$.extend({},$.fn.editable.defaults,{target:target},options);var plugin=$.editable.types[settings.type].plugin||function(){};var submit=$.editable.types[settings.type].submit||function(){};var buttons=$.editable.types[settings.type].buttons||$.editable.types['defaults'].buttons;var content=$.editable.types[settings.type].content||$.editable.types['defaults'].content;var element=$.editable.types[settings.type].element||$.editable.types['defaults'].element;var reset=$.editable.types[settings.type].reset||$.editable.types['defaults'].reset;var callback=settings.callback||function(){};var onedit=settings.onedit||function(){};var onsubmit=settings.onsubmit||function(){};var onreset=settings.onreset||function(){};var onerror=settings.onerror||reset;if(settings.tooltip){$(this).attr('title',settings.tooltip);}
|
||||
settings.autowidth='auto'==settings.width;settings.autoheight='auto'==settings.height;return this.each(function(){var self=this;var savedwidth=$(self).width();var savedheight=$(self).height();$(this).data('event.editable',settings.event);if(!$.trim($(this).html())){$(this).html(settings.placeholder);}
|
||||
$(this).bind(settings.event,function(e){if(true===$(this).data('disabled.editable')){return;}
|
||||
if(self.editing){return;}
|
||||
if(false===onedit.apply(this,[settings,self])){return;}
|
||||
e.preventDefault();e.stopPropagation();if(settings.tooltip){$(self).removeAttr('title');}
|
||||
if(0==$(self).width()){settings.width=savedwidth;settings.height=savedheight;}else{if(settings.width!='none'){settings.width=settings.autowidth?$(self).width():settings.width;}
|
||||
if(settings.height!='none'){settings.height=settings.autoheight?$(self).height():settings.height;}}
|
||||
if($(this).html().toLowerCase().replace(/(;|")/g,'')==settings.placeholder.toLowerCase().replace(/(;|")/g,'')){$(this).html('');}
|
||||
self.editing=true;self.revert=$(self).html();$(self).html('');var form=$('<form />');if(settings.cssclass){if('inherit'==settings.cssclass){form.attr('class',$(self).attr('class'));}else{form.attr('class',settings.cssclass);}}
|
||||
if(settings.style){if('inherit'==settings.style){form.attr('style',$(self).attr('style'));form.css('display',$(self).css('display'));}else{form.attr('style',settings.style);}}
|
||||
var input=element.apply(form,[settings,self]);var input_content;if(settings.loadurl){var t=setTimeout(function(){input.disabled=true;content.apply(form,[settings.loadtext,settings,self]);},100);var loaddata={};loaddata[settings.id]=self.id;if($.isFunction(settings.loaddata)){$.extend(loaddata,settings.loaddata.apply(self,[self.revert,settings]));}else{$.extend(loaddata,settings.loaddata);}
|
||||
$.ajax({type:settings.loadtype,url:settings.loadurl,data:loaddata,async:false,success:function(result){window.clearTimeout(t);input_content=result;input.disabled=false;}});}else if(settings.data){input_content=settings.data;if($.isFunction(settings.data)){input_content=settings.data.apply(self,[self.revert,settings]);}}else{input_content=self.revert;}
|
||||
content.apply(form,[input_content,settings,self]);input.attr('name',settings.name);buttons.apply(form,[settings,self]);$(self).append(form);plugin.apply(form,[settings,self]);$(':input:visible:enabled:first',form).focus();if(settings.select){input.select();}
|
||||
input.keydown(function(e){if(e.keyCode==27){e.preventDefault();reset.apply(form,[settings,self]);}});var t;if('cancel'==settings.onblur){input.blur(function(e){t=setTimeout(function(){reset.apply(form,[settings,self]);},500);});}else if('submit'==settings.onblur){input.blur(function(e){t=setTimeout(function(){form.submit();},200);});}else if($.isFunction(settings.onblur)){input.blur(function(e){settings.onblur.apply(self,[input.val(),settings]);});}else{input.blur(function(e){});}
|
||||
form.submit(function(e){if(t){clearTimeout(t);}
|
||||
e.preventDefault();if(false!==onsubmit.apply(form,[settings,self])){if(false!==submit.apply(form,[settings,self])){if($.isFunction(settings.target)){var str=settings.target.apply(self,[input.val(),settings]);$(self).html(str);self.editing=false;callback.apply(self,[self.innerHTML,settings]);if(!$.trim($(self).html())){$(self).html(settings.placeholder);}}else{var submitdata={};submitdata[settings.name]=input.val();submitdata[settings.id]=self.id;if($.isFunction(settings.submitdata)){$.extend(submitdata,settings.submitdata.apply(self,[self.revert,settings]));}else{$.extend(submitdata,settings.submitdata);}
|
||||
if('PUT'==settings.method){submitdata['_method']='put';}
|
||||
$(self).html(settings.indicator);var ajaxoptions={type:'POST',data:submitdata,dataType:'html',url:settings.target,success:function(result,status){if(ajaxoptions.dataType=='html'){$(self).html(result);}
|
||||
self.editing=false;callback.apply(self,[result,settings]);if(!$.trim($(self).html())){$(self).html(settings.placeholder);}},error:function(xhr,status,error){onerror.apply(form,[settings,self,xhr]);}};$.extend(ajaxoptions,settings.ajaxoptions);$.ajax(ajaxoptions);}}}
|
||||
$(self).attr('title',settings.tooltip);return false;});});this.reset=function(form){if(this.editing){if(false!==onreset.apply(form,[settings,self])){$(self).html(self.revert);self.editing=false;if(!$.trim($(self).html())){$(self).html(settings.placeholder);}
|
||||
if(settings.tooltip){$(self).attr('title',settings.tooltip);}}}};});};$.editable={types:{defaults:{element:function(settings,original){var input=$('<input type="hidden"></input>');$(this).append(input);return(input);},content:function(string,settings,original){$(':input:first',this).val(string);},reset:function(settings,original){original.reset(this);},buttons:function(settings,original){var form=this;if(settings.submit){if(settings.submit.match(/>$/)){var submit=$(settings.submit).click(function(){if(submit.attr("type")!="submit"){form.submit();}});}else{var submit=$('<button type="submit" />');submit.html(settings.submit);}
|
||||
$(this).append(submit);}
|
||||
if(settings.cancel){if(settings.cancel.match(/>$/)){var cancel=$(settings.cancel);}else{var cancel=$('<button type="cancel" />');cancel.html(settings.cancel);}
|
||||
$(this).append(cancel);$(cancel).click(function(event){if($.isFunction($.editable.types[settings.type].reset)){var reset=$.editable.types[settings.type].reset;}else{var reset=$.editable.types['defaults'].reset;}
|
||||
reset.apply(form,[settings,original]);return false;});}}},text:{element:function(settings,original){var input=$('<input />');if(settings.width!='none'){input.width(settings.width);}
|
||||
if(settings.height!='none'){input.height(settings.height);}
|
||||
input.attr('autocomplete','off');$(this).append(input);return(input);}},textarea:{element:function(settings,original){var textarea=$('<textarea />');if(settings.rows){textarea.attr('rows',settings.rows);}else if(settings.height!="none"){textarea.height(settings.height);}
|
||||
if(settings.cols){textarea.attr('cols',settings.cols);}else if(settings.width!="none"){textarea.width(settings.width);}
|
||||
$(this).append(textarea);return(textarea);}},select:{element:function(settings,original){var select=$('<select />');$(this).append(select);return(select);},content:function(data,settings,original){if(String==data.constructor){eval('var json = '+data);}else{var json=data;}
|
||||
for(var key in json){if(!json.hasOwnProperty(key)){continue;}
|
||||
if('selected'==key){continue;}
|
||||
var option=$('<option />').val(key).append(json[key]);$('select',this).append(option);}
|
||||
$('select',this).children().each(function(){if($(this).val()==json['selected']||$(this).text()==$.trim(original.revert)){$(this).attr('selected','selected');}});}}},addInputType:function(name,input){$.editable.types[name]=input;}};$.fn.editable.defaults={name:'value',id:'id',type:'text',width:'auto',height:'auto',event:'click.editable',onblur:'cancel',loadtype:'GET',loadtext:'Loading...',placeholder:'Click to edit',loaddata:{},submitdata:{},ajaxoptions:{}};})(jQuery);
|
Before Width: | Height: | Size: 212 B |
Before Width: | Height: | Size: 206 B |
Before Width: | Height: | Size: 206 B |
Before Width: | Height: | Size: 206 B |
Before Width: | Height: | Size: 208 B |
Before Width: | Height: | Size: 206 B |
Before Width: | Height: | Size: 206 B |
Before Width: | Height: | Size: 4.4 KiB |
Before Width: | Height: | Size: 6.8 KiB |
Before Width: | Height: | Size: 6.2 KiB |
2291
assets/ext/jquery-ui/jquery-ui-timepicker-addon.min.js
vendored
7
assets/ext/jquery-ui/jquery-ui.min.css
vendored
13
assets/ext/jquery-ui/jquery-ui.min.js
vendored
5
assets/ext/jquery-ui/jquery-ui.theme.min.css
vendored
|
@ -1,11 +0,0 @@
|
|||
/*!
|
||||
* jQuery UI Touch Punch 0.2.3
|
||||
*
|
||||
* Copyright 2011–2014, Dave Furfero
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
*
|
||||
* Depends:
|
||||
* jquery.ui.widget.js
|
||||
* jquery.ui.mouse.js
|
||||
*/
|
||||
!function(a){function f(a,b){if(!(a.originalEvent.touches.length>1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);
|
2
assets/ext/jquery/jquery.min.js
vendored
2
assets/ext/moment/locales.min.js
vendored
2
assets/ext/moment/moment.min.js
vendored
6
assets/ext/popper/popper.min.js
vendored
1
assets/ext/select2/select2.min.css
vendored
2
assets/ext/select2/select2.min.js
vendored
2
assets/ext/tippy/tippy-bundle.umd.min.js
vendored
|
@ -1,162 +0,0 @@
|
|||
/* ===========================================================
|
||||
* trumbowyg.allowTagsFromPaste.js v1.0.2
|
||||
* It cleans tags from pasted text, whilst allowing several specified tags
|
||||
* http://alex-d.github.com/Trumbowyg
|
||||
* ===========================================================
|
||||
* Author : Fathi Anshory (0x00000F5C)
|
||||
* Twitter : @fscchannl
|
||||
* Notes:
|
||||
* - removeformatPasted must be set to FALSE since it was applied prior to pasteHandlers, or else it will be useless
|
||||
* - It is most advisable to use along with the cleanpaste plugin, or else you'd end up with dirty markup
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
var defaultOptions = {
|
||||
// When empty, all tags are allowed making this plugin useless
|
||||
// If you want to remove all tags, use removeformatPasted core option instead
|
||||
allowedTags: [],
|
||||
// List of tags which can be allowed
|
||||
removableTags: [
|
||||
'a',
|
||||
'abbr',
|
||||
'address',
|
||||
'b',
|
||||
'bdi',
|
||||
'bdo',
|
||||
'blockquote',
|
||||
'br',
|
||||
'cite',
|
||||
'code',
|
||||
'del',
|
||||
'dfn',
|
||||
'details',
|
||||
'em',
|
||||
'h1',
|
||||
'h2',
|
||||
'h3',
|
||||
'h4',
|
||||
'h5',
|
||||
'h6',
|
||||
'hr',
|
||||
'i',
|
||||
'ins',
|
||||
'kbd',
|
||||
'mark',
|
||||
'meter',
|
||||
'pre',
|
||||
'progress',
|
||||
'q',
|
||||
'rp',
|
||||
'rt',
|
||||
'ruby',
|
||||
's',
|
||||
'samp',
|
||||
'small',
|
||||
'span',
|
||||
'strong',
|
||||
'sub',
|
||||
'summary',
|
||||
'sup',
|
||||
'time',
|
||||
'u',
|
||||
'var',
|
||||
'wbr',
|
||||
'img',
|
||||
'map',
|
||||
'area',
|
||||
'canvas',
|
||||
'figcaption',
|
||||
'figure',
|
||||
'picture',
|
||||
'audio',
|
||||
'source',
|
||||
'track',
|
||||
'video',
|
||||
'ul',
|
||||
'ol',
|
||||
'li',
|
||||
'dl',
|
||||
'dt',
|
||||
'dd',
|
||||
'table',
|
||||
'caption',
|
||||
'th',
|
||||
'tr',
|
||||
'td',
|
||||
'thead',
|
||||
'tbody',
|
||||
'tfoot',
|
||||
'col',
|
||||
'colgroup',
|
||||
'style',
|
||||
'div',
|
||||
'p',
|
||||
'form',
|
||||
'input',
|
||||
'textarea',
|
||||
'button',
|
||||
'select',
|
||||
'optgroup',
|
||||
'option',
|
||||
'label',
|
||||
'fieldset',
|
||||
'legend',
|
||||
'datalist',
|
||||
'keygen',
|
||||
'output',
|
||||
'iframe',
|
||||
'link',
|
||||
'nav',
|
||||
'header',
|
||||
'hgroup',
|
||||
'footer',
|
||||
'main',
|
||||
'section',
|
||||
'article',
|
||||
'aside',
|
||||
'dialog',
|
||||
'script',
|
||||
'noscript',
|
||||
'embed',
|
||||
'object',
|
||||
'param'
|
||||
]
|
||||
};
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
plugins: {
|
||||
allowTagsFromPaste: {
|
||||
init: function (trumbowyg) {
|
||||
// Force disable remove format pasted
|
||||
trumbowyg.o.removeformatPasted = false;
|
||||
|
||||
if (!trumbowyg.o.plugins.allowTagsFromPaste) {
|
||||
return;
|
||||
}
|
||||
|
||||
var allowedTags = trumbowyg.o.plugins.allowTagsFromPaste.allowedTags || defaultOptions.allowedTags;
|
||||
var removableTags = trumbowyg.o.plugins.allowTagsFromPaste.removableTags || defaultOptions.removableTags;
|
||||
|
||||
if (allowedTags.length === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Get list of tags to remove
|
||||
var tagsToRemove = $(removableTags).not(allowedTags).get();
|
||||
|
||||
trumbowyg.pasteHandlers.push(function () {
|
||||
setTimeout(function () {
|
||||
var processNodes = trumbowyg.$ed.html();
|
||||
$.each(tagsToRemove, function (iterator, tagName) {
|
||||
processNodes = processNodes.replace(new RegExp('<\\/?' + tagName + '(\\s[^>]*)?>', 'gi'), '');
|
||||
});
|
||||
trumbowyg.$ed.html(processNodes);
|
||||
}, 0);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(e){"use strict";var a={allowedTags:[],removableTags:["a","abbr","address","b","bdi","bdo","blockquote","br","cite","code","del","dfn","details","em","h1","h2","h3","h4","h5","h6","hr","i","ins","kbd","mark","meter","pre","progress","q","rp","rt","ruby","s","samp","small","span","strong","sub","summary","sup","time","u","var","wbr","img","map","area","canvas","figcaption","figure","picture","audio","source","track","video","ul","ol","li","dl","dt","dd","table","caption","th","tr","td","thead","tbody","tfoot","col","colgroup","style","div","p","form","input","textarea","button","select","optgroup","option","label","fieldset","legend","datalist","keygen","output","iframe","link","nav","header","hgroup","footer","main","section","article","aside","dialog","script","noscript","embed","object","param"]};e.extend(!0,e.trumbowyg,{plugins:{allowTagsFromPaste:{init:function(t){if(t.o.removeformatPasted=!1,t.o.plugins.allowTagsFromPaste){var o=t.o.plugins.allowTagsFromPaste.allowedTags||a.allowedTags,r=t.o.plugins.allowTagsFromPaste.removableTags||a.removableTags;if(0!==o.length){var s=e(r).not(o).get();t.pasteHandlers.push(function(){setTimeout(function(){var a=t.$ed.html();e.each(s,function(e,t){a=a.replace(new RegExp("<\\/?"+t+"(\\s[^>]*)?>","gi"),"")}),t.$ed.html(a)},0)})}}}}}})}(jQuery);
|
|
@ -1,153 +0,0 @@
|
|||
/* ===========================================================
|
||||
* trumbowyg.base64.js v1.0
|
||||
* Base64 plugin for Trumbowyg
|
||||
* http://alex-d.github.com/Trumbowyg
|
||||
* ===========================================================
|
||||
* Author : Cyril Biencourt (lizardK)
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
var isSupported = function () {
|
||||
return typeof FileReader !== 'undefined';
|
||||
};
|
||||
|
||||
var isValidImage = function (type) {
|
||||
return /^data:image\/[a-z]?/i.test(type);
|
||||
};
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
en: {
|
||||
base64: 'Image as base64',
|
||||
file: 'File',
|
||||
errFileReaderNotSupported: 'FileReader is not supported by your browser.',
|
||||
errInvalidImage: 'Invalid image file.'
|
||||
},
|
||||
da: {
|
||||
base64: 'Billede som base64',
|
||||
file: 'Fil',
|
||||
errFileReaderNotSupported: 'FileReader er ikke understøttet af din browser.',
|
||||
errInvalidImage: 'Ugyldig billedfil.'
|
||||
},
|
||||
fr: {
|
||||
base64: 'Image en base64',
|
||||
file: 'Fichier'
|
||||
},
|
||||
cs: {
|
||||
base64: 'Vložit obrázek',
|
||||
file: 'Soubor'
|
||||
},
|
||||
zh_cn: {
|
||||
base64: '图片(Base64编码)',
|
||||
file: '文件'
|
||||
},
|
||||
nl: {
|
||||
base64: 'Afbeelding inline',
|
||||
file: 'Bestand',
|
||||
errFileReaderNotSupported: 'Uw browser ondersteunt deze functionaliteit niet.',
|
||||
errInvalidImage: 'De gekozen afbeelding is ongeldig.'
|
||||
},
|
||||
ru: {
|
||||
base64: 'Изображение как код в base64',
|
||||
file: 'Файл',
|
||||
errFileReaderNotSupported: 'FileReader не поддерживается вашим браузером.',
|
||||
errInvalidImage: 'Недопустимый файл изображения.'
|
||||
},
|
||||
ja: {
|
||||
base64: '画像 (Base64形式)',
|
||||
file: 'ファイル',
|
||||
errFileReaderNotSupported: 'あなたのブラウザーはFileReaderをサポートしていません',
|
||||
errInvalidImage: '画像形式が正しくありません'
|
||||
},
|
||||
tr: {
|
||||
base64: 'Base64 olarak resim',
|
||||
file: 'Dosya',
|
||||
errFileReaderNotSupported: 'FileReader tarayıcınız tarafından desteklenmiyor.',
|
||||
errInvalidImage: 'Geçersiz resim dosyası.'
|
||||
},
|
||||
zh_tw: {
|
||||
base64: '圖片(base64編碼)',
|
||||
file: '檔案',
|
||||
errFileReaderNotSupported: '你的瀏覽器不支援FileReader',
|
||||
errInvalidImage: '不正確的檔案格式'
|
||||
},
|
||||
pt_br: {
|
||||
base64: 'Imagem em base64',
|
||||
file: 'Arquivo',
|
||||
errFileReaderNotSupported: 'FileReader não é suportado pelo seu navegador.',
|
||||
errInvalidImage: 'Arquivo de imagem inválido.'
|
||||
},
|
||||
ko: {
|
||||
base64: '그림 넣기(base64)',
|
||||
file: '파일',
|
||||
errFileReaderNotSupported: 'FileReader가 현재 브라우저를 지원하지 않습니다.',
|
||||
errInvalidImage: '유효하지 않은 파일'
|
||||
},
|
||||
},
|
||||
// jshint camelcase:true
|
||||
|
||||
plugins: {
|
||||
base64: {
|
||||
shouldInit: isSupported,
|
||||
init: function (trumbowyg) {
|
||||
var btnDef = {
|
||||
isSupported: isSupported,
|
||||
fn: function () {
|
||||
trumbowyg.saveRange();
|
||||
|
||||
var file;
|
||||
var $modal = trumbowyg.openModalInsert(
|
||||
// Title
|
||||
trumbowyg.lang.base64,
|
||||
|
||||
// Fields
|
||||
{
|
||||
file: {
|
||||
type: 'file',
|
||||
required: true,
|
||||
attributes: {
|
||||
accept: 'image/*'
|
||||
}
|
||||
},
|
||||
alt: {
|
||||
label: 'description',
|
||||
value: trumbowyg.getRangeText()
|
||||
}
|
||||
},
|
||||
|
||||
// Callback
|
||||
function (values) {
|
||||
var fReader = new FileReader();
|
||||
|
||||
fReader.onloadend = function (e) {
|
||||
if (isValidImage(e.target.result)) {
|
||||
trumbowyg.execCmd('insertImage', fReader.result, false, true);
|
||||
$(['img[src="', fReader.result, '"]:not([alt])'].join(''), trumbowyg.$box).attr('alt', values.alt);
|
||||
trumbowyg.closeModal();
|
||||
} else {
|
||||
trumbowyg.addErrorOnModalField(
|
||||
$('input[type=file]', $modal),
|
||||
trumbowyg.lang.errInvalidImage
|
||||
);
|
||||
}
|
||||
};
|
||||
|
||||
fReader.readAsDataURL(file);
|
||||
}
|
||||
);
|
||||
|
||||
$('input[type=file]').on('change', function (e) {
|
||||
file = e.target.files[0];
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
trumbowyg.addBtnDef('base64', btnDef);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(e){"use strict";var a=function(){return"undefined"!=typeof FileReader},r=function(e){return/^data:image\/[a-z]?/i.test(e)};e.extend(!0,e.trumbowyg,{langs:{en:{base64:"Image as base64",file:"File",errFileReaderNotSupported:"FileReader is not supported by your browser.",errInvalidImage:"Invalid image file."},da:{base64:"Billede som base64",file:"Fil",errFileReaderNotSupported:"FileReader er ikke understøttet af din browser.",errInvalidImage:"Ugyldig billedfil."},fr:{base64:"Image en base64",file:"Fichier"},cs:{base64:"Vložit obrázek",file:"Soubor"},zh_cn:{base64:"图片(Base64编码)",file:"文件"},nl:{base64:"Afbeelding inline",file:"Bestand",errFileReaderNotSupported:"Uw browser ondersteunt deze functionaliteit niet.",errInvalidImage:"De gekozen afbeelding is ongeldig."},ru:{base64:"Изображение как код в base64",file:"Файл",errFileReaderNotSupported:"FileReader не поддерживается вашим браузером.",errInvalidImage:"Недопустимый файл изображения."},ja:{base64:"画像 (Base64形式)",file:"ファイル",errFileReaderNotSupported:"あなたのブラウザーはFileReaderをサポートしていません",errInvalidImage:"画像形式が正しくありません"},tr:{base64:"Base64 olarak resim",file:"Dosya",errFileReaderNotSupported:"FileReader tarayıcınız tarafından desteklenmiyor.",errInvalidImage:"Geçersiz resim dosyası."},zh_tw:{base64:"圖片(base64編碼)",file:"檔案",errFileReaderNotSupported:"你的瀏覽器不支援FileReader",errInvalidImage:"不正確的檔案格式"},pt_br:{base64:"Imagem em base64",file:"Arquivo",errFileReaderNotSupported:"FileReader não é suportado pelo seu navegador.",errInvalidImage:"Arquivo de imagem inválido."},ko:{base64:"그림 넣기(base64)",file:"파일",errFileReaderNotSupported:"FileReader가 현재 브라우저를 지원하지 않습니다.",errInvalidImage:"유효하지 않은 파일"}},plugins:{base64:{shouldInit:a,init:function(i){var t={isSupported:a,fn:function(){i.saveRange();var a,t=i.openModalInsert(i.lang.base64,{file:{type:"file",required:!0,attributes:{accept:"image/*"}},alt:{label:"description",value:i.getRangeText()}},function(l){var n=new FileReader;n.onloadend=function(a){r(a.target.result)?(i.execCmd("insertImage",n.result,!1,!0),e(['img[src="',n.result,'"]:not([alt])'].join(""),i.$box).attr("alt",l.alt),i.closeModal()):i.addErrorOnModalField(e("input[type=file]",t),i.lang.errInvalidImage)},n.readAsDataURL(a)});e("input[type=file]").on("change",function(e){a=e.target.files[0]})}};i.addBtnDef("base64",t)}}}})}(jQuery);
|
|
@ -1,111 +0,0 @@
|
|||
/* ===========================================================
|
||||
* trumbowyg.cleanpaste.js v1.0
|
||||
* Font Clean paste plugin for Trumbowyg
|
||||
* http://alex-d.github.com/Trumbowyg
|
||||
* ===========================================================
|
||||
* Authors : Eric Radin
|
||||
* Todd Graham (slackwalker)
|
||||
*
|
||||
* This plugin will perform a "cleaning" on any paste, in particular
|
||||
* it will clean pasted content of microsoft word document tags and classes.
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
function checkValidTags(snippet) {
|
||||
var theString = snippet;
|
||||
|
||||
// Replace uppercase element names with lowercase
|
||||
theString = theString.replace(/<[^> ]*/g, function (match) {
|
||||
return match.toLowerCase();
|
||||
});
|
||||
|
||||
// Replace uppercase attribute names with lowercase
|
||||
theString = theString.replace(/<[^>]*>/g, function (match) {
|
||||
match = match.replace(/ [^=]+=/g, function (match2) {
|
||||
return match2.toLowerCase();
|
||||
});
|
||||
return match;
|
||||
});
|
||||
|
||||
// Put quotes around unquoted attributes
|
||||
theString = theString.replace(/<[^>]*>/g, function (match) {
|
||||
match = match.replace(/( [^=]+=)([^"][^ >]*)/g, '$1\"$2\"');
|
||||
return match;
|
||||
});
|
||||
|
||||
return theString;
|
||||
}
|
||||
|
||||
function cleanIt(html) {
|
||||
// first make sure all tags and attributes are made valid
|
||||
html = checkValidTags(html);
|
||||
|
||||
// Replace opening bold tags with strong
|
||||
html = html.replace(/<b(\s+|>)/g, '<strong$1');
|
||||
// Replace closing bold tags with closing strong
|
||||
html = html.replace(/<\/b(\s+|>)/g, '</strong$1');
|
||||
|
||||
// Replace italic tags with em
|
||||
html = html.replace(/<i(\s+|>)/g, '<em$1');
|
||||
// Replace closing italic tags with closing em
|
||||
html = html.replace(/<\/i(\s+|>)/g, '</em$1');
|
||||
|
||||
// strip out comments -cgCraft
|
||||
html = html.replace(/<!(?:--[\s\S]*?--\s*)?>\s*/g, '');
|
||||
|
||||
// strip out -cgCraft
|
||||
html = html.replace(/ /gi, ' ');
|
||||
// strip out extra spaces -cgCraft
|
||||
html = html.replace(/ <\//gi, '</');
|
||||
|
||||
// Remove multiple spaces
|
||||
html.replace(/\s+/g, ' ');
|
||||
|
||||
// strip -cgCraft
|
||||
html = html.replace(/^\s*|\s*$/g, '');
|
||||
|
||||
// Strip out unaccepted attributes
|
||||
html = html.replace(/<[^>]*>/g, function (match) {
|
||||
match = match.replace(/ ([^=]+)="[^"]*"/g, function (match2, attributeName) {
|
||||
if (['alt', 'href', 'src', 'title'].indexOf(attributeName) !== -1) {
|
||||
return match2;
|
||||
}
|
||||
return '';
|
||||
});
|
||||
return match;
|
||||
});
|
||||
|
||||
// Final clean out for MS Word crud
|
||||
html = html.replace(/<\?xml[^>]*>/g, '');
|
||||
html = html.replace(/<[^ >]+:[^>]*>/g, '');
|
||||
html = html.replace(/<\/[^ >]+:[^>]*>/g, '');
|
||||
|
||||
// remove unwanted tags
|
||||
html = html.replace(/<(div|span|style|meta|link).*?>/gi, '');
|
||||
|
||||
return html;
|
||||
}
|
||||
|
||||
// clean editor
|
||||
// this will clean the inserted contents
|
||||
// it does a compare, before and after paste to determine the
|
||||
// pasted contents
|
||||
$.extend(true, $.trumbowyg, {
|
||||
plugins: {
|
||||
cleanPaste: {
|
||||
init: function (trumbowyg) {
|
||||
trumbowyg.pasteHandlers.push(function () {
|
||||
setTimeout(function () {
|
||||
try {
|
||||
trumbowyg.$ed.html(cleanIt(trumbowyg.$ed.html()));
|
||||
} catch (c) {
|
||||
}
|
||||
}, 0);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(e){"use strict";function r(e){var r=e;return r=r.replace(/<[^> ]*/g,function(e){return e.toLowerCase()}),r=r.replace(/<[^>]*>/g,function(e){return e=e.replace(/ [^=]+=/g,function(e){return e.toLowerCase()})}),r=r.replace(/<[^>]*>/g,function(e){return e=e.replace(/( [^=]+=)([^"][^ >]*)/g,'$1"$2"')})}function n(e){return e=r(e),e=e.replace(/<b(\s+|>)/g,"<strong$1"),e=e.replace(/<\/b(\s+|>)/g,"</strong$1"),e=e.replace(/<i(\s+|>)/g,"<em$1"),e=e.replace(/<\/i(\s+|>)/g,"</em$1"),e=e.replace(/<!(?:--[\s\S]*?--\s*)?>\s*/g,""),e=e.replace(/ /gi," "),e=e.replace(/ <\//gi,"</"),e.replace(/\s+/g," "),e=e.replace(/^\s*|\s*$/g,""),e=e.replace(/<[^>]*>/g,function(e){return e=e.replace(/ ([^=]+)="[^"]*"/g,function(e,r){return["alt","href","src","title"].indexOf(r)!==-1?e:""})}),e=e.replace(/<\?xml[^>]*>/g,""),e=e.replace(/<[^ >]+:[^>]*>/g,""),e=e.replace(/<\/[^ >]+:[^>]*>/g,""),e=e.replace(/<(div|span|style|meta|link).*?>/gi,"")}e.extend(!0,e.trumbowyg,{plugins:{cleanPaste:{init:function(e){e.pasteHandlers.push(function(){setTimeout(function(){try{e.$ed.html(n(e.$ed.html()))}catch(r){}},0)})}}}})}(jQuery);
|
|
@ -1,250 +0,0 @@
|
|||
/* ===========================================================
|
||||
* trumbowyg.colors.js v1.2
|
||||
* Colors picker plugin for Trumbowyg
|
||||
* http://alex-d.github.com/Trumbowyg
|
||||
* ===========================================================
|
||||
* Author : Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
cs: {
|
||||
foreColor: 'Barva textu',
|
||||
backColor: 'Barva pozadí'
|
||||
},
|
||||
en: {
|
||||
foreColor: 'Text color',
|
||||
backColor: 'Background color',
|
||||
foreColorRemove: 'Remove text color',
|
||||
backColorRemove: 'Remove background color'
|
||||
},
|
||||
da: {
|
||||
foreColor: 'Tekstfarve',
|
||||
backColor: 'Baggrundsfarve'
|
||||
},
|
||||
fr: {
|
||||
foreColor: 'Couleur du texte',
|
||||
backColor: 'Couleur de fond',
|
||||
foreColorRemove: 'Supprimer la couleur du texte',
|
||||
backColorRemove: 'Supprimer la couleur de fond'
|
||||
},
|
||||
de: {
|
||||
foreColor: 'Textfarbe',
|
||||
backColor: 'Hintergrundfarbe'
|
||||
},
|
||||
nl: {
|
||||
foreColor: 'Tekstkleur',
|
||||
backColor: 'Achtergrondkleur'
|
||||
},
|
||||
sk: {
|
||||
foreColor: 'Farba textu',
|
||||
backColor: 'Farba pozadia'
|
||||
},
|
||||
zh_cn: {
|
||||
foreColor: '文字颜色',
|
||||
backColor: '背景颜色'
|
||||
},
|
||||
zh_tw: {
|
||||
foreColor: '文字顏色',
|
||||
backColor: '背景顏色'
|
||||
},
|
||||
ru: {
|
||||
foreColor: 'Цвет текста',
|
||||
backColor: 'Цвет выделения текста'
|
||||
},
|
||||
ja: {
|
||||
foreColor: '文字色',
|
||||
backColor: '背景色'
|
||||
},
|
||||
tr: {
|
||||
foreColor: 'Yazı rengi',
|
||||
backColor: 'Arkaplan rengi'
|
||||
},
|
||||
pt_br: {
|
||||
foreColor: 'Cor de fonte',
|
||||
backColor: 'Cor de fundo'
|
||||
},
|
||||
ko: {
|
||||
foreColor: '글자색',
|
||||
backColor: '배경색',
|
||||
foreColorRemove: '글자색 지우기',
|
||||
backColorRemove: '배경색 지우기'
|
||||
},
|
||||
}
|
||||
});
|
||||
|
||||
// jshint camelcase:true
|
||||
|
||||
|
||||
function hex(x) {
|
||||
return ('0' + parseInt(x).toString(16)).slice(-2);
|
||||
}
|
||||
|
||||
function colorToHex(rgb) {
|
||||
if (rgb.search('rgb') === -1) {
|
||||
return rgb.replace('#', '');
|
||||
} else if (rgb === 'rgba(0, 0, 0, 0)') {
|
||||
return 'transparent';
|
||||
} else {
|
||||
rgb = rgb.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*(\d+))?\)$/);
|
||||
return hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]);
|
||||
}
|
||||
}
|
||||
|
||||
function colorTagHandler(element, trumbowyg) {
|
||||
var tags = [];
|
||||
|
||||
if (!element.style) {
|
||||
return tags;
|
||||
}
|
||||
|
||||
// background color
|
||||
if (element.style.backgroundColor !== '') {
|
||||
var backColor = colorToHex(element.style.backgroundColor);
|
||||
if (trumbowyg.o.plugins.colors.colorList.indexOf(backColor) >= 0) {
|
||||
tags.push('backColor' + backColor);
|
||||
} else {
|
||||
tags.push('backColorFree');
|
||||
}
|
||||
}
|
||||
|
||||
// text color
|
||||
var foreColor;
|
||||
if (element.style.color !== '') {
|
||||
foreColor = colorToHex(element.style.color);
|
||||
} else if (element.hasAttribute('color')) {
|
||||
foreColor = colorToHex(element.getAttribute('color'));
|
||||
}
|
||||
if (foreColor) {
|
||||
if (trumbowyg.o.plugins.colors.colorList.indexOf(foreColor) >= 0) {
|
||||
tags.push('foreColor' + foreColor);
|
||||
} else {
|
||||
tags.push('foreColorFree');
|
||||
}
|
||||
}
|
||||
|
||||
return tags;
|
||||
}
|
||||
|
||||
var defaultOptions = {
|
||||
colorList: [
|
||||
'ffffff', '000000', 'eeece1', '1f497d', '4f81bd', 'c0504d', '9bbb59', '8064a2', '4bacc6', 'f79646', 'ffff00',
|
||||
'f2f2f2', '7f7f7f', 'ddd9c3', 'c6d9f0', 'dbe5f1', 'f2dcdb', 'ebf1dd', 'e5e0ec', 'dbeef3', 'fdeada', 'fff2ca',
|
||||
'd8d8d8', '595959', 'c4bd97', '8db3e2', 'b8cce4', 'e5b9b7', 'd7e3bc', 'ccc1d9', 'b7dde8', 'fbd5b5', 'ffe694',
|
||||
'bfbfbf', '3f3f3f', '938953', '548dd4', '95b3d7', 'd99694', 'c3d69b', 'b2a2c7', 'b7dde8', 'fac08f', 'f2c314',
|
||||
'a5a5a5', '262626', '494429', '17365d', '366092', '953734', '76923c', '5f497a', '92cddc', 'e36c09', 'c09100',
|
||||
'7f7f7f', '0c0c0c', '1d1b10', '0f243e', '244061', '632423', '4f6128', '3f3151', '31859b', '974806', '7f6000'
|
||||
],
|
||||
foreColorList: null, // fallbacks on colorList
|
||||
backColorList: null, // fallbacks on colorList
|
||||
allowCustomForeColor: true,
|
||||
allowCustomBackColor: true,
|
||||
displayAsList: false,
|
||||
};
|
||||
|
||||
// Add all colors in two dropdowns
|
||||
$.extend(true, $.trumbowyg, {
|
||||
plugins: {
|
||||
color: {
|
||||
init: function (trumbowyg) {
|
||||
trumbowyg.o.plugins.colors = trumbowyg.o.plugins.colors || defaultOptions;
|
||||
var dropdownClass = trumbowyg.o.plugins.colors.displayAsList ? trumbowyg.o.prefix + 'dropdown--color-list' : '';
|
||||
|
||||
var foreColorBtnDef = {
|
||||
dropdown: buildDropdown('foreColor', trumbowyg),
|
||||
dropdownClass: dropdownClass,
|
||||
},
|
||||
backColorBtnDef = {
|
||||
dropdown: buildDropdown('backColor', trumbowyg),
|
||||
dropdownClass: dropdownClass,
|
||||
};
|
||||
|
||||
trumbowyg.addBtnDef('foreColor', foreColorBtnDef);
|
||||
trumbowyg.addBtnDef('backColor', backColorBtnDef);
|
||||
},
|
||||
tagHandler: colorTagHandler
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
function buildDropdown(fn, trumbowyg) {
|
||||
var dropdown = [],
|
||||
trumbowygColorOptions = trumbowyg.o.plugins.colors,
|
||||
colorList = trumbowygColorOptions[fn + 'List'] || trumbowygColorOptions.colorList;
|
||||
|
||||
$.each(colorList, function (i, color) {
|
||||
var btn = fn + color,
|
||||
btnDef = {
|
||||
fn: fn,
|
||||
forceCss: true,
|
||||
hasIcon: false,
|
||||
text: trumbowyg.lang['#' + color] || ('#' + color),
|
||||
param: '#' + color,
|
||||
style: 'background-color: #' + color + ';'
|
||||
};
|
||||
|
||||
if (trumbowygColorOptions.displayAsList && fn === 'foreColor') {
|
||||
btnDef.style = 'color: #' + color + ' !important;';
|
||||
}
|
||||
|
||||
trumbowyg.addBtnDef(btn, btnDef);
|
||||
dropdown.push(btn);
|
||||
});
|
||||
|
||||
// Remove color
|
||||
var removeColorButtonName = fn + 'Remove',
|
||||
removeColorBtnDef = {
|
||||
fn: 'removeFormat',
|
||||
hasIcon: false,
|
||||
param: fn,
|
||||
style: 'background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAG0lEQVQIW2NkQAAfEJMRmwBYhoGBYQtMBYoAADziAp0jtJTgAAAAAElFTkSuQmCC);'
|
||||
};
|
||||
|
||||
if (trumbowygColorOptions.displayAsList) {
|
||||
removeColorBtnDef.style = '';
|
||||
}
|
||||
|
||||
trumbowyg.addBtnDef(removeColorButtonName, removeColorBtnDef);
|
||||
dropdown.push(removeColorButtonName);
|
||||
|
||||
// Custom color
|
||||
if (trumbowygColorOptions['allowCustom' + fn.charAt(0).toUpperCase() + fn.substr(1)]) {
|
||||
// add free color btn
|
||||
var freeColorButtonName = fn + 'Free',
|
||||
freeColorBtnDef = {
|
||||
fn: function () {
|
||||
trumbowyg.openModalInsert(trumbowyg.lang[fn],
|
||||
{
|
||||
color: {
|
||||
label: fn,
|
||||
forceCss: true,
|
||||
type: 'color',
|
||||
value: '#FFFFFF'
|
||||
}
|
||||
},
|
||||
// callback
|
||||
function (values) {
|
||||
trumbowyg.execCmd(fn, values.color);
|
||||
return true;
|
||||
}
|
||||
);
|
||||
},
|
||||
hasIcon: false,
|
||||
text: '#',
|
||||
// style adjust for displaying the text
|
||||
style: 'text-indent: 0; line-height: 20px; padding: 0 5px;'
|
||||
};
|
||||
|
||||
trumbowyg.addBtnDef(freeColorButtonName, freeColorBtnDef);
|
||||
dropdown.push(freeColorButtonName);
|
||||
}
|
||||
|
||||
return dropdown;
|
||||
}
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(o){"use strict";function r(o){return("0"+parseInt(o).toString(16)).slice(-2)}function e(o){return o.search("rgb")===-1?o.replace("#",""):"rgba(0, 0, 0, 0)"===o?"transparent":(o=o.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*(\d+))?\)$/),r(o[1])+r(o[2])+r(o[3]))}function l(o,r){var l=[];if(!o.style)return l;if(""!==o.style.backgroundColor){var a=e(o.style.backgroundColor);r.o.plugins.colors.colorList.indexOf(a)>=0?l.push("backColor"+a):l.push("backColorFree")}var c;return""!==o.style.color?c=e(o.style.color):o.hasAttribute("color")&&(c=e(o.getAttribute("color"))),c&&(r.o.plugins.colors.colorList.indexOf(c)>=0?l.push("foreColor"+c):l.push("foreColorFree")),l}function a(r,e){var l=[],a=e.o.plugins.colors,c=a[r+"List"]||a.colorList;o.each(c,function(o,c){var f=r+c,t={fn:r,forceCss:!0,hasIcon:!1,text:e.lang["#"+c]||"#"+c,param:"#"+c,style:"background-color: #"+c+";"};a.displayAsList&&"foreColor"===r&&(t.style="color: #"+c+" !important;"),e.addBtnDef(f,t),l.push(f)});var f=r+"Remove",t={fn:"removeFormat",hasIcon:!1,param:r,style:"background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAG0lEQVQIW2NkQAAfEJMRmwBYhoGBYQtMBYoAADziAp0jtJTgAAAAAElFTkSuQmCC);"};if(a.displayAsList&&(t.style=""),e.addBtnDef(f,t),l.push(f),a["allowCustom"+r.charAt(0).toUpperCase()+r.substr(1)]){var d=r+"Free",n={fn:function(){e.openModalInsert(e.lang[r],{color:{label:r,forceCss:!0,type:"color",value:"#FFFFFF"}},function(o){return e.execCmd(r,o.color),!0})},hasIcon:!1,text:"#",style:"text-indent: 0; line-height: 20px; padding: 0 5px;"};e.addBtnDef(d,n),l.push(d)}return l}o.extend(!0,o.trumbowyg,{langs:{cs:{foreColor:"Barva textu",backColor:"Barva pozadí"},en:{foreColor:"Text color",backColor:"Background color",foreColorRemove:"Remove text color",backColorRemove:"Remove background color"},da:{foreColor:"Tekstfarve",backColor:"Baggrundsfarve"},fr:{foreColor:"Couleur du texte",backColor:"Couleur de fond",foreColorRemove:"Supprimer la couleur du texte",backColorRemove:"Supprimer la couleur de fond"},de:{foreColor:"Textfarbe",backColor:"Hintergrundfarbe"},nl:{foreColor:"Tekstkleur",backColor:"Achtergrondkleur"},sk:{foreColor:"Farba textu",backColor:"Farba pozadia"},zh_cn:{foreColor:"文字颜色",backColor:"背景颜色"},zh_tw:{foreColor:"文字顏色",backColor:"背景顏色"},ru:{foreColor:"Цвет текста",backColor:"Цвет выделения текста"},ja:{foreColor:"文字色",backColor:"背景色"},tr:{foreColor:"Yazı rengi",backColor:"Arkaplan rengi"},pt_br:{foreColor:"Cor de fonte",backColor:"Cor de fundo"},ko:{foreColor:"글자색",backColor:"배경색",foreColorRemove:"글자색 지우기",backColorRemove:"배경색 지우기"}}});var c={colorList:["ffffff","000000","eeece1","1f497d","4f81bd","c0504d","9bbb59","8064a2","4bacc6","f79646","ffff00","f2f2f2","7f7f7f","ddd9c3","c6d9f0","dbe5f1","f2dcdb","ebf1dd","e5e0ec","dbeef3","fdeada","fff2ca","d8d8d8","595959","c4bd97","8db3e2","b8cce4","e5b9b7","d7e3bc","ccc1d9","b7dde8","fbd5b5","ffe694","bfbfbf","3f3f3f","938953","548dd4","95b3d7","d99694","c3d69b","b2a2c7","b7dde8","fac08f","f2c314","a5a5a5","262626","494429","17365d","366092","953734","76923c","5f497a","92cddc","e36c09","c09100","7f7f7f","0c0c0c","1d1b10","0f243e","244061","632423","4f6128","3f3151","31859b","974806","7f6000"],foreColorList:null,backColorList:null,allowCustomForeColor:!0,allowCustomBackColor:!0,displayAsList:!1};o.extend(!0,o.trumbowyg,{plugins:{color:{init:function(o){o.o.plugins.colors=o.o.plugins.colors||c;var r=o.o.plugins.colors.displayAsList?o.o.prefix+"dropdown--color-list":"",e={dropdown:a("foreColor",o),dropdownClass:r},l={dropdown:a("backColor",o),dropdownClass:r};o.addBtnDef("foreColor",e),o.addBtnDef("backColor",l)},tagHandler:l}}})}(jQuery);
|
|
@ -1,68 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Default stylesheet for Trumbowyg editor plugin
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.trumbowyg-dropdown-foreColor:not(.trumbowyg-dropdown--color-list),
|
||||
.trumbowyg-dropdown-backColor:not(.trumbowyg-dropdown--color-list) {
|
||||
max-width: 276px;
|
||||
padding: 7px 5px;
|
||||
overflow: initial;
|
||||
|
||||
button {
|
||||
display: block;
|
||||
position: relative;
|
||||
float: left;
|
||||
text-indent: -9999px;
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
border: 1px solid #333;
|
||||
padding: 0;
|
||||
margin: 2px;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
&::after {
|
||||
content: " ";
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: -5px;
|
||||
left: -5px;
|
||||
width: 27px;
|
||||
height: 27px;
|
||||
background: inherit;
|
||||
border: 1px solid #fff;
|
||||
box-shadow: #000 0 0 2px;
|
||||
z-index: 10;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.trumbowyg-dropdown-backColor.trumbowyg-dropdown--color-list {
|
||||
button:not(.trumbowyg-backColorRemove-dropdown-button) {
|
||||
position: relative;
|
||||
color: #fff !important;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
&::after {
|
||||
content: " ";
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 13px;
|
||||
left: 0;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border: 5px solid transparent;
|
||||
border-left-color: #fff;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,55 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Trumbowyg plugin stylesheet
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.trumbowyg-dropdown-foreColor:not(.trumbowyg-dropdown--color-list),
|
||||
.trumbowyg-dropdown-backColor:not(.trumbowyg-dropdown--color-list) {
|
||||
max-width: 276px;
|
||||
padding: 7px 5px;
|
||||
overflow: initial; }
|
||||
.trumbowyg-dropdown-foreColor:not(.trumbowyg-dropdown--color-list) button,
|
||||
.trumbowyg-dropdown-backColor:not(.trumbowyg-dropdown--color-list) button {
|
||||
display: block;
|
||||
position: relative;
|
||||
float: left;
|
||||
text-indent: -9999px;
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
border: 1px solid #333;
|
||||
padding: 0;
|
||||
margin: 2px; }
|
||||
.trumbowyg-dropdown-foreColor:not(.trumbowyg-dropdown--color-list) button:hover::after, .trumbowyg-dropdown-foreColor:not(.trumbowyg-dropdown--color-list) button:focus::after,
|
||||
.trumbowyg-dropdown-backColor:not(.trumbowyg-dropdown--color-list) button:hover::after,
|
||||
.trumbowyg-dropdown-backColor:not(.trumbowyg-dropdown--color-list) button:focus::after {
|
||||
content: " ";
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: -5px;
|
||||
left: -5px;
|
||||
width: 27px;
|
||||
height: 27px;
|
||||
background: inherit;
|
||||
border: 1px solid #fff;
|
||||
box-shadow: #000 0 0 2px;
|
||||
z-index: 10; }
|
||||
|
||||
.trumbowyg-dropdown-backColor.trumbowyg-dropdown--color-list button:not(.trumbowyg-backColorRemove-dropdown-button) {
|
||||
position: relative;
|
||||
color: #fff !important; }
|
||||
.trumbowyg-dropdown-backColor.trumbowyg-dropdown--color-list button:not(.trumbowyg-backColorRemove-dropdown-button):hover::after, .trumbowyg-dropdown-backColor.trumbowyg-dropdown--color-list button:not(.trumbowyg-backColorRemove-dropdown-button):focus::after {
|
||||
content: " ";
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 13px;
|
||||
left: 0;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border: 5px solid transparent;
|
||||
border-left-color: #fff; }
|
|
@ -1,2 +0,0 @@
|
|||
/** Trumbowyg v2.21.0 - A lightweight WYSIWYG editor - alex-d.github.io/Trumbowyg - License MIT - Author : Alexandre Demode (Alex-D) / alex-d.fr */
|
||||
.trumbowyg-dropdown-backColor:not(.trumbowyg-dropdown--color-list),.trumbowyg-dropdown-foreColor:not(.trumbowyg-dropdown--color-list){max-width:276px;padding:7px 5px;overflow:initial}.trumbowyg-dropdown-backColor:not(.trumbowyg-dropdown--color-list) button,.trumbowyg-dropdown-foreColor:not(.trumbowyg-dropdown--color-list) button{display:block;position:relative;float:left;text-indent:-9999px;height:20px;width:20px;border:1px solid #333;padding:0;margin:2px}.trumbowyg-dropdown-backColor:not(.trumbowyg-dropdown--color-list) button:focus::after,.trumbowyg-dropdown-backColor:not(.trumbowyg-dropdown--color-list) button:hover::after,.trumbowyg-dropdown-foreColor:not(.trumbowyg-dropdown--color-list) button:focus::after,.trumbowyg-dropdown-foreColor:not(.trumbowyg-dropdown--color-list) button:hover::after{content:" ";display:block;position:absolute;top:-5px;left:-5px;width:27px;height:27px;background:inherit;border:1px solid #fff;box-shadow:#000 0 0 2px;z-index:10}.trumbowyg-dropdown-backColor.trumbowyg-dropdown--color-list button:not(.trumbowyg-backColorRemove-dropdown-button){position:relative;color:#fff!important}.trumbowyg-dropdown-backColor.trumbowyg-dropdown--color-list button:not(.trumbowyg-backColorRemove-dropdown-button):focus::after,.trumbowyg-dropdown-backColor.trumbowyg-dropdown--color-list button:not(.trumbowyg-backColorRemove-dropdown-button):hover::after{content:" ";display:block;position:absolute;top:13px;left:0;width:0;height:0;border:5px solid transparent;border-left-color:#fff}
|
|
@ -1,53 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Default stylesheet for Trumbowyg editor plugin
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.trumbowyg-dropdown-emoji {
|
||||
width: 265px;
|
||||
padding: 7px 0 7px 5px;
|
||||
}
|
||||
|
||||
.trumbowyg-dropdown-emoji svg {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.trumbowyg-dropdown-emoji button {
|
||||
display: block;
|
||||
position: relative;
|
||||
float: left;
|
||||
height: 26px;
|
||||
width: 26px;
|
||||
padding: 0;
|
||||
margin: 2px;
|
||||
line-height: 24px;
|
||||
text-align: center;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
&::after {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: -5px;
|
||||
left: -5px;
|
||||
height: 27px;
|
||||
width: 27px;
|
||||
background: inherit;
|
||||
box-shadow: #000 0 0 2px;
|
||||
z-index: 10;
|
||||
background-color: transparent;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.trumbowyg .emoji {
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
display: inline-block;
|
||||
}
|
|
@ -1,44 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Trumbowyg plugin stylesheet
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.trumbowyg-dropdown-emoji {
|
||||
width: 265px;
|
||||
padding: 7px 0 7px 5px; }
|
||||
|
||||
.trumbowyg-dropdown-emoji svg {
|
||||
display: none !important; }
|
||||
|
||||
.trumbowyg-dropdown-emoji button {
|
||||
display: block;
|
||||
position: relative;
|
||||
float: left;
|
||||
height: 26px;
|
||||
width: 26px;
|
||||
padding: 0;
|
||||
margin: 2px;
|
||||
line-height: 24px;
|
||||
text-align: center; }
|
||||
.trumbowyg-dropdown-emoji button:hover::after, .trumbowyg-dropdown-emoji button:focus::after {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: -5px;
|
||||
left: -5px;
|
||||
height: 27px;
|
||||
width: 27px;
|
||||
background: inherit;
|
||||
box-shadow: #000 0 0 2px;
|
||||
z-index: 10;
|
||||
background-color: transparent; }
|
||||
|
||||
.trumbowyg .emoji {
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
display: inline-block; }
|
|
@ -1,2 +0,0 @@
|
|||
/** Trumbowyg v2.21.0 - A lightweight WYSIWYG editor - alex-d.github.io/Trumbowyg - License MIT - Author : Alexandre Demode (Alex-D) / alex-d.fr */
|
||||
.trumbowyg-dropdown-emoji{width:265px;padding:7px 0 7px 5px}.trumbowyg-dropdown-emoji svg{display:none!important}.trumbowyg-dropdown-emoji button{display:block;position:relative;float:left;height:26px;width:26px;padding:0;margin:2px;line-height:24px;text-align:center}.trumbowyg-dropdown-emoji button:focus::after,.trumbowyg-dropdown-emoji button:hover::after{display:block;position:absolute;top:-5px;left:-5px;height:27px;width:27px;background:inherit;box-shadow:#000 0 0 2px;z-index:10;background-color:transparent}.trumbowyg .emoji{width:22px;height:22px;display:inline-block}
|
|
@ -1,95 +0,0 @@
|
|||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
en: {
|
||||
fontFamily: 'Font'
|
||||
},
|
||||
es: {
|
||||
fontFamily: 'Fuente'
|
||||
},
|
||||
da: {
|
||||
fontFamily: 'Skrifttype'
|
||||
},
|
||||
fr: {
|
||||
fontFamily: 'Police'
|
||||
},
|
||||
de: {
|
||||
fontFamily: 'Schriftart'
|
||||
},
|
||||
nl: {
|
||||
fontFamily: 'Lettertype'
|
||||
},
|
||||
tr: {
|
||||
fontFamily: 'Yazı Tipi'
|
||||
},
|
||||
zh_tw: {
|
||||
fontFamily: '字體',
|
||||
},
|
||||
pt_br: {
|
||||
fontFamily: 'Fonte',
|
||||
},
|
||||
ko: {
|
||||
fontFamily: '글꼴'
|
||||
},
|
||||
}
|
||||
});
|
||||
// jshint camelcase:true
|
||||
|
||||
var defaultOptions = {
|
||||
fontList: [
|
||||
{name: 'Arial', family: 'Arial, Helvetica, sans-serif'},
|
||||
{name: 'Arial Black', family: 'Arial Black, Gadget, sans-serif'},
|
||||
{name: 'Comic Sans', family: 'Comic Sans MS, Textile, cursive, sans-serif'},
|
||||
{name: 'Courier New', family: 'Courier New, Courier, monospace'},
|
||||
{name: 'Georgia', family: 'Georgia, serif'},
|
||||
{name: 'Impact', family: 'Impact, Charcoal, sans-serif'},
|
||||
{name: 'Lucida Console', family: 'Lucida Console, Monaco, monospace'},
|
||||
{name: 'Lucida Sans', family: 'Lucida Sans Uncide, Lucida Grande, sans-serif'},
|
||||
{name: 'Palatino', family: 'Palatino Linotype, Book Antiqua, Palatino, serif'},
|
||||
{name: 'Tahoma', family: 'Tahoma, Geneva, sans-serif'},
|
||||
{name: 'Times New Roman', family: 'Times New Roman, Times, serif'},
|
||||
{name: 'Trebuchet', family: 'Trebuchet MS, Helvetica, sans-serif'},
|
||||
{name: 'Verdana', family: 'Verdana, Geneva, sans-serif'}
|
||||
]
|
||||
};
|
||||
|
||||
// Add dropdown with web safe fonts
|
||||
$.extend(true, $.trumbowyg, {
|
||||
plugins: {
|
||||
fontfamily: {
|
||||
init: function (trumbowyg) {
|
||||
trumbowyg.o.plugins.fontfamily = $.extend({},
|
||||
defaultOptions,
|
||||
trumbowyg.o.plugins.fontfamily || {}
|
||||
);
|
||||
|
||||
trumbowyg.addBtnDef('fontfamily', {
|
||||
dropdown: buildDropdown(trumbowyg),
|
||||
hasIcon: false,
|
||||
text: trumbowyg.lang.fontFamily
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
function buildDropdown(trumbowyg) {
|
||||
var dropdown = [];
|
||||
|
||||
$.each(trumbowyg.o.plugins.fontfamily.fontList, function (index, font) {
|
||||
trumbowyg.addBtnDef('fontfamily_' + index, {
|
||||
title: '<span style="font-family: ' + font.family + ';">' + font.name + '</span>',
|
||||
hasIcon: false,
|
||||
fn: function () {
|
||||
trumbowyg.execCmd('fontName', font.family, true);
|
||||
}
|
||||
});
|
||||
dropdown.push('fontfamily_' + index);
|
||||
});
|
||||
|
||||
return dropdown;
|
||||
}
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(a){"use strict";function n(n){var i=[];return a.each(n.o.plugins.fontfamily.fontList,function(a,e){n.addBtnDef("fontfamily_"+a,{title:'<span style="font-family: '+e.family+';">'+e.name+"</span>",hasIcon:!1,fn:function(){n.execCmd("fontName",e.family,!0)}}),i.push("fontfamily_"+a)}),i}a.extend(!0,a.trumbowyg,{langs:{en:{fontFamily:"Font"},es:{fontFamily:"Fuente"},da:{fontFamily:"Skrifttype"},fr:{fontFamily:"Police"},de:{fontFamily:"Schriftart"},nl:{fontFamily:"Lettertype"},tr:{fontFamily:"Yazı Tipi"},zh_tw:{fontFamily:"字體"},pt_br:{fontFamily:"Fonte"},ko:{fontFamily:"글꼴"}}});var i={fontList:[{name:"Arial",family:"Arial, Helvetica, sans-serif"},{name:"Arial Black",family:"Arial Black, Gadget, sans-serif"},{name:"Comic Sans",family:"Comic Sans MS, Textile, cursive, sans-serif"},{name:"Courier New",family:"Courier New, Courier, monospace"},{name:"Georgia",family:"Georgia, serif"},{name:"Impact",family:"Impact, Charcoal, sans-serif"},{name:"Lucida Console",family:"Lucida Console, Monaco, monospace"},{name:"Lucida Sans",family:"Lucida Sans Uncide, Lucida Grande, sans-serif"},{name:"Palatino",family:"Palatino Linotype, Book Antiqua, Palatino, serif"},{name:"Tahoma",family:"Tahoma, Geneva, sans-serif"},{name:"Times New Roman",family:"Times New Roman, Times, serif"},{name:"Trebuchet",family:"Trebuchet MS, Helvetica, sans-serif"},{name:"Verdana",family:"Verdana, Geneva, sans-serif"}]};a.extend(!0,a.trumbowyg,{plugins:{fontfamily:{init:function(e){e.o.plugins.fontfamily=a.extend({},i,e.o.plugins.fontfamily||{}),e.addBtnDef("fontfamily",{dropdown:n(e),hasIcon:!1,text:e.lang.fontFamily})}}}})}(jQuery);
|
|
@ -1,257 +0,0 @@
|
|||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
en: {
|
||||
fontsize: 'Font size',
|
||||
fontsizes: {
|
||||
'x-small': 'Extra small',
|
||||
'small': 'Small',
|
||||
'medium': 'Regular',
|
||||
'large': 'Large',
|
||||
'x-large': 'Extra large',
|
||||
'custom': 'Custom'
|
||||
},
|
||||
fontCustomSize: {
|
||||
title: 'Custom Font Size',
|
||||
label: 'Font Size',
|
||||
value: '48px'
|
||||
}
|
||||
},
|
||||
es: {
|
||||
fontsize: 'Tamaño de Fuente',
|
||||
fontsizes: {
|
||||
'x-small': 'Extra pequeña',
|
||||
'small': 'Pegueña',
|
||||
'medium': 'Regular',
|
||||
'large': 'Grande',
|
||||
'x-large': 'Extra Grande',
|
||||
'custom': 'Customizada'
|
||||
},
|
||||
fontCustomSize: {
|
||||
title: 'Tamaño de Fuente Customizada',
|
||||
label: 'Tamaño de Fuente',
|
||||
value: '48px'
|
||||
}
|
||||
},
|
||||
da: {
|
||||
fontsize: 'Skriftstørrelse',
|
||||
fontsizes: {
|
||||
'x-small': 'Ekstra lille',
|
||||
'small': 'Lille',
|
||||
'medium': 'Normal',
|
||||
'large': 'Stor',
|
||||
'x-large': 'Ekstra stor',
|
||||
'custom': 'Brugerdefineret'
|
||||
}
|
||||
},
|
||||
fr: {
|
||||
fontsize: 'Taille de la police',
|
||||
fontsizes: {
|
||||
'x-small': 'Très petit',
|
||||
'small': 'Petit',
|
||||
'medium': 'Normal',
|
||||
'large': 'Grand',
|
||||
'x-large': 'Très grand',
|
||||
'custom': 'Taille personnalisée'
|
||||
},
|
||||
fontCustomSize: {
|
||||
title: 'Taille de police personnalisée',
|
||||
label: 'Taille de la police',
|
||||
value: '48px'
|
||||
}
|
||||
},
|
||||
de: {
|
||||
fontsize: 'Schriftgröße',
|
||||
fontsizes: {
|
||||
'x-small': 'Sehr klein',
|
||||
'small': 'Klein',
|
||||
'medium': 'Normal',
|
||||
'large': 'Groß',
|
||||
'x-large': 'Sehr groß',
|
||||
'custom': 'Benutzerdefiniert'
|
||||
},
|
||||
fontCustomSize: {
|
||||
title: 'Benutzerdefinierte Schriftgröße',
|
||||
label: 'Schriftgröße',
|
||||
value: '48px'
|
||||
}
|
||||
},
|
||||
nl: {
|
||||
fontsize: 'Lettergrootte',
|
||||
fontsizes: {
|
||||
'x-small': 'Extra klein',
|
||||
'small': 'Klein',
|
||||
'medium': 'Normaal',
|
||||
'large': 'Groot',
|
||||
'x-large': 'Extra groot',
|
||||
'custom': 'Tilpasset'
|
||||
}
|
||||
},
|
||||
tr: {
|
||||
fontsize: 'Yazı Boyutu',
|
||||
fontsizes: {
|
||||
'x-small': 'Çok Küçük',
|
||||
'small': 'Küçük',
|
||||
'medium': 'Normal',
|
||||
'large': 'Büyük',
|
||||
'x-large': 'Çok Büyük',
|
||||
'custom': 'Görenek'
|
||||
}
|
||||
},
|
||||
zh_tw: {
|
||||
fontsize: '字體大小',
|
||||
fontsizes: {
|
||||
'x-small': '最小',
|
||||
'small': '小',
|
||||
'medium': '中',
|
||||
'large': '大',
|
||||
'x-large': '最大',
|
||||
'custom': '自訂大小',
|
||||
},
|
||||
fontCustomSize: {
|
||||
title: '自訂義字體大小',
|
||||
label: '字體大小',
|
||||
value: '48px'
|
||||
}
|
||||
},
|
||||
pt_br: {
|
||||
fontsize: 'Tamanho da fonte',
|
||||
fontsizes: {
|
||||
'x-small': 'Extra pequeno',
|
||||
'small': 'Pequeno',
|
||||
'regular': 'Médio',
|
||||
'large': 'Grande',
|
||||
'x-large': 'Extra grande',
|
||||
'custom': 'Personalizado'
|
||||
},
|
||||
fontCustomSize: {
|
||||
title: 'Tamanho de Fonte Personalizado',
|
||||
label: 'Tamanho de Fonte',
|
||||
value: '48px'
|
||||
}
|
||||
},
|
||||
it: {
|
||||
fontsize: 'Dimensioni del testo',
|
||||
fontsizes: {
|
||||
'x-small': 'Molto piccolo',
|
||||
'small': 'piccolo',
|
||||
'regular': 'normale',
|
||||
'large': 'grande',
|
||||
'x-large': 'Molto grande',
|
||||
'custom': 'Personalizzato'
|
||||
},
|
||||
fontCustomSize: {
|
||||
title: 'Dimensioni del testo personalizzato',
|
||||
label: 'Dimensioni del testo',
|
||||
value: '48px'
|
||||
}
|
||||
},
|
||||
ko: {
|
||||
fontsize: '글꼴 크기',
|
||||
fontsizes: {
|
||||
'x-small': '아주 작게',
|
||||
'small': '작게',
|
||||
'medium': '보통',
|
||||
'large': '크게',
|
||||
'x-large': '아주 크게',
|
||||
'custom': '사용자 지정'
|
||||
},
|
||||
fontCustomSize: {
|
||||
title: '사용자 지정 글꼴 크기',
|
||||
label: '글꼴 크기',
|
||||
value: '48px'
|
||||
}
|
||||
},
|
||||
}
|
||||
});
|
||||
// jshint camelcase:true
|
||||
|
||||
var defaultOptions = {
|
||||
sizeList: [
|
||||
'x-small',
|
||||
'small',
|
||||
'medium',
|
||||
'large',
|
||||
'x-large'
|
||||
],
|
||||
allowCustomSize: true
|
||||
};
|
||||
|
||||
// Add dropdown with font sizes
|
||||
$.extend(true, $.trumbowyg, {
|
||||
plugins: {
|
||||
fontsize: {
|
||||
init: function (trumbowyg) {
|
||||
trumbowyg.o.plugins.fontsize = $.extend({},
|
||||
defaultOptions,
|
||||
trumbowyg.o.plugins.fontsize || {}
|
||||
);
|
||||
|
||||
trumbowyg.addBtnDef('fontsize', {
|
||||
dropdown: buildDropdown(trumbowyg)
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
function setFontSize(trumbowyg, size) {
|
||||
trumbowyg.$ed.focus();
|
||||
trumbowyg.saveRange();
|
||||
var text = trumbowyg.range.startContainer.parentElement;
|
||||
var selectedText = trumbowyg.getRangeText();
|
||||
if ($(text).html() === selectedText) {
|
||||
$(text).css('font-size', size);
|
||||
} else {
|
||||
trumbowyg.range.deleteContents();
|
||||
var html = '<span style="font-size: ' + size + ';">' + selectedText + '</span>';
|
||||
var node = $(html)[0];
|
||||
trumbowyg.range.insertNode(node);
|
||||
}
|
||||
trumbowyg.restoreRange();
|
||||
}
|
||||
|
||||
function buildDropdown(trumbowyg) {
|
||||
var dropdown = [];
|
||||
|
||||
$.each(trumbowyg.o.plugins.fontsize.sizeList, function (index, size) {
|
||||
trumbowyg.addBtnDef('fontsize_' + size, {
|
||||
text: '<span style="font-size: ' + size + ';">' + (trumbowyg.lang.fontsizes[size] || size) + '</span>',
|
||||
hasIcon: false,
|
||||
fn: function () {
|
||||
setFontSize(trumbowyg, size);
|
||||
}
|
||||
});
|
||||
dropdown.push('fontsize_' + size);
|
||||
});
|
||||
|
||||
if (trumbowyg.o.plugins.fontsize.allowCustomSize) {
|
||||
var customSizeButtonName = 'fontsize_custom';
|
||||
var customSizeBtnDef = {
|
||||
fn: function () {
|
||||
trumbowyg.openModalInsert(trumbowyg.lang.fontCustomSize.title,
|
||||
{
|
||||
size: {
|
||||
label: trumbowyg.lang.fontCustomSize.label,
|
||||
value: trumbowyg.lang.fontCustomSize.value
|
||||
}
|
||||
},
|
||||
function (form) {
|
||||
setFontSize(trumbowyg, form.size);
|
||||
return true;
|
||||
}
|
||||
);
|
||||
},
|
||||
text: '<span style="font-size: medium;">' + trumbowyg.lang.fontsizes.custom + '</span>',
|
||||
hasIcon: false
|
||||
};
|
||||
trumbowyg.addBtnDef(customSizeButtonName, customSizeBtnDef);
|
||||
dropdown.push(customSizeButtonName);
|
||||
}
|
||||
|
||||
return dropdown;
|
||||
}
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(e){"use strict";function t(t,l){t.$ed.focus(),t.saveRange();var a=t.range.startContainer.parentElement,o=t.getRangeText();if(e(a).html()===o)e(a).css("font-size",l);else{t.range.deleteContents();var s='<span style="font-size: '+l+';">'+o+"</span>",n=e(s)[0];t.range.insertNode(n)}t.restoreRange()}function l(l){var a=[];if(e.each(l.o.plugins.fontsize.sizeList,function(e,o){l.addBtnDef("fontsize_"+o,{text:'<span style="font-size: '+o+';">'+(l.lang.fontsizes[o]||o)+"</span>",hasIcon:!1,fn:function(){t(l,o)}}),a.push("fontsize_"+o)}),l.o.plugins.fontsize.allowCustomSize){var o="fontsize_custom",s={fn:function(){l.openModalInsert(l.lang.fontCustomSize.title,{size:{label:l.lang.fontCustomSize.label,value:l.lang.fontCustomSize.value}},function(e){return t(l,e.size),!0})},text:'<span style="font-size: medium;">'+l.lang.fontsizes.custom+"</span>",hasIcon:!1};l.addBtnDef(o,s),a.push(o)}return a}e.extend(!0,e.trumbowyg,{langs:{en:{fontsize:"Font size",fontsizes:{"x-small":"Extra small",small:"Small",medium:"Regular",large:"Large","x-large":"Extra large",custom:"Custom"},fontCustomSize:{title:"Custom Font Size",label:"Font Size",value:"48px"}},es:{fontsize:"Tamaño de Fuente",fontsizes:{"x-small":"Extra pequeña",small:"Pegueña",medium:"Regular",large:"Grande","x-large":"Extra Grande",custom:"Customizada"},fontCustomSize:{title:"Tamaño de Fuente Customizada",label:"Tamaño de Fuente",value:"48px"}},da:{fontsize:"Skriftstørrelse",fontsizes:{"x-small":"Ekstra lille",small:"Lille",medium:"Normal",large:"Stor","x-large":"Ekstra stor",custom:"Brugerdefineret"}},fr:{fontsize:"Taille de la police",fontsizes:{"x-small":"Très petit",small:"Petit",medium:"Normal",large:"Grand","x-large":"Très grand",custom:"Taille personnalisée"},fontCustomSize:{title:"Taille de police personnalisée",label:"Taille de la police",value:"48px"}},de:{fontsize:"Schriftgröße",fontsizes:{"x-small":"Sehr klein",small:"Klein",medium:"Normal",large:"Groß","x-large":"Sehr groß",custom:"Benutzerdefiniert"},fontCustomSize:{title:"Benutzerdefinierte Schriftgröße",label:"Schriftgröße",value:"48px"}},nl:{fontsize:"Lettergrootte",fontsizes:{"x-small":"Extra klein",small:"Klein",medium:"Normaal",large:"Groot","x-large":"Extra groot",custom:"Tilpasset"}},tr:{fontsize:"Yazı Boyutu",fontsizes:{"x-small":"Çok Küçük",small:"Küçük",medium:"Normal",large:"Büyük","x-large":"Çok Büyük",custom:"Görenek"}},zh_tw:{fontsize:"字體大小",fontsizes:{"x-small":"最小",small:"小",medium:"中",large:"大","x-large":"最大",custom:"自訂大小"},fontCustomSize:{title:"自訂義字體大小",label:"字體大小",value:"48px"}},pt_br:{fontsize:"Tamanho da fonte",fontsizes:{"x-small":"Extra pequeno",small:"Pequeno",regular:"Médio",large:"Grande","x-large":"Extra grande",custom:"Personalizado"},fontCustomSize:{title:"Tamanho de Fonte Personalizado",label:"Tamanho de Fonte",value:"48px"}},it:{fontsize:"Dimensioni del testo",fontsizes:{"x-small":"Molto piccolo",small:"piccolo",regular:"normale",large:"grande","x-large":"Molto grande",custom:"Personalizzato"},fontCustomSize:{title:"Dimensioni del testo personalizzato",label:"Dimensioni del testo",value:"48px"}},ko:{fontsize:"글꼴 크기",fontsizes:{"x-small":"아주 작게",small:"작게",medium:"보통",large:"크게","x-large":"아주 크게",custom:"사용자 지정"},fontCustomSize:{title:"사용자 지정 글꼴 크기",label:"글꼴 크기",value:"48px"}}}});var a={sizeList:["x-small","small","medium","large","x-large"],allowCustomSize:!0};e.extend(!0,e.trumbowyg,{plugins:{fontsize:{init:function(t){t.o.plugins.fontsize=e.extend({},a,t.o.plugins.fontsize||{}),t.addBtnDef("fontsize",{dropdown:l(t)})}}}})}(jQuery);
|
|
@ -1,182 +0,0 @@
|
|||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
en: {
|
||||
giphy: 'Insert GIF',
|
||||
},
|
||||
fr: {
|
||||
giphy: 'Insérer un GIF',
|
||||
},
|
||||
// jshint camelcase:true
|
||||
}
|
||||
});
|
||||
|
||||
var giphyLogo = '<svg viewBox="0 0 231 53" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2"><path d="M48.32 22.386c0-1.388-.252-1.892-1.767-1.85-3.448.126-6.855.042-10.303.042H25.443c-.927 0-1.346.211-1.305 1.22.085 2.86.085 5.72.043 8.58 0 .883.252 1.169 1.169 1.135 2.018-.084 3.995-.042 6.014 0 1.64 0 4.164-.546 4.752.252.841 1.169.421 3.364.337 5.089-.043.547-.547 1.304-1.094 1.598-2.692 1.556-5.678 2.018-8.747 1.892-5.342-.21-9.336-2.439-11.481-7.527-1.388-3.364-1.725-6.855-1.01-10.43 1.01-4.963 3.407-8.747 8.58-10.051 5.215-1.305 10.136-.547 14.467 2.817 1.219.967 1.798.715 2.691-.294 1.514-1.724 3.154-3.322 4.753-4.963 1.892-1.933 1.892-1.892-.169-3.7C38.429.813 31.238-.617 23.5.224 12.818 1.393 5.248 6.658 1.59 17.045-.177 22.008-.428 27.097.623 32.227c1.682 7.914 5.551 14.12 13.289 17.368 6.898 2.901 14.046 3.448 21.321 1.598 4.331-1.093 8.411-2.608 11.354-6.223 1.136-1.388 1.725-2.902 1.682-4.71l.043-17.873.008-.001zm125.153 3.784l.042-23.046c0-1.136-.168-1.598-1.472-1.556a238.02 238.02 0 0 1-11.017 0c-1.136-.042-1.439.337-1.439 1.439v15.645c0 1.345-.421 1.556-1.641 1.556a422.563 422.563 0 0 0-14.593 0c-1.262.042-1.472-.421-1.439-1.556l.043-15.813c0-.926-.169-1.304-1.17-1.262h-11.513c-.927 0-1.304.169-1.304 1.22v46.764c0 .967.252 1.262 1.219 1.262h11.512c1.169.042 1.262-.462 1.262-1.388l-.042-15.644c0-1.053.251-1.346 1.304-1.346h15.14c1.22 0 1.388.421 1.388 1.472l-.042 15.477c0 1.093.21 1.472 1.388 1.439 3.615-.085 7.233-.085 10.807 0 1.304.042 1.598-.337 1.598-1.598l-.042-23.047.011-.018zM106.565 1.654c-8.369-.211-16.728-.126-25.065-.211-1.346 0-1.767.337-1.767 1.724l.043 23.004v23.215c0 1.009.168 1.439 1.304 1.387a271.22 271.22 0 0 1 11.691 0c1.094 0 1.346-.336 1.346-1.345l-.042-10.64c0-1.052.294-1.345 1.345-1.345 3.322.042 6.645.085 9.967-.085 4.407-.21 8.621-1.219 12.111-4.12 5.551-4.584 7.613-12.701 5.131-20.061-2.313-6.561-8.747-11.354-16.064-11.522v-.001zm-3.028 24.013c-2.818.042-5.594-.043-8.411.042-1.169.042-1.439-.378-1.345-1.439.084-1.556 0-3.069 0-4.626v-5.131c-.043-.841.251-1.094 1.052-1.052 2.986.042 5.929-.085 8.915.042 3.616.126 5.887 2.692 5.846 6.266-.126 3.658-2.313 5.846-6.055 5.887l-.002.011zM229.699 1.569c-4.458 0-8.915-.042-13.415.043-.629 0-1.472.503-1.85 1.052a505.695 505.695 0 0 0-8.957 14.214c-.884 1.472-1.22 1.169-1.977-.084l-8.496-14.089c-.503-.841-1.052-1.136-2.018-1.136l-13.078.043c-.462 0-.967.125-1.439.21.21.378.378.799.629 1.169l17.412 27.167c.462.715.715 1.682.757 2.524v16.653c0 1.052.168 1.514 1.388 1.472 3.784-.084 7.57-.084 11.354 0 1.136.043 1.304-.377 1.304-1.387l-.042-8.58c0-2.734-.084-5.51.042-8.243.043-.926.337-1.933.841-2.649l18.167-27.041c.252-.337.337-.758.547-1.17a3.636 3.636 0 0 0-1.169-.168zM70.104 2.661c0-1.009-.294-1.219-1.262-1.219H57.69c-1.262-.043-1.472.377-1.472 1.513l.042 23.004v23.34c0 1.053.126 1.514 1.346 1.473 3.7-.085 7.444-.043 11.152 0 .966 0 1.387-.085 1.387-1.262l-.042-46.857.001.008z" fill="currentColor" fill-rule="nonzero"/></svg>';
|
||||
|
||||
var CANCEL_EVENT = 'tbwcancel';
|
||||
|
||||
// Throttle helper
|
||||
function trumbowygThrottle(callback, delay) {
|
||||
var last;
|
||||
var timer;
|
||||
|
||||
return function () {
|
||||
var context = this;
|
||||
var now = +new Date();
|
||||
var args = arguments;
|
||||
|
||||
if (last && now < last + delay) {
|
||||
clearTimeout(timer);
|
||||
timer = setTimeout(function () {
|
||||
last = now;
|
||||
callback.apply(context, args);
|
||||
}, delay);
|
||||
} else {
|
||||
last = now;
|
||||
callback.apply(context, args);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
// Fills modal with response gifs
|
||||
function renderGifs(response, $giphyModal, trumbowyg, mustEmpty) {
|
||||
var width = ($giphyModal.width() - 20) / 3;
|
||||
|
||||
var html = response.data
|
||||
.filter(function (gifData) {
|
||||
return gifData.images.downsized.url !== '';
|
||||
})
|
||||
.map(function (gifData) {
|
||||
var image = gifData.images.downsized,
|
||||
imageRatio = image.height / image.width;
|
||||
|
||||
return '<div class="img-container"><img src=' + image.url + ' width="' + width + '" height="' + imageRatio * width + '" loading="lazy" onload="this.classList.add(\'tbw-loaded\')"/></div>';
|
||||
})
|
||||
.join('')
|
||||
;
|
||||
|
||||
if (mustEmpty === true) {
|
||||
if (html.length === 0) {
|
||||
if ($('.' + trumbowyg.o.prefix + 'giphy-no-result', $giphyModal).length > 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
html = '<img class="' + trumbowyg.o.prefix + 'giphy-no-result" src="' + trumbowyg.o.plugins.giphy.noResultGifUrl + '"/>';
|
||||
}
|
||||
|
||||
$giphyModal.empty();
|
||||
}
|
||||
$giphyModal.append(html);
|
||||
$('img', $giphyModal).on('click', function () {
|
||||
trumbowyg.restoreRange();
|
||||
trumbowyg.execCmd('insertImage', $(this).attr('src'), false, true);
|
||||
$('img', $giphyModal).off();
|
||||
trumbowyg.closeModal();
|
||||
});
|
||||
}
|
||||
|
||||
var defaultOptions = {
|
||||
rating: 'g',
|
||||
apiKey: null,
|
||||
throttleDelay: 300,
|
||||
noResultGifUrl: 'https://media.giphy.com/media/2Faz9FbRzmwxY0pZS/giphy.gif'
|
||||
};
|
||||
|
||||
// Add dropdown with font sizes
|
||||
$.extend(true, $.trumbowyg, {
|
||||
plugins: {
|
||||
giphy: {
|
||||
init: function (trumbowyg) {
|
||||
trumbowyg.o.plugins.giphy = $.extend({},
|
||||
defaultOptions,
|
||||
trumbowyg.o.plugins.giphy || {}
|
||||
);
|
||||
|
||||
trumbowyg.addBtnDef('giphy', {
|
||||
fn: function() {
|
||||
if (trumbowyg.o.plugins.giphy.apiKey === null) {
|
||||
throw new Error('You must set a Giphy API Key');
|
||||
}
|
||||
|
||||
var BASE_URL = 'https://api.giphy.com/v1/gifs/search?api_key=' + trumbowyg.o.plugins.giphy.apiKey + '&rating=' + trumbowyg.o.plugins.giphy.rating,
|
||||
DEFAULT_URL = BASE_URL.replace('/search', '/trending');
|
||||
var previousAjaxCall = {abort: function () {}};
|
||||
var prefix = trumbowyg.o.prefix;
|
||||
|
||||
// Create and open the modal
|
||||
var searchInput = '<input name="" class="' + prefix + 'giphy-search" placeholder="Search a GIF" autofocus="autofocus">',
|
||||
closeButton = '<button class="' + prefix + 'giphy-close" title="' + trumbowyg.lang.close + '"><svg><use xlink:href="' + trumbowyg.svgPath + '#' + prefix + 'close"/></svg></button>',
|
||||
poweredByGiphy = '<div class="' + prefix + 'powered-by-giphy"><span>Powered by</span>' + giphyLogo + '</div>',
|
||||
giphyModalHtml = searchInput + closeButton + poweredByGiphy + '<div class="' + prefix + 'giphy-modal-scroll"><div class="' + prefix + 'giphy-modal"></div></div>';
|
||||
|
||||
trumbowyg
|
||||
.openModal(null, giphyModalHtml, false)
|
||||
.one(CANCEL_EVENT, function () {
|
||||
try {
|
||||
previousAjaxCall.abort();
|
||||
} catch (e) {}
|
||||
|
||||
trumbowyg.closeModal();
|
||||
});
|
||||
|
||||
var $giphyInput = $('.' + prefix + 'giphy-search'),
|
||||
$giphyClose = $('.' + prefix + 'giphy-close'),
|
||||
$giphyModal = $('.' + prefix + 'giphy-modal');
|
||||
|
||||
var ajaxError = function () {
|
||||
if (!navigator.onLine && !$('.' + prefix + 'giphy-offline', $giphyModal).length) {
|
||||
$giphyModal.empty();
|
||||
$giphyModal.append('<p class="' + prefix + 'giphy-offline">You are offline</p>');
|
||||
}
|
||||
};
|
||||
|
||||
// Load trending gifs as default
|
||||
$.ajax({
|
||||
url: DEFAULT_URL,
|
||||
dataType: 'json',
|
||||
|
||||
success: function(response) {
|
||||
renderGifs(response, $giphyModal, trumbowyg, true);
|
||||
},
|
||||
error: ajaxError
|
||||
});
|
||||
|
||||
var searchGifsOnInput = function () {
|
||||
var query = $giphyInput.val();
|
||||
|
||||
if (query.length === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
previousAjaxCall.abort();
|
||||
} catch (e) {}
|
||||
|
||||
previousAjaxCall = $.ajax({
|
||||
url: BASE_URL + '&q=' + encodeURIComponent(query),
|
||||
dataType: 'json',
|
||||
|
||||
success: function(response) {
|
||||
renderGifs(response, $giphyModal, trumbowyg, true);
|
||||
},
|
||||
error: ajaxError
|
||||
});
|
||||
};
|
||||
var throttledInputRequest = trumbowygThrottle(searchGifsOnInput, trumbowyg.o.plugins.giphy.throttleDelay);
|
||||
|
||||
$giphyInput.on('input', throttledInputRequest);
|
||||
$giphyInput.focus();
|
||||
|
||||
$giphyClose.one('click', function() {
|
||||
$giphyModal.trigger(CANCEL_EVENT);
|
||||
});
|
||||
},
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
})(jQuery);
|
|
@ -1,111 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Default stylesheet for Trumbowyg editor plugin
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.trumbowyg-giphy-button svg {
|
||||
transform: scale(1.22);
|
||||
}
|
||||
|
||||
.trumbowyg-giphy-search {
|
||||
display: block;
|
||||
width: 80%;
|
||||
margin: 5%;
|
||||
padding-left: 10px;
|
||||
padding-right: 150px;
|
||||
}
|
||||
|
||||
.trumbowyg-giphy-close {
|
||||
position: absolute;
|
||||
top: calc(5% + 8px);
|
||||
right: calc(5% - 2px);
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
background: none;
|
||||
border: 1px solid transparent;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
outline: none;
|
||||
background: #ecf0f1;
|
||||
}
|
||||
&:focus {
|
||||
border-color: rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
}
|
||||
|
||||
.trumbowyg-powered-by-giphy {
|
||||
position: absolute;
|
||||
top: calc(5% + 12px);
|
||||
right: calc(15% + 10px);
|
||||
pointer-events: none;
|
||||
user-select: none;
|
||||
|
||||
span {
|
||||
text-transform: uppercase;
|
||||
font-weight: bold;
|
||||
font-size: 10px;
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
svg {
|
||||
width: 66px;
|
||||
height: 15px;
|
||||
vertical-align: bottom;
|
||||
margin-left: 6px;
|
||||
opacity: 0.45;
|
||||
}
|
||||
}
|
||||
|
||||
.trumbowyg-giphy-modal-scroll {
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
height: 240px;
|
||||
}
|
||||
|
||||
.trumbowyg-giphy-modal {
|
||||
padding: 0 5%;
|
||||
columns: 3;
|
||||
column-gap: 10px;
|
||||
|
||||
.trumbowyg-giphy-no-result {
|
||||
width: 250%;
|
||||
margin: 13% 0 0 29%;
|
||||
}
|
||||
|
||||
.trumbowyg-giphy-offline {
|
||||
font-size: 18px;
|
||||
width: 305%;
|
||||
height: 600px;
|
||||
margin-top: 95px;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
.trumbowyg-giphy-modal .img-container {
|
||||
width: 100%;
|
||||
margin-bottom: 10px;
|
||||
background-color: #ecf0f1;
|
||||
|
||||
img {
|
||||
width: 100%;
|
||||
cursor: pointer;
|
||||
opacity: 0;
|
||||
transition: opacity 150ms;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
border: #2ecc71 solid 3px;
|
||||
}
|
||||
}
|
||||
|
||||
img.tbw-loaded {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
|
@ -1,90 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Trumbowyg plugin stylesheet
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.trumbowyg-giphy-button svg {
|
||||
transform: scale(1.22); }
|
||||
|
||||
.trumbowyg-giphy-search {
|
||||
display: block;
|
||||
width: 80%;
|
||||
margin: 5%;
|
||||
padding-left: 10px;
|
||||
padding-right: 150px; }
|
||||
|
||||
.trumbowyg-giphy-close {
|
||||
position: absolute;
|
||||
top: calc(5% + 8px);
|
||||
right: calc(5% - 2px);
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
background: none;
|
||||
border: 1px solid transparent; }
|
||||
.trumbowyg-giphy-close:hover, .trumbowyg-giphy-close:focus {
|
||||
outline: none;
|
||||
background: #ecf0f1; }
|
||||
.trumbowyg-giphy-close:focus {
|
||||
border-color: rgba(0, 0, 0, 0.3); }
|
||||
|
||||
.trumbowyg-powered-by-giphy {
|
||||
position: absolute;
|
||||
top: calc(5% + 12px);
|
||||
right: calc(15% + 10px);
|
||||
pointer-events: none;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none; }
|
||||
.trumbowyg-powered-by-giphy span {
|
||||
text-transform: uppercase;
|
||||
font-weight: bold;
|
||||
font-size: 10px;
|
||||
opacity: 0.6; }
|
||||
.trumbowyg-powered-by-giphy svg {
|
||||
width: 66px;
|
||||
height: 15px;
|
||||
vertical-align: bottom;
|
||||
margin-left: 6px;
|
||||
opacity: 0.45; }
|
||||
|
||||
.trumbowyg-giphy-modal-scroll {
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
height: 240px; }
|
||||
|
||||
.trumbowyg-giphy-modal {
|
||||
padding: 0 5%;
|
||||
-moz-columns: 3;
|
||||
columns: 3;
|
||||
-moz-column-gap: 10px;
|
||||
column-gap: 10px; }
|
||||
.trumbowyg-giphy-modal .trumbowyg-giphy-no-result {
|
||||
width: 250%;
|
||||
margin: 13% 0 0 29%; }
|
||||
.trumbowyg-giphy-modal .trumbowyg-giphy-offline {
|
||||
font-size: 18px;
|
||||
width: 305%;
|
||||
height: 600px;
|
||||
margin-top: 95px;
|
||||
text-align: center; }
|
||||
|
||||
.trumbowyg-giphy-modal .img-container {
|
||||
width: 100%;
|
||||
margin-bottom: 10px;
|
||||
background-color: #ecf0f1; }
|
||||
.trumbowyg-giphy-modal .img-container img {
|
||||
width: 100%;
|
||||
cursor: pointer;
|
||||
opacity: 0;
|
||||
transition: opacity 150ms; }
|
||||
.trumbowyg-giphy-modal .img-container img:hover, .trumbowyg-giphy-modal .img-container img:focus {
|
||||
border: #2ecc71 solid 3px; }
|
||||
.trumbowyg-giphy-modal .img-container img.tbw-loaded {
|
||||
opacity: 1; }
|
|
@ -1,2 +0,0 @@
|
|||
/** Trumbowyg v2.21.0 - A lightweight WYSIWYG editor - alex-d.github.io/Trumbowyg - License MIT - Author : Alexandre Demode (Alex-D) / alex-d.fr */
|
||||
.trumbowyg-giphy-button svg{transform:scale(1.22)}.trumbowyg-giphy-search{display:block;width:80%;margin:5%;padding-left:10px;padding-right:150px}.trumbowyg-giphy-close{position:absolute;top:calc(5% + 8px);right:calc(5% - 2px);width:30px;height:30px;background:0 0;border:1px solid transparent}.trumbowyg-giphy-close:focus,.trumbowyg-giphy-close:hover{outline:0;background:#ecf0f1}.trumbowyg-giphy-close:focus{border-color:rgba(0,0,0,.3)}.trumbowyg-powered-by-giphy{position:absolute;top:calc(5% + 12px);right:calc(15% + 10px);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.trumbowyg-powered-by-giphy span{text-transform:uppercase;font-weight:700;font-size:10px;opacity:.6}.trumbowyg-powered-by-giphy svg{width:66px;height:15px;vertical-align:bottom;margin-left:6px;opacity:.45}.trumbowyg-giphy-modal-scroll{overflow:auto;overflow-x:hidden;height:240px}.trumbowyg-giphy-modal{padding:0 5%;-moz-columns:3;columns:3;-moz-column-gap:10px;column-gap:10px}.trumbowyg-giphy-modal .trumbowyg-giphy-no-result{width:250%;margin:13% 0 0 29%}.trumbowyg-giphy-modal .trumbowyg-giphy-offline{font-size:18px;width:305%;height:600px;margin-top:95px;text-align:center}.trumbowyg-giphy-modal .img-container{width:100%;margin-bottom:10px;background-color:#ecf0f1}.trumbowyg-giphy-modal .img-container img{width:100%;cursor:pointer;opacity:0;transition:opacity 150ms}.trumbowyg-giphy-modal .img-container img:focus,.trumbowyg-giphy-modal .img-container img:hover{border:3px solid #2ecc71}.trumbowyg-giphy-modal .img-container img.tbw-loaded{opacity:1}
|
|
@ -1,90 +0,0 @@
|
|||
/* globals Prism */
|
||||
(function ($, Prism) {
|
||||
'use strict';
|
||||
|
||||
// My plugin default options
|
||||
var defaultOptions = {};
|
||||
|
||||
function highlightIt(text, language) {
|
||||
return [
|
||||
'<pre class="language-' + language + '">',
|
||||
'<code class="language-' + language + '">' + Prism.highlight(text, Prism.languages[language]) + '</code>',
|
||||
'</pre>',
|
||||
].join('');
|
||||
}
|
||||
|
||||
// If my plugin is a button
|
||||
function buildButtonDef(trumbowyg) {
|
||||
return {
|
||||
fn: function () {
|
||||
var $modal = trumbowyg.openModal('Code', [
|
||||
'<div class="' + trumbowyg.o.prefix + 'highlight-form-group">',
|
||||
' <select class="' + trumbowyg.o.prefix + 'highlight-form-control language">',
|
||||
(function () {
|
||||
var options = '';
|
||||
|
||||
for (var lang in Prism.languages) {
|
||||
if (Prism.languages.hasOwnProperty(lang)) {
|
||||
options += '<option value="' + lang + '">' + lang + '</option>';
|
||||
}
|
||||
}
|
||||
|
||||
return options;
|
||||
})(),
|
||||
' </select>',
|
||||
'</div>',
|
||||
'<div class="' + trumbowyg.o.prefix + 'highlight-form-group">',
|
||||
' <textarea class="' + trumbowyg.o.prefix + 'highlight-form-control code"></textarea>',
|
||||
'</div>',
|
||||
].join('\n')),
|
||||
$language = $modal.find('.language'),
|
||||
$code = $modal.find('.code');
|
||||
|
||||
// Listen clicks on modal box buttons
|
||||
$modal.on('tbwconfirm', function () {
|
||||
trumbowyg.restoreRange();
|
||||
trumbowyg.execCmd('insertHTML', highlightIt($code.val(), $language.val()));
|
||||
trumbowyg.execCmd('insertHTML', '<p><br></p>');
|
||||
|
||||
trumbowyg.closeModal();
|
||||
});
|
||||
|
||||
$modal.on('tbwcancel', function () {
|
||||
trumbowyg.closeModal();
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
// Add some translations
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
en: {
|
||||
highlight: 'Code syntax highlight'
|
||||
},
|
||||
pt_br: {
|
||||
highlight: 'Realçar sintaxe de código'
|
||||
},
|
||||
ko: {
|
||||
highlight: '코드 문법 하이라이트'
|
||||
},
|
||||
// jshint camelcase:true
|
||||
},
|
||||
// Add our plugin to Trumbowyg registered plugins
|
||||
plugins: {
|
||||
highlight: {
|
||||
init: function (trumbowyg) {
|
||||
// Fill current Trumbowyg instance with my plugin default options
|
||||
trumbowyg.o.plugins.highlight = $.extend(true, {},
|
||||
defaultOptions,
|
||||
trumbowyg.o.plugins.highlight || {}
|
||||
);
|
||||
|
||||
// If my plugin is a button
|
||||
trumbowyg.addBtnDef('highlight', buildButtonDef(trumbowyg));
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
})(jQuery, Prism);
|
|
@ -1 +0,0 @@
|
|||
!function(i,n){"use strict";function e(i,e){return['<pre class="language-'+e+'">','<code class="language-'+e+'">'+n.highlight(i,n.languages[e])+"</code>","</pre>"].join("")}function o(i){return{fn:function(){var o=i.openModal("Code",['<div class="'+i.o.prefix+'highlight-form-group">',' <select class="'+i.o.prefix+'highlight-form-control language">',function(){var i="";for(var e in n.languages)n.languages.hasOwnProperty(e)&&(i+='<option value="'+e+'">'+e+"</option>");return i}()," </select>","</div>",'<div class="'+i.o.prefix+'highlight-form-group">',' <textarea class="'+i.o.prefix+'highlight-form-control code"></textarea>',"</div>"].join("\n")),t=o.find(".language"),g=o.find(".code");o.on("tbwconfirm",function(){i.restoreRange(),i.execCmd("insertHTML",e(g.val(),t.val())),i.execCmd("insertHTML","<p><br></p>"),i.closeModal()}),o.on("tbwcancel",function(){i.closeModal()})}}}var t={};i.extend(!0,i.trumbowyg,{langs:{en:{highlight:"Code syntax highlight"},pt_br:{highlight:"Realçar sintaxe de código"},ko:{highlight:"코드 문법 하이라이트"}},plugins:{highlight:{init:function(n){n.o.plugins.highlight=i.extend(!0,{},t,n.o.plugins.highlight||{}),n.addBtnDef("highlight",o(n))}}}})}(jQuery,Prism);
|
|
@ -1,25 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Default stylesheet for Trumbowyg editor plugin
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.trumbowyg-highlight-form-group {
|
||||
margin: 15px 10px;
|
||||
|
||||
.trumbowyg-highlight-form-control {
|
||||
width: 100%;
|
||||
border: 1px solid #DEDEDE;
|
||||
font-size: 14px;
|
||||
padding: 7px;
|
||||
|
||||
&.code {
|
||||
height: 200px;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Trumbowyg plugin stylesheet
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.trumbowyg-highlight-form-group {
|
||||
margin: 15px 10px; }
|
||||
.trumbowyg-highlight-form-group .trumbowyg-highlight-form-control {
|
||||
width: 100%;
|
||||
border: 1px solid #DEDEDE;
|
||||
font-size: 14px;
|
||||
padding: 7px; }
|
||||
.trumbowyg-highlight-form-group .trumbowyg-highlight-form-control.code {
|
||||
height: 200px; }
|
|
@ -1,2 +0,0 @@
|
|||
/** Trumbowyg v2.21.0 - A lightweight WYSIWYG editor - alex-d.github.io/Trumbowyg - License MIT - Author : Alexandre Demode (Alex-D) / alex-d.fr */
|
||||
.trumbowyg-highlight-form-group{margin:15px 10px}.trumbowyg-highlight-form-group .trumbowyg-highlight-form-control{width:100%;border:1px solid #DEDEDE;font-size:14px;padding:7px}.trumbowyg-highlight-form-group .trumbowyg-highlight-form-control.code{height:200px}
|
|
@ -1,216 +0,0 @@
|
|||
/*/* ===========================================================
|
||||
* trumbowyg.history.js v1.0
|
||||
* history plugin for Trumbowyg
|
||||
* http://alex-d.github.com/Trumbowyg
|
||||
* ===========================================================
|
||||
* Author : Sven Dunemann [dunemann@forelabs.eu]
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
'use strict';
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
de: {
|
||||
history: {
|
||||
redo: 'Wiederholen',
|
||||
undo: 'Rückgängig'
|
||||
}
|
||||
},
|
||||
en: {
|
||||
history: {
|
||||
redo: 'Redo',
|
||||
undo: 'Undo'
|
||||
}
|
||||
},
|
||||
da: {
|
||||
history: {
|
||||
redo: 'Annuller fortryd',
|
||||
undo: 'Fortryd'
|
||||
}
|
||||
},
|
||||
fr: {
|
||||
history: {
|
||||
redo: 'Annuler',
|
||||
undo: 'Rétablir'
|
||||
}
|
||||
},
|
||||
zh_tw: {
|
||||
history: {
|
||||
redo: '重做',
|
||||
undo: '復原'
|
||||
}
|
||||
},
|
||||
pt_br: {
|
||||
history: {
|
||||
redo: 'Refazer',
|
||||
undo: 'Desfazer'
|
||||
}
|
||||
},
|
||||
ko: {
|
||||
history: {
|
||||
redo: '다시 실행',
|
||||
undo: '되돌리기'
|
||||
}
|
||||
},
|
||||
// jshint camelcase:true
|
||||
},
|
||||
plugins: {
|
||||
history: {
|
||||
init: function (t) {
|
||||
t.o.plugins.history = $.extend(true, {
|
||||
_stack: [],
|
||||
_index: -1,
|
||||
_focusEl: undefined
|
||||
}, t.o.plugins.history || {});
|
||||
|
||||
var btnBuildDefRedo = {
|
||||
title: t.lang.history.redo,
|
||||
ico: 'redo',
|
||||
key: 'Y',
|
||||
fn: function () {
|
||||
if (t.o.plugins.history._index < t.o.plugins.history._stack.length - 1) {
|
||||
t.o.plugins.history._index += 1;
|
||||
var index = t.o.plugins.history._index;
|
||||
var newState = t.o.plugins.history._stack[index];
|
||||
|
||||
t.execCmd('html', newState);
|
||||
// because of some semantic optimisations we have to save the state back
|
||||
// to history
|
||||
t.o.plugins.history._stack[index] = t.$ed.html();
|
||||
|
||||
carretToEnd();
|
||||
toggleButtonStates();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var btnBuildDefUndo = {
|
||||
title: t.lang.history.undo,
|
||||
ico: 'undo',
|
||||
key: 'Z',
|
||||
fn: function () {
|
||||
if (t.o.plugins.history._index > 0) {
|
||||
t.o.plugins.history._index -= 1;
|
||||
var index = t.o.plugins.history._index,
|
||||
newState = t.o.plugins.history._stack[index];
|
||||
|
||||
t.execCmd('html', newState);
|
||||
// because of some semantic optimisations we have to save the state back
|
||||
// to history
|
||||
t.o.plugins.history._stack[index] = t.$ed.html();
|
||||
|
||||
carretToEnd();
|
||||
toggleButtonStates();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var pushToHistory = function () {
|
||||
var index = t.o.plugins.history._index,
|
||||
stack = t.o.plugins.history._stack,
|
||||
latestState = stack.slice(-1)[0] || '<p></p>',
|
||||
prevState = stack[index],
|
||||
newState = t.$ed.html(),
|
||||
focusEl = t.doc.getSelection().focusNode,
|
||||
focusElText = '',
|
||||
latestStateTagsList,
|
||||
newStateTagsList,
|
||||
prevFocusEl = t.o.plugins.history._focusEl;
|
||||
|
||||
latestStateTagsList = $('<div>' + latestState + '</div>').find('*').map(function () {
|
||||
return this.localName;
|
||||
});
|
||||
newStateTagsList = $('<div>' + newState + '</div>').find('*').map(function () {
|
||||
return this.localName;
|
||||
});
|
||||
if (focusEl) {
|
||||
t.o.plugins.history._focusEl = focusEl;
|
||||
focusElText = focusEl.outerHTML || focusEl.textContent;
|
||||
}
|
||||
|
||||
if (newState !== prevState) {
|
||||
// a new stack entry is defined when current insert ends on a whitespace character
|
||||
// or count of node elements has been changed
|
||||
// or focused element differs from previous one
|
||||
if (focusElText.slice(-1).match(/\s/) ||
|
||||
!arraysAreIdentical(latestStateTagsList, newStateTagsList) ||
|
||||
t.o.plugins.history._index <= 0 || focusEl !== prevFocusEl)
|
||||
{
|
||||
t.o.plugins.history._index += 1;
|
||||
// remove newer entries in history when something new was added
|
||||
// because timeline was changes with interaction
|
||||
t.o.plugins.history._stack = stack.slice(
|
||||
0, t.o.plugins.history._index
|
||||
);
|
||||
// now add new state to modified history
|
||||
t.o.plugins.history._stack.push(newState);
|
||||
} else {
|
||||
// modify last stack entry
|
||||
t.o.plugins.history._stack[index] = newState;
|
||||
}
|
||||
|
||||
toggleButtonStates();
|
||||
}
|
||||
};
|
||||
|
||||
var toggleButtonStates = function () {
|
||||
var index = t.o.plugins.history._index,
|
||||
stackSize = t.o.plugins.history._stack.length,
|
||||
undoState = (index > 0),
|
||||
redoState = (stackSize !== 0 && index !== stackSize - 1);
|
||||
|
||||
toggleButtonState('historyUndo', undoState);
|
||||
toggleButtonState('historyRedo', redoState);
|
||||
};
|
||||
|
||||
var toggleButtonState = function (btn, enable) {
|
||||
var button = t.$box.find('.trumbowyg-' + btn + '-button');
|
||||
|
||||
if (enable) {
|
||||
button.removeClass('trumbowyg-disable');
|
||||
} else if (!button.hasClass('trumbowyg-disable')) {
|
||||
button.addClass('trumbowyg-disable');
|
||||
}
|
||||
};
|
||||
|
||||
var arraysAreIdentical = function (a, b) {
|
||||
if (a === b) {
|
||||
return true;
|
||||
}
|
||||
if (a == null || b == null) {
|
||||
return false;
|
||||
}
|
||||
if (a.length !== b.length) {
|
||||
return false;
|
||||
}
|
||||
|
||||
for (var i = 0; i < a.length; i += 1) {
|
||||
if (a[i] !== b[i]) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
||||
var carretToEnd = function () {
|
||||
var node = t.doc.getSelection().focusNode,
|
||||
range = t.doc.createRange();
|
||||
|
||||
if (node.childNodes.length > 0) {
|
||||
range.setStartAfter(node.childNodes[node.childNodes.length - 1]);
|
||||
range.setEndAfter(node.childNodes[node.childNodes.length - 1]);
|
||||
t.doc.getSelection().removeAllRanges();
|
||||
t.doc.getSelection().addRange(range);
|
||||
}
|
||||
};
|
||||
|
||||
t.$c.on('tbwinit tbwchange', pushToHistory);
|
||||
|
||||
t.addBtnDef('historyRedo', btnBuildDefRedo);
|
||||
t.addBtnDef('historyUndo', btnBuildDefUndo);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(o){"use strict";o.extend(!0,o.trumbowyg,{langs:{de:{history:{redo:"Wiederholen",undo:"Rückgängig"}},en:{history:{redo:"Redo",undo:"Undo"}},da:{history:{redo:"Annuller fortryd",undo:"Fortryd"}},fr:{history:{redo:"Annuler",undo:"Rétablir"}},zh_tw:{history:{redo:"重做",undo:"復原"}},pt_br:{history:{redo:"Refazer",undo:"Desfazer"}},ko:{history:{redo:"다시 실행",undo:"되돌리기"}}},plugins:{history:{init:function(i){i.o.plugins.history=o.extend(!0,{_stack:[],_index:-1,_focusEl:void 0},i.o.plugins.history||{});var t={title:i.lang.history.redo,ico:"redo",key:"Y",fn:function(){if(i.o.plugins.history._index<i.o.plugins.history._stack.length-1){i.o.plugins.history._index+=1;var o=i.o.plugins.history._index,t=i.o.plugins.history._stack[o];i.execCmd("html",t),i.o.plugins.history._stack[o]=i.$ed.html(),l(),s()}}},n={title:i.lang.history.undo,ico:"undo",key:"Z",fn:function(){if(i.o.plugins.history._index>0){i.o.plugins.history._index-=1;var o=i.o.plugins.history._index,t=i.o.plugins.history._stack[o];i.execCmd("html",t),i.o.plugins.history._stack[o]=i.$ed.html(),l(),s()}}},e=function(){var t,n,e=i.o.plugins.history._index,r=i.o.plugins.history._stack,l=r.slice(-1)[0]||"<p></p>",u=r[e],h=i.$ed.html(),c=i.doc.getSelection().focusNode,g="",a=i.o.plugins.history._focusEl;t=o("<div>"+l+"</div>").find("*").map(function(){return this.localName}),n=o("<div>"+h+"</div>").find("*").map(function(){return this.localName}),c&&(i.o.plugins.history._focusEl=c,g=c.outerHTML||c.textContent),h!==u&&(g.slice(-1).match(/\s/)||!d(t,n)||i.o.plugins.history._index<=0||c!==a?(i.o.plugins.history._index+=1,i.o.plugins.history._stack=r.slice(0,i.o.plugins.history._index),i.o.plugins.history._stack.push(h)):i.o.plugins.history._stack[e]=h,s())},s=function(){var o=i.o.plugins.history._index,t=i.o.plugins.history._stack.length,n=o>0,e=0!==t&&o!==t-1;r("historyUndo",n),r("historyRedo",e)},r=function(o,t){var n=i.$box.find(".trumbowyg-"+o+"-button");t?n.removeClass("trumbowyg-disable"):n.hasClass("trumbowyg-disable")||n.addClass("trumbowyg-disable")},d=function(o,i){if(o===i)return!0;if(null==o||null==i)return!1;if(o.length!==i.length)return!1;for(var t=0;t<o.length;t+=1)if(o[t]!==i[t])return!1;return!0},l=function(){var o=i.doc.getSelection().focusNode,t=i.doc.createRange();o.childNodes.length>0&&(t.setStartAfter(o.childNodes[o.childNodes.length-1]),t.setEndAfter(o.childNodes[o.childNodes.length-1]),i.doc.getSelection().removeAllRanges(),i.doc.getSelection().addRange(t))};i.$c.on("tbwinit tbwchange",e),i.addBtnDef("historyRedo",t),i.addBtnDef("historyUndo",n)}}}})}(jQuery);
|
|
@ -1,100 +0,0 @@
|
|||
/*/* ===========================================================
|
||||
* trumbowyg.insertaudio.js v1.0
|
||||
* InsertAudio plugin for Trumbowyg
|
||||
* http://alex-d.github.com/Trumbowyg
|
||||
* ===========================================================
|
||||
* Author : Adam Hess (AdamHess)
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
var insertAudioOptions = {
|
||||
src: {
|
||||
label: 'URL',
|
||||
required: true
|
||||
},
|
||||
autoplay: {
|
||||
label: 'AutoPlay',
|
||||
required: false,
|
||||
type: 'checkbox'
|
||||
},
|
||||
muted: {
|
||||
label: 'Muted',
|
||||
required: false,
|
||||
type: 'checkbox'
|
||||
},
|
||||
preload: {
|
||||
label: 'preload options',
|
||||
required: false
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
en: {
|
||||
insertAudio: 'Insert Audio'
|
||||
},
|
||||
da: {
|
||||
insertAudio: 'Indsæt lyd'
|
||||
},
|
||||
fr: {
|
||||
insertAudio: 'Insérer un son'
|
||||
},
|
||||
ru: {
|
||||
insertAudio: 'Вставить аудио'
|
||||
},
|
||||
ja: {
|
||||
insertAudio: '音声の挿入'
|
||||
},
|
||||
tr: {
|
||||
insertAudio: 'Ses Ekle'
|
||||
},
|
||||
pt_br: {
|
||||
insertAudio: 'Inserir áudio'
|
||||
},
|
||||
ko: {
|
||||
insertAudio: '소리 넣기'
|
||||
},
|
||||
// jshint camelcase:true
|
||||
},
|
||||
plugins: {
|
||||
insertAudio: {
|
||||
init: function (trumbowyg) {
|
||||
var btnDef = {
|
||||
fn: function () {
|
||||
var insertAudioCallback = function (v) {
|
||||
// controls should always be show otherwise the audio will
|
||||
// be invisible defeating the point of a wysiwyg
|
||||
var html = '<audio controls';
|
||||
if (v.src) {
|
||||
html += ' src=\'' + v.src + '\'';
|
||||
}
|
||||
if (v.autoplay) {
|
||||
html += ' autoplay';
|
||||
}
|
||||
if (v.muted) {
|
||||
html += ' muted';
|
||||
}
|
||||
if (v.preload) {
|
||||
html += ' preload=\'' + v + '\'';
|
||||
}
|
||||
html += '></audio>';
|
||||
var node = $(html)[0];
|
||||
trumbowyg.range.deleteContents();
|
||||
trumbowyg.range.insertNode(node);
|
||||
return true;
|
||||
};
|
||||
|
||||
trumbowyg.openModalInsert(trumbowyg.lang.insertAudio, insertAudioOptions, insertAudioCallback);
|
||||
}
|
||||
};
|
||||
|
||||
trumbowyg.addBtnDef('insertAudio', btnDef);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(e){"use strict";var r={src:{label:"URL",required:!0},autoplay:{label:"AutoPlay",required:!1,type:"checkbox"},muted:{label:"Muted",required:!1,type:"checkbox"},preload:{label:"preload options",required:!1}};e.extend(!0,e.trumbowyg,{langs:{en:{insertAudio:"Insert Audio"},da:{insertAudio:"Indsæt lyd"},fr:{insertAudio:"Insérer un son"},ru:{insertAudio:"Вставить аудио"},ja:{insertAudio:"音声の挿入"},tr:{insertAudio:"Ses Ekle"},pt_br:{insertAudio:"Inserir áudio"},ko:{insertAudio:"소리 넣기"}},plugins:{insertAudio:{init:function(n){var t={fn:function(){var t=function(r){var t="<audio controls";r.src&&(t+=" src='"+r.src+"'"),r.autoplay&&(t+=" autoplay"),r.muted&&(t+=" muted"),r.preload&&(t+=" preload='"+r+"'"),t+="></audio>";var i=e(t)[0];return n.range.deleteContents(),n.range.insertNode(i),!0};n.openModalInsert(n.lang.insertAudio,r,t)}};n.addBtnDef("insertAudio",t)}}}})}(jQuery);
|
|
@ -1,162 +0,0 @@
|
|||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
en: {
|
||||
lineheight: 'Line height',
|
||||
lineheights: {
|
||||
'0.9': 'Small',
|
||||
'normal': 'Regular',
|
||||
'1.5': 'Large',
|
||||
'2.0': 'Extra large'
|
||||
}
|
||||
},
|
||||
da: {
|
||||
lineheight: 'Linjehøjde',
|
||||
lineheights: {
|
||||
'0.9': 'Lille',
|
||||
'normal': 'Normal',
|
||||
'1.5': 'Stor',
|
||||
'2.0': 'Ekstra stor'
|
||||
}
|
||||
},
|
||||
fr: {
|
||||
lineheight: 'Hauteur de ligne',
|
||||
lineheights: {
|
||||
'0.9': 'Petite',
|
||||
'normal': 'Normale',
|
||||
'1.5': 'Grande',
|
||||
'2.0': 'Très grande'
|
||||
}
|
||||
},
|
||||
nl: {
|
||||
lineheight: 'Regelhoogte',
|
||||
lineheights: {
|
||||
'0.9': 'Klein',
|
||||
'normal': 'Normaal',
|
||||
'1.5': 'Groot',
|
||||
'2.0': 'Extra groot'
|
||||
}
|
||||
},
|
||||
tr: {
|
||||
lineheight: 'Satır yüksekliği',
|
||||
lineheights: {
|
||||
'0.9': 'Küçük',
|
||||
'normal': 'Normal',
|
||||
'1.5': 'Büyük',
|
||||
'2.0': 'Çok Büyük'
|
||||
}
|
||||
},
|
||||
zh_tw: {
|
||||
lineheight: '文字間距',
|
||||
lineheights: {
|
||||
'0.9': '小',
|
||||
'normal': '正常',
|
||||
'1.5': '大',
|
||||
'2.0': '特大'
|
||||
}
|
||||
},
|
||||
pt_br: {
|
||||
lineheight: 'Altura de linha',
|
||||
lineheights: {
|
||||
'0.9': 'Pequena',
|
||||
'normal': 'Regular',
|
||||
'1.5': 'Grande',
|
||||
'2.0': 'Extra grande'
|
||||
}
|
||||
},
|
||||
it: {
|
||||
lineheight: 'Altezza linea',
|
||||
lineheights: {
|
||||
'0.9': 'Bassa',
|
||||
'normal': 'Normale',
|
||||
'1.5': 'Alta',
|
||||
'2.0': 'Molto alta'
|
||||
}
|
||||
},
|
||||
ko: {
|
||||
lineheight: '줄 간격',
|
||||
lineheights: {
|
||||
'0.9': '좁게',
|
||||
'normal': '보통',
|
||||
'1.5': '넓게',
|
||||
'2.0': '아주 넓게'
|
||||
}
|
||||
},
|
||||
}
|
||||
});
|
||||
// jshint camelcase:true
|
||||
|
||||
var defaultOptions = {
|
||||
sizeList: [
|
||||
'0.9',
|
||||
'normal',
|
||||
'1.5',
|
||||
'2.0'
|
||||
]
|
||||
};
|
||||
|
||||
// Add dropdown with font sizes
|
||||
$.extend(true, $.trumbowyg, {
|
||||
plugins: {
|
||||
lineheight: {
|
||||
init: function (trumbowyg) {
|
||||
trumbowyg.o.plugins.lineheight = $.extend({},
|
||||
defaultOptions,
|
||||
trumbowyg.o.plugins.lineheight || {}
|
||||
);
|
||||
|
||||
trumbowyg.addBtnDef('lineheight', {
|
||||
dropdown: buildDropdown(trumbowyg)
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// Build the dropdown
|
||||
function buildDropdown(trumbowyg) {
|
||||
var dropdown = [];
|
||||
|
||||
$.each(trumbowyg.o.plugins.lineheight.sizeList, function(index, size) {
|
||||
trumbowyg.addBtnDef('lineheight_' + size, {
|
||||
text: trumbowyg.lang.lineheights[size] || size,
|
||||
hasIcon: false,
|
||||
fn: function(){
|
||||
trumbowyg.saveRange();
|
||||
var text = trumbowyg.getRangeText();
|
||||
if (text.replace(/\s/g, '') !== '') {
|
||||
try {
|
||||
var parent = getSelectionParentElement();
|
||||
$(parent).css('lineHeight', size);
|
||||
} catch (e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
dropdown.push('lineheight_' + size);
|
||||
});
|
||||
|
||||
return dropdown;
|
||||
}
|
||||
|
||||
// Get the selection's parent
|
||||
function getSelectionParentElement() {
|
||||
var parentEl = null,
|
||||
selection;
|
||||
if (window.getSelection) {
|
||||
selection = window.getSelection();
|
||||
if (selection.rangeCount) {
|
||||
parentEl = selection.getRangeAt(0).commonAncestorContainer;
|
||||
if (parentEl.nodeType !== 1) {
|
||||
parentEl = parentEl.parentNode;
|
||||
}
|
||||
}
|
||||
} else if ((selection = document.selection) && selection.type !== 'Control') {
|
||||
parentEl = selection.createRange().parentElement();
|
||||
}
|
||||
return parentEl;
|
||||
}
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(e){"use strict";function n(n){var i=[];return e.each(n.o.plugins.lineheight.sizeList,function(l,a){n.addBtnDef("lineheight_"+a,{text:n.lang.lineheights[a]||a,hasIcon:!1,fn:function(){n.saveRange();var i=n.getRangeText();if(""!==i.replace(/\s/g,""))try{var l=t();e(l).css("lineHeight",a)}catch(h){}}}),i.push("lineheight_"+a)}),i}function t(){var e,n=null;return window.getSelection?(e=window.getSelection(),e.rangeCount&&(n=e.getRangeAt(0).commonAncestorContainer,1!==n.nodeType&&(n=n.parentNode))):(e=document.selection)&&"Control"!==e.type&&(n=e.createRange().parentElement()),n}e.extend(!0,e.trumbowyg,{langs:{en:{lineheight:"Line height",lineheights:{.9:"Small",normal:"Regular",1.5:"Large","2.0":"Extra large"}},da:{lineheight:"Linjehøjde",lineheights:{.9:"Lille",normal:"Normal",1.5:"Stor","2.0":"Ekstra stor"}},fr:{lineheight:"Hauteur de ligne",lineheights:{.9:"Petite",normal:"Normale",1.5:"Grande","2.0":"Très grande"}},nl:{lineheight:"Regelhoogte",lineheights:{.9:"Klein",normal:"Normaal",1.5:"Groot","2.0":"Extra groot"}},tr:{lineheight:"Satır yüksekliği",lineheights:{.9:"Küçük",normal:"Normal",1.5:"Büyük","2.0":"Çok Büyük"}},zh_tw:{lineheight:"文字間距",lineheights:{.9:"小",normal:"正常",1.5:"大","2.0":"特大"}},pt_br:{lineheight:"Altura de linha",lineheights:{.9:"Pequena",normal:"Regular",1.5:"Grande","2.0":"Extra grande"}},it:{lineheight:"Altezza linea",lineheights:{.9:"Bassa",normal:"Normale",1.5:"Alta","2.0":"Molto alta"}},ko:{lineheight:"줄 간격",lineheights:{.9:"좁게",normal:"보통",1.5:"넓게","2.0":"아주 넓게"}}}});var i={sizeList:["0.9","normal","1.5","2.0"]};e.extend(!0,e.trumbowyg,{plugins:{lineheight:{init:function(t){t.o.plugins.lineheight=e.extend({},i,t.o.plugins.lineheight||{}),t.addBtnDef("lineheight",{dropdown:n(t)})}}}})}(jQuery);
|
|
@ -1,117 +0,0 @@
|
|||
/* ===========================================================
|
||||
* trumbowyg.mathMl.js v1.0
|
||||
* MathML plugin for Trumbowyg
|
||||
* http://alex-d.github.com/Trumbowyg
|
||||
* ===========================================================
|
||||
* Author : loclamor
|
||||
*/
|
||||
|
||||
/* globals MathJax */
|
||||
(function($) {
|
||||
'use strict';
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
en: {
|
||||
mathml: 'Insert Formulas',
|
||||
formulas: 'Formulas',
|
||||
inline: 'Inline'
|
||||
},
|
||||
da: {
|
||||
mathml: 'Indsæt formler',
|
||||
formulas: 'Formler',
|
||||
inline: 'Inline'
|
||||
},
|
||||
fr: {
|
||||
mathml: 'Inserer une formule',
|
||||
formulas: 'Formule',
|
||||
inline: 'En ligne'
|
||||
},
|
||||
tr: {
|
||||
mathml: 'Formül Ekle',
|
||||
formulas: 'Formüller',
|
||||
inline: 'Satır içi'
|
||||
},
|
||||
zh_tw: {
|
||||
mathml: '插入方程式',
|
||||
formulas: '方程式',
|
||||
inline: '內嵌'
|
||||
},
|
||||
pt_br: {
|
||||
mathml: 'Inserir fórmulas',
|
||||
formulas: 'Fórmulas',
|
||||
inline: 'Em linha'
|
||||
},
|
||||
ko: {
|
||||
mathml: '수식 넣기',
|
||||
formulas: '수식',
|
||||
inline: '글 안에 넣기'
|
||||
},
|
||||
},
|
||||
// jshint camelcase:true
|
||||
|
||||
plugins: {
|
||||
mathml: {
|
||||
init: function(trumbowyg) {
|
||||
var btnDef = {
|
||||
fn: function() {
|
||||
trumbowyg.saveRange();
|
||||
var mathMLoptions = {
|
||||
formulas: {
|
||||
label: trumbowyg.lang.formulas,
|
||||
required: true,
|
||||
value: ''
|
||||
},
|
||||
inline: {
|
||||
label: trumbowyg.lang.inline,
|
||||
attributes: {
|
||||
checked: true
|
||||
},
|
||||
type: 'checkbox',
|
||||
required: false,
|
||||
}
|
||||
};
|
||||
|
||||
var mathmlCallback = function(v) {
|
||||
var delimiter = v.inline ? '$' : '$$';
|
||||
if (trumbowyg.currentMathNode) {
|
||||
$(trumbowyg.currentMathNode)
|
||||
.html(delimiter + ' ' + v.formulas + ' ' + delimiter)
|
||||
.attr('formulas', v.formulas)
|
||||
.attr('inline', (v.inline ? 'true' : 'false'));
|
||||
} else {
|
||||
var html = '<span class="mathMlContainer" contenteditable="false" formulas="' + v.formulas + '" inline="' + (v.inline ? 'true' : 'false') + '" >' + delimiter + ' ' + v.formulas + ' ' + delimiter + '</span>';
|
||||
var node = $(html)[0];
|
||||
node.onclick = function() {
|
||||
trumbowyg.currentMathNode = this;
|
||||
mathMLoptions.formulas.value = $(this).attr('formulas');
|
||||
|
||||
if ($(this).attr('inline') === 'true') {
|
||||
mathMLoptions.inline.attributes.checked = true;
|
||||
} else {
|
||||
delete mathMLoptions.inline.attributes.checked;
|
||||
}
|
||||
|
||||
trumbowyg.openModalInsert(trumbowyg.lang.mathml, mathMLoptions, mathmlCallback);
|
||||
};
|
||||
|
||||
trumbowyg.range.deleteContents();
|
||||
trumbowyg.range.insertNode(node);
|
||||
}
|
||||
|
||||
trumbowyg.currentMathNode = false;
|
||||
MathJax.Hub.Queue(['Typeset', MathJax.Hub]);
|
||||
return true;
|
||||
};
|
||||
|
||||
mathMLoptions.formulas.value = trumbowyg.getRangeText();
|
||||
mathMLoptions.inline.attributes.checked = true;
|
||||
trumbowyg.openModalInsert(trumbowyg.lang.mathml, mathMLoptions, mathmlCallback);
|
||||
}
|
||||
};
|
||||
trumbowyg.addBtnDef('mathml', btnDef);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(e){"use strict";e.extend(!0,e.trumbowyg,{langs:{en:{mathml:"Insert Formulas",formulas:"Formulas",inline:"Inline"},da:{mathml:"Indsæt formler",formulas:"Formler",inline:"Inline"},fr:{mathml:"Inserer une formule",formulas:"Formule",inline:"En ligne"},tr:{mathml:"Formül Ekle",formulas:"Formüller",inline:"Satır içi"},zh_tw:{mathml:"插入方程式",formulas:"方程式",inline:"內嵌"},pt_br:{mathml:"Inserir fórmulas",formulas:"Fórmulas",inline:"Em linha"},ko:{mathml:"수식 넣기",formulas:"수식",inline:"글 안에 넣기"}},plugins:{mathml:{init:function(n){var l={fn:function(){n.saveRange();var l={formulas:{label:n.lang.formulas,required:!0,value:""},inline:{label:n.lang.inline,attributes:{checked:!0},type:"checkbox",required:!1}},a=function(t){var r=t.inline?"$":"$$";if(n.currentMathNode)e(n.currentMathNode).html(r+" "+t.formulas+" "+r).attr("formulas",t.formulas).attr("inline",t.inline?"true":"false");else{var i='<span class="mathMlContainer" contenteditable="false" formulas="'+t.formulas+'" inline="'+(t.inline?"true":"false")+'" >'+r+" "+t.formulas+" "+r+"</span>",u=e(i)[0];u.onclick=function(){n.currentMathNode=this,l.formulas.value=e(this).attr("formulas"),"true"===e(this).attr("inline")?l.inline.attributes.checked=!0:delete l.inline.attributes.checked,n.openModalInsert(n.lang.mathml,l,a)},n.range.deleteContents(),n.range.insertNode(u)}return n.currentMathNode=!1,MathJax.Hub.Queue(["Typeset",MathJax.Hub]),!0};l.formulas.value=n.getRangeText(),l.inline.attributes.checked=!0,n.openModalInsert(n.lang.mathml,l,a)}};n.addBtnDef("mathml",l)}}}})}(jQuery);
|
|
@ -1,36 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Default stylesheet for Trumbowyg editor plugin
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.mathMlContainer {
|
||||
position: relative;
|
||||
|
||||
&[inline="false"] {
|
||||
display: block;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
pointer-events: none;
|
||||
|
||||
&::after {
|
||||
content: '\270E';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
background-color: rgba(255, 255, 255, 0.83);
|
||||
box-shadow: 0 0 5px 5px rgba(255, 255, 255, 0.83);
|
||||
cursor: pointer;
|
||||
pointer-events: auto;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,29 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Trumbowyg plugin stylesheet
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.mathMlContainer {
|
||||
position: relative; }
|
||||
.mathMlContainer[inline="false"] {
|
||||
display: block;
|
||||
width: 100%; }
|
||||
.mathMlContainer:hover {
|
||||
pointer-events: none; }
|
||||
.mathMlContainer:hover::after {
|
||||
content: '\270E';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
background-color: rgba(255, 255, 255, 0.83);
|
||||
box-shadow: 0 0 5px 5px rgba(255, 255, 255, 0.83);
|
||||
cursor: pointer;
|
||||
pointer-events: auto; }
|
|
@ -1,2 +0,0 @@
|
|||
/** Trumbowyg v2.21.0 - A lightweight WYSIWYG editor - alex-d.github.io/Trumbowyg - License MIT - Author : Alexandre Demode (Alex-D) / alex-d.fr */
|
||||
.mathMlContainer{position:relative}.mathMlContainer[inline=false]{display:block;width:100%}.mathMlContainer:hover{pointer-events:none}.mathMlContainer:hover::after{content:'\270E';position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(255,255,255,.83);box-shadow:0 0 5px 5px rgba(255,255,255,.83);cursor:pointer;pointer-events:auto}
|
|
@ -1,116 +0,0 @@
|
|||
/* ===========================================================
|
||||
* trumbowyg.mention.js v0.1
|
||||
* Mention plugin for Trumbowyg
|
||||
* http://alex-d.github.com/Trumbowyg
|
||||
* ===========================================================
|
||||
* Author : Viper
|
||||
* Github: https://github.com/Globulopolis
|
||||
* Website: http://киноархив.com
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
var defaultOptions = {
|
||||
source: [],
|
||||
formatDropdownItem: formatDropdownItem,
|
||||
formatResult: formatResult
|
||||
};
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
en: {
|
||||
mention: 'Mention'
|
||||
},
|
||||
da: {
|
||||
mention: 'Nævn'
|
||||
},
|
||||
fr: {
|
||||
mention: 'Mentionner'
|
||||
},
|
||||
ru: {
|
||||
mention: 'Упомянуть'
|
||||
},
|
||||
tr: {
|
||||
mention: 'Bahset'
|
||||
},
|
||||
zh_tw: {
|
||||
mention: '標記'
|
||||
},
|
||||
pt_br: {
|
||||
mention: 'Menção'
|
||||
},
|
||||
ko: {
|
||||
mention: '언급'
|
||||
},
|
||||
// jshint camelcase:true
|
||||
},
|
||||
|
||||
plugins: {
|
||||
mention: {
|
||||
init: function (trumbowyg) {
|
||||
trumbowyg.o.plugins.mention = $.extend(true, {}, defaultOptions, trumbowyg.o.plugins.mention || {});
|
||||
|
||||
var btnDef = {
|
||||
dropdown: buildDropdown(trumbowyg.o.plugins.mention.source, trumbowyg)
|
||||
};
|
||||
|
||||
trumbowyg.addBtnDef('mention', btnDef);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Build dropdown list
|
||||
*
|
||||
* @param {Array} items Items
|
||||
* @param {object} trumbowyg Editor
|
||||
*
|
||||
* @return {Array}
|
||||
*/
|
||||
function buildDropdown(items, trumbowyg) {
|
||||
var dropdown = [];
|
||||
|
||||
$.each(items, function (i, item) {
|
||||
var btn = 'mention-' + i,
|
||||
btnDef = {
|
||||
hasIcon: false,
|
||||
text: trumbowyg.o.plugins.mention.formatDropdownItem(item),
|
||||
fn: function () {
|
||||
trumbowyg.execCmd('insertHTML', trumbowyg.o.plugins.mention.formatResult(item));
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
trumbowyg.addBtnDef(btn, btnDef);
|
||||
dropdown.push(btn);
|
||||
});
|
||||
|
||||
return dropdown;
|
||||
}
|
||||
|
||||
/**
|
||||
* Format item in dropdown.
|
||||
*
|
||||
* @param {object} item Item object.
|
||||
*
|
||||
* @return {string}
|
||||
*/
|
||||
function formatDropdownItem(item) {
|
||||
return item.login;
|
||||
}
|
||||
|
||||
/**
|
||||
* Format result pasted in editor.
|
||||
*
|
||||
* @param {object} item Item object.
|
||||
*
|
||||
* @return {string}
|
||||
*/
|
||||
function formatResult(item) {
|
||||
return '@' + item.login + ' ';
|
||||
}
|
||||
})(jQuery);
|
|
@ -1 +0,0 @@
|
|||
!function(n){"use strict";function t(t,o){var e=[];return n.each(t,function(n,t){var i="mention-"+n,r={hasIcon:!1,text:o.o.plugins.mention.formatDropdownItem(t),fn:function(){return o.execCmd("insertHTML",o.o.plugins.mention.formatResult(t)),!0}};o.addBtnDef(i,r),e.push(i)}),e}function o(n){return n.login}function e(n){return"@"+n.login+" "}var i={source:[],formatDropdownItem:o,formatResult:e};n.extend(!0,n.trumbowyg,{langs:{en:{mention:"Mention"},da:{mention:"Nævn"},fr:{mention:"Mentionner"},ru:{mention:"Упомянуть"},tr:{mention:"Bahset"},zh_tw:{mention:"標記"},pt_br:{mention:"Menção"},ko:{mention:"언급"}},plugins:{mention:{init:function(o){o.o.plugins.mention=n.extend(!0,{},i,o.o.plugins.mention||{});var e={dropdown:t(o.o.plugins.mention.source,o)};o.addBtnDef("mention",e)}}}})}(jQuery);
|
|
@ -1,29 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Default stylesheet for Trumbowyg editor plugin
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.trumbowyg-dropdown-mention {
|
||||
button {
|
||||
position: relative;
|
||||
white-space: nowrap;
|
||||
|
||||
&:after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
width: 15%;
|
||||
height: 100%;
|
||||
background-size: 100%;
|
||||
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #ffffff 80%, #ffffff 100%);
|
||||
pointer-events: none;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,24 +0,0 @@
|
|||
/**
|
||||
* Trumbowyg v2.21.0 - A lightweight WYSIWYG editor
|
||||
* Trumbowyg plugin stylesheet
|
||||
* ------------------------
|
||||
* @link http://alex-d.github.io/Trumbowyg
|
||||
* @license MIT
|
||||
* @author Alexandre Demode (Alex-D)
|
||||
* Twitter : @AlexandreDemode
|
||||
* Website : alex-d.fr
|
||||
*/
|
||||
|
||||
.trumbowyg-dropdown-mention button {
|
||||
position: relative;
|
||||
white-space: nowrap; }
|
||||
.trumbowyg-dropdown-mention button:after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
width: 15%;
|
||||
height: 100%;
|
||||
background-size: 100%;
|
||||
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #ffffff 80%, #ffffff 100%);
|
||||
pointer-events: none; }
|