Compare commits
12 Commits
master
...
333012b0b1
Author | SHA1 | Date | |
---|---|---|---|
333012b0b1 | |||
5f5e81870c | |||
09b456becc | |||
d2f283d4eb | |||
8f17591995 | |||
d0066c6f96 | |||
7bedb306da | |||
665ec502a5 | |||
1fe0c3819b | |||
a10f979a02 | |||
1faf2ca7e1 | |||
29b573602a |
1
debian/compat
vendored
Normal file
@ -0,0 +1 @@
|
||||
7
|
24
debian/control
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
Source: eole-nineschool
|
||||
Section: web
|
||||
Priority: optional
|
||||
Maintainer: Equipe Envole <eole@ac-dijon.fr>
|
||||
Build-Depends: debhelper (>= 7.0.50)
|
||||
Standards-Version: 3.8.4
|
||||
Homepage: http://eole.orion.education.fr/diff/
|
||||
Vcs-Git: http://dev-eole.ac-dijon.fr/git/nineschool
|
||||
Vcs-Browser: http://dev-eole.ac-dijon.fr/projects/nineschool/repository
|
||||
|
||||
Package: nineschool-sso
|
||||
Architecture: all
|
||||
Depends: ${misc:Depends}, eole-sso
|
||||
Description: Filtre SSO pour nineschool "EOLE".
|
||||
|
||||
Package: eole-nineschool
|
||||
Architecture: all
|
||||
Depends: ${misc:Depends}, eole-envole-dependances, nineschool-sso
|
||||
Description: Eolisation de l'application nineschool.
|
||||
|
||||
Package: nineschool-apps
|
||||
Architecture: all
|
||||
Depends: ${misc:Depends}, envole-dependances-apps
|
||||
Description: Sources pour nineschool "EOLE".
|
44
debian/copyright
vendored
Normal file
@ -0,0 +1,44 @@
|
||||
Format: http://dep.debian.net/deps/dep5
|
||||
Upstream-Name: {PROJECT}
|
||||
Source: {URL}
|
||||
|
||||
Files: *
|
||||
Copyright: YEAR {UPSTREAM} {AUTHOR} <{MAIL}>
|
||||
License: {UPSTREAM LICENSE}
|
||||
|
||||
Files: debian/*
|
||||
Copyright: 2012 Équipe EOLE <eole@ac-dijon.fr>
|
||||
License: CeCILL-2
|
||||
|
||||
License: {UPSTREAM LICENSE}
|
||||
{TEXT OF THE LICENSE}
|
||||
|
||||
License: CeCILL-2
|
||||
This software is governed by the CeCILL-2 license under French law and
|
||||
abiding by the rules of distribution of free software. You can use,
|
||||
modify and or redistribute the software under the terms of the CeCILL-2
|
||||
license as circulated by CEA, CNRS and INRIA at the following URL
|
||||
"http://www.cecill.info";.
|
||||
.
|
||||
As a counterpart to the access to the source code and rights to copy,
|
||||
modify and redistribute granted by the license, users are provided only
|
||||
with a limited warranty and the software's author, the holder of the
|
||||
economic rights, and the successive licensors have only limited
|
||||
liability.
|
||||
.
|
||||
In this respect, the user's attention is drawn to the risks associated
|
||||
with loading, using, modifying and/or developing or reproducing the
|
||||
software by the user in light of its specific status of free software,
|
||||
that may mean that it is complicated to manipulate, and that also
|
||||
therefore means that it is reserved for developers and experienced
|
||||
professionals having in-depth computer knowledge. Users are therefore
|
||||
encouraged to load and test the software's suitability as regards their
|
||||
requirements in conditions enabling the security of their systems and/or
|
||||
data to be ensured and, more generally, to use and operate it in the
|
||||
same conditions as regards security.
|
||||
.
|
||||
The fact that you are presently reading this means that you have had
|
||||
knowledge of the CeCILL-2 license and that you accept its terms.
|
||||
.
|
||||
On Eole systems, the complete text of the CeCILL-2 License can be found
|
||||
in '/usr/share/common-licenses/CeCILL-2-en'.
|
1
debian/eole-nineschool.install
vendored
Normal file
@ -0,0 +1 @@
|
||||
usr/share/eole
|
3
debian/gbp.conf
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
# Set per distribution debian tag
|
||||
[DEFAULT]
|
||||
debian-tag = debian/envole/%(version)s
|
1
debian/nineschool-apps.install
vendored
Normal file
@ -0,0 +1 @@
|
||||
var/www/html
|
1
debian/nineschool-sso.install
vendored
Normal file
@ -0,0 +1 @@
|
||||
usr/share/sso
|
8
debian/rules
vendored
Executable file
@ -0,0 +1,8 @@
|
||||
#!/usr/bin/make -f
|
||||
# -*- makefile -*-
|
||||
|
||||
# Uncomment this to turn on verbose mode.
|
||||
#export DH_VERBOSE=1
|
||||
|
||||
%:
|
||||
dh $@
|
1
debian/source/format
vendored
Normal file
@ -0,0 +1 @@
|
||||
3.0 (native)
|
@ -2,7 +2,6 @@
|
||||
<creole>
|
||||
<files>
|
||||
<file filelist='nineschool' name='/etc/eole/eole-db.d/nineschool-db.yml' rm='True' mkdir='True'/>
|
||||
<file filelist='nineschool_nginx' name='/etc/nginx/web.d/nineschool.conf' source='nineschool-nginx.conf' rm='True' mkdir='True' />
|
||||
</files>
|
||||
|
||||
<containers>
|
||||
@ -20,11 +19,10 @@
|
||||
</containers>
|
||||
|
||||
<variables>
|
||||
<family name='nineschool' icon='eye-open'>
|
||||
<family name='nineschool'>
|
||||
<variable name="ninegate_test_ninegate" type="oui/non" hidden='True' exists='False'><value>non</value></variable>
|
||||
<variable name="activer_revprox" type="oui/non" description="Activer le reverse proxy Nginx" hidden='True' exists='False'><value>non</value></variable>
|
||||
|
||||
<variable name='activer_nineschool' type='oui/non' description='Activer Nineschool'>
|
||||
<variable name='activer_nineschool' type='oui/non' description='Activer nineschool'>
|
||||
<value>oui</value>
|
||||
</variable>
|
||||
|
||||
@ -54,9 +52,8 @@
|
||||
<variable type='string' name='nineschool_smtppwd' description='Mot de passe associé du compte SMTP' mandatory='True' />
|
||||
<variable type='string' name='nineschool_smtpencryption' description='Type Encryptage du serveur SMTP' mandatory='True' />
|
||||
<variable type='string' name='nineschool_smtpauthmode' description='Mode Authentification du serveur SMTP' mandatory='True' />
|
||||
</family>
|
||||
|
||||
<family name='EoleDB' icon='database' mode='expert'>
|
||||
|
||||
<!-- BDD -->
|
||||
<variable type='string' name='nineschool_db_mode' description='Serveur de bases de données à utiliser' mode='expert'/>
|
||||
<variable type='string' name='nineschool_dbserver' description='Adresse du serveur de base de données' mode='expert'/>
|
||||
@ -69,7 +66,7 @@
|
||||
<separators>
|
||||
<separator name="nineschool_ldaptemplate">Paramètres associés à l'Annuaire</separator>
|
||||
<separator name="nineschool_noreply">Paramètres associés aux Mails</separator>
|
||||
<separator name="nineschool_db_mode">Paramètres EoleDB associés à Nineschool</separator>
|
||||
<separator name="nineschool_db_mode">Paramètres associés à la Base de Données</separator>
|
||||
</separators>
|
||||
</variables>
|
||||
|
||||
@ -78,15 +75,9 @@
|
||||
<condition name='hidden_if_in' source='activer_apache'>
|
||||
<param>non</param>
|
||||
<target type='filelist'>nineschool</target>
|
||||
<target type='filelist'>nineschool_nginx</target>
|
||||
<target type='servicelist'>nineschool</target>
|
||||
</condition>
|
||||
|
||||
<!-- AFFICHAGE EN FONCTION DE REVERSE PROXY -->
|
||||
<condition name='hidden_if_in' source='activer_revprox'>
|
||||
<param>non</param>
|
||||
<target type='filelist'>nineschool_nginx</target>
|
||||
</condition>
|
||||
|
||||
<!-- AFFICHAGE EN FONCTION DE NINESCHOOL -->
|
||||
<condition name='hidden_if_in' source='activer_nineschool'>
|
||||
@ -116,7 +107,6 @@
|
||||
<target type='variable'>nineschool_dbpass</target>
|
||||
|
||||
<target type='filelist'>nineschool</target>
|
||||
<target type='filelist'>nineschool_nginx</target>
|
||||
<target type='servicelist'>nineschool</target>
|
||||
</condition>
|
||||
|
||||
|
@ -1,19 +1,36 @@
|
||||
# Symfony
|
||||
APP_ENV=PROD
|
||||
APP_SECRET=changemeinenvlocal
|
||||
# In all environments, the following files are loaded if they exist,
|
||||
# the latter taking precedence over the former:
|
||||
#
|
||||
# * .env contains default values for the environment variables needed by the app
|
||||
# * .env.local uncommitted file with local overrides
|
||||
# * .env.$APP_ENV committed environment-specific defaults
|
||||
# * .env.$APP_ENV.local uncommitted environment-specific overrides
|
||||
#
|
||||
# Real environment variables win over .env files.
|
||||
#
|
||||
# DO NOT DEFINE PRODUCTION SECRETS IN THIS FILE NOR IN ANY OTHER COMMITTED FILES.
|
||||
#
|
||||
# Run "composer dump-env prod" to compile .env files for production use (requires symfony/flex >=1.2).
|
||||
# https://symfony.com/doc/current/best_practices.html#use-environment-variables-for-infrastructure-configuration
|
||||
|
||||
###> symfony/framework-bundle ###
|
||||
APP_SECRET=52c1cb88ee822cd2643abe29e16a68a6
|
||||
#TRUSTED_PROXIES=127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
|
||||
#TRUSTED_HOSTS='^(localhost|example\.com)$'
|
||||
###< symfony/framework-bundle ###
|
||||
|
||||
###> symfony/mailer ###
|
||||
# MAILER_DSN=smtp://localhost
|
||||
###< symfony/mailer ###
|
||||
|
||||
###< doctrine/doctrine-bundle ###
|
||||
|
||||
# Basic
|
||||
APP_WEBURL=
|
||||
APP_MASTERIDENTITY=LDAP
|
||||
APP_ALIAS=nineschool
|
||||
APP_AUTH=MYSQL
|
||||
APP_ALIAS=
|
||||
APP_NAME=
|
||||
APP_CRON=1
|
||||
APP_MASTERURL=
|
||||
APP_MASTERKEY=
|
||||
APP_NAME=Nineschool
|
||||
APP_ENV=PROD
|
||||
APP_CRON=false
|
||||
|
||||
# BDD
|
||||
DATABASE_NAME=
|
||||
@ -21,15 +38,12 @@ DATABASE_USER=
|
||||
DATABASE_PASSWORD=
|
||||
DATABASE_HOST=
|
||||
|
||||
|
||||
# MAIL sendmail / smtp
|
||||
MAILER_METHOD=sendmail
|
||||
MAILER_URL=
|
||||
MAILER_NOREPLY=noreply@noreply.fr
|
||||
|
||||
|
||||
# LDAP
|
||||
LDAP_MODEL=open
|
||||
LDAP_HOST=
|
||||
LDAP_PORT=
|
||||
LDAP_USER=
|
||||
@ -41,7 +55,6 @@ LDAP_LASTNAME=sn
|
||||
LDAP_EMAIL=mail
|
||||
LDAP_ADMINS='["admin"]'
|
||||
|
||||
|
||||
# If APP_AUTH = CAS
|
||||
CAS_HOST=
|
||||
CAS_PORT=
|
||||
@ -51,18 +64,9 @@ CAS_EMAIL=email
|
||||
CAS_LASTNAME=lastname
|
||||
CAS_FIRSTNAME=firstname
|
||||
|
||||
|
||||
# WEBSOCKET
|
||||
WSS_USE=0
|
||||
WSS_PORT=5586
|
||||
|
||||
|
||||
# Proxy
|
||||
PROXY_USE=0
|
||||
PROXY_HOST=
|
||||
PROXY_PORT=
|
||||
|
||||
|
||||
# Sonde statistic
|
||||
SONDE_USE=0
|
||||
SONDE_URL=
|
||||
###> symfony/swiftmailer-bundle ###
|
||||
# For Gmail as a transport, use: "gmail://username:password@localhost"
|
||||
# For a generic SMTP server, use: "smtp://localhost:25?encryption=&auth_mode="
|
||||
# Delivery is disabled by default via "null://localhost"
|
||||
MAILER_URL=null://localhost
|
||||
###< symfony/swiftmailer-bundle ###
|
||||
|
@ -11,21 +11,10 @@ fos_ck_editor:
|
||||
full_config:
|
||||
language: fr
|
||||
toolbar: "my_full_toolbar"
|
||||
extraPlugins: ["html5video","youtube"]
|
||||
small_config:
|
||||
language: fr
|
||||
toolbar: "my_small_toolbar"
|
||||
removePlugins: 'elementspath'
|
||||
plugins:
|
||||
youtube:
|
||||
path: "build/ckeditor/plugins/youtube/"
|
||||
filename: "plugin.js"
|
||||
html5video:
|
||||
path: "build/ckeditor/plugins/html5video/"
|
||||
filename: "plugin.js"
|
||||
pastebase64:
|
||||
path: "build/ckeditor/plugins/pastebase64/"
|
||||
filename: "plugin.js"
|
||||
toolbars:
|
||||
configs:
|
||||
my_full_toolbar: [ "@document1", "-", "@clipboard1", "-", "@basicstyles1", "-", "@paragraph1", "/", "@links1", "-", "@insert1", "-", "@styles1", "-" , "@colors1", "-" , "@tools1" ]
|
||||
|
@ -28,10 +28,6 @@ app_logoutcas:
|
||||
path: /logoutcas
|
||||
defaults: { _controller: App\Controller\SecurityController:logout }
|
||||
|
||||
app_casdebug:
|
||||
path: /user/casdebug
|
||||
defaults: { _controller: App\Controller\SecurityController:casdebug }
|
||||
|
||||
#== Config ========================================================================================================
|
||||
app_config:
|
||||
path: /admin/config
|
||||
|
@ -28,7 +28,6 @@ parameters:
|
||||
ldapModel: '%env(resolve:LDAP_MODEL)%'
|
||||
ldapHost: '%env(resolve:LDAP_HOST)%'
|
||||
ldapPort: '%env(resolve:LDAP_PORT)%'
|
||||
ldapTls: '%env(resolve:LDAP_TLS)%'
|
||||
ldapUser: '%env(resolve:LDAP_USER)%'
|
||||
ldapPassword: '%env(resolve:LDAP_PASSWORD)%'
|
||||
ldapBasedn: '%env(resolve:LDAP_BASEDN)%'
|
||||
@ -67,7 +66,6 @@ services:
|
||||
bind:
|
||||
$ldapHost: '%ldapHost%'
|
||||
$ldapPort: '%ldapPort%'
|
||||
$ldapTls: '%ldapTls%'
|
||||
$ldapUser: '%ldapUser%'
|
||||
$ldapPassword: '%ldapPassword%'
|
||||
$ldapBasedn: '%ldapBasedn%'
|
||||
@ -107,7 +105,7 @@ services:
|
||||
app.ldap.service:
|
||||
public: true
|
||||
class: App\Service\ldapService
|
||||
arguments: ["%ldapHost%","%ldapPort%","%ldapTls%","%ldapUser%","%ldapPassword%","%ldapBasedn%"]
|
||||
arguments: ["%ldapHost%","%ldapPort%","%ldapUser%","%ldapPassword%","%ldapBasedn%"]
|
||||
|
||||
app.upload.samename:
|
||||
public: true
|
||||
|
Before Width: | Height: | Size: 615 B After Width: | Height: | Size: 615 B |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 824 B After Width: | Height: | Size: 824 B |
Before Width: | Height: | Size: 471 B After Width: | Height: | Size: 471 B |
Before Width: | Height: | Size: 474 B After Width: | Height: | Size: 474 B |
Before Width: | Height: | Size: 872 B After Width: | Height: | Size: 872 B |
Before Width: | Height: | Size: 945 B After Width: | Height: | Size: 945 B |
Before Width: | Height: | Size: 532 B After Width: | Height: | Size: 532 B |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 616 B After Width: | Height: | Size: 616 B |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 757 B After Width: | Height: | Size: 757 B |
Before Width: | Height: | Size: 707 B After Width: | Height: | Size: 707 B |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 569 B After Width: | Height: | Size: 569 B |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 543 B After Width: | Height: | Size: 543 B |
Before Width: | Height: | Size: 549 B After Width: | Height: | Size: 549 B |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 1017 B After Width: | Height: | Size: 1017 B |
Before Width: | Height: | Size: 498 B After Width: | Height: | Size: 498 B |
Before Width: | Height: | Size: 905 B After Width: | Height: | Size: 905 B |
Before Width: | Height: | Size: 696 B After Width: | Height: | Size: 696 B |
Before Width: | Height: | Size: 696 B After Width: | Height: | Size: 696 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 549 B After Width: | Height: | Size: 549 B |
Before Width: | Height: | Size: 633 B After Width: | Height: | Size: 633 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 493 B After Width: | Height: | Size: 493 B |
Before Width: | Height: | Size: 544 B After Width: | Height: | Size: 544 B |
Before Width: | Height: | Size: 380 B After Width: | Height: | Size: 380 B |
Before Width: | Height: | Size: 613 B After Width: | Height: | Size: 613 B |
Before Width: | Height: | Size: 833 B After Width: | Height: | Size: 833 B |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 660 B After Width: | Height: | Size: 660 B |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 920 B After Width: | Height: | Size: 920 B |
Before Width: | Height: | Size: 905 B After Width: | Height: | Size: 905 B |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 805 B After Width: | Height: | Size: 805 B |
Before Width: | Height: | Size: 805 B After Width: | Height: | Size: 805 B |
Before Width: | Height: | Size: 755 B After Width: | Height: | Size: 755 B |
Before Width: | Height: | Size: 655 B After Width: | Height: | Size: 655 B |
Before Width: | Height: | Size: 455 B After Width: | Height: | Size: 455 B |
Before Width: | Height: | Size: 451 B After Width: | Height: | Size: 451 B |
Before Width: | Height: | Size: 568 B After Width: | Height: | Size: 568 B |
Before Width: | Height: | Size: 524 B After Width: | Height: | Size: 524 B |
Before Width: | Height: | Size: 419 B After Width: | Height: | Size: 419 B |
Before Width: | Height: | Size: 419 B After Width: | Height: | Size: 419 B |
@ -1,259 +0,0 @@
|
||||
CKEDITOR.dialog.add( 'html5video', function( editor ) {
|
||||
return {
|
||||
title: editor.lang.html5video.title,
|
||||
minWidth: 500,
|
||||
minHeight: 100,
|
||||
contents: [ {
|
||||
id: 'info',
|
||||
label: editor.lang.html5video.infoLabel,
|
||||
elements: [
|
||||
{
|
||||
type: 'vbox',
|
||||
padding: 0,
|
||||
children: [
|
||||
{
|
||||
type: 'hbox',
|
||||
widths: [ '365px', '110px' ],
|
||||
align: 'right',
|
||||
children: [ {
|
||||
type: 'text',
|
||||
id: 'url',
|
||||
label: editor.lang.html5video.allowed,
|
||||
required: true,
|
||||
validate: CKEDITOR.dialog.validate.notEmpty( editor.lang.html5video.urlMissing ),
|
||||
setup: function( widget ) {
|
||||
this.setValue( widget.data.src );
|
||||
},
|
||||
commit: function( widget ) {
|
||||
widget.setData( 'src', this.getValue() );
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'button',
|
||||
id: 'browse',
|
||||
// v-align with the 'txtUrl' field.
|
||||
// TODO: We need something better than a fixed size here.
|
||||
style: 'display:inline-block;margin-top:14px;',
|
||||
align: 'center',
|
||||
label: editor.lang.common.browseServer,
|
||||
hidden: true,
|
||||
filebrowser: 'info:url'
|
||||
} ]
|
||||
} ]
|
||||
},
|
||||
{
|
||||
type: 'checkbox',
|
||||
id: 'responsive',
|
||||
label: editor.lang.html5video.responsive,
|
||||
setup: function( widget ) {
|
||||
this.setValue( widget.data.responsive );
|
||||
},
|
||||
commit: function( widget ) {
|
||||
widget.setData( 'responsive', this.getValue()?'true':'' );
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'vbox',
|
||||
padding: 0,
|
||||
|
||||
children: [{
|
||||
type: 'hbox',
|
||||
widths: [ '365px', '110px' ],
|
||||
align: 'right',
|
||||
children: [ {
|
||||
type: 'text',
|
||||
id: 'poster',
|
||||
label: editor.lang.html5video.poster,
|
||||
setup: function( widget ) {
|
||||
this.setValue( widget.data.poster );
|
||||
},
|
||||
commit: function( widget ) {
|
||||
widget.setData( 'poster', this.getValue() );
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'button',
|
||||
id: 'browseposter',
|
||||
// v-align with the 'txtUrl' field.
|
||||
// TODO: We need something better than a fixed size here.
|
||||
style: 'display:inline-block;margin-top:14px;',
|
||||
align: 'center',
|
||||
label: editor.lang.common.browseServer,
|
||||
hidden: true,
|
||||
filebrowser:{action:"Browse",target:"info:poster",url:editor.config.filebrowserImageBrowseUrl}
|
||||
} ]
|
||||
}]
|
||||
},
|
||||
{
|
||||
type: 'checkbox',
|
||||
id: 'controls',
|
||||
label: editor.lang.html5video.controls,
|
||||
setup: function (widget) {
|
||||
this.setValue(widget.data.controls);
|
||||
},
|
||||
commit: function (widget) {
|
||||
widget.setData('controls', this.getValue() ? 'true' : '');
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'hbox',
|
||||
id: 'size',
|
||||
children: [ {
|
||||
type: 'text',
|
||||
id: 'width',
|
||||
label: editor.lang.common.width,
|
||||
setup: function( widget ) {
|
||||
if ( widget.data.width ) {
|
||||
this.setValue( widget.data.width );
|
||||
}
|
||||
},
|
||||
commit: function( widget ) {
|
||||
widget.setData( 'width', this.getValue() );
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'text',
|
||||
id: 'height',
|
||||
label: editor.lang.common.height,
|
||||
setup: function( widget ) {
|
||||
if ( widget.data.height ) {
|
||||
this.setValue( widget.data.height );
|
||||
}
|
||||
},
|
||||
commit: function( widget ) {
|
||||
widget.setData( 'height', this.getValue() );
|
||||
}
|
||||
},
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
type: 'hbox',
|
||||
id: 'alignment',
|
||||
children: [ {
|
||||
type: 'radio',
|
||||
id: 'align',
|
||||
label: editor.lang.common.align,
|
||||
items: [
|
||||
[editor.lang.common.alignCenter, 'center'],
|
||||
[editor.lang.common.alignLeft, 'left'],
|
||||
[editor.lang.common.alignRight, 'right'],
|
||||
[editor.lang.common.alignNone, 'none']
|
||||
],
|
||||
'default': 'center',
|
||||
setup: function( widget ) {
|
||||
if ( widget.data.align ) {
|
||||
this.setValue( widget.data.align );
|
||||
}
|
||||
},
|
||||
commit: function( widget ) {
|
||||
widget.setData( 'align', this.getValue() );
|
||||
}
|
||||
} ]
|
||||
} ]
|
||||
},
|
||||
{
|
||||
id: 'Upload',
|
||||
hidden: true,
|
||||
filebrowser: 'uploadButton',
|
||||
label: editor.lang.html5video.upload,
|
||||
elements: [ {
|
||||
type: 'file',
|
||||
id: 'upload',
|
||||
label: editor.lang.html5video.btnUpload,
|
||||
style: 'height:40px',
|
||||
size: 38
|
||||
},
|
||||
{
|
||||
type: 'fileButton',
|
||||
id: 'uploadButton',
|
||||
filebrowser: 'info:url',
|
||||
label: editor.lang.html5video.btnUpload,
|
||||
'for': [ 'Upload', 'upload' ]
|
||||
} ]
|
||||
},
|
||||
{
|
||||
id: 'advanced',
|
||||
label: editor.lang.html5video.advanced,
|
||||
elements: [ {
|
||||
type: 'vbox',
|
||||
padding: 10,
|
||||
children: [ {
|
||||
type: 'hbox',
|
||||
widths: ["33%", "33%", "33%"],
|
||||
children: [ {
|
||||
type: 'radio',
|
||||
id: 'autoplay',
|
||||
label: editor.lang.html5video.autoplay,
|
||||
items: [
|
||||
[editor.lang.html5video.yes, 'yes'],
|
||||
[editor.lang.html5video.no, 'no']
|
||||
],
|
||||
'default': 'no',
|
||||
setup: function( widget ) {
|
||||
if ( widget.data.autoplay ) {
|
||||
this.setValue( widget.data.autoplay );
|
||||
}
|
||||
},
|
||||
commit: function( widget ) {
|
||||
widget.setData( 'autoplay', this.getValue() );
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'radio',
|
||||
id: 'loop',
|
||||
label: editor.lang.html5video.loop,
|
||||
items: [
|
||||
[editor.lang.html5video.yes, 'yes'],
|
||||
[editor.lang.html5video.no, 'no']
|
||||
],
|
||||
'default': 'no',
|
||||
setup: function( widget ) {
|
||||
if ( widget.data.loop ) {
|
||||
this.setValue( widget.data.loop );
|
||||
}
|
||||
},
|
||||
commit: function( widget ) {
|
||||
widget.setData( 'loop', this.getValue() );
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'radio',
|
||||
id: 'allowdownload',
|
||||
label: editor.lang.html5video.allowdownload,
|
||||
items: [
|
||||
[editor.lang.html5video.yes, 'yes'],
|
||||
[editor.lang.html5video.no, 'no']
|
||||
],
|
||||
'default': 'no',
|
||||
setup: function( widget ) {
|
||||
if ( widget.data.allowdownload ) {
|
||||
this.setValue(widget.data.allowdownload);
|
||||
}
|
||||
},
|
||||
commit: function( widget ) {
|
||||
widget.setData( 'allowdownload', this.getValue() );
|
||||
}
|
||||
} ]
|
||||
},
|
||||
{
|
||||
type: 'hbox',
|
||||
children: [ {
|
||||
type: "text",
|
||||
id: 'advisorytitle',
|
||||
label: editor.lang.html5video.advisorytitle,
|
||||
'default': '',
|
||||
setup: function( widget ) {
|
||||
if ( widget.data.advisorytitle ) {
|
||||
this.setValue(widget.data.advisorytitle);
|
||||
}
|
||||
},
|
||||
commit: function( widget ) {
|
||||
widget.setData( 'advisorytitle', this.getValue() );
|
||||
}
|
||||
} ]
|
||||
} ]
|
||||
} ]
|
||||
} ]
|
||||
};
|
||||
} );
|
Before Width: | Height: | Size: 14 KiB |
@ -1,20 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'bg', {
|
||||
button: 'Вмъква HTML5 видео',
|
||||
title: 'HTML5 видео',
|
||||
infoLabel: 'Видео',
|
||||
allowed: 'Допустими файлови разширения: MP4, WebM, Ogv',
|
||||
urlMissing: 'URL адресът на източника на видео липсва.',
|
||||
videoProperties: 'Свойства на видео',
|
||||
upload: 'Качване',
|
||||
btnUpload: 'Изпрати на сървъра',
|
||||
advanced: 'Разширено',
|
||||
autoplay: 'Автоматично изпълнение',
|
||||
allowdownload: 'Позволено изтегляне?',
|
||||
advisorytitle: 'Заглавие',
|
||||
yes: 'Да',
|
||||
no: 'Не',
|
||||
loop: 'Циклично изпълнение',
|
||||
responsive: 'Адаптивна ширина',
|
||||
controls: 'Показване на контролите',
|
||||
poster: 'URL миниатюра'
|
||||
} );
|
@ -1,20 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'ca', {
|
||||
button: "Insereix un vídeo HTML5",
|
||||
title: "Vídeo HTML5",
|
||||
infoLabel: "Informació del vídeo",
|
||||
allowed: "Extensions d'arxius permeses: MP4, WebM, Ogv",
|
||||
urlMissing: "Falta l'URL de la font de vídeo.",
|
||||
videoProperties: "Propietats de vídeo",
|
||||
upload: "Pujar",
|
||||
btnUpload: "Envia-lo al servidor",
|
||||
advanced: "Avançat",
|
||||
autoplay: "Reproducció automàtica?",
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: "Sí",
|
||||
no: "No",
|
||||
loop: "Bucle?",
|
||||
responsive: "Ample adaptatiu",
|
||||
controls: "Mostra els controls",
|
||||
poster: "Miniatura"
|
||||
} );
|
@ -1,17 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'de', {
|
||||
button: 'HTML5 Video einfügen',
|
||||
title: 'HTML5 Video',
|
||||
infoLabel: 'Video Infos',
|
||||
allowed: 'Erlaubte Dateierweiterungen: MP4, WebM, Ogv',
|
||||
urlMissing: 'Sie haben keine URL zur Video-Datei angegeben.',
|
||||
videoProperties: 'Video-Einstellungen',
|
||||
upload: 'Hochladen',
|
||||
btnUpload: 'Zum Server senden',
|
||||
advanced: 'Erweitert',
|
||||
autoplay: 'Autoplay?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'Ja',
|
||||
no: 'Nein',
|
||||
controls: 'Steuerelemente anzeigen'
|
||||
} );
|
@ -1,20 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'en', {
|
||||
button: 'Insert HTML5 video',
|
||||
title: 'HTML5 video',
|
||||
infoLabel: 'Video info',
|
||||
allowed: 'Allowed file extensions: MP4, WebM, Ogv',
|
||||
urlMissing: 'Video source URL is missing.',
|
||||
videoProperties: 'Video properties',
|
||||
upload: 'Upload',
|
||||
btnUpload: 'Send it to the server',
|
||||
advanced: 'Advanced',
|
||||
autoplay: 'Autoplay?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'Yes',
|
||||
no: 'No',
|
||||
loop: 'Loop?',
|
||||
responsive: 'Responsive width',
|
||||
controls: 'Show controls',
|
||||
poster: 'Thumbnail'
|
||||
} );
|
@ -1,18 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'es', {
|
||||
button: 'Insertar video HTML5',
|
||||
title: 'Video HTML5',
|
||||
infoLabel: 'Información del video',
|
||||
allowed: 'Extensiones de archivo permitidas: MP4, WebM, Ogv',
|
||||
urlMissing: 'La URL del video no puede estar vacía.',
|
||||
videoProperties: 'Propiedades del video',
|
||||
upload: 'Cargar',
|
||||
btnUpload: 'Enviar al servidor',
|
||||
advanced: 'Avanzado',
|
||||
autoplay: '¿Reproducir automáticamente?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'Sí',
|
||||
no: 'No',
|
||||
responsive: '¿Responsive?',
|
||||
controls: 'Mostrar controles'
|
||||
} );
|
@ -1,17 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'eu', {
|
||||
button: 'Txertatu HTML5 bideoa',
|
||||
title: 'HTML5 bideoa',
|
||||
infoLabel: 'Bideoaren informazioa',
|
||||
allowed: 'Baimendutako fitxategi luzapenak: MP4, WebM, Ogv',
|
||||
urlMissing: 'Bideoaren URLak ezin du hutsik egon.',
|
||||
videoProperties: 'Bideoaren propietateak',
|
||||
upload: 'Kargatu',
|
||||
btnUpload: 'Bidali zerbitzarira',
|
||||
advanced: 'Aurreratua',
|
||||
autoplay: 'Automatikoki erreproduzitu?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'Bai',
|
||||
no: 'Ez',
|
||||
controls: 'Erakutsi kontrolak?'
|
||||
} );
|
@ -1,18 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'fa', {
|
||||
button: 'وارد کردن ویدیوی HTML5',
|
||||
title: 'ویدیوی HTML5',
|
||||
infoLabel: 'اطلاعات ویدیو',
|
||||
allowed: 'پسوندهای مجاز فایل: MP4, WebM, Ogv',
|
||||
urlMissing: 'URL منبع ویدیو پیدا نشد.',
|
||||
videoProperties: 'خواهص ویدیو',
|
||||
upload: 'بارگذاری',
|
||||
btnUpload: 'ارسال به سرور',
|
||||
advanced: 'پیشرفته',
|
||||
autoplay: 'پخش خودکار؟',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'بله',
|
||||
no: 'خیر',
|
||||
responsive: 'عرض واکنشگرا',
|
||||
controls: 'نمایش کنترل؟'
|
||||
} );
|
@ -1,17 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'fr', {
|
||||
button: 'Insérer un lecteur video HTML5',
|
||||
title: 'HTML5 video',
|
||||
infoLabel: 'Informations video',
|
||||
allowed: 'Extensions de fichiers autorisées: MP4, WebM, Ogv',
|
||||
urlMissing: 'URL de la source video manquante. Veuillez la renseigner.',
|
||||
videoProperties: 'Propriétés Video',
|
||||
upload: 'Télécharger',
|
||||
btnUpload: 'Envoyer vers le serveur',
|
||||
advanced: 'Avancé',
|
||||
autoplay: 'Jouer automatiquement ?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'Oui',
|
||||
no: 'Non',
|
||||
controls: 'Afficher les contrôles ?'
|
||||
} );
|
@ -1,18 +0,0 @@
|
||||
|
||||
CKEDITOR.plugins.setLang('html5video', 'he', {
|
||||
button: 'הוסף וידאו HTML5',
|
||||
title: 'וידאו HTML5',
|
||||
infoLabel: 'מידע וידאו',
|
||||
allowed: 'סוגי קבצים מורשים: MP4, WebM, Ogv',
|
||||
urlMissing: 'כתובת הוידאו חסרה',
|
||||
videoProperties: 'מאפייני וידאו',
|
||||
upload: 'העלה',
|
||||
btnUpload: 'שלח לשרת',
|
||||
advanced: 'מתקדם',
|
||||
autoplay: 'ניגון אוטומטי?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'כן',
|
||||
no: 'לא',
|
||||
responsive: 'רוחב רספונסיבי'
|
||||
});
|
@ -1,20 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'ko', {
|
||||
button: 'HTML5 비디오 추가하기',
|
||||
title: 'HTML5 비디오',
|
||||
infoLabel: '비디오 정보',
|
||||
allowed: '허용된 파일 확장자들: MP4, WebM, Ogv',
|
||||
urlMissing: '비디오 Url이 없습니다.',
|
||||
videoProperties: '비디오 속성',
|
||||
upload: '업로드',
|
||||
btnUpload: '서버로 전송',
|
||||
advanced: '고급',
|
||||
autoplay: '자동재생?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: '네',
|
||||
no: '아니오',
|
||||
loop: '무한반복?',
|
||||
responsive: '반응형 너비',
|
||||
controls: '컨트롤 보여주기',
|
||||
poster: '썸네일'
|
||||
} );
|
@ -1,18 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'pl', {
|
||||
button: 'Wstaw HTML5 video',
|
||||
title: 'HTML5 video',
|
||||
infoLabel: 'Informacje',
|
||||
allowed: 'Dozwolone typy plików: MP4, WebM, Ogv',
|
||||
urlMissing: 'Nie znaleziono URL do pliku video.',
|
||||
videoProperties: 'Właściwości',
|
||||
upload: 'Wrzuć plik',
|
||||
btnUpload: 'Wyślij na serwer',
|
||||
advanced: 'Zaawansowane',
|
||||
autoplay: 'Autoodtwarzanie?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'Tak',
|
||||
no: 'Nie',
|
||||
responsive: 'Szerokość responsywna',
|
||||
controls: 'Pokaż kontrolki'
|
||||
} );
|
@ -1,18 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'pt-br', {
|
||||
button: 'Inserir vídeo HTML5',
|
||||
title: 'HTML5 video',
|
||||
infoLabel: 'Informações do Vídeo',
|
||||
allowed: 'Extensões permitidas: MP4, WebM, Ogv',
|
||||
urlMissing: 'O URL do vídeo está faltando.',
|
||||
videoProperties: 'Propriedades do vídeo',
|
||||
upload: 'Upload',
|
||||
btnUpload: 'Enviar para o servidor',
|
||||
advanced: 'Avançado',
|
||||
autoplay: 'Autoplay?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'Sim',
|
||||
no: 'Não',
|
||||
responsive: 'Largura responsiva',
|
||||
controls: 'Exibir controles'
|
||||
} );
|
@ -1,18 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'pt', {
|
||||
button: 'Inserir vídeo HTML5',
|
||||
title: 'HTML5 video',
|
||||
infoLabel: 'Informações do Vídeo',
|
||||
allowed: 'Extensões permitidas: MP4, WebM, Ogv',
|
||||
urlMissing: 'O URL do vídeo está faltando.',
|
||||
videoProperties: 'Propriedades do vídeo',
|
||||
upload: 'Upload',
|
||||
btnUpload: 'Enviar para o servidor',
|
||||
advanced: 'Avançado',
|
||||
autoplay: 'Autoplay?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'Sim',
|
||||
no: 'Não',
|
||||
responsive: 'Largura responsiva',
|
||||
controls: 'Exibir controles'
|
||||
} );
|
@ -1,21 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'ru', {
|
||||
button: 'Вставить HTML5 видео',
|
||||
title: 'HTML5 видео',
|
||||
infoLabel: 'Видео',
|
||||
allowed: 'Допустимые расширения файлов: MP4, WebM, Ogv',
|
||||
urlMissing: 'Не выбран источник видео',
|
||||
videoProperties: 'Свойства видео',
|
||||
upload: 'Загрузить',
|
||||
btnUpload: 'Загрузить на сервер',
|
||||
advanced: 'Дополнительно',
|
||||
autoplay: 'Автовоспроизведение',
|
||||
allowdownload: 'Разрешить загрузку',
|
||||
advisorytitle: 'Заголовок',
|
||||
yes: 'Да',
|
||||
no: 'Нет',
|
||||
responsive: 'Адаптивная ширина',
|
||||
controls: 'Показать элементы управления',
|
||||
loop: 'Зациклить',
|
||||
poster: 'Постер',
|
||||
advisorytitle: 'Пояснительный текст'
|
||||
} );
|
@ -1,17 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'uk', {
|
||||
button: 'Вставити HTML5 відео',
|
||||
title: 'HTML5 відео',
|
||||
infoLabel: 'Інформація',
|
||||
allowed: 'Допустимі розширення файлів: MP4, WebM, Ogv',
|
||||
urlMissing: 'Не обрано джерела відео',
|
||||
videoProperties: 'Властивості відео',
|
||||
upload: 'Відвантажити',
|
||||
btnUpload: 'Відвантажити на сервер',
|
||||
advanced: 'Додатково',
|
||||
autoplay: 'Автовідтворення?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'Так',
|
||||
no: 'Ні',
|
||||
controls: 'Показати елементи керування?'
|
||||
} );
|
@ -1,17 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'uz', {
|
||||
button: 'HTML5 video qo‘shing',
|
||||
title: 'HTML5 video',
|
||||
infoLabel: 'Video ma\'lumot',
|
||||
allowed: 'Ruxsat etilgan kengaytmalar: MP4, WebM, Ogv',
|
||||
urlMissing: 'Video\'ning URL manbasi topilmadi.',
|
||||
videoProperties: 'Video xususiyatlari',
|
||||
upload: 'Yuklash',
|
||||
btnUpload: 'Serverga jo‘natish',
|
||||
advanced: 'Kengaytrilgan',
|
||||
autoplay: 'Avtoijro?',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: 'Ha',
|
||||
no: 'Yo‘q',
|
||||
controls: 'Tekshiruvlarni ko‘rsatish'
|
||||
} );
|
@ -1,18 +0,0 @@
|
||||
CKEDITOR.plugins.setLang( 'html5video', 'zh-cn', {
|
||||
button: '发布HTML5视频',
|
||||
title: 'HTML5视频',
|
||||
infoLabel: '视频信息',
|
||||
allowed: '支持格式: MP4, WebM, Ogv',
|
||||
urlMissing: '视频url',
|
||||
videoProperties: '视频属性',
|
||||
upload: '上传视频',
|
||||
btnUpload: '上传',
|
||||
advanced: '高级',
|
||||
autoplay: '自动播放',
|
||||
allowdownload: 'Allow download?',
|
||||
advisorytitle: 'Advisory title',
|
||||
yes: '是',
|
||||
no: '否',
|
||||
responsive: '自动宽度',
|
||||
controls: '显示控件?'
|
||||
} );
|
@ -1,196 +0,0 @@
|
||||
CKEDITOR.plugins.add( 'html5video', {
|
||||
requires: 'widget',
|
||||
lang: 'bg,ca,de,en,eu,es,ru,uk,fr,ko,pt,pt-br,pl',
|
||||
icons: 'html5video',
|
||||
init: function( editor ) {
|
||||
editor.widgets.add( 'html5video', {
|
||||
button: editor.lang.html5video.button,
|
||||
template: '<div class="ckeditor-html5-video"></div>',
|
||||
/*
|
||||
* Allowed content rules (http://docs.ckeditor.com/#!/guide/dev_allowed_content_rules):
|
||||
* - div-s with text-align,float,margin-left,margin-right inline style rules and required ckeditor-html5-video class.
|
||||
* - video tags with src, controls, width and height attributes.
|
||||
*/
|
||||
allowedContent: 'div[data-responsive](!ckeditor-html5-video){text-align,float,margin-left,margin-right}; video[src,poster,controls,autoplay,width, height,loop]{max-width,height};',
|
||||
requiredContent: 'div(ckeditor-html5-video); video[src];',
|
||||
upcast: function( element ) {
|
||||
return element.name === 'div' && element.hasClass( 'ckeditor-html5-video' );
|
||||
},
|
||||
dialog: 'html5video',
|
||||
init: function() {
|
||||
var src = '';
|
||||
var autoplay = '';
|
||||
var loop = '';
|
||||
var controls = '';
|
||||
var align = this.element.getStyle( 'text-align' );
|
||||
|
||||
var width = '';
|
||||
var height = '';
|
||||
var poster = '';
|
||||
|
||||
// If there's a child (the video element)
|
||||
if ( this.element.getChild( 0 ) ) {
|
||||
// get it's attributes.
|
||||
src = this.element.getChild( 0 ).getAttribute( 'src' );
|
||||
width = this.element.getChild( 0 ).getAttribute( 'width' );
|
||||
height = this.element.getChild( 0 ).getAttribute( 'height' );
|
||||
autoplay = this.element.getChild(0).getAttribute('autoplay');
|
||||
allowdownload = !this.element.getChild( 0 ).getAttribute( 'controlslist' );
|
||||
loop = this.element.getChild( 0 ).getAttribute( 'loop' );
|
||||
advisorytitle = this.element.getChild( 0 ).getAttribute( 'title' );
|
||||
controls = this.element.getChild(0).getAttribute('controls');
|
||||
responsive = this.element.getAttribute( 'data-responsive' );
|
||||
poster = this.element.getChild( 0 ).getAttribute( 'poster' );
|
||||
}
|
||||
|
||||
if ( src ) {
|
||||
this.setData( 'src', src );
|
||||
|
||||
if ( align ) {
|
||||
this.setData( 'align', align );
|
||||
} else {
|
||||
this.setData( 'align', 'none' );
|
||||
}
|
||||
|
||||
if ( width ) {
|
||||
this.setData( 'width', width );
|
||||
}
|
||||
|
||||
if ( height ) {
|
||||
this.setData( 'height', height );
|
||||
}
|
||||
|
||||
if ( autoplay ) {
|
||||
this.setData( 'autoplay', 'yes' );
|
||||
}
|
||||
|
||||
if ( allowdownload ) {
|
||||
this.setData( 'allowdownload', 'yes' );
|
||||
}
|
||||
|
||||
if ( loop ) {
|
||||
this.setData( 'loop', 'yes' );
|
||||
}
|
||||
|
||||
if ( advisorytitle ) {
|
||||
this.setData( 'advisorytitle', advisorytitle );
|
||||
}
|
||||
|
||||
if ( responsive ) {
|
||||
this.setData( 'responsive', responsive );
|
||||
}
|
||||
|
||||
if (controls) {
|
||||
this.setData('controls', controls);
|
||||
}
|
||||
|
||||
if ( poster ) {
|
||||
this.setData('poster', poster);
|
||||
}
|
||||
}
|
||||
},
|
||||
data: function() {
|
||||
// If there is an video source
|
||||
if ( this.data.src ) {
|
||||
// and there isn't a child (the video element)
|
||||
if ( !this.element.getChild( 0 ) ) {
|
||||
// Create a new <video> element.
|
||||
var videoElement = new CKEDITOR.dom.element( 'video' );
|
||||
// Set the controls attribute.
|
||||
if (this.data.controls) {
|
||||
videoElement.setAttribute('controls', 'controls');
|
||||
}
|
||||
// Append it to the container of the plugin.
|
||||
this.element.append( videoElement );
|
||||
}
|
||||
this.element.getChild( 0 ).setAttribute( 'src', this.data.src );
|
||||
if (this.data.width) this.element.getChild( 0 ).setAttribute( 'width', this.data.width );
|
||||
if (this.data.height) this.element.getChild( 0 ).setAttribute( 'height', this.data.height );
|
||||
|
||||
if ( this.data.responsive ) {
|
||||
this.element.setAttribute("data-responsive", this.data.responsive);
|
||||
this.element.getChild( 0 ).setStyle( 'max-width', '100%' );
|
||||
this.element.getChild( 0 ).setStyle( 'height', 'auto' );
|
||||
} else {
|
||||
this.element.removeAttribute("data-responsive");
|
||||
this.element.getChild( 0 ).removeStyle( 'max-width' );
|
||||
this.element.getChild( 0 ).removeStyle( 'height' );
|
||||
}
|
||||
|
||||
if (this.data.poster) this.element.getChild( 0 ).setAttribute('poster', this.data.poster);
|
||||
}
|
||||
|
||||
this.element.removeStyle( 'float' );
|
||||
this.element.removeStyle( 'margin-left' );
|
||||
this.element.removeStyle( 'margin-right' );
|
||||
|
||||
if ( this.data.align === 'none' ) {
|
||||
this.element.removeStyle( 'text-align' );
|
||||
} else {
|
||||
this.element.setStyle( 'text-align', this.data.align );
|
||||
}
|
||||
|
||||
if ( this.data.align === 'left' ) {
|
||||
this.element.setStyle( 'float', this.data.align );
|
||||
this.element.setStyle( 'margin-right', '10px' );
|
||||
} else if ( this.data.align === 'right' ) {
|
||||
this.element.setStyle( 'float', this.data.align );
|
||||
this.element.setStyle( 'margin-left', '10px' );
|
||||
}
|
||||
|
||||
if ( this.element.getChild( 0 ) ) {
|
||||
if ( this.data.autoplay === 'yes' ) {
|
||||
this.element.getChild( 0 ).setAttribute( 'autoplay', 'autoplay' );
|
||||
} else {
|
||||
this.element.getChild( 0 ).removeAttribute( 'autoplay' );
|
||||
}
|
||||
|
||||
if ( this.data.loop === 'yes' ) {
|
||||
this.element.getChild( 0 ).setAttribute( 'loop', 'loop' );
|
||||
} else {
|
||||
this.element.getChild( 0 ).removeAttribute( 'loop' );
|
||||
}
|
||||
|
||||
if ( this.data.allowdownload === 'yes' ) {
|
||||
this.element.getChild( 0 ).removeAttribute( 'controlslist' );
|
||||
} else {
|
||||
this.element.getChild( 0 ).setAttribute( 'controlslist', 'nodownload' );
|
||||
}
|
||||
|
||||
if ( this.data.advisorytitle ) {
|
||||
this.element.getChild( 0 ).setAttribute( 'title', this.data.advisorytitle );
|
||||
} else {
|
||||
this.element.getChild( 0 ).removeAttribute( 'title' );
|
||||
}
|
||||
|
||||
if (this.data.controls) {
|
||||
this.element.getChild(0).setAttribute('controls', 'controls');
|
||||
} else {
|
||||
this.element.getChild(0).removeAttribute('controls');
|
||||
}
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
if ( editor.contextMenu ) {
|
||||
editor.addMenuGroup( 'html5videoGroup' );
|
||||
editor.addMenuItem( 'html5videoPropertiesItem', {
|
||||
label: editor.lang.html5video.videoProperties,
|
||||
icon: 'html5video',
|
||||
command: 'html5video',
|
||||
group: 'html5videoGroup'
|
||||
});
|
||||
|
||||
editor.contextMenu.addListener( function( element ) {
|
||||
if ( element &&
|
||||
element.getChild( 0 ) &&
|
||||
element.getChild( 0 ).hasClass &&
|
||||
element.getChild( 0 ).hasClass( 'ckeditor-html5-video' ) ) {
|
||||
return { html5videoPropertiesItem: CKEDITOR.TRISTATE_OFF };
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
CKEDITOR.dialog.add( 'html5video', this.path + 'dialogs/html5video.js' );
|
||||
}
|
||||
} );
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 816 B After Width: | Height: | Size: 816 B |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 905 B After Width: | Height: | Size: 905 B |
Before Width: | Height: | Size: 498 B After Width: | Height: | Size: 498 B |
Before Width: | Height: | Size: 533 B After Width: | Height: | Size: 533 B |
Before Width: | Height: | Size: 576 B After Width: | Height: | Size: 576 B |
Before Width: | Height: | Size: 569 B After Width: | Height: | Size: 569 B |
Before Width: | Height: | Size: 549 B After Width: | Height: | Size: 549 B |
Before Width: | Height: | Size: 315 B After Width: | Height: | Size: 315 B |
Before Width: | Height: | Size: 564 B After Width: | Height: | Size: 564 B |