phoebusryan / rex4_custom_firedepartment

Redaxo 4 Addon - Einsatzverwaltung für Feuerwehre
3 stars 0 forks source link

Einsatzbericht "Lang" #9

Closed fw-thomas closed 8 years ago

fw-thomas commented 8 years ago

wären die Verknüfungen so richtig?

<table width="516">
    <tbody>
        <tr>
            <td height="52" colspan="2" align="center"><h1><em><strong>Einsatzbericht</strong></em></h1></td>
        </tr>
        <tr>
            <td width="172">Einsatzart:</td>
            <td width="332"><?=$operation['config_alert_id'];?></td>
        </tr>
        <tr>
            <td>Kurzbericht:</td>
            <td><?=$operation['report_short'];?></td>
        </tr>
        <tr>
            <td>Einsatzort:</td>
            <td><?=$operation['place'];?></td>
        </tr>
        <tr>
            <td>Alarmierung:</td>
            <td><?=$operation['start_date'];?></td>
        </tr>
        <tr>
            <td>Einsatzende:</td>
            <td><?=$operation['end_date'];?></td>
        </tr>
        <tr>
            <td>Fahrzeuge am Einsatzort:</td>
            <td><?=$operation['config_verhicle_ids'];?></td>
        </tr>
        <tr>
            <td>alarmierte Einheiten:</td>
            <td><?=$operation['config_unit_ids'];?></td>
        </tr>
    </tbody>
    <tbody>
        <tr>
            <td colspan="2"><p><strong>Einsatzbericht: </strong></p>
            <p>
              <?=$operation['report_long'];?>
            </p></td>
        </tr>
    </tbody>
</table>
phoebusryan commented 8 years ago

Kommt drauf an, was $operation ist. Am einfachsten wäre vermutlich in der class.rex_firedepartment.inc.php eine neue Methode 'getOperationById()' anzulegen. Wie weit bist du denn jetzt generell?

fw-thomas commented 8 years ago

ich selber habe die Listenansicht soweit fertig, wie ich sie gerne haben wollte .. wobei ich noch nicht weiß ob man bei Monatswechsel eine Unterbrechung noch einbauen kann.

Ansonsten habe ich halt das Grundgerüst für den Langbericht in der Nacht gebaut.

Weiter noch nicht, da mir dabei das Fachwissen halt fehlt ..

phoebusryan commented 8 years ago

Und wie wechselt du zwischen Kurz- und Langbericht? Kann man das ganze irgendwo online ansehen?

fw-thomas commented 8 years ago

anbei der Link wo ich die Testseiten habe http://feuerwehr-schortens.de/index.php?article_id=237

fw-thomas commented 8 years ago

bisher habe ich das so verlinkt das man auf den Kurzbericht einen Link gesetzt hatte, so dachte ich eigentlich auch, das ich das mit dem Addon hinbekäme ..

sowie dann auch einen zurück Feld damit man wieder auf die Listenansicht kommt

phoebusryan commented 8 years ago

Ich habe dir mal die oben genannte Methode gebaut: https://github.com/phoebusryan/rex4_custom_firedepartment/blob/master/classes/class.rex_firedepartment.inc.php#L20-L70

Die Methode wird wie folgt aufgerufen: $operation = rex_firedepartment::getOperationByID(1);

(wobei 1 natürlich die ID des jeweiligen Einsatzes ist)

Mit dieser Methode kriegst du dann auch direkt die richtigen Fahrzeugtypen etc zurück.

fw-thomas commented 8 years ago

Hallo, ich denke das ich den Code $operation = rex_firedepartment::getOperationByID(1); in den Modul für die Listenansicht baue ...

fw-thomas commented 8 years ago

leider habe ich das nicht hinbekommen..

phoebusryan commented 8 years ago

Ist es beabsichtigt, dass jeder Einsatz und jedes Jahr einen eigenen Artikel hat? Grundsätzlich liesse sich das sehr simpel über einen einzigen Artikel mit einem einzigen Modul bauen.

Ich weiss nicht, ob ich noch dazu komme heute, aber ich könnte dir sonst einen Prototypen bauen.

