Web Engine for Collective Repositories. Based principally on CakePHP and MySQL
Initiated and mainly directed by Jérémy Barbay. Participating students listed in Section (Academic) History
- MySQL 5.1
- PHP 5.3 (any php5 should work fine too)
- Apache 2.2
Open a console and get the source
git clone git://github.com/mquezadav/repositorium.git
Then you’ll have a copy of the source at local.
Create the following folders and give these permissions (some of them already exist):
chmod o+w app/tmp
chmod o+w app/tmp/cache
chmod -R o+w app/tmp/cache/persistent
chmod -R o+w app/tmp/cache/models
chmod -R o+w app/tmp/logs
Copy database.php.default
to database.php
, and core.php.default
to core.php
, and bootstrap.php.default
to bootstrap.php
in app/config
.
Edit database.php
:
var $default = array(
'driver' => 'mysql',
'persistent' => false,
'host' => '<HOST>',
'login' => '<LOGIN>',
'password' => '<PASSWORD>',
'database' => '<DBNAME>',
'prefix' => '',
);
Change <HOST>
, <LOGIN>
, <PASSWORD>
and <DBNAME>
(database name) to the correspoding values in your system
- To load the dump file (
repositorium.sql
) with initial data (users: admin and anonymous). It contains no documents and no criteria.mysql -u <LOGIN> -p <PASSWORD> <DBNAME> < repositorium.sql
- Now you have 2 users: anonymous and admin. The admin user has the following atributes
- Login: [email protected]
- Password: password
- Then add a criteria, and then some documents or users.
At core.php
file (app/config/
), at lines 204 and 209, randomly modify some alphanumeric characters of the corresponding Salt and Cypher Seed.
Example:
Configure::write('Security.salt', '<SOME LONG RANDOM STRING>');
This changes’ll avoid keeping the same session at different app clones, and for security sake.
- 2011A: Initial project
- Project for course “CC5401 - Ingenieria de software”
Departamento de Ciencias de la Computacion (DCC), University of Chile
- Staff:
- Jérémy Barbay -jyby@github (course client)
- Hernan Fierro (project manager)
- Pablo Estefo - pestefo@github (analyst)
- Felipe Banados - fbanados@github (designer)
- Nicolas Perez - thomaslight@github (developer)
- Mauricio Quezada - mquezadav@github (developer)
- David Contreras - dcontrer@github (tester)
- Object:
- creation of the first version of the prototype:
- only text fragments
- simple parameterized quality control
- one single repository per server
- 2011A: Multi community
- Internship
- Staff:
- Jérémy Barbay - jyby@github (advisor)
- Mauricio Quezada - mquezadav@github (developer)
- Object:
- Clean the code and correct some bugs
- Extend the engine to support multiple repositories, each with its own parameters and url.
- install an instance of the engine at http://repositorium.cl
- 2011B: Repositorium for Students
- Internship
- Staff:
- 2011B: Repositorium for Students
- Jérémy Barbay - jyby@github (advisor)
- Carlos Gajardo - cgajardo@github (developer)
- Object:
- Add support for file attachments
- fill a repository with education files (e.g. pdf of past
exams) for students, inspired by the project
Sensei
(now collapsing for lack of participation) - propose to some students to use the new repository
- survey student usage of the new repository
- 2011B: Repositorium for Professors
- Internship
- Staff:
- 2011B: Repositorium for Professors
- Jérémy Barbay - jyby@github (advisor)
- Hernan Fierro (developer)
- Object:
- correction of various bugs
- implementation of the bug and feature management
- Add support of visualisation features (e.g. LaTeX, HTML, etc…)
- fill some repositories with pedagogical material (e.g. solved problems to compose assignments and exams) for professors, inspired by existing ad-hoc repositories (without quality control nor incentive to contribute)
- propose to some professors to use the new repositories
- survey professor usage of the new repositories.
- 2011B
- Project for course “CC5401 - Ingenieria de software”
- 2011B
Departamento de Ciencias de la Computacion (DCC), University of Chile
- Staff:
- Jérémy Barbay -jyby@github (course client)
- César Campos -ccampos@github (project manager)
- Rodrido Peralta -(analyst)
- Leonardo Rojas -LeoRojas@github (developer)
- Matias Bensan -(designer)
- Rafael Meruane -(tester)
- Object:
- Detection and management of duplicated material
- Main aim to counteract the simplest attack consisting to resubmit exact copies or minor variants of documents already in the repository.
- DOES NOT aim to implement advanced “plagiarism” detection.
- Added tag-cloud.
- Search for title and contents.