E aí, o que acha de criar uma Agenda de Shows para um artista ou uma empresa que cobre eventos (ou similiar)? E ainda vincular uma galeria de fotos a este evento?
Caso você esteja criando um projeto para empresas que cobrem eventos, você pode exibir em algum lugar do Front-End as cidades que esta empresa faz cobertura.
Principais características da aplicação
- Gestão de Eventos
- Gestão de Galeria de Fotos
- Gestão de Locais de Cobertura
Características novas versão v2.0.0
Adicionado
- Plugin para upload de imagens em lote, para eventos onde possuem uma quantidade grande de imagens
- Criada função onde faz a junção de eventos com galeria de fotos. Ou seja, dependendo do projeto você pode configurar para que a galeria de fotos esteja dentro do evento, ou (originalmente) a galeria seja isolada do evento
Modificado
- Alterada a estrutura do banco de dados, deixando a aplicação mais organizada
- Modificada a forma com que o sistema tratava a data de realização dos eventos, podendo adicionar mais de uma data (para casos de eventos que envolvem um fim de semana)
Arquivo /_app/Config.inc.php (a partir da linha #112 do WC original).
Adicione somente o conteúdo em negrito no arquivo, conforme abaixo:
(...)
require 'Config/Config.inc.php';
require 'Config/Agency.inc.php';
require 'Config/Client.inc.php';
// Configurações de Apps
require 'Config/Custom.inc.php';
Garantimos o bom funcionamento apenas em versões oficiais do WorkControl!
Esteja ciente que não podemos prever outras versões do WorkControl criadas e/ou disponibilizadas por você ou por outros profissionais! Caso tenha um WorkControl customizado e não tem conhecimento necessário para adaptação, você deve solicitar suporte para quem disponibilizou a customização para que possa instalar e usufruir essa aplicação!
- WorkControl 3.1.4
Para começar, precisamos copiar os arquivos para dentro do painel administrativo WorkControl. Siga a lista abaixo de arquivos e seu respectivo local de destino:
Nome da pasta ou arquivo | Local de destino |
/APP/Custom.inc.php | BASE-DO-PROJETO/_app/Config/aqui |
/APP/rr_Events.ajax.php | BASE-DO-PROJETO/admin/_ajax/aqui |
/APP/rr_Gallery.ajax.php | BASE-DO-PROJETO/admin/_ajax/aqui |
/APP/events/ | BASE-DO-PROJETO/admin/_siswc/aqui |
/APP/elements/ | BASE-DO-PROJETO/admin/_tpl/aqui |
Para que possamos exibir a nova função no menu principal do WC é necessário uma alteração simples no arquivo wc_menu.php ... OU, se preferir, copie o arquivo 'wc_menu.php' que está dentro da pasta /APP
Arquivo /admin/_siswc/wc_menu.php
Adicione o conteúdo abaixo no arquivo:
/** ===============================
* ---------- APP AGENDA ----------
* v2.0.0 - by Rodolfo Richard
* https://rodrichard.com.br/agenda
*/
if (EVENTS_DISABLE_CALENDAR && EVENTS_PHOTOS_IN_EVENT_FORMAT):
if (APP_EVENTS && $_SESSION['userLogin']['user_level'] >= LEVEL_EVENTS):
$event_alerts = null;
$Read->FullRead("SELECT count(photo_id) as total FROM " . DB_EV_PHOTOS . " WHERE photo_date <= NOW() AND photo_status = 0");
if ($Read->getResult() && $Read->getResult()[0]['total'] >= 1):
$event_alerts .= "<span class='wc_alert bar_yellow'>{$Read->getResult()[0]['total']}</span>";
endif; ?>
<li class="dashboard_nav_menu_li <?= strstr($getViewInput, 'events') ? 'dashboard_nav_menu_active' : ''; ?>"><a class="icon-calendar nobreak" title="Galeria de Fotos" href="dashboard.php?wc=events/home"><span><?= !empty($event_alerts) ? mb_strimwidth(EVENTS_NOMENCLATURE, 0, 18, "...") : EVENTS_NOMENCLATURE ?></span> <?= $event_alerts; ?></a>
<ul class="dashboard_nav_menu_sub">
<li class="dashboard_nav_menu_sub_li <?= $getViewInput == 'events/home' ? 'dashboard_nav_menu_active' : ''; ?>"><a title="Ver os Eventos" href="dashboard.php?wc=events/home">» Ver Eventos<?= $event_alerts ?></a></li>
<li class="dashboard_nav_menu_sub_li <?= $getViewInput == 'events/create' ? 'dashboard_nav_menu_active' : ''; ?>"><a title="Criar um novo Evento" href="dashboard.php?wc=events/create">» Novo Evento</a></li>
</ul>
</li>
<?php
endif;
else:
if (APP_EVENTS && $_SESSION['userLogin']['user_level'] >= LEVEL_EVENTS):
$wc_alerts = null;
$Read->FullRead("SELECT count(event_id) as total FROM " . DB_EVENTS . " WHERE event_status = 0");
if ($Read->getResult() && $Read->getResult()[0]['total'] >= 1):
$wc_alerts .= "<span class='wc_alert bar_yellow'>{$Read->getResult()[0]['total']}</span>";
endif;
?>
<li class="dashboard_nav_menu_li <?= strstr($getViewInput, 'events/home') || strstr($getViewInput, 'events/create') || strstr($getViewInput, 'events/cities') ? 'dashboard_nav_menu_active' : ''; ?>"><a class="icon-calendar" title="Galeria de Fotos" href="dashboard.php?wc=events/home">Eventos<?= $wc_alerts; ?></a>
<ul class="dashboard_nav_menu_sub">
<li class="dashboard_nav_menu_sub_li <?= $getViewInput == 'events/home' ? 'dashboard_nav_menu_active' : ''; ?>"><a title="Ver Eventos Confirmados" href="dashboard.php?wc=events/home">» Ver Eventos<?= $wc_alerts ?></a></li>
<li class="dashboard_nav_menu_sub_li <?= $getViewInput == 'events/create' ? 'dashboard_nav_menu_active' : ''; ?>"><a title="Criar um novo Evento" href="dashboard.php?wc=events/create">» Cadastrar Evento</a></li>
<?php if (DB_EV_REGISTERED_CITIES): ?>
<li class="dashboard_nav_menu_sub_li <?= $getViewInput == 'events/cities' ? 'dashboard_nav_menu_active' : ''; ?>"><a title="Ver Locais que <?= SITE_NAME ?> Cobre" href="dashboard.php?wc=events/cities">» Locais de Cobertura</a></li>
<?php endif ?>
</ul>
</li>
<?php
endif;
if (defined('APP_PHOTOS') && APP_PHOTOS && $_SESSION['userLogin']['user_level'] >= LEVEL_PHOTOS):
$wc_slide_alerts = null;
$Read->FullRead("SELECT count(photo_id) as total FROM " . DB_EV_PHOTOS . " WHERE photo_date <= NOW() AND photo_status = 0");
if ($Read->getResult() && $Read->getResult()[0]['total'] >= 1):
$wc_slide_alerts .= "<span class='wc_alert bar_yellow'>{$Read->getResult()[0]['total']}</span>";
endif;
?>
<li class="dashboard_nav_menu_li <?= strstr($getViewInput, 'gallery') ? 'dashboard_nav_menu_active' : ''; ?>"><a class="icon-images" title="Galeria de Fotos" href="dashboard.php?wc=events/gallery">Galerias<?= $wc_slide_alerts; ?></a>
<ul class="dashboard_nav_menu_sub">
<li class="dashboard_nav_menu_sub_li <?= $getViewInput == 'events/gallery' ? 'dashboard_nav_menu_active' : ''; ?>"><a title="Ver Galerias" href="dashboard.php?wc=events/gallery">» Ver Galeria<?= $wc_slide_alerts; ?></a></li>
<li class="dashboard_nav_menu_sub_li <?= $getViewInput == 'events/gallery-create' ? 'dashboard_nav_menu_active' : ''; ?>"><a title="Adicionar Galeria" href="dashboard.php?wc=events/gallery-create">» Adicionar Galeria</a></li>
</ul>
</li>
<?php
endif;
endif;
Precisamos fazer a importação das tabelas responsáveis pelo gerenciamento da sua aplicação. Para isso, utilize o seu SGBD padrão ou utilize o seu phpmyadmin
ANTES DE CONTINUAR analise qual é seu ambiente e execute apenas uma das opções:
- OPÇÃO 1) update-2.0.0.sql - Importe para o seu banco de dados se você já tem a versão v1.0.0 no seu projeto e quer atualizar da versão v1.0.0 para a nova versão v2.0.0
- OPÇÃO 2) app-agenda-2.0.0.sql - Importe para o seu banco de dados se você ainda não tem nenhuma versão dessa aplicação em seu projeto
PS: Os arquivos .sql se encontram-se na raiz da pasta baixada ao adquirir a APP
Agora, depois de tudo feito é necessário dar um reset dentro da área administrativa do WorkControl.
Para fazer isso basta ir até Menu > Configurações > Configurações Gerais e clicar no botão Resetar Configurações.
Tudo pronto! Se tudo foi feito como descrito neste tutorial sua Aplicação deve estar funcionando corretamente.