/**
  * @return string
  */
 public function getDiffHTMLForODS()
 {
     if ($this->zeile_von !== null && $this->zeile_bis !== null) {
         $str_pre = "<div class='ae_absatz_header'>Im Absatz von Zeile " . $this->zeile_von . " bis " . $this->zeile_bis . "</div>";
     } else {
         $str_pre = "";
     }
     $str = DiffUtils::renderBBCodeDiff2HTML($this->str_bbcode_vorher, $this->str_bbcode_nachher, false, 0, "", false);
     return $str_pre . "<div>" . $str . "</div>";
 }
 public function run($args)
 {
     foreach ($GLOBALS["TESTS"] as $test) {
         /** @var Antrag $antrag */
         $antrag = Antrag::model()->findByPk($test["antrag_id"]);
         $diffs = array();
         /** @var array|AntragAbsatz[] $pars */
         $pars = $antrag->getParagraphs();
         $diffs[$test["absatz_nr"]] = DiffUtils::renderBBCodeDiff2HTML($pars[$test["absatz_nr"]]->str_bbcode, $test["text_neu"], false, 0, "", true, true);
         var_dump($diffs);
     }
 }
Esempio n. 3
0
        if (!isset($aes2absaetze[IntVal($ant->id)])) {
            $aes2absaetze[IntVal($ant->id)] = array();
            $aes[IntVal($ant->id)] = $ant;
        }
        $aes2absaetze[IntVal($ant->id)][] = IntVal($i);
        $par = $ant->getDiffParagraphs();
        if ($par[$i] != "") {
            $ae_link = "<a href=\"" . CHtml::encode($this->createUrl("aenderungsantrag/anzeige", array("antrag_id" => $antrag->id, "aenderungsantrag_id" => $ant->id))) . "\" target=\"_blank\">" . CHtml::encode($ant->revision_name) . "</a>";
            $antragstellerInnen = $ant->getAntragstellerInnen();
            $x = array();
            foreach ($antragstellerInnen as $a) {
                $x[] = $a->name;
            }
            $von = implode(", ", $x);
            echo "<label><input type='radio' name='absatz_typ[{$i}]' value='" . $ant->id . "'> " . $ae_link . " (von " . CHtml::encode($von) . ")</label>";
            $full_texts .= "<blockquote class='aenderung ae_" . $ant->id . "'>" . DiffUtils::renderBBCodeDiff2HTML($abs->str_bbcode, $par[$i]) . "</blockquote>";
        }
    }
    echo "<label><input type='radio' name='absatz_typ[{$i}]' value='neu'> Neuer Text</label><br>";
    echo "<blockquote class='original'>" . $abs->str_html_plain . "</blockquote>" . $full_texts;
    echo "<div><textarea class='neu_text' name='neu_text[{$i}]' id='neu_text_{$i}' style='width: 550px; height: 200px;'>" . CHtml::encode($abs->str_bbcode) . "</textarea></div>";
    echo "</div>";
}
echo "<h3>Begründung</h3><div class='absatz_selector_holder content absatz_begruendung'>";
/** @var AntragAbsatz $abs */
$full_texts = "";
echo "<label><input type='radio' name='begruendung_typ' value='original' checked> Original beibehalten</label>";
echo "<label><input type='radio' name='begruendung_typ' value='neu'> Neuer Text</label><br>";
echo "<blockquote class='original'>" . HtmlBBcodeUtils::bbcode2html($antrag->begruendung) . "</blockquote>" . $full_texts;
echo "<div><textarea class='neu_text' name='neu_begruendung' id='neu_begruendung' style='width: 550px; height: 200px;'>" . CHtml::encode($antrag->begruendung) . "</textarea></div>";
echo "</div>";
Esempio n. 4
0
		<div style="text-align: center; display: none;" id="antrags_diff_closer">
			<a href="#"
			   onClick="$('#antrags_diff_holder').hide(); $('#antrags_diff_opener').show(); $('#antrags_diff_closer').hide(); return false;"><i
					class="icon-up-open"></i> Antragstext mit Änderungen anzeigen</a>
		</div>
		<div id="antrags_diff_holder" class="content" style="display: none;">
			<?php 
$abs_alt = $aenderungsantrag->antrag->getParagraphs();
$abs_neu = json_decode($aenderungsantrag->text_neu);
$letztes_leer = false;
foreach ($abs_alt as $i => $abs) {
    if (isset($abs_neu[$i]) && $abs_neu[$i] != "") {
        $letztes_leer = false;
        echo "<div class='row-fluid'>";
        /** @var AntragAbsatz $abs */
        echo DiffUtils::renderBBCodeDiff2HTML($abs->str_bbcode, $abs_neu[$i]);
        echo "</div>\n";
    } else {
        if (!$letztes_leer) {
            $letztes_leer = true;
            echo "<div class='absatz_ueberspringen'>.<br>.<br>.</div>";
        }
    }
}
?>
		</div>
	</div>

	<div class="begruendungs_text_holder">
		<h3>Begründung</h3>
