mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-18 07:23:13 +00:00
Fix latest merge
This commit is contained in:
@@ -25,8 +25,6 @@ before_script:
|
||||
- echo 'extension="memcached.so"' > ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/memcached.ini
|
||||
- echo "extension=zmq.so" > ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/zmq.ini
|
||||
- yes | pecl install imagick
|
||||
- travis_retry composer self-update
|
||||
- travis_retry composer install --dev --prefer-source
|
||||
- wget http://sphinxsearch.com/files/sphinx-2.0.6-release.tar.gz
|
||||
- tar xzf sphinx-2.0.6-release.tar.gz
|
||||
- sh -c "cd sphinx-2.0.6-release && wget http://snowball.tartarus.org/dist/libstemmer_c.tgz && tar xzf libstemmer_c.tgz && ./configure --with-libstemmer --with-iconv --with-mysql --enable-id64 --quiet && make -j --quiet && sudo make install"
|
||||
@@ -53,8 +51,10 @@ matrix:
|
||||
- php: 5.6
|
||||
|
||||
script:
|
||||
- travis_retry composer install --dev --prefer-source -vvv
|
||||
- travis_retry grunt install-assets -vvv
|
||||
- bin/developer assets:compile-less
|
||||
- bin/developer system:uninstall
|
||||
- travis_retry bin/developer dependencies:all --prefer-source
|
||||
- sh -c " if [ '$SETUP_MODE' = 'update' ]; then
|
||||
cp hudson/connexion.inc config/;
|
||||
cp hudson/_GV.php config/;
|
||||
|
@@ -43,7 +43,6 @@ module.exports = function(grunt) {
|
||||
components: {
|
||||
"jquery.ui": ["npm", {"../../node_modules/.bin/grunt": "build"}],
|
||||
"jquery-mobile": ["npm", {"../../node_modules/.bin/grunt": "dist"}],
|
||||
// "tinymce": ["npm", {"../../node_modules/.bin/jake":""}],
|
||||
"bootstrap": ["npm", {"make": "bootstrap"}],
|
||||
"autobahnjs": [{"make":"build"}]
|
||||
}
|
||||
|
@@ -81,7 +81,7 @@
|
||||
"vierbergenlars/php-semver" : "~2.1",
|
||||
"zend/gdata" : "~1.12.1",
|
||||
"doctrine/migrations" : "1.0.x-dev@dev",
|
||||
willdurand/negotiation" : "~1.3"
|
||||
"willdurand/negotiation" : "~1.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit" : "~3.7",
|
||||
|
289
composer.lock
generated
289
composer.lock
generated
@@ -4,16 +4,22 @@
|
||||
"Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"hash": "81820d7853d2c85cbb34fc57910d6963",
|
||||
"hash": "2ddab4a9d0ebb3a7ff949171dd62a1d2",
|
||||
"packages": [
|
||||
{
|
||||
"name": "alchemy-fr/tcpdf-clone",
|
||||
"version": "6.0.039",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/alchemy-fr/tcpdf-clone",
|
||||
"url": "https://github.com/alchemy-fr/tcpdf-clone.git",
|
||||
"reference": "2ba0248a7187f1626df6c128750650416267f0e7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/alchemy-fr/tcpdf-clone/zipball/2ba0248a7187f1626df6c128750650416267f0e7",
|
||||
"reference": "2ba0248a7187f1626df6c128750650416267f0e7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.0"
|
||||
},
|
||||
@@ -60,6 +66,10 @@
|
||||
"qrcode",
|
||||
"tcpdf"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/alchemy-fr/tcpdf-clone/tree/6.0.039",
|
||||
"issues": "https://github.com/alchemy-fr/tcpdf-clone/issues"
|
||||
},
|
||||
"time": "2013-10-13 16:11:17"
|
||||
},
|
||||
{
|
||||
@@ -103,7 +113,7 @@
|
||||
"homepage": "http://www.lickmychip.com/"
|
||||
},
|
||||
{
|
||||
"name": "Nicolas Le Goff",
|
||||
"name": "nlegoff",
|
||||
"email": "legoff.n@gmail.com"
|
||||
},
|
||||
{
|
||||
@@ -291,7 +301,7 @@
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"time": "2014-07-07 14:01:51"
|
||||
"time": "2014-07-07 16:25:07"
|
||||
},
|
||||
{
|
||||
"name": "alchemy/task-manager",
|
||||
@@ -362,12 +372,12 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/alchemy-fr/Zippy.git",
|
||||
"reference": "8ccc695f66c3b61ffdb3b9e88474602da52401ae"
|
||||
"reference": "d2f5e88f2436b9c1294e8819d951822abe39e9a7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/alchemy-fr/Zippy/zipball/8ccc695f66c3b61ffdb3b9e88474602da52401ae",
|
||||
"reference": "8ccc695f66c3b61ffdb3b9e88474602da52401ae",
|
||||
"url": "https://api.github.com/repos/alchemy-fr/Zippy/zipball/d2f5e88f2436b9c1294e8819d951822abe39e9a7",
|
||||
"reference": "d2f5e88f2436b9c1294e8819d951822abe39e9a7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -416,19 +426,19 @@
|
||||
"tar",
|
||||
"zip"
|
||||
],
|
||||
"time": "2014-02-18 22:09:18"
|
||||
"time": "2014-05-05 13:39:00"
|
||||
},
|
||||
{
|
||||
"name": "cboden/ratchet",
|
||||
"version": "v0.3.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/cboden/Ratchet.git",
|
||||
"url": "https://github.com/ratchetphp/Ratchet.git",
|
||||
"reference": "d756e0b507a5f3cdbf8c59dbb7baf68574dc7d58"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/cboden/Ratchet/zipball/d756e0b507a5f3cdbf8c59dbb7baf68574dc7d58",
|
||||
"url": "https://api.github.com/repos/ratchetphp/Ratchet/zipball/d756e0b507a5f3cdbf8c59dbb7baf68574dc7d58",
|
||||
"reference": "d756e0b507a5f3cdbf8c59dbb7baf68574dc7d58",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -547,16 +557,16 @@
|
||||
},
|
||||
{
|
||||
"name": "doctrine/annotations",
|
||||
"version": "v1.1.2",
|
||||
"version": "v1.2.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/doctrine/annotations.git",
|
||||
"reference": "40db0c96985aab2822edbc4848b3bd2429e02670"
|
||||
"reference": "d9b1a37e9351ddde1f19f09a02e3d6ee92e82efd"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/doctrine/annotations/zipball/40db0c96985aab2822edbc4848b3bd2429e02670",
|
||||
"reference": "40db0c96985aab2822edbc4848b3bd2429e02670",
|
||||
"url": "https://api.github.com/repos/doctrine/annotations/zipball/d9b1a37e9351ddde1f19f09a02e3d6ee92e82efd",
|
||||
"reference": "d9b1a37e9351ddde1f19f09a02e3d6ee92e82efd",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -564,12 +574,13 @@
|
||||
"php": ">=5.3.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"doctrine/cache": "1.*"
|
||||
"doctrine/cache": "1.*",
|
||||
"phpunit/phpunit": "4.*"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.0.x-dev"
|
||||
"dev-master": "1.3.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
@@ -585,7 +596,8 @@
|
||||
{
|
||||
"name": "Jonathan Wage",
|
||||
"email": "jonwage@gmail.com",
|
||||
"homepage": "http://www.jwage.com/"
|
||||
"homepage": "http://www.jwage.com/",
|
||||
"role": "Creator"
|
||||
},
|
||||
{
|
||||
"name": "Guilherme Blanco",
|
||||
@@ -603,7 +615,7 @@
|
||||
{
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -614,7 +626,7 @@
|
||||
"docblock",
|
||||
"parser"
|
||||
],
|
||||
"time": "2013-06-16 21:33:03"
|
||||
"time": "2014-07-06 15:52:21"
|
||||
},
|
||||
{
|
||||
"name": "doctrine/cache",
|
||||
@@ -678,7 +690,7 @@
|
||||
{
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -745,7 +757,7 @@
|
||||
{
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -760,16 +772,16 @@
|
||||
},
|
||||
{
|
||||
"name": "doctrine/common",
|
||||
"version": "v2.4.1",
|
||||
"version": "v2.4.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/doctrine/common.git",
|
||||
"reference": "ceb18cf9b0230f3ea208b6238130fd415abda0a7"
|
||||
"reference": "5db6ab40e4c531f14dad4ca96a394dfce5d4255b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/doctrine/common/zipball/ceb18cf9b0230f3ea208b6238130fd415abda0a7",
|
||||
"reference": "ceb18cf9b0230f3ea208b6238130fd415abda0a7",
|
||||
"url": "https://api.github.com/repos/doctrine/common/zipball/5db6ab40e4c531f14dad4ca96a394dfce5d4255b",
|
||||
"reference": "5db6ab40e4c531f14dad4ca96a394dfce5d4255b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -780,6 +792,9 @@
|
||||
"doctrine/lexer": "1.*",
|
||||
"php": ">=5.3.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~3.7"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
@@ -799,7 +814,8 @@
|
||||
{
|
||||
"name": "Jonathan Wage",
|
||||
"email": "jonwage@gmail.com",
|
||||
"homepage": "http://www.jwage.com/"
|
||||
"homepage": "http://www.jwage.com/",
|
||||
"role": "Creator"
|
||||
},
|
||||
{
|
||||
"name": "Guilherme Blanco",
|
||||
@@ -817,7 +833,7 @@
|
||||
{
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -830,7 +846,7 @@
|
||||
"persistence",
|
||||
"spl"
|
||||
],
|
||||
"time": "2013-09-07 10:20:34"
|
||||
"time": "2014-05-21 19:28:51"
|
||||
},
|
||||
{
|
||||
"name": "doctrine/dbal",
|
||||
@@ -929,7 +945,8 @@
|
||||
{
|
||||
"name": "Jonathan Wage",
|
||||
"email": "jonwage@gmail.com",
|
||||
"homepage": "http://www.jwage.com/"
|
||||
"homepage": "http://www.jwage.com/",
|
||||
"role": "Creator"
|
||||
},
|
||||
{
|
||||
"name": "Guilherme Blanco",
|
||||
@@ -947,7 +964,7 @@
|
||||
{
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -1001,7 +1018,7 @@
|
||||
{
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -1019,12 +1036,12 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/doctrine/migrations.git",
|
||||
"reference": "0742fc7167a4deedaabc8639849a3e71082999f1"
|
||||
"reference": "4256449c5e2603a6b6ee5a78c7c4521d4d4430b8"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/doctrine/migrations/zipball/0742fc7167a4deedaabc8639849a3e71082999f1",
|
||||
"reference": "0742fc7167a4deedaabc8639849a3e71082999f1",
|
||||
"url": "https://api.github.com/repos/doctrine/migrations/zipball/4256449c5e2603a6b6ee5a78c7c4521d4d4430b8",
|
||||
"reference": "4256449c5e2603a6b6ee5a78c7c4521d4d4430b8",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1055,7 +1072,7 @@
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Jonathan H. Wage",
|
||||
"name": "Jonathan Wage",
|
||||
"email": "jonwage@gmail.com",
|
||||
"homepage": "http://www.jwage.com/",
|
||||
"role": "Creator"
|
||||
@@ -1071,7 +1088,7 @@
|
||||
"database",
|
||||
"migrations"
|
||||
],
|
||||
"time": "2014-01-20 11:29:43"
|
||||
"time": "2014-07-09 07:58:02"
|
||||
},
|
||||
{
|
||||
"name": "doctrine/orm",
|
||||
@@ -1211,13 +1228,13 @@
|
||||
"version": "v1.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/igorw/evenement",
|
||||
"reference": "v1.0.0"
|
||||
"url": "https://github.com/igorw/evenement.git",
|
||||
"reference": "fa966683e7df3e5dd5929d984a44abfbd6bafe8d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://github.com/igorw/evenement/zipball/v1.0.0",
|
||||
"reference": "v1.0.0",
|
||||
"url": "https://api.github.com/repos/igorw/evenement/zipball/fa966683e7df3e5dd5929d984a44abfbd6bafe8d",
|
||||
"reference": "fa966683e7df3e5dd5929d984a44abfbd6bafe8d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1244,7 +1261,7 @@
|
||||
"keywords": [
|
||||
"event-dispatcher"
|
||||
],
|
||||
"time": "2012-05-30 08:01:08"
|
||||
"time": "2012-05-30 15:01:08"
|
||||
},
|
||||
{
|
||||
"name": "facebook/php-sdk",
|
||||
@@ -1297,12 +1314,12 @@
|
||||
"version": "v2.3.9",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/l3pp4rd/DoctrineExtensions.git",
|
||||
"url": "https://github.com/Atlantic18/DoctrineExtensions.git",
|
||||
"reference": "35adcaae1a3f50d0d5b73aa50ed8fd28ee35ce54"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/l3pp4rd/DoctrineExtensions/zipball/35adcaae1a3f50d0d5b73aa50ed8fd28ee35ce54",
|
||||
"url": "https://api.github.com/repos/Atlantic18/DoctrineExtensions/zipball/35adcaae1a3f50d0d5b73aa50ed8fd28ee35ce54",
|
||||
"reference": "35adcaae1a3f50d0d5b73aa50ed8fd28ee35ce54",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -1370,7 +1387,7 @@
|
||||
"tree",
|
||||
"uploadable"
|
||||
],
|
||||
"time": "2013-08-18 07:18:44"
|
||||
"time": "2014-01-12 16:34:06"
|
||||
},
|
||||
{
|
||||
"name": "goodby/csv",
|
||||
@@ -1722,16 +1739,16 @@
|
||||
},
|
||||
{
|
||||
"name": "jms/metadata",
|
||||
"version": "1.5.0",
|
||||
"version": "1.5.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/schmittjoh/metadata.git",
|
||||
"reference": "88ffa28bc987e4c26229fc84a2e541b6ed4e1459"
|
||||
"reference": "22b72455559a25777cfd28c4ffda81ff7639f353"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/schmittjoh/metadata/zipball/88ffa28bc987e4c26229fc84a2e541b6ed4e1459",
|
||||
"reference": "88ffa28bc987e4c26229fc84a2e541b6ed4e1459",
|
||||
"url": "https://api.github.com/repos/schmittjoh/metadata/zipball/22b72455559a25777cfd28c4ffda81ff7639f353",
|
||||
"reference": "22b72455559a25777cfd28c4ffda81ff7639f353",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1757,9 +1774,9 @@
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Johannes M. Schmitt",
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -1770,7 +1787,7 @@
|
||||
"xml",
|
||||
"yaml"
|
||||
],
|
||||
"time": "2013-11-05 23:02:36"
|
||||
"time": "2014-07-12 07:13:19"
|
||||
},
|
||||
{
|
||||
"name": "jms/parser-lib",
|
||||
@@ -1860,9 +1877,9 @@
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Johannes M. Schmitt",
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -1931,9 +1948,9 @@
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Johannes M. Schmitt",
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -2007,7 +2024,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Robert Schönthal",
|
||||
"email": "seroscho@googlemail.com",
|
||||
"email": "robert.schoenthal@gmail.com",
|
||||
"homepage": "http://digitalkaoz.net"
|
||||
}
|
||||
],
|
||||
@@ -2099,12 +2116,12 @@
|
||||
"version": "dev-fix-video-dim",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nlegoff/Mediavorus.git",
|
||||
"url": "https://github.com/nlegoff/MediaVorus.git",
|
||||
"reference": "f11cd2453d5acbc6ac52421dc4edd760433b1515"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/nlegoff/Mediavorus/zipball/f11cd2453d5acbc6ac52421dc4edd760433b1515",
|
||||
"url": "https://api.github.com/repos/nlegoff/MediaVorus/zipball/f11cd2453d5acbc6ac52421dc4edd760433b1515",
|
||||
"reference": "f11cd2453d5acbc6ac52421dc4edd760433b1515",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -2254,7 +2271,7 @@
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Stephen Clay",
|
||||
"name": "Steve Clay",
|
||||
"email": "steve@mrclay.org",
|
||||
"homepage": "http://www.mrclay.org/",
|
||||
"role": "Developer"
|
||||
@@ -2440,21 +2457,21 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/romainneutron/Imagine-Silex-Service-Provider.git",
|
||||
"reference": "0.1.2"
|
||||
"reference": "a8a7862ae90419f2b23746cd8436c2310e4eb084"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/romainneutron/Imagine-Silex-Service-Provider/zipball/0.1.2",
|
||||
"reference": "0.1.2",
|
||||
"url": "https://api.github.com/repos/romainneutron/Imagine-Silex-Service-Provider/zipball/a8a7862ae90419f2b23746cd8436c2310e4eb084",
|
||||
"reference": "a8a7862ae90419f2b23746cd8436c2310e4eb084",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"imagine/imagine": "*",
|
||||
"php": ">=5.3.3",
|
||||
"silex/silex": ">=1.0,<2.0"
|
||||
"silex/silex": "~1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/browser-kit": ">=2.0,<3.0"
|
||||
"symfony/browser-kit": "~2.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
@@ -2860,9 +2877,9 @@
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Johannes M. Schmitt",
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -3011,9 +3028,9 @@
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Johannes M. Schmitt",
|
||||
"name": "Johannes Schmitt",
|
||||
"email": "schmittjoh@gmail.com",
|
||||
"homepage": "http://jmsyst.com",
|
||||
"homepage": "https://github.com/schmittjoh",
|
||||
"role": "Developer of wrapped JMSSerializerBundle"
|
||||
}
|
||||
],
|
||||
@@ -3114,17 +3131,17 @@
|
||||
},
|
||||
{
|
||||
"name": "react/event-loop",
|
||||
"version": "v0.3.3",
|
||||
"version": "v0.3.4",
|
||||
"target-dir": "React/EventLoop",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/event-loop.git",
|
||||
"reference": "49208fa3a15c9eae4adf8351ee9caa4064fe550d"
|
||||
"reference": "235cddfa999a392e7d63dc9bef2e042492608d9f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/reactphp/event-loop/zipball/49208fa3a15c9eae4adf8351ee9caa4064fe550d",
|
||||
"reference": "49208fa3a15c9eae4adf8351ee9caa4064fe550d",
|
||||
"url": "https://api.github.com/repos/reactphp/event-loop/zipball/235cddfa999a392e7d63dc9bef2e042492608d9f",
|
||||
"reference": "235cddfa999a392e7d63dc9bef2e042492608d9f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3153,21 +3170,21 @@
|
||||
"keywords": [
|
||||
"event-loop"
|
||||
],
|
||||
"time": "2013-07-08 22:38:22"
|
||||
"time": "2013-07-21 02:23:09"
|
||||
},
|
||||
{
|
||||
"name": "react/socket",
|
||||
"version": "v0.3.2",
|
||||
"version": "v0.3.4",
|
||||
"target-dir": "React/Socket",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/socket.git",
|
||||
"reference": "9cc32838d25a934ce950d2662cce2ff1b9e9f8aa"
|
||||
"reference": "19bc0c4309243717396022ffb2e59be1cc784327"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/reactphp/socket/zipball/9cc32838d25a934ce950d2662cce2ff1b9e9f8aa",
|
||||
"reference": "9cc32838d25a934ce950d2662cce2ff1b9e9f8aa",
|
||||
"url": "https://api.github.com/repos/reactphp/socket/zipball/19bc0c4309243717396022ffb2e59be1cc784327",
|
||||
"reference": "19bc0c4309243717396022ffb2e59be1cc784327",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3195,21 +3212,21 @@
|
||||
"keywords": [
|
||||
"Socket"
|
||||
],
|
||||
"time": "2013-04-26 20:23:10"
|
||||
"time": "2014-02-17 22:32:00"
|
||||
},
|
||||
{
|
||||
"name": "react/stream",
|
||||
"version": "v0.3.3",
|
||||
"version": "v0.3.4",
|
||||
"target-dir": "React/Stream",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/stream.git",
|
||||
"reference": "b72900ab00513b591fb101faecad38f9c8eab8da"
|
||||
"reference": "feef56628afe3fa861f0da5f92c909e029efceac"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/reactphp/stream/zipball/b72900ab00513b591fb101faecad38f9c8eab8da",
|
||||
"reference": "b72900ab00513b591fb101faecad38f9c8eab8da",
|
||||
"url": "https://api.github.com/repos/reactphp/stream/zipball/feef56628afe3fa861f0da5f92c909e029efceac",
|
||||
"reference": "feef56628afe3fa861f0da5f92c909e029efceac",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3240,7 +3257,7 @@
|
||||
"pipe",
|
||||
"stream"
|
||||
],
|
||||
"time": "2013-07-09 00:44:12"
|
||||
"time": "2014-02-16 19:48:52"
|
||||
},
|
||||
{
|
||||
"name": "react/zmq",
|
||||
@@ -3340,7 +3357,8 @@
|
||||
},
|
||||
{
|
||||
"name": "Ben Ramsey",
|
||||
"homepage": "http://benramsey.com"
|
||||
"homepage": "http://benramsey.com",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"description": "A PHP 5.3+ library for generating RFC 4122 version 1, 3, 4, and 5 universally unique identifiers (UUID).",
|
||||
@@ -3358,12 +3376,12 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/silexphp/Silex.git",
|
||||
"reference": "33da608a5c87bef962f2b1d19470b5a0bbb6aa83"
|
||||
"reference": "67639888035a3e586bfdb652c15c38f22e870d89"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/silexphp/Silex/zipball/33da608a5c87bef962f2b1d19470b5a0bbb6aa83",
|
||||
"reference": "33da608a5c87bef962f2b1d19470b5a0bbb6aa83",
|
||||
"url": "https://api.github.com/repos/silexphp/Silex/zipball/67639888035a3e586bfdb652c15c38f22e870d89",
|
||||
"reference": "67639888035a3e586bfdb652c15c38f22e870d89",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3436,7 +3454,7 @@
|
||||
"keywords": [
|
||||
"microframework"
|
||||
],
|
||||
"time": "2014-02-05 06:19:00"
|
||||
"time": "2014-04-15 20:52:04"
|
||||
},
|
||||
{
|
||||
"name": "silex/web-profiler",
|
||||
@@ -3445,12 +3463,12 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/silexphp/Silex-WebProfiler.git",
|
||||
"reference": "2d153ae71c8445cb90535fbdd82b92e39d9f67e0"
|
||||
"reference": "8c62046a16a7b8f229aff9147f842956a1e48a14"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/silexphp/Silex-WebProfiler/zipball/2d153ae71c8445cb90535fbdd82b92e39d9f67e0",
|
||||
"reference": "2d153ae71c8445cb90535fbdd82b92e39d9f67e0",
|
||||
"url": "https://api.github.com/repos/silexphp/Silex-WebProfiler/zipball/8c62046a16a7b8f229aff9147f842956a1e48a14",
|
||||
"reference": "8c62046a16a7b8f229aff9147f842956a1e48a14",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3476,12 +3494,14 @@
|
||||
"authors": [
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
"email": "fabien@symfony.com",
|
||||
"homepage": "http://fabien.potencier.org",
|
||||
"role": "Lead Developer"
|
||||
}
|
||||
],
|
||||
"description": "A WebProfiler for Silex",
|
||||
"homepage": "http://silex.sensiolabs.org/",
|
||||
"time": "2014-01-30 06:11:24"
|
||||
"time": "2014-06-04 21:14:30"
|
||||
},
|
||||
{
|
||||
"name": "sorien/silex-dbal-profiler",
|
||||
@@ -3567,7 +3587,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Phraseanet Team",
|
||||
"email": "support@alchemy.fr",
|
||||
"email": "info@alchemy.fr",
|
||||
"homepage": "http://www.phraseanet.com/"
|
||||
}
|
||||
],
|
||||
@@ -3614,7 +3634,9 @@
|
||||
"authors": [
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
"email": "fabien@symfony.com",
|
||||
"homepage": "http://fabien.potencier.org",
|
||||
"role": "Lead Developer"
|
||||
},
|
||||
{
|
||||
"name": "Chris Corbyn"
|
||||
@@ -3630,20 +3652,21 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/icu",
|
||||
"version": "v1.2.0",
|
||||
"version": "v1.2.2",
|
||||
"target-dir": "Symfony/Component/Icu",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Icu.git",
|
||||
"reference": "7299cd3d8d6602103d1ebff5d0a9917b7bc6de72"
|
||||
"reference": "d4d85d6055b87f394d941b45ddd3a9173e1e3d2a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Icu/zipball/7299cd3d8d6602103d1ebff5d0a9917b7bc6de72",
|
||||
"reference": "7299cd3d8d6602103d1ebff5d0a9917b7bc6de72",
|
||||
"url": "https://api.github.com/repos/symfony/Icu/zipball/d4d85d6055b87f394d941b45ddd3a9173e1e3d2a",
|
||||
"reference": "d4d85d6055b87f394d941b45ddd3a9173e1e3d2a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-intl": "*",
|
||||
"lib-icu": ">=4.4",
|
||||
"php": ">=5.3.3",
|
||||
"symfony/intl": "~2.3"
|
||||
@@ -3674,7 +3697,7 @@
|
||||
"icu",
|
||||
"intl"
|
||||
],
|
||||
"time": "2013-06-03 18:32:58"
|
||||
"time": "2014-07-25 09:58:17"
|
||||
},
|
||||
{
|
||||
"name": "symfony/symfony",
|
||||
@@ -3868,7 +3891,9 @@
|
||||
"authors": [
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
"email": "fabien@symfony.com",
|
||||
"homepage": "http://fabien.potencier.org",
|
||||
"role": "Lead Developer"
|
||||
}
|
||||
],
|
||||
"description": "Common additional features for Twig that do not directly belong in core",
|
||||
@@ -3987,7 +4012,7 @@
|
||||
},
|
||||
{
|
||||
"name": "willdurand/negotiation",
|
||||
"version": "dev-master",
|
||||
"version": "1.3.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/willdurand/Negotiation.git",
|
||||
@@ -4084,12 +4109,12 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Behat/Behat.git",
|
||||
"reference": "a12154aae8a09248637fbca8ef3b2ef2ac71f2aa"
|
||||
"reference": "e585f8a90b366a9a719b2998b9f8ab643735eda7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Behat/Behat/zipball/a12154aae8a09248637fbca8ef3b2ef2ac71f2aa",
|
||||
"reference": "a12154aae8a09248637fbca8ef3b2ef2ac71f2aa",
|
||||
"url": "https://api.github.com/repos/Behat/Behat/zipball/e585f8a90b366a9a719b2998b9f8ab643735eda7",
|
||||
"reference": "e585f8a90b366a9a719b2998b9f8ab643735eda7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -4138,7 +4163,7 @@
|
||||
"Behat",
|
||||
"Symfony2"
|
||||
],
|
||||
"time": "2014-02-12 17:03:46"
|
||||
"time": "2014-04-26 16:56:17"
|
||||
},
|
||||
{
|
||||
"name": "behat/gherkin",
|
||||
@@ -4146,12 +4171,12 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Behat/Gherkin.git",
|
||||
"reference": "2b33963da5525400573560c173ab5c9c057e1852"
|
||||
"reference": "c32e15d92e1a2ce399a1a1c5be7afd965176e86c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Behat/Gherkin/zipball/2b33963da5525400573560c173ab5c9c057e1852",
|
||||
"reference": "2b33963da5525400573560c173ab5c9c057e1852",
|
||||
"url": "https://api.github.com/repos/Behat/Gherkin/zipball/c32e15d92e1a2ce399a1a1c5be7afd965176e86c",
|
||||
"reference": "c32e15d92e1a2ce399a1a1c5be7afd965176e86c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -4199,7 +4224,7 @@
|
||||
"Symfony2",
|
||||
"parser"
|
||||
],
|
||||
"time": "2013-10-15 11:22:17"
|
||||
"time": "2014-06-06 00:48:18"
|
||||
},
|
||||
{
|
||||
"name": "behat/mink",
|
||||
@@ -4207,17 +4232,17 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Behat/Mink.git",
|
||||
"reference": "v1.5.0"
|
||||
"reference": "0769e6d9726c140a54dbf827a438c0f9912749fe"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Behat/Mink/zipball/v1.5.0",
|
||||
"reference": "v1.5.0",
|
||||
"url": "https://api.github.com/repos/Behat/Mink/zipball/0769e6d9726c140a54dbf827a438c0f9912749fe",
|
||||
"reference": "0769e6d9726c140a54dbf827a438c0f9912749fe",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.1",
|
||||
"symfony/css-selector": ">=2.0,<3.0"
|
||||
"symfony/css-selector": "~2.0"
|
||||
},
|
||||
"suggest": {
|
||||
"behat/mink-browserkit-driver": "extremely fast headless driver for Symfony\\Kernel-based apps (Sf2, Silex)",
|
||||
@@ -4422,17 +4447,17 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Behat/MinkSelenium2Driver.git",
|
||||
"reference": "v1.1.1"
|
||||
"reference": "bcf1b537de37db6db0822d9e7bd97e600fd7a476"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Behat/MinkSelenium2Driver/zipball/v1.1.1",
|
||||
"reference": "v1.1.1",
|
||||
"url": "https://api.github.com/repos/Behat/MinkSelenium2Driver/zipball/bcf1b537de37db6db0822d9e7bd97e600fd7a476",
|
||||
"reference": "bcf1b537de37db6db0822d9e7bd97e600fd7a476",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"behat/mink": ">=1.5,<1.6",
|
||||
"instaclick/php-webdriver": ">=1.0.12.0,<1.1",
|
||||
"behat/mink": "~1.5.0",
|
||||
"instaclick/php-webdriver": "~1.0.12",
|
||||
"php": ">=5.3.1"
|
||||
},
|
||||
"type": "mink-driver",
|
||||
@@ -4577,7 +4602,7 @@
|
||||
{
|
||||
"name": "Anthon Pang",
|
||||
"email": "apang@softwaredevelopment.ca",
|
||||
"role": "Fork Maintainer"
|
||||
"role": "developer"
|
||||
}
|
||||
],
|
||||
"description": "PHP WebDriver for Selenium 2",
|
||||
@@ -4592,16 +4617,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-code-coverage",
|
||||
"version": "1.2.15",
|
||||
"version": "1.2.17",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
|
||||
"reference": "6ba4ed2895d538a039d5d5866edc4ec0424c7852"
|
||||
"reference": "6ef2bf3a1c47eca07ea95f0d8a902a6340390b34"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/6ba4ed2895d538a039d5d5866edc4ec0424c7852",
|
||||
"reference": "6ba4ed2895d538a039d5d5866edc4ec0424c7852",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/6ef2bf3a1c47eca07ea95f0d8a902a6340390b34",
|
||||
"reference": "6ef2bf3a1c47eca07ea95f0d8a902a6340390b34",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -4649,7 +4674,7 @@
|
||||
"testing",
|
||||
"xunit"
|
||||
],
|
||||
"time": "2014-02-03 07:44:47"
|
||||
"time": "2014-03-28 10:53:45"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-file-iterator",
|
||||
@@ -4786,16 +4811,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-token-stream",
|
||||
"version": "1.2.1",
|
||||
"version": "1.2.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/php-token-stream.git",
|
||||
"reference": "5220af2a7929aa35cf663d97c89ad3d50cf5fa3e"
|
||||
"reference": "ad4e1e23ae01b483c16f600ff1bebec184588e32"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/5220af2a7929aa35cf663d97c89ad3d50cf5fa3e",
|
||||
"reference": "5220af2a7929aa35cf663d97c89ad3d50cf5fa3e",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/ad4e1e23ae01b483c16f600ff1bebec184588e32",
|
||||
"reference": "ad4e1e23ae01b483c16f600ff1bebec184588e32",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -4832,7 +4857,7 @@
|
||||
"keywords": [
|
||||
"tokenizer"
|
||||
],
|
||||
"time": "2013-09-13 04:58:23"
|
||||
"time": "2014-03-03 05:10:30"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
@@ -4996,7 +5021,5 @@
|
||||
"platform": {
|
||||
"php": ">=5.4"
|
||||
},
|
||||
"platform-dev": [
|
||||
|
||||
]
|
||||
"platform-dev": []
|
||||
}
|
||||
|
@@ -42,15 +42,15 @@ return call_user_func(function ($environment = PhraseaApplication::ENV_PROD) {
|
||||
// handle API content negotiation
|
||||
$app->before(function(Request $request) use ($app) {
|
||||
// register custom API format
|
||||
$request->setFormat(\API_V1_result::FORMAT_JSON_EXTENDED, \API_V1_adapter::$extendedContentTypes['json']);
|
||||
$request->setFormat(\API_V1_result::FORMAT_YAML_EXTENDED, \API_V1_adapter::$extendedContentTypes['yaml']);
|
||||
$request->setFormat(\API_V1_result::FORMAT_JSONP_EXTENDED, \API_V1_adapter::$extendedContentTypes['jsonp']);
|
||||
$request->setFormat(\API_V1_result::FORMAT_JSONP, array('text/javascript', 'application/javascript'));
|
||||
$request->setFormat(Result::FORMAT_JSON_EXTENDED, V1::$extendedContentTypes['json']);
|
||||
$request->setFormat(Result::FORMAT_YAML_EXTENDED, V1::$extendedContentTypes['yaml']);
|
||||
$request->setFormat(Result::FORMAT_JSONP_EXTENDED, V1::$extendedContentTypes['jsonp']);
|
||||
$request->setFormat(Result::FORMAT_JSONP, array('text/javascript', 'application/javascript'));
|
||||
|
||||
// handle content negociation
|
||||
$priorities = array('application/json', 'application/yaml', 'text/yaml', 'text/javascript', 'application/javascript');
|
||||
foreach (\API_V1_adapter::$extendedContentTypes['json'] as $priorities[]);
|
||||
foreach (\API_V1_adapter::$extendedContentTypes['yaml'] as $priorities[]);
|
||||
foreach (V1::$extendedContentTypes['json'] as $priorities[]);
|
||||
foreach (V1::$extendedContentTypes['yaml'] as $priorities[]);
|
||||
$format = $app['format.negociator']->getBest($request->headers->get('accept') ,$priorities);
|
||||
|
||||
// throw unacceptable http error if API can not handle asked format
|
||||
@@ -59,29 +59,29 @@ return call_user_func(function ($environment = PhraseaApplication::ENV_PROD) {
|
||||
}
|
||||
// set request format according to negotiated content or override format with JSONP if callback parameter is defined
|
||||
if (trim($request->get('callback')) !== '') {
|
||||
$request->setRequestFormat(\API_V1_result::FORMAT_JSONP);
|
||||
$request->setRequestFormat(Result::FORMAT_JSONP);
|
||||
} else {
|
||||
$request->setRequestFormat($request->getFormat($format->getValue()));
|
||||
}
|
||||
|
||||
// tells whether asked format is extended or not
|
||||
$request->attributes->set('_extended', in_array(
|
||||
$request->getRequestFormat(\API_V1_result::FORMAT_JSON),
|
||||
$request->getRequestFormat(Result::FORMAT_JSON),
|
||||
array(
|
||||
\API_V1_result::FORMAT_JSON_EXTENDED,
|
||||
\API_V1_result::FORMAT_YAML_EXTENDED,
|
||||
\API_V1_result::FORMAT_JSONP_EXTENDED
|
||||
Result::FORMAT_JSON_EXTENDED,
|
||||
Result::FORMAT_YAML_EXTENDED,
|
||||
Result::FORMAT_JSONP_EXTENDED
|
||||
)
|
||||
));
|
||||
}, PhraseaApplication::EARLY_EVENT);
|
||||
|
||||
$app->after(function(Request $request, Response $response) use ($app) {
|
||||
if ($request->getRequestFormat(\API_V1_result::FORMAT_JSON) === \API_V1_result::FORMAT_JSONP && !$response->isOk() && !$response->isServerError()) {
|
||||
if ($request->getRequestFormat(Result::FORMAT_JSON) === Result::FORMAT_JSONP && !$response->isOk() && !$response->isServerError()) {
|
||||
$response->setStatusCode(200);
|
||||
}
|
||||
// set response content type
|
||||
if (!$response->headers->get('Content-Type')) {
|
||||
$response->headers->set('Content-Type', $request->getMimeType($request->getRequestFormat(\API_V1_result::FORMAT_JSON)));
|
||||
$response->headers->set('Content-Type', $request->getMimeType($request->getRequestFormat(Result::FORMAT_JSON)));
|
||||
}
|
||||
});
|
||||
|
||||
|
@@ -26,6 +26,10 @@ class SchedulerPauseTasks extends Command
|
||||
|
||||
protected function doExecute(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
if (false === $this->container['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
$ret = 0;
|
||||
|
||||
$this->container['task-manager.status']->stop();
|
||||
|
@@ -26,6 +26,10 @@ class SchedulerResumeTasks extends Command
|
||||
|
||||
protected function doExecute(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
if (false === $this->container['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
$ret = 0;
|
||||
|
||||
$this->container['task-manager.status']->start();
|
||||
|
@@ -40,6 +40,10 @@ class SchedulerRun extends Command
|
||||
|
||||
protected function doExecute(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
if (false === $this->container['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
declare(ticks=1);
|
||||
|
||||
if ($this->container['task-manager.logger.configuration']['enabled']) {
|
||||
|
@@ -33,6 +33,10 @@ class SchedulerState extends Command
|
||||
|
||||
protected function doExecute(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
if (false === $this->container['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
$info = $this->container['task-manager.live-information']->getManager();
|
||||
$error = $info['configuration'] !== $info['actual'];
|
||||
$actual = $error ? "<error>" .$info['actual']. "</error>" : "<info>".$info['actual']."</info>";
|
||||
|
@@ -43,6 +43,10 @@ class TaskRun extends Command
|
||||
|
||||
protected function doExecute(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
if (false === $this->container['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
declare(ticks=1);
|
||||
|
||||
if (null === $task = $this->container['repo.tasks']->find($input->getArgument('task_id'))) {
|
||||
|
@@ -29,6 +29,10 @@ class TaskStart extends Command
|
||||
|
||||
protected function doExecute(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
if (false === $this->container['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
$task = $this->container['converter.task']->convert($input->getArgument('task_id'));
|
||||
$this->container['manipulator.task']->start($task);
|
||||
|
||||
|
@@ -31,6 +31,10 @@ class TaskState extends Command
|
||||
|
||||
protected function doExecute(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
if (false === $this->container['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
$task_id = $input->getArgument('task_id');
|
||||
if (null === $task = $this->container['repo.tasks']->find($task_id)) {
|
||||
throw new RuntimeException('Invalid task_id');
|
||||
|
@@ -29,6 +29,10 @@ class TaskStop extends Command
|
||||
|
||||
protected function doExecute(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
if (false === $this->container['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
$task = $this->container['converter.task']->convert($input->getArgument('task_id'));
|
||||
$this->container['manipulator.task']->stop($task);
|
||||
|
||||
|
@@ -132,6 +132,10 @@ class TaskManager implements ControllerProviderInterface
|
||||
|
||||
public function getLiveInformation(Application $app, Request $request)
|
||||
{
|
||||
if (false === $app['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
if ($request->getRequestFormat() !== "json") {
|
||||
$app->abort(406, 'Only JSON format is accepted.');
|
||||
}
|
||||
@@ -149,6 +153,10 @@ class TaskManager implements ControllerProviderInterface
|
||||
|
||||
public function getScheduler(Application $app, Request $request)
|
||||
{
|
||||
if (false === $app['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
if ($request->getRequestFormat() !== "json") {
|
||||
$app->abort(406, 'Only JSON format is accepted.');
|
||||
}
|
||||
@@ -241,6 +249,10 @@ class TaskManager implements ControllerProviderInterface
|
||||
|
||||
public function postTaskDelete(Application $app, Request $request, Task $task)
|
||||
{
|
||||
if (false === $app['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
$app['manipulator.task']->delete($task);
|
||||
|
||||
return $app->redirectPath('admin_tasks_list');
|
||||
@@ -248,6 +260,10 @@ class TaskManager implements ControllerProviderInterface
|
||||
|
||||
public function postStartTask(Application $app, Request $request, Task $task)
|
||||
{
|
||||
if (false === $app['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
$app['manipulator.task']->start($task);
|
||||
|
||||
return $app->redirectPath('admin_tasks_list');
|
||||
@@ -255,6 +271,10 @@ class TaskManager implements ControllerProviderInterface
|
||||
|
||||
public function postStopTask(Application $app, Request $request, Task $task)
|
||||
{
|
||||
if (false === $app['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
$app['manipulator.task']->stop($task);
|
||||
|
||||
return $app->redirectPath('admin_tasks_list');
|
||||
@@ -269,6 +289,10 @@ class TaskManager implements ControllerProviderInterface
|
||||
|
||||
public function postSaveTask(Application $app, Request $request, Task $task)
|
||||
{
|
||||
if (false === $app['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
if (!$this->doValidateXML($request->request->get('settings'))) {
|
||||
return $app->json(['success' => false, 'message' => sprintf('Unable to load XML %s', $request->request->get('xml'))]);
|
||||
}
|
||||
@@ -306,6 +330,10 @@ class TaskManager implements ControllerProviderInterface
|
||||
|
||||
public function getTask(Application $app, Request $request, Task $task)
|
||||
{
|
||||
if (false === $app['phraseanet.configuration']['main']['task-manager']['enabled']) {
|
||||
throw new RuntimeException('The use of the task manager is disabled on this instance.');
|
||||
}
|
||||
|
||||
if ('json' === $request->getContentType()) {
|
||||
return $app->json(array_replace([
|
||||
'id' => $task->getId(),
|
||||
|
@@ -48,7 +48,7 @@ class Oauth2 implements ControllerProviderInterface
|
||||
$params = $oauth2Adapter->getAuthorizationRequestParameters($request);
|
||||
|
||||
$appAuthorized = false;
|
||||
$errorMessage = $request->get('error', '');
|
||||
$error = $request->get('error', '');
|
||||
|
||||
if (null === $client = $app['repo.api-applications']->findByClientId($params['client_id'])) {
|
||||
throw new NotFoundHttpException(sprintf('Application with client id %s could not be found', $params['client_id']));
|
||||
@@ -90,7 +90,7 @@ class Oauth2 implements ControllerProviderInterface
|
||||
|
||||
$app['authentication']->openAccount($app['repo.users']->find($usrId));
|
||||
} else {
|
||||
$r = new Response($app['twig']->render($template, array('error' => $error, "auth" => $oauth2_adapter)));
|
||||
$r = new Response($app['twig']->render($template, array('error' => $error, "auth" => $oauth2Adapter)));
|
||||
$r->headers->set('Content-Type', 'text/html');
|
||||
|
||||
return $r;
|
||||
@@ -114,7 +114,7 @@ class Oauth2 implements ControllerProviderInterface
|
||||
if (!$appAuthorized && $actionAccept === null) {
|
||||
$params = [
|
||||
"auth" => $oauth2Adapter,
|
||||
"errorMessage" => $errorMessage,
|
||||
"error" => $error,
|
||||
];
|
||||
|
||||
$r = new Response($app['twig']->render($template, $params));
|
||||
|
@@ -47,6 +47,10 @@ class Result
|
||||
const FORMAT_YAML = 'yaml';
|
||||
const FORMAT_JSONP = 'jsonp';
|
||||
|
||||
const FORMAT_JSON_EXTENDED = 'json+extended';
|
||||
const FORMAT_YAML_EXTENDED = 'yaml+extended';
|
||||
const FORMAT_JSONP_EXTENDED = 'jsonp+extended';
|
||||
|
||||
const ERROR_BAD_REQUEST = 'Bad Request';
|
||||
const ERROR_UNAUTHORIZED = 'Unauthorized';
|
||||
const ERROR_FORBIDDEN = 'Forbidden';
|
||||
@@ -54,6 +58,7 @@ class Result
|
||||
const ERROR_MAINTENANCE = 'Service Temporarily Unavailable';
|
||||
const ERROR_METHODNOTALLOWED = 'Method Not Allowed';
|
||||
const ERROR_INTERNALSERVERERROR = 'Internal Server Error';
|
||||
const ERROR_UNACCEPTABLE = 'Unacceptable';
|
||||
|
||||
public function __construct(Request $request, array $data = null, $code = 200, $errorType = null, $errorMessage = null, $errorDetails = null)
|
||||
{
|
||||
|
@@ -51,6 +51,12 @@ class V1 implements ControllerProviderInterface
|
||||
const OBJECT_TYPE_STORY = 'http://api.phraseanet.com/api/objects/story';
|
||||
const OBJECT_TYPE_STORY_METADATA_BAG = 'http://api.phraseanet.com/api/objects/story-metadata-bag';
|
||||
|
||||
public static $extendedContentTypes = array(
|
||||
'json' => array('application/vnd.phraseanet.record-extended+json'),
|
||||
'yaml' => array('application/vnd.phraseanet.record-extended+yaml'),
|
||||
'jsonp' => array('application/vnd.phraseanet.record-extended+jsonp'),
|
||||
);
|
||||
|
||||
public function connect(SilexApplication $app)
|
||||
{
|
||||
$app['controller.api.v1'] = $this;
|
||||
|
@@ -179,19 +179,23 @@ class BasketController implements ControllerProviderInterface
|
||||
|
||||
public function removeBasketElement(Application $app, Request $request, BasketEntity $basket, $basket_element_id)
|
||||
{
|
||||
$basketElement = $app['EM']->getRepository('Phraseanet:BasketElement')->find($basket_element_id);
|
||||
$ord = $basketElement->getOrd();
|
||||
|
||||
foreach ($basket->getElements() as $basket_element) {
|
||||
/* @var $basket_element BasketElement */
|
||||
if ($basket_element->getOrd() > $ord) {
|
||||
$basket_element->setOrd($basket_element->getOrd() - 1);
|
||||
}
|
||||
if ($basket_element->getId() === (int) $basket_element_id) {
|
||||
$basket->removeElement($basket_element);
|
||||
$app['EM']->remove($basket_element);
|
||||
}
|
||||
}
|
||||
|
||||
$app['EM']->persist($basket);
|
||||
$app['EM']->flush();
|
||||
|
||||
$data = [
|
||||
'success' => true
|
||||
, 'message' => $app->trans('Record removed from basket')
|
||||
];
|
||||
$data = ['success' => true, 'message' => $app->trans('Record removed from basket')];
|
||||
|
||||
if ($request->getRequestFormat() === 'json') {
|
||||
return $app->json($data);
|
||||
@@ -350,8 +354,7 @@ class BasketController implements ControllerProviderInterface
|
||||
|
||||
foreach ($request->request->get('elements') as $bask_element_id) {
|
||||
try {
|
||||
$basket_element = $app['repo.basket-elements']
|
||||
->findUserElement($bask_element_id, $app['authentication']->getUser());
|
||||
$basket_element = $app['repo.basket-elements']->findUserElement($bask_element_id, $app['authentication']->getUser());
|
||||
} catch (\Exception $e) {
|
||||
continue;
|
||||
}
|
||||
@@ -364,10 +367,7 @@ class BasketController implements ControllerProviderInterface
|
||||
|
||||
$app['EM']->flush();
|
||||
|
||||
$data = [
|
||||
'success' => true
|
||||
, 'message' => $app->trans('%quantity% records moved', ['%quantity%' => $n])
|
||||
];
|
||||
$data = ['success' => true, 'message' => $app->trans('%quantity% records moved', ['%quantity%' => $n])];
|
||||
|
||||
if ($request->getRequestFormat() === 'json') {
|
||||
return $app->json($data);
|
||||
|
@@ -90,7 +90,7 @@ class Session implements ControllerProviderInterface
|
||||
'notifications' => $app['events-manager']->get_notifications()
|
||||
]);
|
||||
|
||||
$baskets = $app['EM']->getRepository('\Entities\Basket')->findUnreadActiveByUser($app['authentication']->getUser());
|
||||
$baskets = $app['EM']->getRepository('Phraseanet:Basket')->findUnreadActiveByUser($app['authentication']->getUser());
|
||||
|
||||
foreach ($baskets as $basket) {
|
||||
$ret['changed'][] = $basket->getId();
|
||||
|
@@ -112,6 +112,7 @@ class RegistryManipulator
|
||||
'social-tools' => 'none',
|
||||
'enable-push-authentication' => false,
|
||||
'force-push-authentication' => false,
|
||||
'enable-feed-notification' => true
|
||||
],
|
||||
'ftp' => [
|
||||
'ftp-enabled' => false,
|
||||
|
@@ -51,6 +51,12 @@ class ActionsFormType extends AbstractType
|
||||
'label' => 'Enable Forcing authentication to see push content',
|
||||
'help_message' => 'Adds an option to the push form submission to restrict push recipient(s) to Phraseanet users only.',
|
||||
]);
|
||||
$builder->add('force-push-authentication', 'checkbox', [
|
||||
'label' => 'Disallow the possibility for the end user to disable push authentication',
|
||||
]);
|
||||
$builder->add('enable-feed-notification', 'checkbox', [
|
||||
'label' => 'Enable possibility to notify users when publishing a new feed entry',
|
||||
]);
|
||||
}
|
||||
|
||||
public function getName()
|
||||
|
@@ -307,21 +307,9 @@ class ElasticSearchEngine implements SearchEngineInterface
|
||||
*/
|
||||
public function excerpt($query, $fields, \record_adapter $record, SearchEngineOptions $options = null)
|
||||
{
|
||||
$query = 'all' !== strtolower($query) ? $query : '';
|
||||
$params = $this->createQueryParams($query, $options ?: new SearchEngineOptions(), $record);
|
||||
//@todo implements
|
||||
|
||||
$res = $this->doExecute('search', $params);
|
||||
$ret = [];
|
||||
|
||||
foreach ($fields as $name => $field) {
|
||||
if (isset($res['hits']['hits'][0]['highlight']['caption.'.$name])) {
|
||||
$ret[] = $res['hits']['hits'][0]['highlight']['caption.'.$name][0];
|
||||
} else {
|
||||
$ret[] = $field['value'];
|
||||
}
|
||||
}
|
||||
|
||||
return $ret;
|
||||
return array();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -27,6 +27,16 @@ class patch_386alpha1a implements patchInterface
|
||||
return $this->release;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns doctrine migrations needed for the patch.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getDoctrineMigrations()
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
|
@@ -778,7 +778,7 @@ class set_export extends set_abstract
|
||||
$log["shortXml"] = $app['serializer.caption']->serialize($record_object->get_caption(), CaptionSerializer::SERIALIZE_XML);
|
||||
$tmplog[$record_object->get_base_id()][] = $log;
|
||||
if (!$anonymous && $o == 'document' && null !== $app['authentication']->getUser()) {
|
||||
$ $app['acl']->get($app['authentication']->getUser())->remove_remaining($record_object->get_base_id());
|
||||
$app['acl']->get($app['authentication']->getUser())->remove_remaining($record_object->get_base_id());
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -2,16 +2,17 @@
|
||||
"name": "phraseanet",
|
||||
"version": "3.9.0",
|
||||
"devDependencies": {
|
||||
"bower": "latest",
|
||||
"bower": "~1.3",
|
||||
"mocha-phantomjs": ">=2.0 <3.0",
|
||||
"recess": ">=1.1.0 <1.1.7",
|
||||
"tmp": "0.0.23",
|
||||
"uglify-js": "latest",
|
||||
"jake": "latest",
|
||||
"grunt-cli": "latest",
|
||||
"grunt": "~0.4.1",
|
||||
"grunt-shell": "~0.6",
|
||||
"grunt-contrib": "~0.4.0",
|
||||
"grunt-bower-task": "~0.3.0",
|
||||
"grunt-bower-task": "~0.4.0",
|
||||
"grunt-bower-postinst": "~0.2.0",
|
||||
"grunt-mocha-phantomjs": "~0.3.0"
|
||||
}
|
||||
|
@@ -1,109 +1,98 @@
|
||||
<div id="admin_setup_registry">
|
||||
<div class="page-header">
|
||||
<h1>{{ 'Setup' | trans }}</h1>
|
||||
<div class="page-header">
|
||||
<h1>{{ 'Setup' | trans }}</h1>
|
||||
</div>
|
||||
|
||||
<form class="form-horizontal" id="GV_form_head">
|
||||
<div class="control-group">
|
||||
<label class="control-label">Adresse : </label>
|
||||
<div class="controls">
|
||||
<input type="text" class="input-xxlarge" readonly="readonly" value="{{ app['conf'].get('servername') }}" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form class="form-horizontal" id="GV_form_head">
|
||||
<div class="control-group">
|
||||
<label class="control-label">Adresse : </label>
|
||||
<div class="controls">
|
||||
<input type="text" class="input-xxlarge" readonly="readonly" value="{{ app['conf'].get('servername') }}" />
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label">Installation : </label>
|
||||
<div class="controls">
|
||||
<input type="text" class="input-xxlarge" readonly="readonly" value="{{ app['root.path'] }}" />
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label">Installation : </label>
|
||||
<div class="controls">
|
||||
<input type="text" class="input-xxlarge" readonly="readonly" value="{{ app['root.path'] }}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label">Maintenance : </label>
|
||||
<div class="controls">
|
||||
<input type="checkbox" readonly="readonly" disabled="disabled"/>
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label">Maintenance : </label>
|
||||
<div class="controls">
|
||||
<input type="checkbox" readonly="readonly" disabled="disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label">Debug : </label>
|
||||
<div class="controls">
|
||||
<input type="checkbox" readonly="readonly" disabled="disabled" {{ app['debug'] ? "checked='checked'" : '' }} />
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label">Debug : </label>
|
||||
<div class="controls">
|
||||
<input type="checkbox" readonly="readonly" disabled="disabled" {{ app['debug'] ? "checked='checked'" : '' }} />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form id="GV_form" class="form-horizontal" method="post" action = "{{ path('setup_submit_globals') }}">
|
||||
{% for section in GV %}
|
||||
<fieldset>
|
||||
<legend> {{ section['section'] }} </legend>
|
||||
{% for value in section['vars'] %}
|
||||
{% set readonly = false %}
|
||||
{% if value['readonly'] is defined and value['readonly'] == true %}
|
||||
{% set readonly = true %}
|
||||
{% endif %}
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
||||
{{ form_start(form, {'method': 'POST', 'action' : path('setup_display_globals'), 'attr': {'class' : 'form-horizontal'}}) }}
|
||||
{% for daform in form %}
|
||||
<fieldset>
|
||||
<legend>{{ daform.vars['label'] }}</legend>
|
||||
{% for formdata in daform %}
|
||||
|
||||
{{ form_start(form, {'method': 'POST', 'action' : path('setup_display_globals'), 'attr': {'class' : 'form-horizontal'}}) }}
|
||||
{% for daform in form %}
|
||||
<fieldset>
|
||||
<legend>{{ daform.vars['label'] }}</legend>
|
||||
{% for formdata in daform %}
|
||||
<div class="control-group">
|
||||
{{ form_label(formdata, null, { 'label_attr': {'class' : 'control-label'} } ) }}
|
||||
<div class="controls">
|
||||
{{ form_widget(formdata, {'attr': {'class': 'input-xxlarge'}}) }}
|
||||
</div>
|
||||
|
||||
<div class="help-message text-info">{{ formdata.vars['help_message'] | raw }}</div>
|
||||
<div>{{ formdata.vars['help_message'] }}</div>
|
||||
{{ form_rest(formdata) }}
|
||||
</div>
|
||||
{% endfor %}
|
||||
{{ form_rest(daform) }}
|
||||
</fieldset>
|
||||
{% endfor %}
|
||||
<div class="well well-large">
|
||||
<div style="max-width: 400px;margin: 0 auto 10px;">
|
||||
<input type="submit" class="btn btn-warning btn-block btn-large" value="{{ 'boutton::valider' | trans }}"/>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{{ form_rest(daform) }}
|
||||
</fieldset>
|
||||
{% endfor %}
|
||||
<div class="well well-large">
|
||||
<div style="max-width: 400px;margin: 0 auto 10px;">
|
||||
<input type="submit" class="btn btn-warning btn-block btn-large" value="{{ 'boutton::valider' | trans }}"/>
|
||||
</div>
|
||||
{{ form_end(form) }}
|
||||
</div>
|
||||
{{ form_end(form) }}
|
||||
|
||||
<script type='text/javascript'>
|
||||
{% autoescape false %}
|
||||
$(document).ready(function() {
|
||||
// use html5 fallback validation if browser do not support required attribute
|
||||
var form = $("#GV_form");
|
||||
var inputs = form.find("input, select, textarea");
|
||||
// if required not supported, emulate it
|
||||
if (!Modernizr.input.required) {
|
||||
form.bind("submit", function (event) {
|
||||
var required = [];
|
||||
// loop through input elements looking for required
|
||||
$.each(inputs, function(k, input){
|
||||
var input = $(input);
|
||||
if (typeof input.attr('required') !== "undefined") {
|
||||
// if the value is empty, add to required array
|
||||
if (input.val().replace(/^\s+|\s+$/g, '') === '') {
|
||||
required.push(input.attr('name'));
|
||||
}
|
||||
$(document).ready(function() {
|
||||
// use html5 fallback validation if browser do not support required attribute
|
||||
var form = $("#GV_form");
|
||||
var inputs = form.find("input, select, textarea");
|
||||
// if required not supported, emulate it
|
||||
if (!Modernizr.input.required) {
|
||||
form.bind("submit", function (event) {
|
||||
var required = [];
|
||||
// loop through input elements looking for required
|
||||
$.each(inputs, function(k, input){
|
||||
var input = $(input);
|
||||
if (typeof input.attr('required') !== "undefined") {
|
||||
// if the value is empty, add to required array
|
||||
if (input.val().replace(/^\s+|\s+$/g, '') === '') {
|
||||
required.push(input.attr('name'));
|
||||
}
|
||||
});
|
||||
|
||||
// show popover if required array contains any elements
|
||||
if (required.length > 0) {
|
||||
$.each(required, function(k, name) {
|
||||
var $this = $("input[name="+name+"], select[name="+name+"], textarea[name="+name+"]");
|
||||
$this.popover({ title: language.attention, content: language.requiredValue, placement:"bottom" })
|
||||
.blur(function () {
|
||||
$this.popover('hide');
|
||||
});
|
||||
$this.popover("show");
|
||||
});
|
||||
// prevent the form from being submitted
|
||||
event.stopImmediatePropagation();
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// show popover if required array contains any elements
|
||||
if (required.length > 0) {
|
||||
$.each(required, function(k, name) {
|
||||
var $this = $("input[name="+name+"], select[name="+name+"], textarea[name="+name+"]");
|
||||
$this.popover({ title: language.attention, content: language.requiredValue, placement:"bottom" })
|
||||
.blur(function () {
|
||||
$this.popover('hide');
|
||||
});
|
||||
$this.popover("show");
|
||||
});
|
||||
// prevent the form from being submitted
|
||||
event.stopImmediatePropagation();
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
{% endautoescape %}
|
||||
</script>
|
@@ -35,6 +35,7 @@
|
||||
<span class="caret"></span>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
{% if app['phraseanet.configuration']['main']['task-manager']['enabled'] %}
|
||||
<li>
|
||||
<a method="POST" href="{{ path('admin_tasks_scheduler_start') }}">
|
||||
{{ 'Start' | trans }}
|
||||
@@ -45,6 +46,7 @@
|
||||
{{ 'Stop' | trans }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
<li>
|
||||
<a href="{{ path('admin_tasks_scheduler_log') }}">
|
||||
{{ 'Logs' | trans }}
|
||||
@@ -70,6 +72,7 @@
|
||||
<span class="caret"></span>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
{% if app['phraseanet.configuration']['main']['task-manager']['enabled'] %}
|
||||
<li>
|
||||
<a href="{{ path('admin_tasks_task_show', {"task" : task["id"] }) }}">
|
||||
{{ 'Edit' | trans }}
|
||||
@@ -90,6 +93,7 @@
|
||||
{{ 'Delete' | trans }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
<li>
|
||||
<a href="{{ path('admin_tasks_task_log', {"task" : task["id"] }) }}">
|
||||
{{ 'Logs' | trans }}
|
||||
|
@@ -27,7 +27,6 @@
|
||||
<td style="text-align:right;white-space:nowrap;width:150px;">
|
||||
<button class="deleter btn btn-inverse" data-list-id="{{ list.getId() }}">
|
||||
{{ 'Delete' | trans }}
|
||||
<input type="hidden" name="list_id" value="{{ list.getId() }}"/>
|
||||
</button>
|
||||
</td>
|
||||
{% endif %}
|
||||
|
@@ -43,7 +43,7 @@
|
||||
{% set desc = publishing.basket().getDescription() %}
|
||||
{% endif %}
|
||||
<br />
|
||||
{% if app["phraseanet.registry"].get("GV_enable_feed_notification") %}
|
||||
{% if app['conf'].get(['registry', 'actions', 'enable-feed-notification']) %}
|
||||
<label class="checkbox">
|
||||
<input class="required_text checkbox" type="checkbox" name="notify" id="feed_add_notify" value="1" style="min-height: 0; height: auto" />
|
||||
<i class="icon icon-envelope"></i> {{ 'Notify users about this publication' | trans }}
|
||||
|
@@ -3,6 +3,7 @@
|
||||
namespace Alchemy\Tests\Phrasea\Controller\Prod;
|
||||
|
||||
use Alchemy\Phrasea\Application;
|
||||
use Alchemy\Phrasea\Border\Checker\Sha256;
|
||||
use Alchemy\Phrasea\Border\Manager;
|
||||
use DataURI;
|
||||
use Symfony\Component\HttpFoundation\File\UploadedFile;
|
||||
@@ -93,7 +94,8 @@ class UploadTest extends \PhraseanetAuthenticatedWebTestCase
|
||||
|
||||
$record = new \record_adapter(self::$DI['app'], $id[0], $id[1]);
|
||||
$this->assertTrue($record->get_thumbnail()->is_physically_present());
|
||||
$field = array_pop($record->get_caption()->get_fields(['FileName']));
|
||||
$fields = $record->get_caption()->get_fields(['FileName']);
|
||||
$field = array_pop($fields);
|
||||
$this->assertEquals($field->get_serialized_values(), 'KIKOO.JPG');
|
||||
}
|
||||
}
|
||||
@@ -157,6 +159,7 @@ class UploadTest extends \PhraseanetAuthenticatedWebTestCase
|
||||
)
|
||||
]
|
||||
];
|
||||
self::$DI['app']['border-manager']->registerChecker(new Sha256(self::$DI['app']));
|
||||
self::$DI['client']->request('POST', '/prod/upload/', $params, $files, ['HTTP_Accept' => 'application/json']);
|
||||
|
||||
$response = self::$DI['client']->getResponse();
|
||||
|
@@ -240,9 +240,14 @@ class LoginTest extends \PhraseanetAuthenticatedWebTestCase
|
||||
$email = $this->generateEmail();
|
||||
$user = self::$DI['app']['manipulator.user']->createUser(uniqid('test_'), uniqid('test_'), $email);
|
||||
$token = self::$DI['app']['manipulator.token']->createResetEmailToken($user, $email);
|
||||
|
||||
$user->setMailLocked(true);
|
||||
|
||||
$revokeBases = array();
|
||||
foreach (self::$DI['app']['phraseanet.appbox']->get_databoxes() as $databox) {
|
||||
foreach ($databox->get_collections() as $collection) {
|
||||
$revokeBases[] = $collection->get_base_id();
|
||||
}
|
||||
}
|
||||
self::$DI['app']['acl']->get($user)->revoke_access_from_bases($revokeBases);
|
||||
$this->deleteRequest();
|
||||
|
||||
self::$DI['client']->request('GET', '/login/register-confirm/', ['code' => $token->getValue()]);
|
||||
|
@@ -30,6 +30,8 @@ main:
|
||||
options: []
|
||||
task-manager:
|
||||
status: started
|
||||
enabled: started
|
||||
enabled: true
|
||||
logger:
|
||||
max-files: 10
|
||||
enabled: true
|
||||
|
@@ -40,6 +40,7 @@ main:
|
||||
options: []
|
||||
task-manager:
|
||||
status: started
|
||||
enabled: true
|
||||
logger:
|
||||
max-files: 10
|
||||
enabled: true
|
||||
|
@@ -30,6 +30,7 @@ main:
|
||||
options: []
|
||||
task-manager:
|
||||
status: started
|
||||
enabled: true
|
||||
logger:
|
||||
max-files: 10
|
||||
enabled: true
|
||||
|
@@ -41,7 +41,7 @@ class SessionHandlerServiceProviderTest extends \PhraseanetTestCase
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
|
||||
$memcached = $this->getMockBuilder('Memcached')
|
||||
@$memcached = $this->getMockBuilder('Memcached')
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
|
||||
|
Reference in New Issue
Block a user