Commit 3cf0d792 authored by Stephane Bouvry's avatar Stephane Bouvry
Browse files

Merge branch 'connor-freefield' into connor

parents 8e9a7165 1dfeb29f
Loading
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ data/**.*
### Customisation CSS
/public/custom/*
!/public/custom/.gitkeep
ui/src/styles/oscar-variables.scss

### Maintenance DB
databases_maintenance/*.sh
+12 −0
Original line number Diff line number Diff line
@@ -153,6 +153,7 @@ return array(
                    'controller' => 'Activity',
                    'action' => [
                        'advancedsearch2',
                        'reindex',
                        'show',
                        'show2',
                        'edit',
@@ -595,6 +596,14 @@ return array(
                    'roles' => ['user']
                ],

                [
                    'controller' => 'ActivityFreeField',
                    'action' => [
                        'index',
                    ],
                    'roles' => ['user']
                ],

                [
                    'controller' => 'CheminDecisionnelAdministration',
                    'action' => [
@@ -634,6 +643,7 @@ return array(
            \Oscar\Service\ActivityDateFlowService::class => \Oscar\Factory\GenericOscarFactory::class,
            \Oscar\Service\ActivityLogService::class => \Oscar\Service\ActivityLogServiceFactory::class,
            \Oscar\Service\ActivityPaymentService::class => \Oscar\Service\ActivityPaymentServiceFactory::class,
            \Oscar\Service\ActivityFreeFieldService::class => \Oscar\Service\ActivityFreeFieldServiceFactory::class,
            \Oscar\Service\ActivityRequestService::class => \Oscar\Service\ActivityRequestServiceFactory::class,
            \Oscar\Service\ActivityTypeService::class => \Oscar\Service\ActivityTypeServiceFactory::class,
            \Oscar\Service\administration\AdministrationConfigService::class => \Oscar\Service\administration\AdminstrationConfigServiceFactory::class,
@@ -696,6 +706,7 @@ return array(
            'ActivityAvenants' => \Oscar\Controller\Factory\ActivityAvenantsControllerFactory::class,
            'ActivityDate' => \Oscar\Controller\ActivityDateControllerFactory::class,
            'ActivityDateFlow' => \Oscar\Controller\ActivityDateFlowControllerFactory::class,
            'ActivityFreeField' => \Oscar\Controller\ActivityFreeFieldControllerFactory::class,
            'ActivityMotsCles' => \Oscar\Controller\ActivityMotsClesControllerFactory::class,
            'ActivityNotes' => \Oscar\Controller\ActivityNotesControllerFactory::class,
            'ActivityPayment' => \Oscar\Controller\ActivityPaymentControllerFactory::class,
@@ -754,6 +765,7 @@ return array(
            'fileSize' => \Oscar\View\Helpers\Filesize::class,
            'hasAccess' => \Oscar\View\Helpers\Access::class,
            'keyvalue' => \Oscar\View\Helpers\KeyValueHelper::class,
            'oscarFormRowVite' => \Oscar\View\Helpers\OscarFormRowViteHelper::class,
            'activityNumbers' => \Oscar\View\Helpers\ActivityNumberHelper::class,
            'moment' => \Oscar\View\Helpers\Moment::class,
            'oscarFormRow' => \Oscar\View\Helpers\OscarFormRow::class,
+14 −0
Original line number Diff line number Diff line
@@ -45,6 +45,13 @@ todo:
      controller: Public
      action: todo

activityfreefield:
  type: literal
  options:
    route: /activityfreefield
    defaults:
      controller: ActivityFreeField
      action: index

################################################################################
# ACCÈS aux DONNÉES
@@ -994,6 +1001,13 @@ contract:
        defaults:
          action: myRole

    reindex:
      type: segment
      options:
        route: /reindex/:id
        defaults:
          action: reindex

    process-document-signed-send:
      type: segment
      options:
+53 −0
Original line number Diff line number Diff line
<?php
namespace Oscar\Controller;


use Laminas\Http\Response;
use Laminas\View\Model\JsonModel;
use Oscar\Exception\OscarException;
use Oscar\Provider\Privileges;
use Oscar\Service\ActivityFreeFieldService;
use Oscar\Traits\UseLoggerService;
use Oscar\Traits\UseLoggerServiceTrait;
use Oscar\Traits\UseOscarUserContextService;
use Oscar\Traits\UseOscarUserContextServiceTrait;
use Oscar\Traits\UseServiceContainer;
use Oscar\Traits\UseServiceContainerTrait;

class ActivityFreeFieldController extends AbstractOscarController implements UseServiceContainer, UseLoggerService,
                                                                        UseOscarUserContextService
{

    use UseServiceContainerTrait, UseLoggerServiceTrait, UseOscarUserContextServiceTrait;

    public function getActivityFreeFieldService(): ActivityFreeFieldService
    {
        return $this->getServiceContainer()->get(ActivityFreeFieldService::class);
    }

    public function indexAction() :array|JsonModel|Response {
        $this->getOscarUserContextService()->check(Privileges::MAINTENANCE_MENU_ADMIN);
        $this->getActivityFreeFieldService()->getFields();
        if( $this->isAjax() ){
            switch ($this->getRequest()->getMethod()) {
                case 'POST':
                    $this->getActivityFreeFieldService()->create($this->getRequest()->getPost()->toArray());
                    return $this->getResponseOk("Champs ajouté");
                    break;
                case 'PUT':
                    $this->getLoggerService()->error(json_encode($_POST));
                    $this->getLoggerService()->error(json_encode($this->getJsonPosted()));
                    $this->getActivityFreeFieldService()->update($this->getJsonPosted());
                    return $this->getResponseOk("Champs mis à jour");
                case 'GET':
                    return $this->jsonOutput($this->getActivityFreeFieldService()->getFields());
                case 'DELETE':
                    $id = intval($this->getRequest()->getQuery()->get('id'));
                    $this->getActivityFreeFieldService()->deleteById($id);
                    return $this->getResponseOk("Champs supprimé");

            }
        }
        return [];
    }
}
 No newline at end of file
+25 −0
Original line number Diff line number Diff line
<?php
/**
 * Created by PhpStorm.
 * User: bouvry
 * Date: 27/09/19
 * Time: 13:44
 */

namespace Oscar\Controller;


use Interop\Container\ContainerInterface;
use Oscar\Factory\AbstractOscarFactory;
use Oscar\Service\ProjectGrantService;

class ActivityFreeFieldControllerFactory extends AbstractOscarFactory
{
    public function __invoke(ContainerInterface $container, $requestedName, array $options = null)
    {
        $c = new ActivityFreeFieldController();
        $this->init($c, $container);
        $c->setServiceContainer($container);
        return $c;
    }
}
 No newline at end of file
Loading