remove unnecessary spaces
[kivitendo-erp.git] / kiviletter.sty
index 6450140..e164249 100644 (file)
@@ -1,6 +1,15 @@
 \NeedsTeXFormat{LaTeX2e}
 \ProvidesPackage{kiviletter}[2019/10/10 Letter Layouts for Kivitendo]
 
+\newif\if@kivi@infobox
+\DeclareOption{reffields}{\@kivi@infoboxfalse}
+\DeclareOption{infobox}{\@kivi@infoboxtrue}
+\@kivi@infoboxtrue
+
+
+\ProcessOptions\relax
+
+
 \RequirePackage{expl3}
 \RequirePackage{iftex}
 % Schriftart, Eingabelayout der Tastatur
@@ -28,7 +37,7 @@
 
 \usepackage{geometry}
 
-\geometry{left=\useplength{toaddrhpos}, right=\useplength{toaddrhpos}}
+\geometry{a4paper,left=\useplength{toaddrhpos}, right=\useplength{toaddrhpos}}
 
 \ExplSyntaxOn
 %Scratch variables
@@ -56,9 +65,9 @@ contents={\usebox\shippingAddressBox}
 \dim_new:N \g_kivi_tab_id_dim
 \dim_gset:Nn \g_kivi_tab_id_dim {4em}
 \dim_new:N \g_kivi_tab_num_dim
-\dim_gset:Nn \g_kivi_tab_num_dim {4em}
+\dim_gset:Nn \g_kivi_tab_num_dim {5em}
 \dim_new:N \g_kivi_tab_price_dim
-\dim_gset:Nn \g_kivi_tab_price_dim {4em}
+\dim_gset:Nn \g_kivi_tab_price_dim {5em}
 \dim_new:N \g_kivi_tab_desc_dim
 
 \dim_new:N \g_kivi_tabcolsep_dim
@@ -67,7 +76,7 @@ contents={\usebox\shippingAddressBox}
        \dim_gset:Nn \g_kivi_tab_desc_dim {\textwidth-\g_kivi_tab_pos_dim -\g_kivi_tab_id_dim-\g_kivi_tab_num_dim - 2\g_kivi_tab_price_dim - 10\g_kivi_tabcolsep_dim}
 }
 
-\newcolumntype{P}{>{\arraybackslash}p{\g_kivi_tab_price_dim}}
+\newcolumntype{P}{>{\raggedleft\arraybackslash}p{\g_kivi_tab_price_dim}}
 
 \newenvironment{PricingTabular}{
        \begingroup
@@ -76,7 +85,7 @@ contents={\usebox\shippingAddressBox}
        \longtable{@{}p{\g_kivi_tab_pos_dim}p{\g_kivi_tab_id_dim}p{\g_kivi_tab_desc_dim}>{\raggedleft\arraybackslash}p{\g_kivi_tab_num_dim}*2{P<{\,\currency}}@{}}
        % Tabellenkopf
        \toprule
-       \bfseries\position & \bfseries\artikelnummer & \bfseries\bezeichnung & \bfseries\menge &\multicolumn{1}{P}{\bfseries\einzelpreis}&\multicolumn{1}{P}{\bfseries\gesamtpreis}\\
+       \bfseries\position & \bfseries\artikelnummer & \bfseries\bezeichnung & \bfseries\menge &\multicolumn{1}{P}{\bfseries\einzelpreis}&\multicolumn{1}{P@{}}{\bfseries\gesamtpreis}\\
        \midrule
        \endhead
        \midrule
@@ -89,27 +98,36 @@ contents={\usebox\shippingAddressBox}
 
 \ExplSyntaxOff
 
-
+\if@kivi@infobox
+\newkomavar{locationtitle}
 \setkomavar{location}{
        \begin{flushright}
                \bfseries
                \LARGE
-               \usekomavar{title}
-%              \angebot
-%              \par
-%              \medskip
-%              \large\nr ~<%quonumber%>
+               \usekomavar{locationtitle}
        \end{flushright}
 
        \medskip
        \begin{tabularx}{\linewidth}{@{}l<{:}>{\raggedright\arraybackslash}X@{}}
-               \datum&\usekomavar{date}\\%%<%transdate%>\\
-               \kundennummer&\usekomavar{customer}\\%<%customernumber%>\\
-               \ansprechpartner&\usekomavar{fromname}\\%<%employee_name%>\\
-               \textTelefon&\usekomavar{fromphone}\\%<%employee_tel%>\\
-               \textEmail&\usekomavar{fromemail}\\%<%employee_email%>
+               \datum&\usekomavar{date}\\
+               \kundennummer&\usekomavar{customer}\\
+               \ansprechpartner&\usekomavar{fromname}\\
+               \ifkomavarempty{fromphone}{}{\textTelefon&\usekomavar{fromphone}\\}
+               \ifkomavarempty{fromemail}{}{\textEmail&\usekomavar{fromemail}\\}
        \end{tabularx}
 }
+\removereffields
+
+\ExplSyntaxOn
+\AtBeginLetter{
+       \ifkomavarempty{title}{}{
+               \exp_args:Nno\setkomavar{locationtitle}{\scr@title@var}
+               \setkomavar{title}{}
+       }
+}
+\ExplSyntaxOff
+\fi
+
 
 
 \renewcommand*{\raggedsignature}{\raggedright}