Esempio n. 5
0
        echo "checked";
    }
    echo "> Ändern<br></label>\n\t\t\t<h4>Neue Fassung</h4>\n\t\t\t<textarea id='neu_text_{$i}' name='neu_text[{$i}]' style='width: 550px; height: 200px;'>";
    $str_neu = $text_pre && $text_pre[$i] != "" ? $text_pre[$i] : $abs->str_bbcode;
    echo CHtml::encode($str_neu) . "</textarea>";
    echo "<a href='#' class='ae_verwerfen' style='float: right;'>Unverändert lassen</a>";
    echo "<div style='text-align: center;'>";
    $this->widget('bootstrap.widgets.TbButton', array('type' => 'success', 'icon' => 'chevron-right white', 'label' => 'Weiter', 'url' => '#begruendungs_holder'));
    echo "</div></div>\n";
    echo "<div class='antragstext_diff antrags_text_holder_keinenummern absatz_text' ";
    if (!$text_pre || $text_pre[$i] == "") {
        echo "style='display: none;'";
    }
    echo ">";
    if ($text_pre && $text_pre[$i] != "") {
        echo DiffUtils::renderBBCodeDiff2HTML($abs->str_bbcode, $text_pre[$i]);
    } else {
        echo $abs->str_html_plain;
    }
    echo "</div>";
    echo "</div>";
}
?>
</div>

<div id="ae_metatext_holder" style="display: none;">
	<h3><label for="ae_metatext"><?php 
echo $sprache->get("Redaktioneller Antrag");
?>
</label></h3>
        }
        $html .= "<br><br>";
    }
    $letztes_leer = true;
    foreach ($abs_alt as $i => $abs) {
        if (isset($abs_neu[$i]) && $abs_neu[$i] != "") {
            if ($letztes_leer) {
                $letztes_leer = false;
                preg_match_all("/<span class='zeilennummer'>([0-9]+)<\\/span>/siu", $abs->str_html, $matches);
                $zeile_von = isset($matches[1][0]) ? IntVal($matches[1][0]) : "????";
                $zeile_bis = isset($matches[1]) ? $matches[1][count($matches[1]) - 1] : "???";
                $html .= "Im Absatz von Zeile {$zeile_von} - {$zeile_bis}:";
            }
            $html .= "<div class='row-fluid' style=\"line-height: 18px;\">";
            /** @var AntragAbsatz $abs */
            $str = DiffUtils::renderBBCodeDiff2HTML($abs->str_bbcode, $abs_neu[$i], true);
            if (function_exists("normalizer_normalize")) {
                $str = normalizer_normalize($str);
            }
            $replaces = array("<ins> " => " <span style=\"color: green; text-decoration: underline; font-weight: bold;\">", "<ins>" => "<span style=\"color: green; text-decoration: underline; font-weight: bold;\">", "</ins>" => "</span>", " </ins>" => "</span> ", "<del>" => "<span style=\"color: red; text-decoration: line-through;\">", "</del>" => "</span>");
            $html .= str_replace(array_keys($replaces), array_values($replaces), $str);
            $html .= "</div>\n";
        }
    }
    $pdf->writeHTML($html);
} else {
    $linenr = 1;
    $absae = $aenderungsantrag->getAntragstextParagraphs_flat();
    foreach ($absae as $i => $abs) {
        /** @var AntragAbsatz $abs */
        $text = $abs->str_html;
 /**
  *
  */
 public function actionAjaxCalcDiff()
 {
     if (!isset($_REQUEST["absaetze"])) {
         return;
     }
     $this->testeWartungsmodus();
     $antrag_id = IntVal($_REQUEST["antrag_id"]);
     /** @var Antrag $antrag */
     $antrag = Antrag::model()->findByPk($antrag_id);
     $diffs = array();
     /** @var array|AntragAbsatz[] $pars */
     $pars = $antrag->getParagraphs();
     foreach ($_REQUEST["absaetze"] as $absatznr => $text_neu) {
         $diffs[$absatznr] = DiffUtils::renderBBCodeDiff2HTML($pars[$absatznr]->str_bbcode, $text_neu);
     }
     $this->renderPartial('ajax_diff', array("diffs" => $diffs));
 }
Esempio n. 8
0
    ?>

			</div>

			<?php 
    foreach ($abs->aenderungsantraege as $ant) {
        $par = $ant->getDiffParagraphs();
        if ($par[$i] != "") {
            ?>
					<div
						class="absatz_text diff ae_<?php 
            echo $ant->id;
            ?>
" style="display: none; position: relative; border-right: solid 1px lightgray; margin-left: 0;">
						<?php 
            echo DiffUtils::renderBBCodeDiff2HTML($abs->str_bbcode, $par[$i], false, $this->veranstaltung->getEinstellungen()->zeilenlaenge);
            ?>
					</div>
				<?php 
        }
    }
    $this->renderPartial("anzeige_kommentare", array("antrag" => $antrag, "absatz_nr" => $abs->absatz_nr, "komm_del_link" => $komm_del_link, "js_protection" => $js_protection, "hiddens" => $hiddens, "kommentar_person" => $kommentar_person, "kommentare" => $abs->kommentare));
    ?>

		</div>
	<?php 
}
?>
</div>

<?php