diff --git a/app/Components/Forms/DocRequestFormFactory.php b/app/Components/Forms/DocRequestFormFactory.php
new file mode 100644
index 0000000..11b1da5
--- /dev/null
+++ b/app/Components/Forms/DocRequestFormFactory.php
@@ -0,0 +1,48 @@
+howdoRequestFactory = $howdoRequestFactory;
+ }
+
+ public function create(array $values = [])
+ {
+ $form = new Form();
+ $form->setRenderer(new BootstrapRenderer());
+
+ $form->addText('title', 'Request title:')
+ ->setRequired();
+
+ $form->addTextArea('description', 'Description:')
+ ->setRequired();
+
+ $form->addSubmit('submit', 'Save');
+
+ $form->onSuccess[] = function (Form $form) {
+ $values = $form->getValues();
+
+ $this->howdoRequestFactory->create($values->title, $values->description);
+ };
+
+ if (count($values) > 0) {
+ $form->setDefaults([
+ 'title' => $values['title'],
+ 'description' => $values['description'],
+ ]);
+ }
+
+ return $form;
+ }
+}
+
diff --git a/app/Model/Howdo/HowdoDocument.php b/app/Model/Howdo/HowdoDocument.php
index 3d46106..f4b6728 100644
--- a/app/Model/Howdo/HowdoDocument.php
+++ b/app/Model/Howdo/HowdoDocument.php
@@ -2,9 +2,16 @@
namespace App\Model\Howdo;
+use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
-/** @ORM\Entity */
+/**
+ * @ORM\Entity
+ * @ORM\Table(indexes={
+ * @ORM\Index(columns={"title"}, flags={"fulltext"}),
+ * @ORM\Index(columns={"document"}, flags={"fulltext"})
+ * })
+ */
class HowdoDocument
{
/**
@@ -16,7 +23,7 @@ class HowdoDocument
private $id;
/**
- * @ORM\Column(type="text")
+ * @ORM\Column(type="string")
* @var string
*/
private $title;
@@ -26,9 +33,90 @@ class HowdoDocument
*/
private $document;
+ /**
+ * @var HowdoKeyword[]|ArrayCollection
+ * @ORM\OneToMany(targetEntity="App\Model\Howdo\HowdoKeyword", mappedBy="document")
+ */
+ private $keywords;
+
+ /**
+ * @param string $title
+ * @param string $document
+ */
+ public function __construct($title, $document)
+ {
+ $this->title = $title;
+ $this->document = $document;
+ $this->keywords = new ArrayCollection();
+ }
+
+
/** @return int */
public function getId()
{
return $this->id;
}
+
+ /**
+ * @return string
+ */
+ public function getTitle()
+ {
+ return $this->title;
+ }
+
+ /**
+ * @param string $title
+ *
+ * @return self
+ */
+ public function setTitle($title)
+ {
+ $this->title = $title;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getDocument()
+ {
+ return $this->document;
+ }
+
+ /**
+ * @param string $document
+ *
+ * @return self
+ */
+ public function setDocument($document)
+ {
+ $this->document = $document;
+
+ return $this;
+ }
+
+ /**
+ * @return HowdoKeyword[]
+ */
+ public function getKeywords()
+ {
+ return $this->keywords;
+ }
+
+ /**
+ * @param HowdoKeyword $keyword
+ *
+ * @return self
+ */
+ public function addKeyword(HowdoKeyword $keyword)
+ {
+ if (!$this->keywords->contains($keyword)) {
+ $this->keywords->add($keyword);
+ }
+
+ return $this;
+ }
}
+
diff --git a/app/Model/Howdo/HowdoDocumentDao.php b/app/Model/Howdo/HowdoDocumentDao.php
new file mode 100644
index 0000000..0dfe96b
--- /dev/null
+++ b/app/Model/Howdo/HowdoDocumentDao.php
@@ -0,0 +1,24 @@
+em->getRepository(HowdoDocument::class)->createQueryBuilder('d')
+ ->leftJoin(HowdoKeyword::class, 'k', 'WITH', 'k.document = d.id')
+ ->where('d.title LIKE :keyword')
+ ->orWhere('d.document LIKE :keyword')
+ ->orWhere('k.keyword LIKE :keyword')
+ ->setParameter('keyword', '%' . $keyword . '%')
+ ->getQuery()
+ ->getResult();
+ }
+}
+
diff --git a/app/Model/Howdo/HowdoFinder.php b/app/Model/Howdo/HowdoFinder.php
new file mode 100644
index 0000000..fe207f0
--- /dev/null
+++ b/app/Model/Howdo/HowdoFinder.php
@@ -0,0 +1,63 @@
+howdoDocumentDao = $howdoDocumentDao;
+ $this->howdoRequestDao = $howdoRequestDao;
+ $this->requestUpVoter = $requestUpVoter;
+ }
+
+ /**
+ * Returns array of found documents and requests
+ *
+ * @param string $keyword
+ * @return array
+ */
+ public function findByKeyword($keyword)
+ {
+ return [
+ 'documents' => $this->findDocuments($keyword),
+ 'requests' => $this->findRequests($keyword),
+ ];
+ }
+
+ private function findDocuments($keyword)
+ {
+ $documentEntities = $this->howdoDocumentDao->findByFulltext($keyword);
+
+ return array_map(function (HowdoDocument $item) {
+ return [
+ 'title' => $item->getTitle(),
+ 'content' => $item->getDocument(),
+ ];
+ }, $documentEntities);
+ }
+
+ private function findRequests($keyword)
+ {
+ $requestEntities = $this->howdoRequestDao->findByFulltext($keyword);
+
+ return array_map(function (HowdoRequest $item) {
+ return [
+ 'title' => $item->getTitle(),
+ 'content' => $item->getDescription(),
+ 'votes' => $item->getVotes(),
+ 'voted' => $this->requestUpVoter->alreadyVoted($item->getId()),
+ ];
+ }, $requestEntities);
+ }
+}
+
diff --git a/app/Model/Howdo/HowdoIndex.php b/app/Model/Howdo/HowdoKeyword.php
similarity index 68%
rename from app/Model/Howdo/HowdoIndex.php
rename to app/Model/Howdo/HowdoKeyword.php
index f3077c8..d857142 100644
--- a/app/Model/Howdo/HowdoIndex.php
+++ b/app/Model/Howdo/HowdoKeyword.php
@@ -6,9 +6,9 @@
/**
* @ORM\Entity
- * @ORM\Table(indexes={@ORM\Index(columns={"key_phrase"}, flags={"fulltext"})})
+ * @ORM\Table(indexes={@ORM\Index(columns={"keyword"}, flags={"fulltext"})})
*/
-class HowdoIndex
+class HowdoKeyword
{
/**
* @ORM\Column(type="integer")
@@ -19,14 +19,15 @@ class HowdoIndex
private $id;
/**
- * @ORM\Column(type="text")
+ * @ORM\Column(type="string")
* @var string
*/
- private $keyPhrase;
+ private $keyword;
/**
- * @ORM\ManyToOne(targetEntity="App\Model\Howdo\HowdoDocument")
+ * @ORM\ManyToOne(targetEntity="App\Model\Howdo\HowdoDocument", inversedBy="keywords")
* @var HowdoDocument
*/
private $document;
}
+
diff --git a/app/Model/Howdo/HowdoRequest.php b/app/Model/Howdo/HowdoRequest.php
index dcefb03..e3b67dd 100644
--- a/app/Model/Howdo/HowdoRequest.php
+++ b/app/Model/Howdo/HowdoRequest.php
@@ -4,7 +4,12 @@
use Doctrine\ORM\Mapping as ORM;
-/** @ORM\Entity */
+/**
+ * @ORM\Entity
+ * @ORM\Table(indexes={
+ * @ORM\Index(columns={"description"}, flags={"fulltext"}),
+ * @ORM\Index(columns={"title"}, flags={"fulltext"})})
+ */
class HowdoRequest
{
/**
@@ -16,24 +21,66 @@ class HowdoRequest
private $id;
/**
- * @ORM\Column(type="text")
+ * @ORM\Column(type="string")
* @var string
*/
- private $searchedQuery;
+ private $title;
/**
* @ORM\Column(type="text")
+ * @var string
*/
private $description;
/**
* @ORM\Column(type="integer")
+ * @var int
*/
- private $votes;
+ private $votes = 1;
+
+ /**
+ * @param string $title
+ * @param string $description
+ */
+ public function __construct($title, $description)
+ {
+ $this->title = $title;
+ $this->description = $description;
+ }
/** @return int */
public function getId()
{
return $this->id;
}
+
+ /**
+ * @return string
+ */
+ public function getTitle()
+ {
+ return $this->title;
+ }
+
+ /**
+ * @return string
+ */
+ public function getDescription()
+ {
+ return $this->description;
+ }
+
+ /**
+ * @return int
+ */
+ public function getVotes()
+ {
+ return $this->votes;
+ }
+
+ public function addVote()
+ {
+ $this->votes++;
+ }
}
+
diff --git a/app/Model/Howdo/HowdoRequestDao.php b/app/Model/Howdo/HowdoRequestDao.php
new file mode 100644
index 0000000..8d40db1
--- /dev/null
+++ b/app/Model/Howdo/HowdoRequestDao.php
@@ -0,0 +1,42 @@
+em->getRepository(HowdoRequest::class)->createQueryBuilder('r')
+ ->where('r.title LIKE :keyword')
+ ->orWhere('r.description LIKE :keyword')
+ ->setParameter('keyword', '%' . $keyword . '%')
+ ->getQuery()
+ ->getResult();
+ }
+
+ /**
+ * @param int $requestId
+ * @return HowdoRequest
+ * @throws EntityNotFoundException
+ */
+ public function findById($requestId)
+ {
+ $request = $this->em->getRepository(HowdoRequest::class)->find($requestId);
+
+ if ($request === null) {
+ throw new EntityNotFoundException('HowdoRequest with id `' . $requestId . '` not found.');
+ }
+
+ return $request;
+ }
+}
+
diff --git a/app/Model/Howdo/HowdoRequestFactory.php b/app/Model/Howdo/HowdoRequestFactory.php
new file mode 100644
index 0000000..024132e
--- /dev/null
+++ b/app/Model/Howdo/HowdoRequestFactory.php
@@ -0,0 +1,34 @@
+persister = $persister;
+ }
+
+ /**
+ * @param string $title
+ * @param string $description
+ *
+ * @return HowdoRequest
+ */
+ public function create($title, $description)
+ {
+ $request = new HowdoRequest($title, $description);
+
+ $this->persister->save($request);
+
+ return $request;
+ }
+
+
+}
+
diff --git a/app/Model/Howdo/RequestUpVoter.php b/app/Model/Howdo/RequestUpVoter.php
new file mode 100644
index 0000000..7817e7c
--- /dev/null
+++ b/app/Model/Howdo/RequestUpVoter.php
@@ -0,0 +1,68 @@
+howdoRequestDao = $howdoRequestDao;
+ $this->session = $session;
+ $this->persister = $persister;
+ }
+
+ /**
+ * @param int $requestId
+ *
+ * @return bool
+ */
+ public function upVote($requestId)
+ {
+ if (!$this->alreadyVoted($requestId)) {
+ $howdoRequest = $this->howdoRequestDao->findById($requestId);
+ $howdoRequest->addVote();
+
+ $this->persister->flush();
+
+ $this->setVoted($requestId);
+ return true;
+ }
+
+ return false;
+ }
+
+ public function alreadyVoted($requestId)
+ {
+ return $this->getSessionSection()->offsetExists($requestId);
+ }
+
+ private function setVoted($requestId)
+ {
+ $this->getSessionSection()->offsetSet($requestId, true);
+ }
+
+ private function getSessionSection()
+ {
+ return $this->session->getSection(self::SESSION_SECTION);
+ }
+}
+
diff --git a/app/Model/ORM/IPersister.php b/app/Model/ORM/IPersister.php
new file mode 100644
index 0000000..5b6c676
--- /dev/null
+++ b/app/Model/ORM/IPersister.php
@@ -0,0 +1,16 @@
+em = $em;
+ }
+
+ public function flush()
+ {
+ $this->em->flush();
+ }
+
+ public function persist($entity)
+ {
+ $this->em->persist($entity);
+ }
+
+ public function save($entity)
+ {
+ $this->persist($entity);
+ $this->flush();
+ }
+
+ public function remove($entity)
+ {
+ $this->em->remove($entity);
+ }
+
+ public function delete($entity)
+ {
+ $this->remove($entity);
+ $this->flush();
+ }
+}
diff --git a/app/Model/TEntityManager.php b/app/Model/TEntityManager.php
new file mode 100644
index 0000000..e1cefc4
--- /dev/null
+++ b/app/Model/TEntityManager.php
@@ -0,0 +1,17 @@
+em = $em;
+ }
+
+}
diff --git a/app/Presenters/DocumentPresenter.php b/app/Presenters/DocumentPresenter.php
new file mode 100644
index 0000000..8560853
--- /dev/null
+++ b/app/Presenters/DocumentPresenter.php
@@ -0,0 +1,32 @@
+howdoFinder->findByKeyword($keyword);
+
+ $this->sendResponse(new JsonResponse($result));
+ }
+
+ public function handleUpVoteRequest($requestId)
+ {
+ $voted = $this->requestUpVoter->upVote($requestId);
+
+ $this->sendResponse(new JsonResponse([
+ 'success' => $voted,
+ ]));
+ }
+}
diff --git a/app/Presenters/NewDocRequestPresenter.php b/app/Presenters/NewDocRequestPresenter.php
new file mode 100644
index 0000000..e5fc32e
--- /dev/null
+++ b/app/Presenters/NewDocRequestPresenter.php
@@ -0,0 +1,23 @@
+docRequestFormFactory->create();
+
+ $form->onSuccess[] = function () {
+ $this->flashSuccess('Document request successfully created');
+ $this->redirect('this');
+ };
+
+ return $form;
+ }
+}
diff --git a/app/Presenters/templates/Document/default.latte b/app/Presenters/templates/Document/default.latte
new file mode 100644
index 0000000..3423fd2
--- /dev/null
+++ b/app/Presenters/templates/Document/default.latte
@@ -0,0 +1,9 @@
+{block content}
+
+