fw-thomas commented 8 years ago

der Besucher soll eine Gesamtübersicht bekommen, welche Einsätze gefahren wurden ..

Wenn er dann einen genauer lesen will, soll er wo draufklicken können um dann den gesamten Bericht lesen zu können.

Nach Jahren sollte in der Übersicht schon getrennt sein, sonst wird die Liste zu lang. Letztes Jahr haben wir mit 3 Wehren insgesamt 120 Einsätze gefahren ..

Die Idee habe ich von diesen Kameraden http://feuerwehr-jever.de/index.php/einsaetze

fw-thomas commented 8 years ago

prototyp wäre schon mal genial, dann kann ich den weitermachen .. mir fehlt halt der Anfang und das schaffe ich mit meinen Wissen nicht .. Wenn du das alles in einen Modul packst, dann verwende bitte meine vorlage, das habe ich soweit fertig.

phoebusryan commented 8 years ago

Ja so eine Liste 1:1 nachzubauen ist eigentlich eine Sache von einer Stunde. Kann das auch noch machen. Komme aber erst nächste Woche dazu.

fw-thomas commented 8 years ago

jo dann kann ich anfangen die Einsätze aus 2015 zu übernehmen in die neue Datenbank

wie sieht es aus bei Update´s, wird die DB gelöscht bzw. muss die Wehr die bereits eingetragenen Einsätze neu Eingeben ??

phoebusryan commented 8 years ago

Du kannst die Daten bereits anlegen. Die Daten werden nicht gelöscht bei einem Update.

phoebusryan commented 8 years ago

So, ich hatte gerade wieder etwas Zeit.

Leg einfach mal einen neuen Artikel an im Redaxo und füge folgendes als Modul ein: https://github.com/phoebusryan/rex4_custom_firedepartment/blob/master/beispielmodul.txt

Zusätzlich müsstest du noch die Klasse bzw. den Inhalt davon ersetzen (es gab 2-3 kleine Anpassungen (die Sortierung aus dem anderen Issue ist hier bereits korrigiert)): https://github.com/phoebusryan/rex4_custom_firedepartment/blob/master/classes/class.rex_firedepartment.inc.php

Wenn du den neu angelegten Artikel dann aufrufst, hast du eine Liste aller Einsätze aus 2016. Das Jahr kannst du hier ändern: https://github.com/phoebusryan/rex4_custom_firedepartment/blob/master/beispielmodul.txt#L10 (Am besten wäre es, im Module-Input ein Feld zu definieren und den Inhalt davon hier auszugeben, anstelle des fix definierten Jahres. Also so, dass man im Backend jedes Mal wenn man das Modul einfügt das Jahr festlegen kann.

Jedenfalls hast du damit eine Liste, wo du mit einem Klick auf die jeweilige Detailseite kommst. Dort wird aktuell ein simples Array ausgegeben: https://github.com/phoebusryan/rex4_custom_firedepartment/blob/master/beispielmodul.txt#L8

Diese Zeile kannst du ersetzen mit deiner gewünschten Detailansicht, wie du es ja glaube ich schon hast.

Ich hoffe, das hilft dir so mal weiter.


Noch was anderes: Klick doch bitte bei nachfolgendem Link rechts oben auf 'star' ... dann kriegst du Updates direkt mit. https://github.com/phoebusryan/rex4_custom_firedepartment

fw-thomas commented 8 years ago

habe gerade die änderungen eingetragen als ich mir den großen bericht ansehen wollte, sah ich das hier einsatz ausgabe

mfg thomas

phoebusryan commented 8 years ago

Das stimmt, habe ich auch geschrieben. Die Detailansicht hast du aber ja bereits fertig oder nicht?

Ansonsten kannst du diese Zeile: https://github.com/phoebusryan/rex4_custom_firedepartment/blob/master/beispielmodul.txt#L8 ... ersetzen mit einer Tabelle oder was auch immer du möchtest und die Werte mit $operation['place'] etc. ansprechen.

fw-thomas74 commented 8 years ago

