Commit 9da11c6e authored by Stephane Bouvry's avatar Stephane Bouvry
Browse files

- Fiche organisation :

   - Mise en page
   - Un bouton "Voir les contrats" permet de lancer une recherche filtrée sur l'organisation (optimise l'affichage de la fiche)
   - Les connecteurs s'affichent (même si ils ont été désactivés)
parent 0a1fa200
Loading
Loading
Loading
Loading
+5 −0
Changes for module/Oscar/src/Oscar/Entity/Organization.php: 5 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -1433,4 +1433,9 @@ class Organization implements ResourceInterface, IConnectedObject
    {
        return $this->getDateUpdatedStr();
    }

    public function totalAffectation()
    {
        return $this->getActivities()->count() + $this->getProjects()->count();
    }
}
+21 −76
Changes for module/Oscar/view/oscar/organization/show.phtml: 21 added lines, 76 removed lines.
Original line number Diff line number Diff line
@@ -150,18 +150,31 @@
        </div>
        <div class="bg-white text-center">
            <nav class="btn-group inline-block">
                <?php if( $this->grant()->privilege(\Oscar\Provider\Privileges::ACTIVITY_INDEX)): ?>
                <a href="<?= $this->url('contract/search-global').'?'.'&f[]=ao%3B' . $organization->getId() ?>"
                   class="btn <?= $organization->totalAffectation() > 0 ? 'btn-primary' : '' ?> btn">
                    <i class="icon-cubes"></i>
                    <?= $this->oscarText('Voir les contrats') ?>
                </a>
                <?php endif; ?>

                <a href="<?= $this->url('organization/edit', array('id' => $organization->getId())) ?>"
                   class="btn btn-light btn-sm">
                   class="btn btn-light btn">
                    <i class="icon-pencil"></i>
                    Éditer les informations
                </a>

                <a href="<?= $this->url('organization/reindexOne', array('id' => $organization->getId())) ?>"
                   class="btn btn-info btn-sm">
                   class="btn btn-light btn">
                    <i class="icon-database"></i>
                    Réindexer
                </a>

                <a href="<?= $this->url('timesheet/organization') ?>?id=<?= $organization->getId() ?>"
                   class="btn btn-primary btn-sm">Déclarations en attente</a>
                   class="btn btn-light btn">
                    <i class="icon-calendar"></i>
                    Déclarations en attente
                </a>
            </nav>
        </div>

@@ -195,15 +208,17 @@
                    </a>
                    <?php if (count($ancestors)): ?>
                        <hr>
                        <h2><i class="icon-user"></i>Personnes (structures parentes)</h2>
                        <h4><i class="icon-user"></i>Personnes (structures parentes)</h4>
                        <?php foreach ($ancestors as $ancestor): ?>
                            <article>
                                <h3><?= $ancestor ?></h3>
                                <h5><?= $ancestor ?></h5>
                                <?php
                                /** @var \Oscar\Entity\OrganizationPerson $person */
                                foreach ($ancestor->getPersons() as $person): ?>
                                    <?= $this->partial('/partials/person-enrolled-card.phtml', array(
                                            'enroll' => $person
                                            'enroll' => $person,
                                            'urlDelete' => $this->url('organizationperson/delete', ['idenroll' => $person->getId()]),
                                            'urlClose' => $this->url('organizationperson/close', ['idenroll' => '']),
                                    )); ?>
                                <?php endforeach; ?>
                            </article>
