mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-12 12:33:26 +00:00
add print caption
This commit is contained in:
@@ -25,6 +25,7 @@ class PDF
|
|||||||
const LAYOUT_PREVIEWCAPTIONTDM = 'previewCaptionTdm';
|
const LAYOUT_PREVIEWCAPTIONTDM = 'previewCaptionTdm';
|
||||||
const LAYOUT_THUMBNAILLIST = 'thumbnailList';
|
const LAYOUT_THUMBNAILLIST = 'thumbnailList';
|
||||||
const LAYOUT_THUMBNAILGRID = 'thumbnailGrid';
|
const LAYOUT_THUMBNAILGRID = 'thumbnailGrid';
|
||||||
|
const LAYOUT_CAPTION = 'caption';
|
||||||
|
|
||||||
public function __construct(Application $app, array $records, $layout)
|
public function __construct(Application $app, array $records, $layout)
|
||||||
{
|
{
|
||||||
@@ -73,6 +74,8 @@ class PDF
|
|||||||
continue 2;
|
continue 2;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case self::LAYOUT_CAPTION:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$record->setNumber(count($list) + 1);
|
$record->setNumber(count($list) + 1);
|
||||||
@@ -106,6 +109,9 @@ class PDF
|
|||||||
case self::LAYOUT_THUMBNAILGRID:
|
case self::LAYOUT_THUMBNAILGRID:
|
||||||
$this->print_thumbnailGrid();
|
$this->print_thumbnailGrid();
|
||||||
break;
|
break;
|
||||||
|
case self::LAYOUT_CAPTION:
|
||||||
|
$this->print_caption();
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
@@ -315,6 +321,67 @@ class PDF
|
|||||||
$this->pdf->SetLeftMargin($lmargin);
|
$this->pdf->SetLeftMargin($lmargin);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function print_caption()
|
||||||
|
{
|
||||||
|
$this->pdf->AddPage();
|
||||||
|
$oldMargins = $this->pdf->getMargins();
|
||||||
|
|
||||||
|
$lmargin = $oldMargins['left'];
|
||||||
|
$rmargin = $oldMargins['right'];
|
||||||
|
|
||||||
|
foreach ($this->records as $rec) {
|
||||||
|
$title = "record : " . $rec->get_title();
|
||||||
|
|
||||||
|
$y = $this->pdf->GetY();
|
||||||
|
if($this->pdf->getPageHeight() - $y < 20){ // height of the footer is 15
|
||||||
|
$this->pdf->AddPage();
|
||||||
|
$y = $oldMargins['top'];
|
||||||
|
}
|
||||||
|
|
||||||
|
$t = \phrasea::bas_labels($rec->getBaseId(), $this->app);
|
||||||
|
$this->pdf->SetFont(PhraseaPDF::FONT, '', 10);
|
||||||
|
$this->pdf->SetFillColor(220, 220, 220);
|
||||||
|
$this->pdf->SetLeftMargin($lmargin);
|
||||||
|
$this->pdf->SetRightMargin($rmargin);
|
||||||
|
$this->pdf->SetX($lmargin);
|
||||||
|
$this->pdf->SetY($y);
|
||||||
|
|
||||||
|
$this->pdf->out = false;
|
||||||
|
$this->pdf->MultiCell(140, 4, $title, "LTR", "L", 1);
|
||||||
|
$y2 = $this->pdf->GetY();
|
||||||
|
$h = $y2 - $y;
|
||||||
|
$this->pdf->out = true;
|
||||||
|
$this->pdf->SetX($lmargin);
|
||||||
|
$this->pdf->SetY($y);
|
||||||
|
$this->pdf->Cell(0, $h, "", "LTR", 1, "R", 1);
|
||||||
|
$this->pdf->SetX($lmargin);
|
||||||
|
$this->pdf->SetY($y);
|
||||||
|
$this->pdf->Cell(0, 4, $t, "", 1, "R");
|
||||||
|
$this->pdf->SetX($lmargin);
|
||||||
|
$this->pdf->SetY($y);
|
||||||
|
$this->pdf->MultiCell(140, 4, $title, "", "L");
|
||||||
|
$this->pdf->SetX($lmargin);
|
||||||
|
$this->pdf->SetY($y = $y2);
|
||||||
|
$this->pdf->SetY($y + 2);
|
||||||
|
|
||||||
|
foreach ($rec->get_caption()->get_fields() as $field) {
|
||||||
|
$this->pdf->SetFont(PhraseaPDF::FONT, 'B', 12);
|
||||||
|
$this->pdf->Write(5, $field->get_name() . " : ");
|
||||||
|
|
||||||
|
$this->pdf->SetFont(PhraseaPDF::FONT, '', 12);
|
||||||
|
$t = str_replace(
|
||||||
|
["<", ">", "&"]
|
||||||
|
, ["<", ">", "&"]
|
||||||
|
, strip_tags($field->get_serialized_values())
|
||||||
|
);
|
||||||
|
$this->pdf->Write(5, $t);
|
||||||
|
|
||||||
|
$this->pdf->Write(6, "\n");
|
||||||
|
}
|
||||||
|
$this->pdf->SetY($this->pdf->GetY() + 10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected function print_preview($withtdm, $write_caption)
|
protected function print_preview($withtdm, $write_caption)
|
||||||
{
|
{
|
||||||
if ($withtdm === true) {
|
if ($withtdm === true) {
|
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:jms="urn:jms:translation" version="1.2">
|
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:jms="urn:jms:translation" version="1.2">
|
||||||
<file date="2018-04-16T07:02:10Z" source-language="en" target-language="de" datatype="plaintext" original="not.available">
|
<file date="2018-05-23T10:45:26Z" source-language="en" target-language="de" datatype="plaintext" original="not.available">
|
||||||
<header>
|
<header>
|
||||||
<tool tool-id="JMSTranslationBundle" tool-name="JMSTranslationBundle" tool-version="1.1.0-DEV"/>
|
<tool tool-id="JMSTranslationBundle" tool-name="JMSTranslationBundle" tool-version="1.1.0-DEV"/>
|
||||||
<note>The source node in most cases contains the sample message as written by the developer. If it looks like a dot-delimitted string such as "form.label.firstname", then the developer has not provided a default message.</note>
|
<note>The source node in most cases contains the sample message as written by the developer. If it looks like a dot-delimitted string such as "form.label.firstname", then the developer has not provided a default message.</note>
|
||||||
@@ -10,8 +10,8 @@
|
|||||||
<source>Please provide the same passwords.</source>
|
<source>Please provide the same passwords.</source>
|
||||||
<target state="translated">Bitte geben Sie diesselbe Passwörter ein.</target>
|
<target state="translated">Bitte geben Sie diesselbe Passwörter ein.</target>
|
||||||
<jms:reference-file line="44">Form/Login/PhraseaRecoverPasswordForm.php</jms:reference-file>
|
<jms:reference-file line="44">Form/Login/PhraseaRecoverPasswordForm.php</jms:reference-file>
|
||||||
<jms:reference-file line="49">Form/Login/PhraseaRegisterForm.php</jms:reference-file>
|
|
||||||
<jms:reference-file line="36">Form/Login/PhraseaRenewPasswordForm.php</jms:reference-file>
|
<jms:reference-file line="36">Form/Login/PhraseaRenewPasswordForm.php</jms:reference-file>
|
||||||
|
<jms:reference-file line="49">Form/Login/PhraseaRegisterForm.php</jms:reference-file>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="90b8c9717bb7ed061dbf20fe1986c8b8593d43d4" resname="The token provided is not valid anymore" approved="yes">
|
<trans-unit id="90b8c9717bb7ed061dbf20fe1986c8b8593d43d4" resname="The token provided is not valid anymore" approved="yes">
|
||||||
<source>The token provided is not valid anymore</source>
|
<source>The token provided is not valid anymore</source>
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:jms="urn:jms:translation" version="1.2">
|
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:jms="urn:jms:translation" version="1.2">
|
||||||
<file date="2018-04-16T07:02:50Z" source-language="en" target-language="en" datatype="plaintext" original="not.available">
|
<file date="2018-05-23T10:47:03Z" source-language="en" target-language="en" datatype="plaintext" original="not.available">
|
||||||
<header>
|
<header>
|
||||||
<tool tool-id="JMSTranslationBundle" tool-name="JMSTranslationBundle" tool-version="1.1.0-DEV"/>
|
<tool tool-id="JMSTranslationBundle" tool-name="JMSTranslationBundle" tool-version="1.1.0-DEV"/>
|
||||||
<note>The source node in most cases contains the sample message as written by the developer. If it looks like a dot-delimitted string such as "form.label.firstname", then the developer has not provided a default message.</note>
|
<note>The source node in most cases contains the sample message as written by the developer. If it looks like a dot-delimitted string such as "form.label.firstname", then the developer has not provided a default message.</note>
|
||||||
@@ -10,8 +10,8 @@
|
|||||||
<source>Please provide the same passwords.</source>
|
<source>Please provide the same passwords.</source>
|
||||||
<target state="translated">Please provide the same passwords.</target>
|
<target state="translated">Please provide the same passwords.</target>
|
||||||
<jms:reference-file line="44">Form/Login/PhraseaRecoverPasswordForm.php</jms:reference-file>
|
<jms:reference-file line="44">Form/Login/PhraseaRecoverPasswordForm.php</jms:reference-file>
|
||||||
<jms:reference-file line="49">Form/Login/PhraseaRegisterForm.php</jms:reference-file>
|
|
||||||
<jms:reference-file line="36">Form/Login/PhraseaRenewPasswordForm.php</jms:reference-file>
|
<jms:reference-file line="36">Form/Login/PhraseaRenewPasswordForm.php</jms:reference-file>
|
||||||
|
<jms:reference-file line="49">Form/Login/PhraseaRegisterForm.php</jms:reference-file>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="90b8c9717bb7ed061dbf20fe1986c8b8593d43d4" resname="The token provided is not valid anymore" approved="yes">
|
<trans-unit id="90b8c9717bb7ed061dbf20fe1986c8b8593d43d4" resname="The token provided is not valid anymore" approved="yes">
|
||||||
<source>The token provided is not valid anymore</source>
|
<source>The token provided is not valid anymore</source>
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:jms="urn:jms:translation" version="1.2">
|
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:jms="urn:jms:translation" version="1.2">
|
||||||
<file date="2018-04-16T07:03:37Z" source-language="en" target-language="fr" datatype="plaintext" original="not.available">
|
<file date="2018-05-23T10:48:47Z" source-language="en" target-language="fr" datatype="plaintext" original="not.available">
|
||||||
<header>
|
<header>
|
||||||
<tool tool-id="JMSTranslationBundle" tool-name="JMSTranslationBundle" tool-version="1.1.0-DEV"/>
|
<tool tool-id="JMSTranslationBundle" tool-name="JMSTranslationBundle" tool-version="1.1.0-DEV"/>
|
||||||
<note>The source node in most cases contains the sample message as written by the developer. If it looks like a dot-delimitted string such as "form.label.firstname", then the developer has not provided a default message.</note>
|
<note>The source node in most cases contains the sample message as written by the developer. If it looks like a dot-delimitted string such as "form.label.firstname", then the developer has not provided a default message.</note>
|
||||||
@@ -10,8 +10,8 @@
|
|||||||
<source>Please provide the same passwords.</source>
|
<source>Please provide the same passwords.</source>
|
||||||
<target state="translated">Veuillez indiquer des mots de passe identiques.</target>
|
<target state="translated">Veuillez indiquer des mots de passe identiques.</target>
|
||||||
<jms:reference-file line="44">Form/Login/PhraseaRecoverPasswordForm.php</jms:reference-file>
|
<jms:reference-file line="44">Form/Login/PhraseaRecoverPasswordForm.php</jms:reference-file>
|
||||||
<jms:reference-file line="49">Form/Login/PhraseaRegisterForm.php</jms:reference-file>
|
|
||||||
<jms:reference-file line="36">Form/Login/PhraseaRenewPasswordForm.php</jms:reference-file>
|
<jms:reference-file line="36">Form/Login/PhraseaRenewPasswordForm.php</jms:reference-file>
|
||||||
|
<jms:reference-file line="49">Form/Login/PhraseaRegisterForm.php</jms:reference-file>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="90b8c9717bb7ed061dbf20fe1986c8b8593d43d4" resname="The token provided is not valid anymore" approved="yes">
|
<trans-unit id="90b8c9717bb7ed061dbf20fe1986c8b8593d43d4" resname="The token provided is not valid anymore" approved="yes">
|
||||||
<source>The token provided is not valid anymore</source>
|
<source>The token provided is not valid anymore</source>
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:jms="urn:jms:translation" version="1.2">
|
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:jms="urn:jms:translation" version="1.2">
|
||||||
<file date="2018-04-16T07:04:28Z" source-language="en" target-language="nl" datatype="plaintext" original="not.available">
|
<file date="2018-05-23T10:50:41Z" source-language="en" target-language="nl" datatype="plaintext" original="not.available">
|
||||||
<header>
|
<header>
|
||||||
<tool tool-id="JMSTranslationBundle" tool-name="JMSTranslationBundle" tool-version="1.1.0-DEV"/>
|
<tool tool-id="JMSTranslationBundle" tool-name="JMSTranslationBundle" tool-version="1.1.0-DEV"/>
|
||||||
<note>The source node in most cases contains the sample message as written by the developer. If it looks like a dot-delimitted string such as "form.label.firstname", then the developer has not provided a default message.</note>
|
<note>The source node in most cases contains the sample message as written by the developer. If it looks like a dot-delimitted string such as "form.label.firstname", then the developer has not provided a default message.</note>
|
||||||
@@ -10,8 +10,8 @@
|
|||||||
<source>Please provide the same passwords.</source>
|
<source>Please provide the same passwords.</source>
|
||||||
<target state="new">Please provide the same passwords.</target>
|
<target state="new">Please provide the same passwords.</target>
|
||||||
<jms:reference-file line="44">Form/Login/PhraseaRecoverPasswordForm.php</jms:reference-file>
|
<jms:reference-file line="44">Form/Login/PhraseaRecoverPasswordForm.php</jms:reference-file>
|
||||||
<jms:reference-file line="49">Form/Login/PhraseaRegisterForm.php</jms:reference-file>
|
|
||||||
<jms:reference-file line="36">Form/Login/PhraseaRenewPasswordForm.php</jms:reference-file>
|
<jms:reference-file line="36">Form/Login/PhraseaRenewPasswordForm.php</jms:reference-file>
|
||||||
|
<jms:reference-file line="49">Form/Login/PhraseaRegisterForm.php</jms:reference-file>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="90b8c9717bb7ed061dbf20fe1986c8b8593d43d4" resname="The token provided is not valid anymore">
|
<trans-unit id="90b8c9717bb7ed061dbf20fe1986c8b8593d43d4" resname="The token provided is not valid anymore">
|
||||||
<source>The token provided is not valid anymore</source>
|
<source>The token provided is not valid anymore</source>
|
||||||
|
@@ -18,6 +18,10 @@
|
|||||||
<input type="radio" name="lay" value="previewCaptionTdm" id="RADI_PRE_TDM" />
|
<input type="radio" name="lay" value="previewCaptionTdm" id="RADI_PRE_TDM" />
|
||||||
{{ 'print:: image de choix et description avec planche contact' | trans }}
|
{{ 'print:: image de choix et description avec planche contact' | trans }}
|
||||||
</label>
|
</label>
|
||||||
|
<label for="RADI_CAP" class="radio">
|
||||||
|
<input type="radio" name="lay" value="caption" id="RADI_CAP" />
|
||||||
|
{{ 'print:: description' | trans }}
|
||||||
|
</label>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if printer.get_count_thumbnail() > 0 %}
|
{% if printer.get_count_thumbnail() > 0 %}
|
||||||
|
Reference in New Issue
Block a user