| @@ -0,0 +1,2 @@ | |||
| <?php | |||
| echo password_hash('test', PASSWORD_BCRYPT, ["cost" => 12]); | |||
| @@ -79,10 +79,10 @@ class AdminController extends AbstractController | |||
| $em->persist($newUser); | |||
| $email = (new TemplatedEmail()) | |||
| ->from("MyBIMScore by RealFM <".$_ENV['SYS_EMAIL'].">") | |||
| ->from("MPPTool by RealFM <".$_ENV['SYS_EMAIL'].">") | |||
| ->to($_ENV['APP_ENV'] === 'prod' ? $content->email : $_ENV['DEV_EMAIL']) | |||
| ->cc($_ENV['SYS_EMAIL']) | |||
| ->subject('Ihre Registrierung bei MyBIMScore') | |||
| ->subject('Ihre Registrierung bei MPPTool') | |||
| ->htmlTemplate('email/new_user_email.html.twig') | |||
| ->context( | |||
| [ | |||
| @@ -169,7 +169,7 @@ class AdminController extends AbstractController | |||
| ->from($_ENV['SYS_EMAIL']) | |||
| ->to($_ENV['APP_ENV'] === 'prod' ? $user->getEmail() : $_ENV['DEV_EMAIL']) | |||
| //->cc($_ENV['ADMIN_EMAIL']) | |||
| ->subject('Ihr Zugang bei MyBIMScore') | |||
| ->subject('Ihr Zugang bei MPPTool') | |||
| ->htmlTemplate('email/new_password_email.html.twig') | |||
| ->context( | |||
| [ | |||
| @@ -9,8 +9,10 @@ namespace App\Controller; | |||
| use App\Entity\Catalogue; | |||
| use App\Entity\CatalogueDetail; | |||
| use App\Entity\DinAsset; | |||
| use App\Entity\User; | |||
| use App\Repository\UserRepository; | |||
| use App\Utils\Utils; | |||
| use Sensio\Bundle\FrameworkExtraBundle\Configuration\Security; | |||
| use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; | |||
| use Symfony\Component\HttpFoundation\Request; | |||
| @@ -51,6 +53,31 @@ class UserController extends AbstractController | |||
| ); | |||
| } | |||
| /** | |||
| * @Route("/risk-analysis", name="risk_analysis") | |||
| * | |||
| * @return \Symfony\Component\HttpFoundation\Response | |||
| * @throws \Exception | |||
| */ | |||
| public function showRiskAnalysis() | |||
| { | |||
| $em = $this->getDoctrine()->getManager(); | |||
| /** @var User $user */ | |||
| $user = $this->getUser(); | |||
| $dinAssets = $em->getRepository(DinAsset::class)->findAll(); | |||
| return $this->render('pages/risk_analysis.html.twig', | |||
| [ | |||
| 'dinAssets' => $dinAssets, | |||
| 'riskFailure' => Utils::$riskFailure, | |||
| 'riskCosts' => Utils::$riskCosts, | |||
| ] | |||
| ); | |||
| } | |||
| /** | |||
| * @Route("/download", name="download") | |||
| * | |||
| @@ -10,6 +10,32 @@ class Utils | |||
| const PASSWORD_MIN_LENGTH = 5; | |||
| const PASSWORD_MAX_LENGTH = 50; | |||
| public static $riskFailure = [ | |||
| ['-', 0], | |||
| ['sehr niedrig', 5], | |||
| ['niedrig', 10], | |||
| ['mittel', 15], | |||
| ['hoch', 20] | |||
| ]; | |||
| public static $riskCosts = [ | |||
| ['-', 0], | |||
| ['0 - 5.000 €', 5], | |||
| ['5.001 - 50.000 €', 10], | |||
| ['mittel', 15], | |||
| ['hoch', 20] | |||
| ]; | |||
| public static $riskPoints = [ | |||
| ['factor' => 0, 'cycle' => 6, 'points' => 10], | |||
| ['factor' => 0.17, 'cycle' => 6, 'points' => 15], | |||
| ['factor' => 0.33, 'cycle' => 6, 'points' => 20], | |||
| ['factor' => 0.5, 'cycle' => 6, 'points' => 25], | |||
| ['factor' => 0.67, 'cycle' => 6, 'points' => 30], | |||
| ['factor' => 0.83, 'cycle' => 6, 'points' => 35], | |||
| ['factor' => 1, 'cycle' => 6, 'points' => 40], | |||
| ]; | |||
| /** | |||
| * Checks email format | |||
| * @param $email | |||
| @@ -33,7 +33,7 @@ | |||
| Willkommen {{ app.user.firstname }} {{ app.user.lastname }}. <a href="{{ path('app_logout') }}">Logout</a> | |||
| </div> | |||
| {% else %} | |||
| <a href="https://www.realfm.de/produkt/mybimscore-bewertung-des-bim-reifegrades-kopie/" target="_blank"> | |||
| <a href="https://www.realfm.de/" target="_blank"> | |||
| <button class="btn" style="text-transform: none; background-color: #6D0507; font-weight: bold">Zugang zum MPP-Tool erwerben</button> | |||
| </a> | |||
| <form method="post" class="form"> | |||
| @@ -1,15 +1,15 @@ | |||
| <p>Sehr geehrte Nutzerin, sehr geehrter Nutzer,</p> | |||
| <br /><br /> | |||
| <p>Ihr Passwort für MyBIMScore wurde geändert. Ihr neues Passwort lautet:</p> | |||
| <p>Ihr Passwort für MPPTool wurde geändert. Ihr neues Passwort lautet:</p> | |||
| <p>{{ password }}</p> | |||
| <br /> | |||
| <p>Bitte bewahren Sie Ihre Daten sicher auf. Bei Fragen oder Problemen wenden sie sich bitte an unseren Administrator unter:</p> | |||
| <a href="mailto:office@realfm.de">office@realfm.de</a> | |||
| <br /><br /> | |||
| <p>Hier geht es zu MyBIMScore: <a href="{{ url }}">https://mybimscore.realfm.de</a></p> | |||
| <p>Hier geht es zu MPPTool: <a href="{{ url }}">https://mpptool.realfm.de</a></p> | |||
| <br /> | |||
| <p>Mit freundlichen Grüßen</p> | |||
| <p>Ihr MyBIMScore - Team</p> | |||
| <p>Ihr MPPTool - Team</p> | |||
| <p>--</p> | |||
| <p>RealFM e.V.<br /> | |||
| Schiffbauerdamm 40 / Büro 5407<br /> | |||
| @@ -1,6 +1,6 @@ | |||
| <p>Sehr geehrte Nutzerin, sehr geehrter Nutzer,</p> | |||
| <br /><br /> | |||
| <p>Sie haben sich erfolgreich bei MyBIMScore angemeldet und sind von unserem System freigeschaltet worden.</p> | |||
| <p>Sie haben sich erfolgreich bei MPPTool angemeldet und sind von unserem System freigeschaltet worden.</p> | |||
| <br /> | |||
| <p>Ihre Zugangsdaten lauten:</p> | |||
| <p>Benutzername: {{ user.email }}</p> | |||
| @@ -9,10 +9,10 @@ | |||
| <p>Bitte bewahren sie Ihre Daten sicher auf. Bei Fragen oder Problemen wenden sie sich bitte an unseren Administrator unter:</p> | |||
| <a href="mailto:office@realfm.de">office@realfm.de</a> | |||
| <br /><br /> | |||
| <p>Hier geht es zu MyBIMScore: <a href="{{ url }}">https://mybimscore.realfm.de</a></p> | |||
| <p>Hier geht es zu MPPTool: <a href="{{ url }}">https://mpptool.realfm.de</a></p> | |||
| <br /> | |||
| <p>Mit freundlichen Grüßen</p> | |||
| <p>Ihr MyBIMScore - Team</p> | |||
| <p>Ihr MPPTool - Team</p> | |||
| <p>--</p> | |||
| <p>RealFM e.V.<br /> | |||
| Schiffbauerdamm 40 / Büro 5407<br /> | |||
| @@ -5,10 +5,10 @@ | |||
| {% block body %} | |||
| <h1>Abschluss Fragenkatalog</h1> | |||
| <p> | |||
| Herzlichen Glückwunsch, Sie haben soeben die Bearbeitung Ihres Fragenkatalogs zu MyBIMScore abgeschlossen. Die Auswertung Ihrer Antworten liegt als PDF-Download für Sie bereit. | |||
| Herzlichen Glückwunsch, Sie haben soeben die Bearbeitung Ihres Fragenkatalogs zu MPPTool abgeschlossen. Die Auswertung Ihrer Antworten liegt als PDF-Download für Sie bereit. | |||
| </p> | |||
| <h2>"Ihr BIMScore"</h2> | |||
| <p>Hier erhalten Sie eine Zusammenfassung Ihrer Antworten zu den Fragen aus MyBIMScore und das Ergebnis der Auswertung als PDF-Dokument.</p> | |||
| <p>Hier erhalten Sie eine Zusammenfassung Ihrer Antworten zu den Fragen aus MPPTool und das Ergebnis der Auswertung als PDF-Dokument.</p> | |||
| <a href="{{ path('download') }}" class="btn">Ergebnis</a> | |||
| <br /><br /> | |||
| <p>Sie können die Bearbeitung des Fragenkataloges noch {{ remainingCatalogues }}-mal durchführen. Dazu haben Sie noch {{ remainingDays }} Tage Zeit.</p> | |||
| @@ -10,12 +10,12 @@ | |||
| <form method="get" class="form form--legal" action="{{ path('accept_legal_terms') }}"> | |||
| <div class="form--wrapper form-wrapper--container"> | |||
| <div class="form--wrapper form--checkbox"> | |||
| <label for="legal-1"><input type="checkbox" id="legal-1" required="required" />Hiermit stimme ich den <a href="/downloads/Lizenz-Nutzervereinbarung-MyBIMScore.pdf" target="_blank">Nutzungsbedingungen</a> für die Anwendung „MyBIMScore“ zu.</label> | |||
| <label for="legal-1"><input type="checkbox" id="legal-1" required="required" />Hiermit stimme ich den <a href="/downloads/Lizenz-Nutzervereinbarung-MPPTool.pdf" target="_blank">Nutzungsbedingungen</a> für die Anwendung „MPPTool“ zu.</label> | |||
| </div> | |||
| </div> | |||
| <div class="form--wrapper form-wrapper--container"> | |||
| <div class="form--wrapper form--checkbox"> | |||
| <label for="legal-2"><input type="checkbox" id="legal-2" required="required" />Der Verband behält sich vor, die mit MyBIMScore erhobenen Daten auszuwerten. Dies geschieht anonymisiert und unter Beachtung der geltenden datenschutzrechtlichen Vorschriften, insbesondere der EU-Datenschutz-Grundverordnung (DSGVO). Durch die Verwendung dieses Internetangebotes stimmen Sie den Bedingungen der Datenschutzerklärung im Impressum sowie dieses Hinweises zu.</label> | |||
| <label for="legal-2"><input type="checkbox" id="legal-2" required="required" />Der Verband behält sich vor, die mit MPPTool erhobenen Daten auszuwerten. Dies geschieht anonymisiert und unter Beachtung der geltenden datenschutzrechtlichen Vorschriften, insbesondere der EU-Datenschutz-Grundverordnung (DSGVO). Durch die Verwendung dieses Internetangebotes stimmen Sie den Bedingungen der Datenschutzerklärung im Impressum sowie dieses Hinweises zu.</label> | |||
| </div> | |||
| </div> | |||
| <div class="form--wrapper"> | |||
| @@ -0,0 +1,53 @@ | |||
| {% extends 'base.html.twig' %} | |||
| {% block title %}MPP-Tool{% endblock %} | |||
| {% block body %} | |||
| <h1>MPP-Tool</h1> | |||
| <p id="instruction">Bitte füllen sie alle Felder aus, um eine Risikoanalyse zu erstellen.</p> | |||
| <form method="post" class="form form--catalogue"> | |||
| <label for="asset">Bitte wählen sie eine Anlage.</label> | |||
| <select name="asset" id="asset"> | |||
| {% for asset in dinAssets %} | |||
| <option value="{{ asset.id }}">{{ asset.dinNumber }} - {{ asset.name }}</option> | |||
| {% endfor %} | |||
| </select> | |||
| <h2>Risikoanalyse</h2> | |||
| <label for="failure">Wie hoch ist die Ausfallwahrscheinlichkeit?:</label> | |||
| <select name="failure" id="failure"> | |||
| {% for key, failure in riskFailure %} | |||
| <option value="{{ key }}">{{ failure[0] }}</option> | |||
| {% endfor %} | |||
| </select> | |||
| <label for="costs">Wie hoch ist der Schaden bei Ausfall?</label> | |||
| <select name="costs" id="costs"> | |||
| {% for key, costs in riskCosts %} | |||
| <option value="{{ key }}">{{ costs[0] }}</option> | |||
| {% endfor %} | |||
| </select> | |||
| <h2>Optimierungsckeck</h2> | |||
| <label for="maintenance">Wird durch die Wartung der Abnutzungsvorrat positiv beeinflusst?</label> | |||
| <select name="maintenance" id="maintenance"> | |||
| <option value="-">-</option> | |||
| <option value="0">Nein</option> | |||
| <option value="1">Ja</option> | |||
| </select> | |||
| <label for="inspection">Kann durch eine Inspektion der Zustand der Anlage erkannt werden?</label> | |||
| <select name="inspection" id="inspection"> | |||
| <option value="-">-</option> | |||
| <option value="0">Nein</option> | |||
| <option value="1">Ja</option> | |||
| </select> | |||
| <label for="check">Genügt eine einfache Sichtkontrolle im Rahmen des regelmäßigen Rundgangs?</label> | |||
| <select name="check" id="check"> | |||
| <option value="-">-</option> | |||
| <option value="0">Nein</option> | |||
| <option value="1">Ja</option> | |||
| </select> | |||
| <label for="cycle">Genügt eine einfache Sichtkontrolle im Rahmen des regelmäßigen Rundgangs?</label> | |||
| <input name="cycle" type="number" disabled> | |||
| <label for="bandwidth">Genügt eine einfache Sichtkontrolle im Rahmen des regelmäßigen Rundgangs?</label> | |||
| <select name="bandwidth" id="bandwidth" disabled> | |||
| </select> | |||
| </form> | |||
| {% endblock %} | |||
| @@ -5,19 +5,19 @@ | |||
| {% block body %} | |||
| <h1>Übersicht</h1> | |||
| {# <p>Hier stehen Infos zum Fragenkatalog.</p>#} | |||
| <p>RealFM und der Arbeitskreis BIM wünschen Ihnen nun viel Spaß bei der Bearbeitung des Fragenkataloges sowie wichtige Erkenntnisse und wertvolle Hinweise für die BIM2FM-Stategie und für notwendige Maßnahmen zur Umsetzung.</p> | |||
| <p>RealFM und der Arbeitskreis MPP wünschen Ihnen nun viel Spaß bei der Bearbeitung des Fragenkataloges sowie wichtige Erkenntnisse und wertvolle Hinweise für die BIM2FM-Stategie und für notwendige Maßnahmen zur Umsetzung.</p> | |||
| {% if noMoreCatalogues %} | |||
| <p>Sie haben die maximale Anzahl an Durchgängen erreicht.</p> | |||
| {% else %} | |||
| <div class="container"> | |||
| <a href="{{ path('catalogue') }}" class="btn">{{ userHasUnfinishedCatalogue ? 'Fragenkatalog fortsetzen' : 'Fragenkatalog starten' }}</a> | |||
| <a href="{{ path('risk_analysis') }}" class="btn">{{ userHasUnfinishedCatalogue ? 'Arbeitskarte fortsetzen' : 'Arbeitskarte starten' }}</a> | |||
| {# <p class="alert">Leider ist Ihre Nutzungsdauer von 3 Jahren abgelaufen. Wenn Sie den Fragenkatalog noch einmal bearbeiten möchten, wenden Sie sich bitte an die Geschäftsstelle.</p>#} | |||
| </div> | |||
| {% endif %} | |||
| {% if userHasFinishedCatalogue %} | |||
| <h2>"Ihr BIMScore"</h2> | |||
| <p>Hier erhalten Sie eine Zusammenfassung Ihrer Antworten zu den Fragen aus MyBIMScore und das Ergebnis der Auswertung als PDF-Dokument.</p> | |||
| <h2>"Ihr MPPScore"</h2> | |||
| <p>Hier erhalten Sie eine Zusammenfassung Ihrer Antworten zu den Fragen aus MPPTool und das Ergebnis der Auswertung als PDF-Dokument.</p> | |||
| <a href="{{ path('download') }}" class="btn">Herunterladen</a> | |||
| <p> </p> | |||
| {% include 'snippets/sponsors.html.twig' %} | |||
| @@ -2,7 +2,7 @@ | |||
| <html> | |||
| <head> | |||
| <meta charset="UTF-8" /> | |||
| <title>MyBIMScore</title> | |||
| <title>MPPTool</title> | |||
| <style> | |||
| body, table, td, th {text-align: left;font-size: 14px;line-height: 20px;font-weight: normal;font-style:normal;font-family: Arial, Verdana, sans-serif;} | |||
| h1, h2, h3, h4, h5, h6, p, table {padding: 0;margin: 0;} | |||
| @@ -50,7 +50,7 @@ | |||
| <td colspan="2"><br /></td> | |||
| </tr> | |||
| <tr> | |||
| <td width="70%"><h1>MyBIMScore<br /> | |||
| <td width="70%"><h1>MPPTool<br /> | |||
| Ergebnis je Handlungsfeld und gesamt</h1></td> | |||
| <td width="30%" style="text-align: right;"><img src="{{ app.request.getSchemeAndHttpHost() }}/assets/images/logos/real-fm.png" alt="Canzler GmbH" style="display: block;width: auto;height: 40px;" /></td> | |||
| </tr> | |||
| @@ -246,7 +246,7 @@ | |||
| <td><br /></td> | |||
| </tr> | |||
| <tr> | |||
| <td width="100%"><h1>MyBIMScore<br /> | |||
| <td width="100%"><h1>MPPTool<br /> | |||
| Ergebnisübersicht</h1></td> | |||
| </tr> | |||
| <tr> | |||
| @@ -343,7 +343,7 @@ | |||
| </tr> | |||
| <tr> | |||
| <td></td> | |||
| <td colspan="3"><br /><br />Verband und Arbeitskreis danken den oben genannten Unternehmen, die nicht nur ihr Know-How in die Entwicklung des Online-Tools „MyBIMScore“ eingebracht haben, sondern diese auch als Sponsoren unterstützt haben.<br /><br /></td> | |||
| <td colspan="3"><br /><br />Verband und Arbeitskreis danken den oben genannten Unternehmen, die nicht nur ihr Know-How in die Entwicklung des Online-Tools „MPPTool“ eingebracht haben, sondern diese auch als Sponsoren unterstützt haben.<br /><br /></td> | |||
| </tr> | |||
| <tr> | |||
| <td></td> | |||
| @@ -1,4 +1,4 @@ | |||
| <p>Für weiterführende Erläuterungen/ Interpretationen Ihrer Ergebnisse, detailliertere Analysen, externe Audits, Projektunterstützung, Implementierungs-Beratung oder Unterstützung bei der Verbesserung Ihres BIM-Reifegrades stehen Ihnen folgende Ansprechpartner der beteiligten Beratungsunternehmen zur Verfügung:</p> | |||
| <p>Für weiterführende Erläuterungen/ Interpretationen Ihrer Ergebnisse, detailliertere Analysen, externe Audits, Projektunterstützung, Implementierungs-Beratung oder Unterstützung bei der Verbesserung Ihres MPP-Reifegrades stehen Ihnen folgende Ansprechpartner der beteiligten Beratungsunternehmen zur Verfügung:</p> | |||
| <ul class="logo-bar"> | |||
| <li> | |||
| <img src="/assets/images/logos/logo-drodin.png" alt="Dr. Odin GmbH" /> | |||
| @@ -13,4 +13,4 @@ | |||
| <p>Andreas Rausch // Canzler GmbH (<a href="mailto:andreas.rausch@canzler.de">andreas.rausch@canzler.de</a>), <a href="https://www.canzler.de" target="_blank">https://www.canzler.de</a></p> | |||
| </li> | |||
| </ul> | |||
| <p>Verband und Arbeitskreis danken den oben genannten Unternehmen, die nicht nur ihr Know-How in die Entwicklung des Online-Tools „MyBIMScore“ eingebracht haben, sondern diese auch als Sponsoren unterstützt haben.</p> | |||
| <p>Verband und Arbeitskreis danken den oben genannten Unternehmen, die nicht nur ihr Know-How in die Entwicklung des Online-Tools „MPPTool“ eingebracht haben, sondern diese auch als Sponsoren unterstützt haben.</p> | |||