Mit anderen worten , könnte ich in der Zeile #8 eine neue Tabelle wie in der Art der Übersichtliste mir basteln ?

phoebusryan commented 8 years ago

Ja, genau so meinte ich das.

fw-thomas74 commented 8 years ago

Das werde ich heute vormittag mal selber machen ....

fw-thomas commented 8 years ago

So diese Tabelle habe ich gerade gemacht .. die kann ich nun so in die Zeile#8 einfügen?


<table width="516">
  <tbody>
    <tr></tr>
  </tbody>
  <tbody>
    <tr>
      <td height="52" colspan="2" align="center"><h1><em><strong>Einsatzbericht</strong></em></h1></td>
    </tr>
    <tr>
      <td width="190">Einsatzart:</td>
      <td width="314"><?=$operation['config_alert_id'];?></td>
    </tr>
    <tr>
      <td>Kurzbericht:</td>
      <td><?=$operation['report_short'];?></td>
    </tr>
    <tr>
      <td>Einsatzort:</td>
      <td><?=$operation['place'];?></td>
    </tr>
    <tr>
      <td>Alarmierung:</td>
      <td><?=$operation['start_date'];?></td>
    </tr>
    <tr>
      <td>Einsatzende:</td>
      <td><?=$operation['end_date'];?></td>
    </tr>
    <tr>
      <td>Fahrzeuge am Einsatzort:</td>
      <td><?=$operation['config_verhicle_ids'];?></td>
    </tr>
    <tr>
      <td>alarmierte Einheiten:</td>
      <td><?=$operation['config_unit_ids'];?></td>
    </tr>
  </tbody>
  <tbody>
    <tr>
      <td colspan="2"><p><strong>Einsatzbericht: </strong></p>
        <p>
          <?=$operation['report_long'];?>
        </p></td>
    </tr>
  </tbody>
  <tbody>
  </tbody>

phoebusryan commented 8 years ago

Grundsätzlich schon, jedoch sind da noch einige Fehler drin. Ersetze mal Zeile 8 mit nachfolgendem Code:

?>
<table>
  <tbody>
    <tr>
      <td colspan="2" align="center"><h1><em><strong>Einsatzbericht</strong></em></h1></td>
    </tr>
    <tr>
      <td>Einsatzart:</td>
      <td><?=$operation['alert'];?></td>
    </tr>
    <tr>
      <td>Kurzbericht:</td>
      <td><?=$operation['report_short'];?></td>
    </tr>
    <tr>
      <td>Einsatzort:</td>
      <td><?=$operation['place'];?></td>
    </tr>
    <tr>
      <td>Alarmierung:</td>
      <td><?=$operation['start_date'];?></td>
    </tr>
    <tr>
      <td>Einsatzende:</td>
      <td><?=$operation['end_date'];?></td>
    </tr>
    <tr>
      <td>Fahrzeuge am Einsatzort:</td>
      <td><?=implode('<br>', $operation['vehicles']);?></td>
    </tr>
    <tr>
      <td>alarmierte Einheiten:</td>
      <td><?=implode('<br>', $operation['units']);?></td>
    </tr>
  </tbody>
  <tbody>
    <tr>
      <td colspan="2">
        <p><strong>Einsatzbericht: </strong></p>
        <p>
          <?=$operation['report_long'];?>
        </p>
      </td>
    </tr>
  </tbody>
</table>
<?php

Es ist zwar ungetestet aber sollte gehen.

fw-thomas commented 8 years ago

das Klappt ...

nun die Bilder werden nicht angezeigt ..

und da muss du leider ja, ein zurück Button oder schriftzug fehlt

phoebusryan commented 8 years ago

Der Zurückbutton ist easy. Kann ich dir gleich noch einfügen. Wo sollen die Bilder hin?

fw-thomas74 commented 8 years ago

Das Bild unterhalb des Berichts

fw-thomas74 commented 8 years ago

Zu welcher stelle würde man wieder gelangen, wenn man vom großen Bericht auf zurück klickt ?

phoebusryan commented 8 years ago

In die Übersicht. Also da wo man herkommt. Ich habe einen solchen Link (ungetestet) und die Bilder mal eingebunden:

?>
<table>
  <tbody>
    <tr>
      <td colspan="2" align="center"><h1><em><strong>Einsatzbericht</strong></em></h1> <a href="<?=rex_getUrl(REX_ARTICLE_ID, REX_CLANG_ID);?>">zurück</a></td>
    </tr>
    <tr>
      <td>Einsatzart:</td>
      <td><?=$operation['alert'];?></td>
    </tr>
    <tr>
      <td>Kurzbericht:</td>
      <td><?=$operation['report_short'];?></td>
    </tr>
    <tr>
      <td>Einsatzort:</td>
      <td><?=$operation['place'];?></td>
    </tr>
    <tr>
      <td>Alarmierung:</td>
      <td><?=$operation['start_date'];?></td>
    </tr>
    <tr>
      <td>Einsatzende:</td>
      <td><?=$operation['end_date'];?></td>
    </tr>
    <tr>
      <td>Fahrzeuge am Einsatzort:</td>
      <td><?=implode('<br>', $operation['vehicles']);?></td>
    </tr>
    <tr>
      <td>alarmierte Einheiten:</td>
      <td><?=implode('<br>', $operation['units']);?></td>
    </tr>
  </tbody>
  <tbody>
    <tr>
      <td colspan="2">
        <p><strong>Einsatzbericht: </strong></p>
        <p>
          <?=$operation['report_long'];?>
        </p>
      </td>
    </tr>
  </tbody>
  <tbody>
    <tr>
      <td colspan="2">
        <p><strong>Bilder: </strong></p>
        <p>
          <?php
            foreach ($operation['images'] as $img) {
              ?>
              <img src="files/'.$img.'" alt="">
              <?php
            }
          ?>
        </p>
      </td>
    </tr>
  </tbody>
</table>
<?php
fw-thomas commented 8 years ago

kleines Feedback ..

das Zurück geht schon mal .. Tabelle Bilder ist auch eingerichtet .. aber es werden keine angezeigt wenn welche vorhanden sind

phoebusryan commented 8 years ago

Das liegt vermutlich am Pfad. Kannst du mir mal einen Link zur Seite geben?

fw-thomas commented 8 years ago

http://feuerwehr-schortens.de/index.php?article_id=399

phoebusryan commented 8 years ago

Oh. Es liegt nicht am Pfad. In der foreach, ersetze folgende Zeile:

<img src="files/'.$img.'" alt="">

durch

<img src="files/<?=$img;?>" alt="">

fw-thomas commented 8 years ago

Okay .. hab es gemacht ..

soweit ist nun alles super ..

Es gibt keiner Möglichkeit, das man Miniformat als Bilder hat und beim Anklicken diese Groß werden .. wie bei der Gallerie .. so muss ich alle Bilder kleiner machen ..

http://feuerwehr-schortens.de/index.php?article_id=399&oid=13

phoebusryan commented 8 years ago

Wo ist auf der Seite eine Galerie?

fw-thomas commented 8 years ago

die Bilder werden zu groß dagestellt ...

idee war das sie erst kleiner angezeigt werden .. wenn es geht .. und wenn man auf die minibilder drauf geht, dann werden sie 800*600 groß

phoebusryan commented 8 years ago

Dann ersetze die obere Zeile mit der hier: <a href="files/<?=$img;?>" target="_blank"><img src="index.php?rex_img_type=rex_mediabutton_preview&rex_img_file=<?=$img;?>" alt=""></a>

Ist auch ungetestet aber sollte funktionieren. Das macht dir einfach ein Thumbnail und öffnet das Bild bei Klick in einem neuen Fenster in Originalgrösse.

fw-thomas commented 8 years ago

schau mal http://feuerwehr-schortens.de/index.php?article_id=399&oid=12

phoebusryan commented 8 years ago

Ja, genau so habe ich es ja geschrieben. Für alles andere brauchst du eine Lightbox (Fancybox, Featherlight oder irgend sowas) ... simpel einzubauen mit minimal HTML-Kenntnissen.

z.B. Featherlight: https://github.com/noelboss/featherlight/#installation