File: /var/www/tracksgrid.com/README.md
# Invocies Online
## Системни изискваня
```bash
php >= 8.0.2
php-curl
php-dom
php-gd
php-mbstring
php-mysql
php-zip
composer >= 2.0
SQL Server
```
# Инсталиране
След като изтеглите файловете (чрез `git clone`), в основната директория на приложението копирайте файла `.env_example` в нов файл с име `.env` и го редактирайте, за да отговаря на вашите изисквания. Необходимо е да въведете стойности на следните редове.
- `APP_NAME` - име на приложението
- `APP_URL` - URL адрес на приложението
- `DB_DATABASE` - име на база данни
- `DB_USERNAME` - потребителско име за база данни
- `DB_PASSWORD` - парола за база данни
- `MAIL_USERNAME` - потребителско име за SMTP сървър
- `MAIL_PASSWORD` - парола за SMTP сървър
- `MAIL_HOST` - URL на SMTP сървър
- `OWNER_EMAIL` - имейл адрес, който ще се иползва за създаване на основния потребителски акаунт на приложението и за вход в него
- `OWNER_PASSWORD` - парола, който ще се иползва за вход в основния потребителски акаунт на приложението
- `SUPPORT_EMAIL` - E-mail адрес, който ще се изписва в края на всеки PDF документ
- `TELEGRAM_BOT_TOKEN` - Телеграм Бот API Token за идентификация. Попълнете ако искате да получавате Телеграм съобщения за определени събития
- `TELEGRAM_CHAT_ID` - Телегрем чат ID на групата / чата, в която да се изпращат съобщенията
Приложението използва "опашка" (`queue`), за да обработва Имейл съобщенията.За да бъдат обработени задачите в опашката на заден фон, е необходимо на сървъра да има процес, който да прави това. За целта се препоръчва използването на сървиса `supervisor`.
Примерен конфигурационен файл на `/etc/supervisor/conf.d/invoices.conf`
```bash
[program:invoices_email_queue]
process_name=%(program_name)s_%(process_num)02d
command=/usr/bin/php artisan queue:work database --queue=default --tries=3 --timeout=10
directory=/var/www/invoices/
numprocs=1
autostart=true
autorestart=true
redirect_stderr=false
stdout_logfile=NONE
stdout_logfile_maxbytes=0
user=username # съществуващ потребител на системата
```
Влезте в основната директория на приложението и изпълнете следните команди:
```bash
composer install
php artisan key:generate
php artisan migrate
php artisan db:seed
php artisan queue:restart
```
# Стартиране
За да стартирате приложението можете да използвате вградения уеб сървър като стартирате
```bash
php artisan serve
```
или да инсталирате приложението на ваш уеб сървър. За реална работа с приложението, не се препоръчва то да бъде използвано с вградения уеб сървър.
# Обновяване на приложението
За да обновите приложението е необходимо да изпълните следните команди
```bash
git pull
php artisan optimize:clear
php artisan migrate --force
php artisan db:seed
php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan queue:restart
```