+
+
+{/block}
+
diff --git a/app/Presenters/templates/NewDocRequest/default.latte b/app/Presenters/templates/NewDocRequest/default.latte
new file mode 100644
index 0000000..934e075
--- /dev/null
+++ b/app/Presenters/templates/NewDocRequest/default.latte
@@ -0,0 +1,9 @@
+{block content}
+
+

+
+ {control newRequestForm}
+
+
+{/block}
+
diff --git a/app/config/debug.neon b/app/config/debug.neon
index 338c974..4642cce 100644
--- a/app/config/debug.neon
+++ b/app/config/debug.neon
@@ -5,13 +5,7 @@
parameters:
webmasterEmail:
-
-nette:
- application:
- catchExceptions: no
-
- container:
- debugger: yes # aktivuje panel v Debugger baru
-
+application:
+ catchExceptions: no
services:
diff --git a/app/config/default.neon b/app/config/default.neon
index 7ee0367..249b574 100644
--- a/app/config/default.neon
+++ b/app/config/default.neon
@@ -20,22 +20,20 @@ php:
date.timezone: Europe/Prague
# zlib.output_compression: yes
+application:
+ errorPresenter: Error
+ catchExceptions: yes
+ mapping:
+ *: App\*Module\Presenters\*Presenter
-nette:
- application:
- errorPresenter: Error
- catchExceptions: yes
- mapping:
- *: App\*Module\Presenters\*Presenter
+tracy:
+ email: %webmasterEmail%
+ strictMode: yes
- debugger:
- email: %webmasterEmail%
- strictMode: yes
-
- session:
- autoStart: smart
- expiration: 14 days
- savePath: "%tempDir%/sessions"
+session:
+ autoStart: smart
+ expiration: 14 days
+ savePath: "%tempDir%/sessions"
latte:
xhtml: no
diff --git a/app/config/services.neon b/app/config/services.neon
index c5ba973..edb7682 100644
--- a/app/config/services.neon
+++ b/app/config/services.neon
@@ -7,3 +7,10 @@
services:
- Instante\RequireJS\JsModuleContainer(%paths.frontend%/RequireJSDependencies.json)
- Instante\RequireJS\Components\JsLoaderFactory(%useSourceJavaScripts%)
+ - App\Model\Persister
+ - App\Model\Howdo\HowdoDocumentDao
+ - App\Model\Howdo\HowdoRequestDao
+ - App\Model\Howdo\HowdoFinder
+ - App\Model\Howdo\RequestUpVoter
+ - App\Model\Howdo\HowdoRequestFactory
+ - App\Components\Forms\DocRequestFormFactory
diff --git a/composer.json b/composer.json
index c27e33a..f82cd25 100644
--- a/composer.json
+++ b/composer.json
@@ -2,16 +2,20 @@
"name": "instante/web",
"description": "Instante dev-stack documentation website",
"config": {
- "vendor-dir": "./vendor"
+ "vendor-dir": "./vendor",
+ "platform": {
+ "php": "5.6"
+ }
},
"license": "proprietary",
"require": {
"php": ">=5.5.0",
- "nette/nette": "2.3.*",
+ "nette/nette": "^2.3",
"instante/require-js": "~1.1",
"instante/doctrine": "~1.1",
"instante/bootstrap": "~1.0",
- "instante/ui": "~1.0"
+ "instante/ui": "~1.0",
+ "instante/bootstrap-3-renderer": "2.0.0-alpha"
},
"require-dev": {
"nette/tester": "@dev",
diff --git a/composer.lock b/composer.lock
index b32cb16..ce7a596 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,40 +4,39 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically"
],
- "hash": "9bb2c64b15dd9c77cfbc4ee6b4395c51",
- "content-hash": "7a6b0e618c7b7eec7035e10b7284d2db",
+ "content-hash": "e4243a0a0d2eaf58a28cc3b4c8a710e2",
"packages": [
{
"name": "doctrine/annotations",
- "version": "v1.2.7",
+ "version": "v1.3.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/annotations.git",
- "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535"
+ "reference": "bd4461328621bde0ae6b1b2675fbc6aca4ceb558"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
- "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
+ "url": "https://api.github.com/repos/doctrine/annotations/zipball/bd4461328621bde0ae6b1b2675fbc6aca4ceb558",
+ "reference": "bd4461328621bde0ae6b1b2675fbc6aca4ceb558",
"shasum": ""
},
"require": {
"doctrine/lexer": "1.*",
- "php": ">=5.3.2"
+ "php": "^5.6 || ^7.0"
},
"require-dev": {
"doctrine/cache": "1.*",
- "phpunit/phpunit": "4.*"
+ "phpunit/phpunit": "^5.6.1"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.3.x-dev"
+ "dev-master": "1.4.x-dev"
}
},
"autoload": {
- "psr-0": {
- "Doctrine\\Common\\Annotations\\": "lib/"
+ "psr-4": {
+ "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -73,20 +72,20 @@
"docblock",
"parser"
],
- "time": "2015-08-31 12:32:49"
+ "time": "2016-12-30T15:59:45+00:00"
},
{
"name": "doctrine/cache",
- "version": "v1.6.0",
+ "version": "v1.6.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/cache.git",
- "reference": "f8af318d14bdb0eff0336795b428b547bd39ccb6"
+ "reference": "b6f544a20f4807e81f7044d31e679ccbb1866dc3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/cache/zipball/f8af318d14bdb0eff0336795b428b547bd39ccb6",
- "reference": "f8af318d14bdb0eff0336795b428b547bd39ccb6",
+ "url": "https://api.github.com/repos/doctrine/cache/zipball/b6f544a20f4807e81f7044d31e679ccbb1866dc3",
+ "reference": "b6f544a20f4807e81f7044d31e679ccbb1866dc3",
"shasum": ""
},
"require": {
@@ -143,7 +142,7 @@
"cache",
"caching"
],
- "time": "2015-12-31 16:37:02"
+ "time": "2016-10-29T11:16:17+00:00"
},
{
"name": "doctrine/collections",
@@ -209,20 +208,20 @@
"collections",
"iterator"
],
- "time": "2015-04-14 22:21:58"
+ "time": "2015-04-14T22:21:58+00:00"
},
{
"name": "doctrine/common",
- "version": "v2.6.1",
+ "version": "v2.6.2",
"source": {
"type": "git",
"url": "https://github.com/doctrine/common.git",
- "reference": "a579557bc689580c19fee4e27487a67fe60defc0"
+ "reference": "7bce00698899aa2c06fe7365c76e4d78ddb15fa3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/common/zipball/a579557bc689580c19fee4e27487a67fe60defc0",
- "reference": "a579557bc689580c19fee4e27487a67fe60defc0",
+ "url": "https://api.github.com/repos/doctrine/common/zipball/7bce00698899aa2c06fe7365c76e4d78ddb15fa3",
+ "reference": "7bce00698899aa2c06fe7365c76e4d78ddb15fa3",
"shasum": ""
},
"require": {
@@ -282,20 +281,20 @@
"persistence",
"spl"
],
- "time": "2015-12-25 13:18:31"
+ "time": "2016-11-30T16:50:46+00:00"
},
{
"name": "doctrine/dbal",
- "version": "v2.5.4",
+ "version": "v2.5.5",
"source": {
"type": "git",
"url": "https://github.com/doctrine/dbal.git",
- "reference": "abbdfd1cff43a7b99d027af3be709bc8fc7d4769"
+ "reference": "9f8c05cd5225a320d56d4bfdb4772f10d045a0c9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/dbal/zipball/abbdfd1cff43a7b99d027af3be709bc8fc7d4769",
- "reference": "abbdfd1cff43a7b99d027af3be709bc8fc7d4769",
+ "url": "https://api.github.com/repos/doctrine/dbal/zipball/9f8c05cd5225a320d56d4bfdb4772f10d045a0c9",
+ "reference": "9f8c05cd5225a320d56d4bfdb4772f10d045a0c9",
"shasum": ""
},
"require": {
@@ -304,7 +303,7 @@
},
"require-dev": {
"phpunit/phpunit": "4.*",
- "symfony/console": "2.*"
+ "symfony/console": "2.*||^3.0"
},
"suggest": {
"symfony/console": "For helpful console commands such as SQL execution and import of files."
@@ -353,7 +352,7 @@
"persistence",
"queryobject"
],
- "time": "2016-01-05 22:11:12"
+ "time": "2016-09-09T19:13:33+00:00"
},
{
"name": "doctrine/inflector",
@@ -420,7 +419,7 @@
"singularize",
"string"
],
- "time": "2015-11-06 14:35:42"
+ "time": "2015-11-06T14:35:42+00:00"
},
{
"name": "doctrine/instantiator",
@@ -474,7 +473,7 @@
"constructor",
"instantiate"
],
- "time": "2015-06-14 21:17:01"
+ "time": "2015-06-14T21:17:01+00:00"
},
{
"name": "doctrine/lexer",
@@ -528,20 +527,20 @@
"lexer",
"parser"
],
- "time": "2014-09-09 13:34:57"
+ "time": "2014-09-09T13:34:57+00:00"
},
{
"name": "doctrine/migrations",
- "version": "1.4.1",
+ "version": "v1.5.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/migrations.git",
- "reference": "0d0ff5da10c5d30846da32060bd9e357abf70a05"
+ "reference": "c81147c0f2938a6566594455367e095150547f72"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/migrations/zipball/0d0ff5da10c5d30846da32060bd9e357abf70a05",
- "reference": "0d0ff5da10c5d30846da32060bd9e357abf70a05",
+ "url": "https://api.github.com/repos/doctrine/migrations/zipball/c81147c0f2938a6566594455367e095150547f72",
+ "reference": "c81147c0f2938a6566594455367e095150547f72",
"shasum": ""
},
"require": {
@@ -556,9 +555,10 @@
"doctrine/orm": "2.*",
"jdorn/sql-formatter": "~1.1",
"johnkary/phpunit-speedtrap": "~1.0@dev",
+ "mikey179/vfsstream": "^1.6",
"mockery/mockery": "^0.9.4",
"phpunit/phpunit": "~4.7",
- "satooshi/php-coveralls": "0.6.*"
+ "satooshi/php-coveralls": "^1.0"
},
"suggest": {
"jdorn/sql-formatter": "Allows to generate formatted SQL with the diff command."
@@ -569,7 +569,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "v1.5.x-dev"
+ "dev-master": "v1.6.x-dev"
}
},
"autoload": {
@@ -601,26 +601,26 @@
"database",
"migrations"
],
- "time": "2016-03-14 12:29:11"
+ "time": "2016-12-25T22:54:00+00:00"
},
{
"name": "doctrine/orm",
- "version": "v2.5.4",
+ "version": "v2.5.6",
"source": {
"type": "git",
"url": "https://github.com/doctrine/doctrine2.git",
- "reference": "bc4ddbfb0114cb33438cc811c9a740d8aa304aab"
+ "reference": "e6c434196c8ef058239aaa0724b4aadb0107940b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/doctrine2/zipball/bc4ddbfb0114cb33438cc811c9a740d8aa304aab",
- "reference": "bc4ddbfb0114cb33438cc811c9a740d8aa304aab",
+ "url": "https://api.github.com/repos/doctrine/doctrine2/zipball/e6c434196c8ef058239aaa0724b4aadb0107940b",
+ "reference": "e6c434196c8ef058239aaa0724b4aadb0107940b",
"shasum": ""
},
"require": {
"doctrine/cache": "~1.4",
"doctrine/collections": "~1.2",
- "doctrine/common": ">=2.5-dev,<2.7-dev",
+ "doctrine/common": ">=2.5-dev,<2.8-dev",
"doctrine/dbal": ">=2.5-dev,<2.6-dev",
"doctrine/instantiator": "~1.0.1",
"ext-pdo": "*",
@@ -677,26 +677,26 @@
"database",
"orm"
],
- "time": "2016-01-05 21:34:58"
+ "time": "2016-12-18T15:42:34+00:00"
},
{
"name": "instante/bootstrap",
- "version": "1.0.3",
+ "version": "1.2.1",
"source": {
"type": "git",
"url": "https://github.com/instante/bootstrap.git",
- "reference": "2c30a0677342102a6abf25af038182c154ce9c08"
+ "reference": "b84de56d61ec97619cb224a0e316dac1f9461a69"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/instante/bootstrap/zipball/2c30a0677342102a6abf25af038182c154ce9c08",
- "reference": "2c30a0677342102a6abf25af038182c154ce9c08",
+ "url": "https://api.github.com/repos/instante/bootstrap/zipball/b84de56d61ec97619cb224a0e316dac1f9461a69",
+ "reference": "b84de56d61ec97619cb224a0e316dac1f9461a69",
"shasum": ""
},
"require": {
"instante/utils": "@dev",
- "nette/bootstrap": "~2.3",
- "nette/robot-loader": "~2.3"
+ "nette/bootstrap": "~2.4",
+ "nette/robot-loader": "~2.4"
},
"require-dev": {
"jakub-onderka/php-parallel-lint": "~0.6",
@@ -725,20 +725,67 @@
"instante",
"nette"
],
- "time": "2016-07-14 13:14:23"
+ "time": "2016-10-26T13:06:56+00:00"
+ },
+ {
+ "name": "instante/bootstrap-3-renderer",
+ "version": "2.0.0-alpha",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/instante/bootstrap3renderer.git",
+ "reference": "fbce81076e184e826e26c0302ab5b5da22b1a186"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/instante/bootstrap3renderer/zipball/fbce81076e184e826e26c0302ab5b5da22b1a186",
+ "reference": "fbce81076e184e826e26c0302ab5b5da22b1a186",
+ "shasum": ""
+ },
+ "require": {
+ "instante/extended-form-macros": "@dev",
+ "instante/utils": "~1.3",
+ "nette/forms": "~2.4",
+ "nette/utils": "~2.4"
+ },
+ "require-dev": {
+ "instante/php-test-suite": "@dev",
+ "jakub-onderka/php-parallel-lint": "~0.6",
+ "mockery/mockery": "@dev",
+ "nette/tester": "@dev"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Instante\\Bootstrap3Renderer\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause",
+ "GPL-2.0",
+ "GPL-3.0"
+ ],
+ "description": "Nette forms renderer with bootstrap 3",
+ "keywords": [
+ "Forms",
+ "bootstrap",
+ "bootstrap3",
+ "nette"
+ ],
+ "time": "2016-09-06T12:40:41+00:00"
},
{
"name": "instante/doctrine",
- "version": "1.1.2",
+ "version": "1.1.3",
"source": {
"type": "git",
"url": "https://github.com/instante/doctrine.git",
- "reference": "6148065f1e8d4a720ba4debd169da224805547ee"
+ "reference": "95e61af409b508b1d423b1a43be130f156d41de1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/instante/doctrine/zipball/6148065f1e8d4a720ba4debd169da224805547ee",
- "reference": "6148065f1e8d4a720ba4debd169da224805547ee",
+ "url": "https://api.github.com/repos/instante/doctrine/zipball/95e61af409b508b1d423b1a43be130f156d41de1",
+ "reference": "95e61af409b508b1d423b1a43be130f156d41de1",
"shasum": ""
},
"require": {
@@ -750,6 +797,7 @@
},
"require-dev": {
"jakub-onderka/php-parallel-lint": "~0.6",
+ "nette/http": "~2.2",
"nette/tester": "@dev"
},
"type": "library",
@@ -769,20 +817,69 @@
"instante",
"nette"
],
- "time": "2016-06-15 15:39:32"
+ "time": "2016-11-01T15:53:52+00:00"
+ },
+ {
+ "name": "instante/extended-form-macros",
+ "version": "0.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/instante/extended-form-macros.git",
+ "reference": "bb19ce6ef01c7b552b7d5edc580ecc8315429c9b"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/instante/extended-form-macros/zipball/bb19ce6ef01c7b552b7d5edc580ecc8315429c9b",
+ "reference": "bb19ce6ef01c7b552b7d5edc580ecc8315429c9b",
+ "shasum": ""
+ },
+ "require": {
+ "instante/utils": "~1.2",
+ "latte/latte": "~2.4",
+ "nette/bootstrap": "~2.4",
+ "nette/di": "~2.4",
+ "nette/forms": "~2.4"
+ },
+ "require-dev": {
+ "instante/php-test-suite": "@dev",
+ "jakub-onderka/php-parallel-lint": "~0.6",
+ "mockery/mockery": "@dev",
+ "nette/application": "~2.4",
+ "nette/tester": "@dev"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Instante\\ExtendedFormMacros\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause",
+ "GPL-2.0",
+ "GPL-3.0"
+ ],
+ "description": "Extended form rendering macros for Nette framework",
+ "keywords": [
+ "Forms",
+ "latte",
+ "macros",
+ "nette"
+ ],
+ "time": "2016-09-06T13:35:01+00:00"
},
{
"name": "instante/require-js",
- "version": "1.1.0",
+ "version": "1.2.0",
"source": {
"type": "git",
"url": "https://github.com/instante/require-js.git",
- "reference": "c09da0b5c299512730af5077bb243874c703cd9f"
+ "reference": "2d2b620d53f7480943e06e2695cfb5af75bf4904"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/instante/require-js/zipball/c09da0b5c299512730af5077bb243874c703cd9f",
- "reference": "c09da0b5c299512730af5077bb243874c703cd9f",
+ "url": "https://api.github.com/repos/instante/require-js/zipball/2d2b620d53f7480943e06e2695cfb5af75bf4904",
+ "reference": "2d2b620d53f7480943e06e2695cfb5af75bf4904",
"shasum": ""
},
"require": {
@@ -819,20 +916,20 @@
"instante",
"nette"
],
- "time": "2016-07-20 09:57:23"
+ "time": "2016-10-26T12:14:54+00:00"
},
{
"name": "instante/ui",
- "version": "1.0.2",
+ "version": "1.0.3",
"source": {
"type": "git",
"url": "https://github.com/instante/ui.git",
- "reference": "904c06b2067e45448c7209b1a69dbb99b518e5c6"
+ "reference": "2d0e718d514207a29a661dbdb2fee69c349b8de0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/instante/ui/zipball/904c06b2067e45448c7209b1a69dbb99b518e5c6",
- "reference": "904c06b2067e45448c7209b1a69dbb99b518e5c6",
+ "url": "https://api.github.com/repos/instante/ui/zipball/2d0e718d514207a29a661dbdb2fee69c349b8de0",
+ "reference": "2d0e718d514207a29a661dbdb2fee69c349b8de0",
"shasum": ""
},
"require": {
@@ -861,25 +958,25 @@
"instante",
"nette"
],
- "time": "2016-01-03 18:58:36"
+ "time": "2016-07-18T13:14:05+00:00"
},
{
"name": "instante/utils",
- "version": "1.1.0",
+ "version": "1.3.1",
"source": {
"type": "git",
"url": "https://github.com/instante/utils.git",
- "reference": "cc029274227f6d6a4dca565269d2e83323409e8a"
+ "reference": "72996a023accc519de087441c944a78829b16857"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/instante/utils/zipball/cc029274227f6d6a4dca565269d2e83323409e8a",
- "reference": "cc029274227f6d6a4dca565269d2e83323409e8a",
+ "url": "https://api.github.com/repos/instante/utils/zipball/72996a023accc519de087441c944a78829b16857",
+ "reference": "72996a023accc519de087441c944a78829b16857",
"shasum": ""
},
"require": {
"nette/utils": "~2.2",
- "php": ">=5.5.0"
+ "php": ">=5.6.0"
},
"require-dev": {
"jakub-onderka/php-parallel-lint": "~0.6",
@@ -908,7 +1005,7 @@
"instante",
"nette"
],
- "time": "2015-10-21 23:22:32"
+ "time": "2016-08-11T13:41:53+00:00"
},
{
"name": "ircmaxell/password-compat",
@@ -950,7 +1047,7 @@
"hashing",
"password"
],
- "time": "2014-11-20 16:49:30"
+ "time": "2014-11-20T16:49:30+00:00"
},
{
"name": "kdyby/annotations",
@@ -1036,7 +1133,7 @@
"kdyby",
"nette"
],
- "time": "2016-07-07 20:48:31"
+ "time": "2016-07-07T20:48:31+00:00"
},
{
"name": "kdyby/console",
@@ -1122,7 +1219,7 @@
"kdyby",
"nette"
],
- "time": "2016-07-07 20:48:31"
+ "time": "2016-07-07T20:48:31+00:00"
},
{
"name": "kdyby/doctrine",
@@ -1214,7 +1311,7 @@
"nette",
"orm"
],
- "time": "2016-07-07 23:14:14"
+ "time": "2016-07-07T23:14:14+00:00"
},
{
"name": "kdyby/doctrine-cache",
@@ -1295,7 +1392,7 @@
"kdyby",
"nette"
],
- "time": "2016-07-07 20:48:31"
+ "time": "2016-07-07T20:48:31+00:00"
},
{
"name": "kdyby/events",
@@ -1376,34 +1473,45 @@
"kdyby",
"nette"
],
- "time": "2016-07-07 20:48:31"
+ "time": "2016-07-07T20:48:31+00:00"
},
{
"name": "latte/latte",
- "version": "v2.3.12",
+ "version": "v2.4.2",
"source": {
"type": "git",
"url": "https://github.com/nette/latte.git",
- "reference": "26af8b6b68ea68bb466ce692c12b8898524456bd"
+ "reference": "7d30f7bfd58cb017c47d7e14ed93286ce2ca1bc9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/latte/zipball/26af8b6b68ea68bb466ce692c12b8898524456bd",
- "reference": "26af8b6b68ea68bb466ce692c12b8898524456bd",
+ "url": "https://api.github.com/repos/nette/latte/zipball/7d30f7bfd58cb017c47d7e14ed93286ce2ca1bc9",
+ "reference": "7d30f7bfd58cb017c47d7e14ed93286ce2ca1bc9",
"shasum": ""
},
"require": {
+ "ext-json": "*",
"ext-tokenizer": "*",
- "php": ">=5.3.1"
+ "php": ">=5.4.4"
+ },
+ "conflict": {
+ "nette/application": "<2.4.1"
},
"require-dev": {
- "nette/tester": "~1.3"
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.3"
},
"suggest": {
"ext-fileinfo": "to use filter |datastream",
- "ext-mbstring": "to use filters like lower, upper, capitalize, ..."
+ "ext-mbstring": "to use filters like lower, upper, capitalize, ...",
+ "ext-xml": "to use filters like length, substring, ..."
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -1431,48 +1539,61 @@
"templating",
"twig"
],
- "time": "2016-05-30 09:11:18"
+ "time": "2016-09-27T13:10:19+00:00"
},
{
"name": "nette/application",
- "version": "v2.3.13",
+ "version": "v2.4.3",
"source": {
"type": "git",
"url": "https://github.com/nette/application.git",
- "reference": "ab1ed67f4b85e1be7af5d13bf00de61391544be6"
+ "reference": "58a8d2288dd2aae755538ccb380af183a356892d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/application/zipball/ab1ed67f4b85e1be7af5d13bf00de61391544be6",
- "reference": "ab1ed67f4b85e1be7af5d13bf00de61391544be6",
+ "url": "https://api.github.com/repos/nette/application/zipball/58a8d2288dd2aae755538ccb380af183a356892d",
+ "reference": "58a8d2288dd2aae755538ccb380af183a356892d",
"shasum": ""
},
"require": {
- "nette/component-model": "~2.2",
+ "nette/component-model": "~2.3",
"nette/http": "~2.2",
"nette/reflection": "~2.2",
- "nette/security": "~2.2",
- "nette/utils": "~2.2",
- "php": ">=5.3.1"
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
+ "nette/di": "<2.4",
+ "nette/forms": "<2.4",
+ "nette/latte": "<2.4",
"nette/nette": "<2.2"
},
"require-dev": {
- "latte/latte": "~2.3.9",
- "nette/di": "~2.3",
- "nette/forms": "~2.2",
- "nette/robot-loader": "~2.2",
- "nette/tester": "~1.3"
+ "latte/latte": "^2.4.1",
+ "mockery/mockery": "^0.9.5",
+ "nette/di": "~2.4",
+ "nette/forms": "~2.4",
+ "nette/robot-loader": "~2.4",
+ "nette/security": "~2.4",
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.4"
},
"suggest": {
"latte/latte": "Allows using Latte in templates",
"nette/forms": "Allows to use Nette\\Application\\UI\\Form"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
+ ],
+ "files": [
+ "src/compatibility.php"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -1493,26 +1614,26 @@
],
"description": "Nette Application MVC Component",
"homepage": "https://nette.org",
- "time": "2016-06-17 17:40:16"
+ "time": "2016-12-20T11:12:00+00:00"
},
{
"name": "nette/bootstrap",
- "version": "v2.3.5",
+ "version": "v2.4.2",
"source": {
"type": "git",
"url": "https://github.com/nette/bootstrap.git",
- "reference": "1fc6e52b790864d2973d479a4460a89cec1f51f8"
+ "reference": "4db37e6d42ddf41b50417950741113b5dfc86e27"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/bootstrap/zipball/1fc6e52b790864d2973d479a4460a89cec1f51f8",
- "reference": "1fc6e52b790864d2973d479a4460a89cec1f51f8",
+ "url": "https://api.github.com/repos/nette/bootstrap/zipball/4db37e6d42ddf41b50417950741113b5dfc86e27",
+ "reference": "4db37e6d42ddf41b50417950741113b5dfc86e27",
"shasum": ""
},
"require": {
- "nette/di": "~2.3.0",
- "nette/utils": "~2.2",
- "php": ">=5.3.1"
+ "nette/di": "~2.4.0",
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
@@ -1523,19 +1644,24 @@
"nette/caching": "~2.3",
"nette/database": "~2.3",
"nette/forms": "~2.3",
- "nette/http": "~2.3",
+ "nette/http": "~2.4.0",
"nette/mail": "~2.3",
"nette/robot-loader": "~2.2",
"nette/safe-stream": "~2.2",
"nette/security": "~2.3",
- "nette/tester": "~1.3",
- "tracy/tracy": "~2.3"
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.4.1"
},
"suggest": {
"nette/robot-loader": "to use Configurator::createRobotLoader()",
- "tracy/tracy": "to use Configurator::enableDebugger()"
+ "tracy/tracy": "to use Configurator::enableTracy()"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -1559,39 +1685,43 @@
],
"description": "Nette Bootstrap",
"homepage": "https://nette.org",
- "time": "2016-05-17 19:52:51"
+ "time": "2016-12-19T12:12:10+00:00"
},
{
"name": "nette/caching",
- "version": "v2.3.5",
+ "version": "v2.5.2",
"source": {
"type": "git",
"url": "https://github.com/nette/caching.git",
- "reference": "0cb5c2c91e92a155ca5c1700479476b80c30dece"
+ "reference": "7da6cc65f301e220acba4fd8a11d3afdc642be9e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/caching/zipball/0cb5c2c91e92a155ca5c1700479476b80c30dece",
- "reference": "0cb5c2c91e92a155ca5c1700479476b80c30dece",
+ "url": "https://api.github.com/repos/nette/caching/zipball/7da6cc65f301e220acba4fd8a11d3afdc642be9e",
+ "reference": "7da6cc65f301e220acba4fd8a11d3afdc642be9e",
"shasum": ""
},
"require": {
"nette/finder": "~2.2",
- "nette/utils": "~2.2",
- "php": ">=5.3.1"
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
- "latte/latte": "~2.3.0",
- "nette/di": "~2.3",
- "nette/tester": "~1.6"
+ "latte/latte": "~2.4",
+ "nette/di": "~2.4",
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.4"
+ },
+ "suggest": {
+ "ext-pdo_sqlite": "to use SQLiteStorage or SQLiteJournal"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.3-dev"
+ "dev-master": "2.5-dev"
}
},
"autoload": {
@@ -1617,33 +1747,40 @@
],
"description": "Nette Caching Component",
"homepage": "https://nette.org",
- "time": "2016-02-22 02:08:08"
+ "time": "2016-10-06T00:08:42+00:00"
},
{
"name": "nette/component-model",
- "version": "v2.2.4",
+ "version": "v2.3.0",
"source": {
"type": "git",
"url": "https://github.com/nette/component-model.git",
- "reference": "07bce436051fd92d084642ce7a47f00045e0d1e5"
+ "reference": "9b5817b246bf409b8f0f8309c23e599dd8729d28"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/component-model/zipball/07bce436051fd92d084642ce7a47f00045e0d1e5",
- "reference": "07bce436051fd92d084642ce7a47f00045e0d1e5",
+ "url": "https://api.github.com/repos/nette/component-model/zipball/9b5817b246bf409b8f0f8309c23e599dd8729d28",
+ "reference": "9b5817b246bf409b8f0f8309c23e599dd8729d28",
"shasum": ""
},
"require": {
- "nette/utils": "^2.3.5",
- "php": ">=5.3.1"
+ "nette/utils": "^2.4",
+ "php": ">=5.6.0"
},
"conflict": {
+ "nette/application": "<2.4",
"nette/nette": "<2.2"
},
"require-dev": {
- "nette/tester": "~1.3"
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.3"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.3-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -1667,37 +1804,43 @@
],
"description": "Nette Component Model",
"homepage": "https://nette.org",
- "time": "2015-10-06 17:54:05"
+ "time": "2016-06-17T17:36:56+00:00"
},
{
"name": "nette/database",
- "version": "v2.3.9",
+ "version": "v2.4.1",
"source": {
"type": "git",
"url": "https://github.com/nette/database.git",
- "reference": "a4c7ea17470a7d888df5738f5e63b2605899f289"
+ "reference": "7a7b51520f3d98e3f6c38df5495ac775463972d5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/database/zipball/a4c7ea17470a7d888df5738f5e63b2605899f289",
- "reference": "a4c7ea17470a7d888df5738f5e63b2605899f289",
+ "url": "https://api.github.com/repos/nette/database/zipball/7a7b51520f3d98e3f6c38df5495ac775463972d5",
+ "reference": "7a7b51520f3d98e3f6c38df5495ac775463972d5",
"shasum": ""
},
"require": {
"ext-pdo": "*",
- "nette/caching": "^2.2",
- "nette/utils": "^2.3.5",
- "php": ">=5.3.1"
+ "nette/caching": "~2.2",
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
- "mockery/mockery": "^0.9.1",
- "nette/di": "^2.3",
- "nette/tester": "^1.3"
+ "mockery/mockery": "~1.0.0",
+ "nette/di": "~2.4",
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.4"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -1721,20 +1864,20 @@
],
"description": "Nette Database Component",
"homepage": "https://nette.org",
- "time": "2016-05-30 14:52:29"
+ "time": "2016-10-18T13:27:34+00:00"
},
{
"name": "nette/deprecated",
- "version": "v2.3.3",
+ "version": "v2.4.0",
"source": {
"type": "git",
"url": "https://github.com/nette/deprecated.git",
- "reference": "eb5c8276824e83d2fa8ab92261ad95cf24361b4c"
+ "reference": "fde8fea8e3f1960ea6bcca03a996300b0ca41762"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/deprecated/zipball/eb5c8276824e83d2fa8ab92261ad95cf24361b4c",
- "reference": "eb5c8276824e83d2fa8ab92261ad95cf24361b4c",
+ "url": "https://api.github.com/repos/nette/deprecated/zipball/fde8fea8e3f1960ea6bcca03a996300b0ca41762",
+ "reference": "fde8fea8e3f1960ea6bcca03a996300b0ca41762",
"shasum": ""
},
"require-dev": {
@@ -1778,35 +1921,43 @@
],
"description": "APIs and features removed from Nette Framework",
"homepage": "https://nette.org",
- "time": "2016-07-15 13:06:38"
+ "time": "2016-07-15T13:19:27+00:00"
},
{
"name": "nette/di",
- "version": "v2.3.12",
+ "version": "v2.4.5",
"source": {
"type": "git",
"url": "https://github.com/nette/di.git",
- "reference": "aed06c37a722a1450854176f1d0b11de473092f1"
+ "reference": "b265f305e1fef2dad1cb2e7340b49d274d3dd14c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/di/zipball/aed06c37a722a1450854176f1d0b11de473092f1",
- "reference": "aed06c37a722a1450854176f1d0b11de473092f1",
+ "url": "https://api.github.com/repos/nette/di/zipball/b265f305e1fef2dad1cb2e7340b49d274d3dd14c",
+ "reference": "b265f305e1fef2dad1cb2e7340b49d274d3dd14c",
"shasum": ""
},
"require": {
+ "ext-tokenizer": "*",
"nette/neon": "^2.3.3",
- "nette/php-generator": "^2.3.6",
- "nette/utils": "^2.3.5",
- "php": ">=5.3.1"
+ "nette/php-generator": "^2.4",
+ "nette/utils": "^2.4",
+ "php": ">=5.6.0"
},
"conflict": {
+ "nette/bootstrap": "<2.4",
"nette/nette": "<2.2"
},
"require-dev": {
- "nette/tester": "^1.6"
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.3"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -1830,33 +1981,39 @@
],
"description": "Nette Dependency Injection Component",
"homepage": "https://nette.org",
- "time": "2016-07-06 13:10:47"
+ "time": "2016-12-23T10:26:44+00:00"
},
{
"name": "nette/finder",
- "version": "v2.3.2",
+ "version": "v2.4.0",
"source": {
"type": "git",
"url": "https://github.com/nette/finder.git",
- "reference": "ea8e796b42d542bd90e76f5b2a41c2c86a008256"
+ "reference": "5cabd5fe89f9903715359a403b820c7f94f9bb5e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/finder/zipball/ea8e796b42d542bd90e76f5b2a41c2c86a008256",
- "reference": "ea8e796b42d542bd90e76f5b2a41c2c86a008256",
+ "url": "https://api.github.com/repos/nette/finder/zipball/5cabd5fe89f9903715359a403b820c7f94f9bb5e",
+ "reference": "5cabd5fe89f9903715359a403b820c7f94f9bb5e",
"shasum": ""
},
"require": {
- "nette/utils": "~2.2",
- "php": ">=5.3.1"
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
- "nette/tester": "~1.4"
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.3"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -1880,38 +2037,43 @@
],
"description": "Nette Finder: Files Searching",
"homepage": "https://nette.org",
- "time": "2015-10-20 17:15:41"
+ "time": "2016-05-17T15:49:06+00:00"
},
{
"name": "nette/forms",
- "version": "v2.3.10",
+ "version": "v2.4.3",
"source": {
"type": "git",
"url": "https://github.com/nette/forms.git",
- "reference": "22ab1e9794fabe225b980ee4c31f57ee5b7f74e2"
+ "reference": "c2618a144a7cd0a1f41143e18387d9c48cef91cb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/forms/zipball/22ab1e9794fabe225b980ee4c31f57ee5b7f74e2",
- "reference": "22ab1e9794fabe225b980ee4c31f57ee5b7f74e2",
+ "url": "https://api.github.com/repos/nette/forms/zipball/c2618a144a7cd0a1f41143e18387d9c48cef91cb",
+ "reference": "c2618a144a7cd0a1f41143e18387d9c48cef91cb",
"shasum": ""
},
"require": {
- "nette/component-model": "~2.2.0",
+ "nette/component-model": "~2.3",
"nette/http": "~2.2",
- "nette/utils": "~2.3.10",
- "php": ">=5.3.1"
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
- "latte/latte": "~2.3.2",
- "nette/di": "~2.3",
- "nette/tester": "~1.3",
- "tracy/tracy": "~2.2"
+ "latte/latte": "~2.4",
+ "nette/di": "~2.4",
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.4"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -1935,37 +2097,43 @@
],
"description": "Nette Forms: greatly facilitates web forms",
"homepage": "https://nette.org",
- "time": "2016-06-30 18:22:11"
+ "time": "2016-12-20T23:49:37+00:00"
},
{
"name": "nette/http",
- "version": "v2.3.7",
+ "version": "v2.4.3",
"source": {
"type": "git",
"url": "https://github.com/nette/http.git",
- "reference": "b2f28f2437d53af8788ea80605a16501c86848e9"
+ "reference": "71602f2ab582312b5ae016a9f0b8df1a8a116f86"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/http/zipball/b2f28f2437d53af8788ea80605a16501c86848e9",
- "reference": "b2f28f2437d53af8788ea80605a16501c86848e9",
+ "url": "https://api.github.com/repos/nette/http/zipball/71602f2ab582312b5ae016a9f0b8df1a8a116f86",
+ "reference": "71602f2ab582312b5ae016a9f0b8df1a8a116f86",
"shasum": ""
},
"require": {
- "nette/utils": "~2.2, >=2.2.2",
- "php": ">=5.3.1"
+ "nette/utils": "^2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
- "nette/di": "~2.3",
- "nette/tester": "~1.4"
+ "nette/di": "^2.4",
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.4"
},
"suggest": {
"ext-fileinfo": "to detect type of uploaded files"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -1989,38 +2157,44 @@
],
"description": "Nette HTTP Component",
"homepage": "https://nette.org",
- "time": "2016-06-06 17:31:40"
+ "time": "2016-12-19T14:56:54+00:00"
},
{
"name": "nette/mail",
- "version": "v2.3.5",
+ "version": "v2.4.1",
"source": {
"type": "git",
"url": "https://github.com/nette/mail.git",
- "reference": "44491710d30db970e731c3908c491d061a0e22df"
+ "reference": "135fac5b1d71cde9d0a0c9cad61a18d2704c3e47"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/mail/zipball/44491710d30db970e731c3908c491d061a0e22df",
- "reference": "44491710d30db970e731c3908c491d061a0e22df",
+ "url": "https://api.github.com/repos/nette/mail/zipball/135fac5b1d71cde9d0a0c9cad61a18d2704c3e47",
+ "reference": "135fac5b1d71cde9d0a0c9cad61a18d2704c3e47",
"shasum": ""
},
"require": {
"ext-iconv": "*",
- "nette/utils": "~2.2",
- "php": ">=5.3.1"
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
- "nette/di": "~2.3",
- "nette/tester": "~1.3"
+ "nette/di": "~2.4",
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.4"
},
"suggest": {
"ext-fileinfo": "to detect type of attached files"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -2044,30 +2218,36 @@
],
"description": "Nette Mail: Sending E-mails",
"homepage": "https://nette.org",
- "time": "2016-04-10 12:50:29"
+ "time": "2016-07-31T12:06:47+00:00"
},
{
"name": "nette/neon",
- "version": "v2.3.5",
+ "version": "v2.4.0",
"source": {
"type": "git",
"url": "https://github.com/nette/neon.git",
- "reference": "75699de201932e6de6b249824dc8c53d0f442cd5"
+ "reference": "c40c63f2afa4196844ac40d9d2a2cfb313f76906"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/neon/zipball/75699de201932e6de6b249824dc8c53d0f442cd5",
- "reference": "75699de201932e6de6b249824dc8c53d0f442cd5",
+ "url": "https://api.github.com/repos/nette/neon/zipball/c40c63f2afa4196844ac40d9d2a2cfb313f76906",
+ "reference": "c40c63f2afa4196844ac40d9d2a2cfb313f76906",
"shasum": ""
},
"require": {
"ext-iconv": "*",
- "php": ">=5.3.1"
+ "php": ">=5.6.0"
},
"require-dev": {
- "nette/tester": "~1.4"
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.3"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -2091,46 +2271,51 @@
],
"description": "Nette NEON: parser & generator for Nette Object Notation",
"homepage": "http://ne-on.org",
- "time": "2016-05-17 17:14:44"
+ "time": "2016-06-25T13:59:48+00:00"
},
{
"name": "nette/nette",
- "version": "v2.3.10",
+ "version": "v2.4.0",
"source": {
"type": "git",
"url": "https://github.com/nette/nette.git",
- "reference": "79d539fee7e927e5774492b0774044a0456cd50b"
+ "reference": "25381e4ec7902734e49924c1ffd07017830c5f31"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/nette/zipball/79d539fee7e927e5774492b0774044a0456cd50b",
- "reference": "79d539fee7e927e5774492b0774044a0456cd50b",
+ "url": "https://api.github.com/repos/nette/nette/zipball/25381e4ec7902734e49924c1ffd07017830c5f31",
+ "reference": "25381e4ec7902734e49924c1ffd07017830c5f31",
"shasum": ""
},
"require": {
- "latte/latte": "~2.3.11",
- "nette/application": "~2.3.12",
- "nette/bootstrap": "~2.3.4",
- "nette/caching": "~2.3.5",
- "nette/component-model": "~2.2.4",
- "nette/database": "~2.3.8",
- "nette/deprecated": "~2.3.2",
- "nette/di": "~2.3.10",
- "nette/finder": "~2.3.2",
- "nette/forms": "~2.3.8",
- "nette/http": "~2.3.6",
- "nette/mail": "~2.3.5",
- "nette/neon": "~2.3.4",
- "nette/php-generator": "~2.3.5",
- "nette/reflection": "~2.3.2",
- "nette/robot-loader": "~2.3.1",
- "nette/safe-stream": "~2.3.2",
- "nette/security": "~2.3.1",
- "nette/tokenizer": "~2.2.1",
- "nette/utils": "~2.3.8",
- "tracy/tracy": "~2.3.10"
+ "latte/latte": "^2.4",
+ "nette/application": "^2.4",
+ "nette/bootstrap": "^2.4",
+ "nette/caching": "^2.5",
+ "nette/component-model": "^2.3",
+ "nette/database": "^2.4",
+ "nette/deprecated": "^2.3",
+ "nette/di": "^2.4",
+ "nette/finder": "^2.4",
+ "nette/forms": "^2.4",
+ "nette/http": "^2.4",
+ "nette/mail": "^2.4",
+ "nette/neon": "^2.4",
+ "nette/php-generator": "^2.4",
+ "nette/reflection": "^2.4",
+ "nette/robot-loader": "^2.4",
+ "nette/safe-stream": "^2.3",
+ "nette/security": "^2.4",
+ "nette/tokenizer": "^2.2",
+ "nette/utils": "^2.4",
+ "tracy/tracy": "^2.4"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"Nette/"
@@ -2163,33 +2348,39 @@
"mvc",
"templating"
],
- "time": "2016-04-13 18:47:10"
+ "time": "2016-05-03T15:59:52+00:00"
},
{
"name": "nette/php-generator",
- "version": "v2.3.6",
+ "version": "v2.4.1",
"source": {
"type": "git",
"url": "https://github.com/nette/php-generator.git",
- "reference": "bbc8189aa54af093c908d98212e1c309b9170345"
+ "reference": "e9f4429f5ac526661634242198a1ff394fa5440a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/php-generator/zipball/bbc8189aa54af093c908d98212e1c309b9170345",
- "reference": "bbc8189aa54af093c908d98212e1c309b9170345",
+ "url": "https://api.github.com/repos/nette/php-generator/zipball/e9f4429f5ac526661634242198a1ff394fa5440a",
+ "reference": "e9f4429f5ac526661634242198a1ff394fa5440a",
"shasum": ""
},
"require": {
- "nette/utils": "~2.2",
- "php": ">=5.3.1"
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
- "nette/tester": "~1.4"
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.3"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -2213,36 +2404,42 @@
],
"description": "Nette PHP Generator",
"homepage": "https://nette.org",
- "time": "2016-06-17 16:33:17"
+ "time": "2016-07-31T13:50:37+00:00"
},
{
"name": "nette/reflection",
- "version": "v2.3.2",
+ "version": "v2.4.0",
"source": {
"type": "git",
"url": "https://github.com/nette/reflection.git",
- "reference": "6c39adc4661f5f7b64be7ee161b8f67d8174da4d"
+ "reference": "1922f2502e5d2bf6be51859721855e8e72ebde96"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/reflection/zipball/6c39adc4661f5f7b64be7ee161b8f67d8174da4d",
- "reference": "6c39adc4661f5f7b64be7ee161b8f67d8174da4d",
+ "url": "https://api.github.com/repos/nette/reflection/zipball/1922f2502e5d2bf6be51859721855e8e72ebde96",
+ "reference": "1922f2502e5d2bf6be51859721855e8e72ebde96",
"shasum": ""
},
"require": {
"ext-tokenizer": "*",
"nette/caching": "~2.2",
- "nette/utils": "~2.2",
- "php": ">=5.3.1"
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
"nette/di": "~2.3",
- "nette/tester": "~1.4"
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.3"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -2266,35 +2463,42 @@
],
"description": "Nette PHP Reflection Component",
"homepage": "https://nette.org",
- "time": "2016-03-12 14:57:07"
+ "time": "2016-05-17T15:49:34+00:00"
},
{
"name": "nette/robot-loader",
- "version": "v2.3.2",
+ "version": "v2.4.2",
"source": {
"type": "git",
"url": "https://github.com/nette/robot-loader.git",
- "reference": "0dbed866df47fd0425ce9a3cc9085779d8ada143"
+ "reference": "f23f8885624b249d5ec7bb525b9d6b007ab00293"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/robot-loader/zipball/0dbed866df47fd0425ce9a3cc9085779d8ada143",
- "reference": "0dbed866df47fd0425ce9a3cc9085779d8ada143",
+ "url": "https://api.github.com/repos/nette/robot-loader/zipball/f23f8885624b249d5ec7bb525b9d6b007ab00293",
+ "reference": "f23f8885624b249d5ec7bb525b9d6b007ab00293",
"shasum": ""
},
"require": {
+ "ext-tokenizer": "*",
"nette/caching": "~2.2",
"nette/finder": "~2.3",
- "nette/utils": "~2.2",
- "php": ">=5.3.1"
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
- "nette/tester": "~1.4"
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.3"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -2318,7 +2522,7 @@
],
"description": "Nette RobotLoader: comfortable autoloading",
"homepage": "https://nette.org",
- "time": "2016-05-17 15:36:50"
+ "time": "2017-01-02T17:15:22+00:00"
},
{
"name": "nette/safe-stream",
@@ -2373,35 +2577,41 @@
],
"description": "Nette SafeStream: Atomic Operations",
"homepage": "https://nette.org",
- "time": "2016-03-19 13:06:04"
+ "time": "2016-03-19T13:06:04+00:00"
},
{
"name": "nette/security",
- "version": "v2.3.2",
+ "version": "v2.4.1",
"source": {
"type": "git",
"url": "https://github.com/nette/security.git",
- "reference": "779254a5484a106344a81c8cb9ce2b8570e38f34"
+ "reference": "e547c81b36bae6cb5a6ba0c498314940f5d428ed"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/security/zipball/779254a5484a106344a81c8cb9ce2b8570e38f34",
- "reference": "779254a5484a106344a81c8cb9ce2b8570e38f34",
+ "url": "https://api.github.com/repos/nette/security/zipball/e547c81b36bae6cb5a6ba0c498314940f5d428ed",
+ "reference": "e547c81b36bae6cb5a6ba0c498314940f5d428ed",
"shasum": ""
},
"require": {
- "nette/utils": "~2.2",
- "php": ">=5.3.1"
+ "nette/utils": "~2.4",
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
- "nette/di": "~2.3",
- "nette/http": "~2.3",
- "nette/tester": "~1.4"
+ "nette/di": "~2.4",
+ "nette/http": "~2.4",
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.4"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -2425,7 +2635,7 @@
],
"description": "Nette Security: Access Control Component",
"homepage": "https://nette.org",
- "time": "2016-05-17 15:37:18"
+ "time": "2016-12-19T10:53:40+00:00"
},
{
"name": "nette/tokenizer",
@@ -2475,38 +2685,46 @@
],
"description": "Nette Tokenizer",
"homepage": "https://nette.org",
- "time": "2016-04-21 13:06:32"
+ "time": "2016-04-21T13:06:32+00:00"
},
{
"name": "nette/utils",
- "version": "v2.3.10",
+ "version": "v2.4.2",
"source": {
"type": "git",
"url": "https://github.com/nette/utils.git",
- "reference": "66ceba196e4535ca3bf8f835db50d7e02339fdb0"
+ "reference": "fd2e67c2ce28da409864507d8d124621780d036d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/utils/zipball/66ceba196e4535ca3bf8f835db50d7e02339fdb0",
- "reference": "66ceba196e4535ca3bf8f835db50d7e02339fdb0",
+ "url": "https://api.github.com/repos/nette/utils/zipball/fd2e67c2ce28da409864507d8d124621780d036d",
+ "reference": "fd2e67c2ce28da409864507d8d124621780d036d",
"shasum": ""
},
"require": {
- "php": ">=5.3.1"
+ "php": ">=5.6.0"
},
"conflict": {
"nette/nette": "<2.2"
},
"require-dev": {
- "nette/tester": "~1.0"
+ "nette/tester": "~2.0",
+ "tracy/tracy": "^2.3"
},
"suggest": {
"ext-gd": "to use Image",
"ext-iconv": "to use Strings::webalize() and toAscii()",
"ext-intl": "for script transliteration in Strings::webalize() and toAscii()",
- "ext-mbstring": "to use Strings::lower() etc..."
+ "ext-json": "to use Nette\\Utils\\Json",
+ "ext-mbstring": "to use Strings::lower() etc...",
+ "ext-xml": "to use Strings::length() etc. when mbstring is not available"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -2530,7 +2748,7 @@
],
"description": "Nette Utility Classes",
"homepage": "https://nette.org",
- "time": "2016-06-17 13:28:41"
+ "time": "2016-12-19T22:01:55+00:00"
},
{
"name": "ocramius/proxy-manager",
@@ -2593,40 +2811,90 @@
"proxy pattern",
"service proxies"
],
- "time": "2015-08-09 04:28:19"
+ "time": "2015-08-09T04:28:19+00:00"
+ },
+ {
+ "name": "psr/log",
+ "version": "1.0.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/log.git",
+ "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
+ "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Psr\\Log\\": "Psr/Log/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "http://www.php-fig.org/"
+ }
+ ],
+ "description": "Common interface for logging libraries",
+ "homepage": "https://github.com/php-fig/log",
+ "keywords": [
+ "log",
+ "psr",
+ "psr-3"
+ ],
+ "time": "2016-10-10T12:19:37+00:00"
},
{
"name": "symfony/console",
- "version": "v3.1.3",
+ "version": "v3.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "f9e638e8149e9e41b570ff092f8007c477ef0ce5"
+ "reference": "d12aa9ca20f4db83ec58410978dab6afcb9d6aaa"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/f9e638e8149e9e41b570ff092f8007c477ef0ce5",
- "reference": "f9e638e8149e9e41b570ff092f8007c477ef0ce5",
+ "url": "https://api.github.com/repos/symfony/console/zipball/d12aa9ca20f4db83ec58410978dab6afcb9d6aaa",
+ "reference": "d12aa9ca20f4db83ec58410978dab6afcb9d6aaa",
"shasum": ""
},
"require": {
"php": ">=5.5.9",
+ "symfony/debug": "~2.8|~3.0",
"symfony/polyfill-mbstring": "~1.0"
},
"require-dev": {
"psr/log": "~1.0",
"symfony/event-dispatcher": "~2.8|~3.0",
+ "symfony/filesystem": "~2.8|~3.0",
"symfony/process": "~2.8|~3.0"
},
"suggest": {
"psr/log": "For using the console logger",
"symfony/event-dispatcher": "",
+ "symfony/filesystem": "",
"symfony/process": ""
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "3.2-dev"
}
},
"autoload": {
@@ -2653,20 +2921,77 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
- "time": "2016-07-26 08:04:17"
+ "time": "2016-12-11T14:34:22+00:00"
+ },
+ {
+ "name": "symfony/debug",
+ "version": "v3.2.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/debug.git",
+ "reference": "9f923e68d524a3095c5a2ae5fc7220c7cbc12231"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/debug/zipball/9f923e68d524a3095c5a2ae5fc7220c7cbc12231",
+ "reference": "9f923e68d524a3095c5a2ae5fc7220c7cbc12231",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.5.9",
+ "psr/log": "~1.0"
+ },
+ "conflict": {
+ "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
+ },
+ "require-dev": {
+ "symfony/class-loader": "~2.8|~3.0",
+ "symfony/http-kernel": "~2.8|~3.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.2-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\Debug\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony Debug Component",
+ "homepage": "https://symfony.com",
+ "time": "2016-11-16T22:18:16+00:00"
},
{
"name": "symfony/polyfill-mbstring",
- "version": "v1.2.0",
+ "version": "v1.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "dff51f72b0706335131b00a7f49606168c582594"
+ "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/dff51f72b0706335131b00a7f49606168c582594",
- "reference": "dff51f72b0706335131b00a7f49606168c582594",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
+ "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
"shasum": ""
},
"require": {
@@ -2678,7 +3003,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.2-dev"
+ "dev-master": "1.3-dev"
}
},
"autoload": {
@@ -2712,29 +3037,35 @@
"portable",
"shim"
],
- "time": "2016-05-18 14:26:46"
+ "time": "2016-11-14T01:06:16+00:00"
},
{
"name": "symfony/yaml",
- "version": "v3.1.3",
+ "version": "v3.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "1819adf2066880c7967df7180f4f662b6f0567ac"
+ "reference": "a7095af4b97a0955f85c8989106c249fa649011f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/1819adf2066880c7967df7180f4f662b6f0567ac",
- "reference": "1819adf2066880c7967df7180f4f662b6f0567ac",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/a7095af4b97a0955f85c8989106c249fa649011f",
+ "reference": "a7095af4b97a0955f85c8989106c249fa649011f",
"shasum": ""
},
"require": {
"php": ">=5.5.9"
},
+ "require-dev": {
+ "symfony/console": "~2.8|~3.0"
+ },
+ "suggest": {
+ "symfony/console": "For validating YAML files using the lint command"
+ },
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "3.2-dev"
}
},
"autoload": {
@@ -2761,30 +3092,37 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
- "time": "2016-07-17 14:02:08"
+ "time": "2016-12-10T10:07:06+00:00"
},
{
"name": "tracy/tracy",
- "version": "v2.3.11",
+ "version": "v2.4.4",
"source": {
"type": "git",
"url": "https://github.com/nette/tracy.git",
- "reference": "152b7602115dd3a66f3190280951390097a15f65"
+ "reference": "c1ec73ea7661b79aa9fade863b75f8cad9f47bb5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/tracy/zipball/152b7602115dd3a66f3190280951390097a15f65",
- "reference": "152b7602115dd3a66f3190280951390097a15f65",
+ "url": "https://api.github.com/repos/nette/tracy/zipball/c1ec73ea7661b79aa9fade863b75f8cad9f47bb5",
+ "reference": "c1ec73ea7661b79aa9fade863b75f8cad9f47bb5",
"shasum": ""
},
"require": {
- "php": ">=5.3.1"
+ "ext-json": "*",
+ "ext-session": "*",
+ "php": ">=5.4.4"
},
"require-dev": {
"nette/di": "~2.3",
- "nette/tester": "~1.3"
+ "nette/tester": "~2.0"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.4-dev"
+ }
+ },
"autoload": {
"classmap": [
"src"
@@ -2816,7 +3154,7 @@
"debugger",
"nette"
],
- "time": "2016-05-30 09:03:15"
+ "time": "2016-12-10T15:04:11+00:00"
},
{
"name": "zendframework/zend-code",
@@ -2868,30 +3206,30 @@
"code",
"zf2"
],
- "time": "2016-04-20 17:26:42"
+ "time": "2016-04-20T17:26:42+00:00"
},
{
"name": "zendframework/zend-eventmanager",
- "version": "3.0.1",
+ "version": "3.1.0",
"source": {
"type": "git",
"url": "https://github.com/zendframework/zend-eventmanager.git",
- "reference": "5c80bdee0e952be112dcec0968bad770082c3a6e"
+ "reference": "c3bce7b7d47c54040b9ae51bc55491c72513b75d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/zendframework/zend-eventmanager/zipball/5c80bdee0e952be112dcec0968bad770082c3a6e",
- "reference": "5c80bdee0e952be112dcec0968bad770082c3a6e",
+ "url": "https://api.github.com/repos/zendframework/zend-eventmanager/zipball/c3bce7b7d47c54040b9ae51bc55491c72513b75d",
+ "reference": "c3bce7b7d47c54040b9ae51bc55491c72513b75d",
"shasum": ""
},
"require": {
- "php": "^5.5 || ^7.0"
+ "php": "^5.6 || ^7.0"
},
"require-dev": {
"athletic/athletic": "^0.1",
"container-interop/container-interop": "^1.1.0",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "^2.0",
+ "phpunit/phpunit": "^5.6",
+ "zendframework/zend-coding-standard": "~1.0.0",
"zendframework/zend-stdlib": "^2.7.3 || ^3.0"
},
"suggest": {
@@ -2901,8 +3239,8 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev",
- "dev-develop": "3.1-dev"
+ "dev-master": "3.1-dev",
+ "dev-develop": "3.2-dev"
}
},
"autoload": {
@@ -2922,7 +3260,7 @@
"events",
"zf2"
],
- "time": "2016-02-18 20:53:00"
+ "time": "2016-12-19T21:47:12+00:00"
}
],
"packages-dev": [
@@ -2969,7 +3307,7 @@
"keywords": [
"test"
],
- "time": "2015-05-11 14:41:42"
+ "time": "2015-05-11T14:41:42+00:00"
},
{
"name": "instante/php-test-suite",
@@ -2977,12 +3315,12 @@
"source": {
"type": "git",
"url": "https://github.com/instante/php-test-suite.git",
- "reference": "7e6cbabb08ab82aeacaa56a60e74c082d14342eb"
+ "reference": "4119b4e2a8a7cbf92cbd1070b4b407c1be004997"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/instante/php-test-suite/zipball/7e6cbabb08ab82aeacaa56a60e74c082d14342eb",
- "reference": "7e6cbabb08ab82aeacaa56a60e74c082d14342eb",
+ "url": "https://api.github.com/repos/instante/php-test-suite/zipball/4119b4e2a8a7cbf92cbd1070b4b407c1be004997",
+ "reference": "4119b4e2a8a7cbf92cbd1070b4b407c1be004997",
"shasum": ""
},
"require": {
@@ -3023,6 +3361,9 @@
},
"files": [
"src/shortcuts.php"
+ ],
+ "classmap": [
+ "src/exceptions.php"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -3036,7 +3377,7 @@
"instante",
"nette"
],
- "time": "2016-07-29 17:21:47"
+ "time": "2016-10-25 14:45:18"
},
{
"name": "jakub-onderka/php-parallel-lint",
@@ -3083,20 +3424,20 @@
],
"description": "This tool check syntax of PHP files about 20x faster than serial check.",
"homepage": "https://github.com/JakubOnderka/PHP-Parallel-Lint",
- "time": "2015-12-15 10:42:16"
+ "time": "2015-12-15T10:42:16+00:00"
},
{
"name": "mockery/mockery",
- "version": "0.9.5",
+ "version": "0.9.7",
"source": {
"type": "git",
"url": "https://github.com/padraic/mockery.git",
- "reference": "4db079511a283e5aba1b3c2fb19037c645e70fc2"
+ "reference": "4de7969f4664da3cef1ccd83866c9f59378c3371"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/padraic/mockery/zipball/4db079511a283e5aba1b3c2fb19037c645e70fc2",
- "reference": "4db079511a283e5aba1b3c2fb19037c645e70fc2",
+ "url": "https://api.github.com/repos/padraic/mockery/zipball/4de7969f4664da3cef1ccd83866c9f59378c3371",
+ "reference": "4de7969f4664da3cef1ccd83866c9f59378c3371",
"shasum": ""
},
"require": {
@@ -3148,7 +3489,7 @@
"test double",
"testing"
],
- "time": "2016-05-22 21:52:33"
+ "time": "2016-12-19T14:50:55+00:00"
},
{
"name": "nette/tester",
@@ -3156,12 +3497,12 @@
"source": {
"type": "git",
"url": "https://github.com/nette/tester.git",
- "reference": "7d29c02f3216a1c4debe4c6475830b5884786922"
+ "reference": "fe52922154d93915b41caa017b1d9f3602a6a169"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/tester/zipball/7d29c02f3216a1c4debe4c6475830b5884786922",
- "reference": "7d29c02f3216a1c4debe4c6475830b5884786922",
+ "url": "https://api.github.com/repos/nette/tester/zipball/fe52922154d93915b41caa017b1d9f3602a6a169",
+ "reference": "fe52922154d93915b41caa017b1d9f3602a6a169",
"shasum": ""
},
"require": {
@@ -3204,12 +3545,13 @@
"testing",
"unit"
],
- "time": "2016-07-14 15:31:47"
+ "time": "2017-01-09 00:51:44"
}
],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": {
+ "instante/bootstrap-3-renderer": 15,
"nette/tester": 20,
"instante/php-test-suite": 20
},
@@ -3218,5 +3560,8 @@
"platform": {
"php": ">=5.5.0"
},
- "platform-dev": []
+ "platform-dev": [],
+ "platform-overrides": {
+ "php": "5.6"
+ }
}
diff --git a/migrations/Version20170106110825.php b/migrations/Version20170106110825.php
new file mode 100644
index 0000000..9b7db19
--- /dev/null
+++ b/migrations/Version20170106110825.php
@@ -0,0 +1,50 @@
+abortIf($this->connection->getDatabasePlatform()->getName() != 'mysql', 'Migration can only be executed safely on \'mysql\'.');
+
+ $this->addSql('CREATE TABLE howdo_keyword (id INT AUTO_INCREMENT NOT NULL, document_id INT DEFAULT NULL, keyword VARCHAR(255) NOT NULL, INDEX IDX_C6745EE8C33F7837 (document_id), FULLTEXT INDEX IDX_C6745EE85A93713B (keyword), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
+ $this->addSql('ALTER TABLE howdo_keyword ADD CONSTRAINT FK_C6745EE8C33F7837 FOREIGN KEY (document_id) REFERENCES howdo_document (id)');
+ $this->addSql('DROP TABLE howdo_index');
+ $this->addSql('ALTER TABLE howdo_document CHANGE title title VARCHAR(255) NOT NULL');
+ $this->addSql('CREATE FULLTEXT INDEX IDX_C72FEE372B36786B ON howdo_document (title)');
+ $this->addSql('CREATE FULLTEXT INDEX IDX_C72FEE37D8698A76 ON howdo_document (document)');
+ $this->addSql('ALTER TABLE howdo_request ADD title VARCHAR(255) NOT NULL, DROP searched_query');
+ $this->addSql('CREATE FULLTEXT INDEX IDX_A770A04C6DE44026 ON howdo_request (description)');
+ $this->addSql('CREATE FULLTEXT INDEX IDX_A770A04C2B36786B ON howdo_request (title)');
+ }
+
+ /**
+ * @param Schema $schema
+ */
+ public function down(Schema $schema)
+ {
+ // this down() migration is auto-generated, please modify it to your needs
+ $this->abortIf($this->connection->getDatabasePlatform()->getName() != 'mysql', 'Migration can only be executed safely on \'mysql\'.');
+
+ $this->addSql('CREATE TABLE howdo_index (id INT AUTO_INCREMENT NOT NULL, document_id INT DEFAULT NULL, key_phrase LONGTEXT NOT NULL COLLATE utf8_unicode_ci, INDEX IDX_A7688F03C33F7837 (document_id), FULLTEXT INDEX IDX_A7688F03A9720750 (key_phrase), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
+ $this->addSql('ALTER TABLE howdo_index ADD CONSTRAINT FK_A7688F03C33F7837 FOREIGN KEY (document_id) REFERENCES howdo_document (id)');
+ $this->addSql('DROP TABLE howdo_keyword');
+ $this->addSql('DROP INDEX IDX_C72FEE372B36786B ON howdo_document');
+ $this->addSql('DROP INDEX IDX_C72FEE37D8698A76 ON howdo_document');
+ $this->addSql('ALTER TABLE howdo_document CHANGE title title LONGTEXT NOT NULL COLLATE utf8_unicode_ci');
+ $this->addSql('DROP INDEX IDX_A770A04C6DE44026 ON howdo_request');
+ $this->addSql('DROP INDEX IDX_A770A04C2B36786B ON howdo_request');
+ $this->addSql('ALTER TABLE howdo_request ADD searched_query LONGTEXT NOT NULL COLLATE utf8_unicode_ci, DROP title');
+ }
+}