marmelab / phpcr-browser
PHPCR Browser provides web interface to explore PHPCR repositories.
Installs: 19
Dependents: 0
Suggesters: 0
Security: 0
Stars: 103
Watchers: 15
Forks: 12
Open Issues: 2
Language:CSS
Requires
- php: >=5.4
- igorw/config-service-provider: ~1.2
- jackalope/jackalope-jackrabbit: 1.1.*
- marmelab/phpcr-api-silex-provider: 2.0.*
- silex/silex: ~1.1
- symfony/twig-bridge: ~2.4
- symfony/yaml: ~2.4
- twig/twig: ~1.15
Requires (Dev)
Suggests
- jackalope/jackalope-doctrine-dbal: To connect to a Doctrine DBAL content repository, 1.1.*
This package is auto-updated.
Last update: 2020-03-04 09:31:30 UTC
README
Archived Repository This code is no longer maintained. Feel free to fork it, but use it at your own risks. |
PHPCR Browser
PHPCR Browser provides an intuitive web interface to explore and manage PHPCR repositories. The current implementation supports Jackalope Jackrabbit and Jackalope Doctrine DBAL.
Supported Operations
Jackalope Jackrabbit:
- Workspace: create
- Node: create, delete, move
- Property: create, delete, update
Jackalope Doctrine DBAL:
- Workspace: create, delete
- Node: create, delete, move
- Property: create, delete, update
See marmelab/phpcr-api/config/factories.yml for more details.
Installation
PHPCR Browser uses Composer and Bower to manage its dependencies. Make sure they are globally installed before continuing.
1. Clone the repository
git clone git@github.com:marmelab/phpcr-browser.git
cd phpcr-browser
2. Install dependencies and configure the browser
To install the web application with the default configuration (see below), run the following command:
make install
This will download all dependencies and do the Configuration part for you. If you prefer do it on your own run:
make install autoconfig=false
Adding support for Jackalope Doctrine DBAL (Optionnal)
By default, the Jackalope Doctrine DBAL is not installed. If you want to use it run the following commands:
composer require jackalope/jackalope-doctrine-dbal:1.1.* --no-update
composer update jackalope/jackalope-doctrine-dbal
And update your configuration file to add your Doctrine repository by writing something equivalent to:
'My Doctrine DBAL Repository': factory: jackalope.doctrine-dbal parameters: doctrine_dbal.config: driver: pdo_sqlite path: ../src/app.db credentials.username: admin credentials.password: admin
For more details on doctrine_dbal.config
see Doctrine website.
You can also find this config into config/prod-with-dbal.yml.dist
Note you can install and use both Jackalope Jackrabbit and Doctrine DBAL at the same time.
You can add as many repositories as you want into your config file.
Configuration
Create a config/prod.yml
with the connection settings for the repositories you need to browse. For instance, to use the browser with a local instance of Jackalope Jackrabbit:
phpcr_repositories: 'My Jackrabbit Repository': factory: jackalope.jackrabbit parameters: jackalope.jackrabbit_uri: 'http://localhost:8080/server' credentials.username: admin credentials.password: admin
The factory
setting is the type of PHPCR repository you want to browse. See available factories in marmelab/phpcr-api/config/factories.yml.
You can also copy the config/prod.yml-dist
file as config/prod.yml
to get this exact configuration.
For using Jackalope Doctrine DBAL refer to Installation.
Usage
Using Apache VirtualHost
Add a VirtualHost to your Apache config (and add in it 'AllowEncodedSlashes On'):
<VirtualHost *:80>
DocumentRoot /path/to/the/browser/web
ServerName phpcr-browser.lo
AllowEncodedSlashes On
<Directory "/path/to/the/browser/web">
AllowOverride All
</Directory>
</VirtualHost>
And update your /etc/hosts
file by adding:
127.0.0.1 phpcr-browser.lo
You can now access to the browser on http://phpcr-browser.lo
(or equivalent domain as configured in your virtual host and hosts file).
Using PHP 5.4 integrated webserver
You can also use PHP 5.4 integrated webserver by calling:
$ php -S localhost:8000 -t web
Alternatively call:
$ bin/run.sh
You can now access the repository by browsing to http://localhost:8000/browser.
Tests
The PHPCR Browser AngularJS part is fully unit tested with Karma and Jasmine.
If you want to run them, install dependencies by running: make install-test
Then run the following command: make test-spec
Sass
The stylesheets are compiled by Compass and Sass.
If you update the sass files, run make compass-watch
during development.
When your work is done, run make compass-compile
before committing.
Contributing
All contributions are welcome and must pass the tests. If you add a new feature, write tests for it.
License
This application is available under the MIT License, courtesy of marmelab.