# Sur@Ubv El proyecto Sur@Ubv contempla el rediseño total del actual Sistema Unico de Registro Académico que utiliza la Universidad Bolivariana de Venezuela para la administración y control del ingreso, prosecución y egreso de los estudiantes universitarios tanto de pregrado como de posgrado. ## Caracteristicas Incluidas: - Definición de la estructura jerarquica de plantillas, Estilos, Imagenes, JavaScripts, a utilizar de la aplicación. - Módulo administrativo para la gestión de la estructura de la UBV ("Por Desarrollar") - Módulos para la gestión de información de tablas principales ("Por Desarrollar") ## Documentación Por ser un proyecto iterativo la documentación del proyecto se encuentra en constante desarrollo. Para acceder a la documentación oficial del proyecto visita: [Documentación Oficial Sur@Ubv](http://redo.ubv.edu.ve/index.php) ## Instalación Para la correcta instalación de la aplicación Sur@Ubv se deben seguir los siguientes pasos: - [Descargar e inicializar el repositorio del proyecto.](http://gitlab.ubv.edu.ve/surubv/surubv2/blob/develop/README.md#descargar-e-inicializar-el-repositorio-del-proyecto) - [Actualizar las librerias del Framework Symfony2.](http://gitlab.ubv.edu.ve/surubv/surubv2/blob/develop/README.md#actualizar-las-librerias-del-framework-symfony2) - [Configurar el Servidor Virtual de apache para la aplicación Sur@Ubv](http://gitlab.ubv.edu.ve/surubv/surubv2/blob/develop/README.md#configurar-el-servidor-virtual-de-apache-para-la-aplicaci-n-sur-ub) - [Crear la Base de datos en el servidor Postgres.](http://gitlab.ubv.edu.ve/surubv/surubv2/blob/develop/README.md#crear-la-base-de-datos-en-el-servidor-postgres) - [Actualizar el esquema de la base de datos.](http://gitlab.ubv.edu.ve/surubv/surubv2/blob/develop/README.md#actualizar-el-esquema-de-la-base-de-datos) - [Crear las variables de entorno para la configuración de los datos en entorno de terminal local.](http://gitlab.ubv.edu.ve/surubv/surubv2/blob/develop/README.md#a-adir-variables-al-entorno-del-terminal-del-usuario-local) - [Acceder a la aplicación mediante la url `http://surubv/`](http://gitlab.ubv.edu.ve/surubv/surubv2/blob/develop/README.md#acceder-a-la-aplicaci-n-mediante-la-url-http-surubv) ### Descargar e inicializar el repositorio del proyecto: Ejecutar los siguientes comandos desde el terminal: ``` #Ingresar en el directorio donde se alojara la aplicación cd var/www/html/ #Descargar el repositorio mediante el comando: git clone git@gitlab.ubv.edu.ve:surubv/surubv2.git #Crear el archivo .gitignore para ignorar el seguimiento de archivos innecesarios: touch .gitignore #Configurar el archivo .gitignore: nano .gitignore #Copiar y pegar los siguiente: # -- Symfony2 ----------------------------------------- app/bootstrap.php.cache app/bootstrap_cache.php.cache app/config/parameters.ini app/config/parameters.yml app/cache/* app/logs/* vendor/* web/bundles/* web/css/* web/js/* web/uploads/* # -- Composer ----------------------------------------- composer.phar # -- PHPUnit ------------------------------------------ app/phpunit.xml # -- Editores ----------------------------------------- # vim .*.sw[a-z] *.un~ Session.vim .netrwhist # eclipse *.pydevproject .project .metadata bin/** tmp/** tmp/**/* *.tmp *.bak *.swp *~.nib local.properties .classpath .settings/ .loadpath .externalToolBuilders/ *.launch .buildpath # phpstorm .idea/ # textmate *.tmproj *.tmproject tmtags # sublimetext /*.sublime-project *.sublime-workspace # netbeans nbproject/private/ nbproject/ build/ nbbuild/ dist/ nbdist/ nbactions.xml nb-configuration.xml # -- Sistemas Operativos ------------------------------ # Windows Thumbs.db ehthumbs.db Desktop.ini $RECYCLE.BIN/ # Linux .* .gitignore !.htaccess *~ # Mac OS X .DS_Store .AppleDouble .LSOverride Icon ._* .Spotlight-V100 .Trashes #Inicializar el proyecto como un repositorio git flow mediante el siguiente comando: git flow init #(aceptando los nombres por defecto de las ramas) #Sincronizar con el repositorio central la rama develop recien creada mediante el comando: git pull origin develop ``` ### Actualizar las librerias del Framework Symfony2: Ejecutar los siguientes comandos desde el terminal: ``` #Desde el directorio de la aplicación var/www/html/surubv2/ #Descargar las librerias mediante el comando: composer install ``` ### Permisos y Activación de estilos: Ejecutar los siguientes comandos desde el terminal: ``` #Desde el directorio de la aplicación cd var/www/html/surubv2/ #Dar permisos requeridos al usuario www-data de apache a los directorios de app/cache y app/logs del proyecto: rm -fr app/cache/* rm -fr app/logs/* sudo setfacl -R -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs #Activar Estilos, JavaScript e Imagenes del Proyecto mediante el comando: php app/console assets:install --symlink ``` ### Configurar el Servidor Virtual de apache para la aplicación Sur@Ub: Ejecutar los siguientes comandos desde el terminal: ``` #crear el servidor virtual de la aplicación sudo nano /etc/apache2/site-available/surubv.conf #Copiar lo siguiente en el contenido del archivo ServerName surubv ServerAlias surubv SetEnv SYMFONY__SURUBV__DATABASE__USER "usuario" SetEnv SYMFONY__SURUBV__DATABASE__HOST "ip_BD" SetEnv SYMFONY__SURUBV__DATABASE__PASSWORD 'clave_usuario_BD' SetEnv SYMFONY__SURUBV__DATABASE__NAME "surubv" DocumentRoot "/var/www/html/surubv2/web" DirectoryIndex app.php AllowOverride None Allow from All Options -MultiViews RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ app.php [QSA,L] ErrorLog ${APACHE_LOG_DIR}/error_surubv.log CustomLog ${APACHE_LOG_DIR}/access_surubv.log combined KeepAlive On MaxKeepAliveRequests 200 KeepAliveTimeout 5 AddOutputFilterByType DEFLATE "application/atom+xml" \ "application/javascript" \ "application/json" \ "application/rss+xml" \ "application/x-javascript" \ "application/xhtml+xml" \ "application/xml" \ "image/svg+xml" \ "text/css" \ "text/html" \ "text/javascript" \ "text/plain" \ "text/xml" Header append Vary User-Agent env=!dont-vary ExpiresActive On ExpiresDefault "now plus 1 week" ExpiresByType image/x-icon "now plus 1 month" ExpiresByType image/gif "now plus 1 month" ExpiresByType image/png "now plus 1 month" ExpiresByType image/jpeg "now plus 1 month" ``` ### Añadir variables al entorno del terminal del Usuario local: Ejecutar los siguientes comandos desde el terminal: ``` #abrir archivo .bashrc (Sustituir USUARIO por el usuario local del equipo) nano /home/USUARIO/.bashrc #Copiar lo siguiente al final del archivo export SYMFONY__SURUBV__DATABASE__USUARIO='surubv' export SYMFONY__SURUBV__DATABASE__SERVIDOR='localhost' export SYMFONY__SURUBV__DATABASE__CLAVE='surubv' export SYMFONY__SURUBV__DATABASE__NOMBREBD='surubv' #Reiniciar el equipo ``` ### Crear la Base de datos en el servidor Postgres: Mediante el sistema gestor de base de datos de su preferencia cree la base de datos con el nombre de surubv y una codificación de UTF-8 ### Actualizar el esquema de la base de datos: Ejecutar los siguientes comandos desde el terminal: ``` #Desde el directorio de la aplicación var/www/html/surubv2/ #Actualizar el esquema de la base de datos mediante el comando: php app/console doctrine:schema:update ``` Habilitar el servidor virtual y agregar a la lista de servidores conocidos: ``` #habilitar el servidor virtual mediante el siguiente comando: sudo a2ensite surubv.conf #Agregar a la lista de servidores conocidos: sudo nano /etc/hosts/ #Agregar en la primera linea el nombre del servidor (surubv) #reiniciar el servicio de apache sudo service apache2 restart ``` ### Acceder a la aplicación mediante la url http://surubv/ Una vez instalada y configurada la aplicación podrá acceder a ella mediante la url http://surubv/ Contacto ---------- ### Unidad de Desarrollo de la Dirección General de TIT de la Universidad Bolivariana de Venezuela Alcides Rausseo. tlf: 02126063387 ### Mediante la plataforma de comunicación de la Dirección General de TIT http://tecnosocial.ubv.edu.ve/