@@ -213,75 +228,5 @@
            </div>
        </section>


        <!--
        <h2>Projet <span class="label <?= count($projects) > 0 ? 'label-info' : 'label-default' ?>"><?= count($projects) ?></span></h2>
        <?php foreach ($projects as $project): ?>
            <?= $this->partial('/oscar/project/project-item-openable.phtml', array(
                'project' => $project,
        )); ?>
        <?php endforeach; ?>


        <?= $this->pager($projects, preg_replace("/\\??&page=[0-9]*/", '', $_SERVER['REQUEST_URI']) . '?&page=%s') ?>

        <section class="activities">
            <h2>Activités (sans projet) <span class="label <?= count($activities) > 0 ? 'label-info' : 'label-default' ?>"><?= count($activities) ?></span></h2>
            <?php $currentYear = null;
        foreach ($activities as $activity):

            $year = $activity->getDateCreated()->format('Y');
            if ($currentYear != $year) {
                $year = $currentYear;
                echo "<h3>$year</h3>";
            }
            ?>
                <?= $this->partial('/oscar/project-grant/item-list.phtml', array(
                'activity' => $activity
        )); ?>
            <?php endforeach; ?>
        </section>
    </section>

    <div class="overlay" id="overlay" style="display: none">
        <div class="overlay-content">
            <form action="" method="post" id="formResiliation">
                Selectionnez la date de résilation (par défaut aujourd'hui) :
                <input type="text" class="form-control datepicker" name="at" />
                <nav>
                    <button type="reset" id="cancel" class="btn btn-default">Annuler</button>
                    <button type="submit" class="btn btn-primary">Confirmer</button>
                </nav>
            </form>
        </div>
</div>
    <script>
        require(['jquery', 'datepicker'], function($){

            var idEnroll = null;

            $('.datepicker').datepicker({
                format: "yyyy-mm-dd",
                todayBtn: "linked",
                clearBtn: true,
                language: "fr",
                autoclose: true,
                toggleActive: true
            });


            $('#cancel').on("click", function(){
                $("#overlay").hide();
            })

            $('[data-enrollid]').on('click', function(e){

                idEnroll = $(e.target).data('enrollid');
                $('#formResiliation').attr('action', '<?= $this->url('organizationperson/close', ['idenroll' => '']) ?>' + idEnroll)
                $("#overlay").show();
            })
        })
    </script>
</div>
-->
+25 −18
Changes for module/Oscar/view/partials/person-enrolled-card.phtml: 25 added lines, 18 removed lines.
Original line number Diff line number Diff line
@@ -11,8 +11,8 @@ $person = $enroll->getPerson();
    <h3 class="card-title">
        <?php if($person->getEmail()): ?>
            <img class="portrait"
                 style="width: 42px; "
                 src="//www.gravatar.com/avatar/<?= md5($person->getEmail()) ?>?s=42"
                 style="width: 32px; "
                 src="//www.gravatar.com/avatar/<?= md5($person->getEmail()) ?>?s=32"
                 alt="">
        <?php endif; ?>
        <span class="fullname">
@@ -22,7 +22,20 @@ $person = $enroll->getPerson();
            <i></i>
            <span class="firstname"><?= $person->getFirstname() ?></span>
            <span class="lastname"><?= $person->getLastname() ?></span>
            <!-- <span class="affectation">(<?= $person->getLdapAffectation() ?>)</span> -->
            <br>
            <span class="cartouche <?= $enroll->isPrincipal() ? 'primary' : '' ?>">
                <i class="icon-tag"></i>
                <?php if( $enroll->getDateEnd() ): ?>
                    <span class="role">
                                <?= $enroll->getRole() ?>
                                <small> ( <?= ($enroll->isPast() ? 'fini depuis le ' : 'prendra effet le' ) . $this->moment($enroll->getDateEnd()) ?>)</small>
                            </span>
                <?php else: ?>
                    <span class="role"><?= $enroll->getRole() ?></span>
                <?php endif; ?>
            </span>


        </span>
        <nav class="onright">

@@ -36,28 +49,22 @@ $person = $enroll->getPerson();

        </nav>
    </h3>
    <h4 class="card-subtitle">
        <?php if( $enroll->getDateEnd() ): ?>
            <div class="role">
                <?= $enroll->getRole() ?>
                <small> ( <?= ($enroll->isPast() ? 'fini depuis le ' : 'prendra effet le' ) . $this->moment($enroll->getDateEnd()) ?>)</small>
            </div>
        <?php else: ?>
            <div class="role"><?= $enroll->getRole() ?></div>
        <?php endif; ?>


    </h4>
    <div class="card-content">
    <?php if( $enroll->getDateStart() ): ?>
    <div class="card-content">
        <small>Depuis le <?= $this->moment($enroll->getDateStart()) ?></small>
    </div>
    <?php endif; ?>
    <div class="card-buttons">
        <?php if( !$enroll->getOrigin() ): ?>
            <?php if( isset($urlDelete) ): ?>
                <a href="<?= $urlDelete ?>" class="btn btn-xs btn-danger"><i class="icon-trash"></i> Supprimer ce rôle</a>
                <a href="<?= $urlDelete ?>" class="btn btn-sm btn-danger">
                    <i class="icon-trash"></i> Supprimer ce rôle
                </a>
            <?php endif; ?>
            <?php if( isset($urlClose) ):?>
                <button data-enrollid="<?= $enroll->getId() ?>" class="btn btn-xs btn-light">Résilier</button>
                <button data-enrollid="<?= $enroll->getId() ?>" class="btn btn-sm btn-light">
                    Résilier
                </button>
            <?php endif; ?>
        <?php endif; ?>

+11 −1
Changes for ui/src/styles/_oscar-card.scss: 11 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -75,12 +75,22 @@
    background-repeat: no-repeat;
    background-size: 100% 30px;
    background-position: top;
    padding: .6em;
    padding: 0 .3em;
    .infos {
      padding: 1em 2em;
    }
  }

  &:hover {
    .card-buttons {
      opacity: 1;
    }
  }
  .card-buttons {
    opacity: .2;
    transition: opacity .3s;
  }

  .card-buttons, .card-buttons.btn-group {
    @extend .btn-group;
    display: flex;
+4 −2
Changes for ui/src/styles/_oscar-core.scss: 4 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -108,7 +108,7 @@ h1 {
h2 {
  margin-top: 1em;
  font-weight: 500;
  color: $secondary-grey;
  color: $primary;
  font-size: 1.4em;
}

@@ -118,7 +118,9 @@ h3 {
}

h4 {
  margin-top: 1em;
  color: $primary-grey;
  font-size: 1.2em;
  margin: .3em 0 0 0;
  font-weight: 400
}

Loading