lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [lmi] master 46788b8 119/156: Start implementing individua


From: Greg Chicares
Subject: [lmi-commits] [lmi] master 46788b8 119/156: Start implementing individual private placement illustration kind
Date: Tue, 30 Jan 2018 17:22:27 -0500 (EST)

branch: master
commit 46788b8b34c67e3f94e2432bd9de3f0468f550f6
Author: Vadim Zeitlin <address@hidden>
Commit: Vadim Zeitlin <address@hidden>

    Start implementing individual private placement illustration kind
    
    Create templates for its cover page and footer (also used on the cover
    page in this illustration).
---
 ledger_pdf_generator_wx.cpp            |  32 +++++++++-
 reg_d_individual_cover_page.mustache   | 109 +++++++++++++++++++++++++++++++++
 reg_d_individual_footer_lower.mustache |  19 ++++++
 reg_d_individual_footer_upper.mustache |   7 +++
 4 files changed, 165 insertions(+), 2 deletions(-)

diff --git a/ledger_pdf_generator_wx.cpp b/ledger_pdf_generator_wx.cpp
index cd889f3..ba0dd6e 100644
--- a/ledger_pdf_generator_wx.cpp
+++ b/ledger_pdf_generator_wx.cpp
@@ -2444,6 +2444,35 @@ class pdf_illustration_reg_d_group : public 
pdf_illustration
     }
 };
 
+// Private individual placement illustration.
+class pdf_illustration_reg_d_individual : public pdf_illustration
+{
+  public:
+    pdf_illustration_reg_d_individual
+        (Ledger const& ledger
+        ,fs::path const& output
+        )
+        :pdf_illustration(ledger, output)
+    {
+        // Define variables specific to this illustration.
+        add_abbreviated_variable("CorpName", 140);
+        add_abbreviated_variable("Insured1", 140);
+
+        // Add all the pages.
+        add<standard_page>("reg_d_individual_cover_page");
+    }
+
+    std::string get_upper_footer_template_name() const override
+    {
+        return "reg_d_individual_footer_upper";
+    }
+
+    std::string get_lower_footer_template_name() const override
+    {
+        return "reg_d_individual_footer_lower";
+    }
+};
+
 class ledger_pdf_generator_wx : public ledger_pdf_generator
 {
   public:
@@ -2481,8 +2510,7 @@ void ledger_pdf_generator_wx::write
             pdf_ill = std::make_unique<pdf_illustration_reg_d_group>(ledger, 
output);
             break;
         case mce_individual_private_placement:
-            // TODO
-            alarum() << "Illustrating ledger type '" << z << "' not 
implemented yet" << LMI_FLUSH;
+            pdf_ill = 
std::make_unique<pdf_illustration_reg_d_individual>(ledger, output);
             break;
         default:
             alarum() << "Unknown ledger type '" << z << "'." << LMI_FLUSH;
diff --git a/reg_d_individual_cover_page.mustache 
b/reg_d_individual_cover_page.mustache
new file mode 100644
index 0000000..3572152
--- /dev/null
+++ b/reg_d_individual_cover_page.mustache
@@ -0,0 +1,109 @@
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+
+<p align="center">
+<b>
+
+<font size="+3">
+{{PolicyMktgName}}
+</font>
+
+<br></br>
+<br></br>
+
+<font size="+2">
+Hypothetical Life Insurance Illustration
+</font>
+
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+
+<font size="+1">
+Prepared by: {{InsCoShortName}}
+
+<br></br>
+<br></br>
+
+Prepared for:
+{{^Composite}}
+    {{Insured1Abbrev140}}
+{{/Composite}}
+{{^Composite}}
+    {{CorpNameAbbrev140}}
+{{/Composite}}
+
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+
+Date Prepared: {{date_prepared}}
+
+</font>
+</b>
+</p>
+
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+<br></br>
+
+<font size="-1">
+
+<p>
+The purpose of this illustration is to show how hypothetical rates
+of return will affect policy account value. These hypothetical
+returns do not reflect past performance and are not predictive
+of future results. Actual results could be less than or greater
+than the hypothetical rates and in all likelihood will vary from
+year to year.
+</p>
+
+<p>
+<b>
+This material must be preceded or accompanied by the current
+Confidential Private Placement Memorandum for {{PolicyMktgName}}
+and the current prospectuses (or summary prospectuses,
+if available) and private placement memoranda
+for its underlying investment choices. Investors should
+carefully consider the investment objectives, risks,
+charges and expenses of the policy and its underlying investment
+choices. Please read the prospectuses and private placement
+memoranda carefully before investing or sending money.
+</b>
+</p>
+
+<p>
+{{PolicyMktgName}} &nbsp; {{IssuingCompanyFootnote}}
+</p>
+
+<p>
+Placement Agents: &nbsp; {{PlacementAgentFootnote}}
+</p>
+
+<p>
+{{SubsidiaryFootnote}}
+</p>
+
+<p>
+{{MarketingNameFootnote}}
+</p>
+
+<p>
+Compliance tracking number: {{>compliance_tracking_number}}
+</p>
+
+</font>
diff --git a/reg_d_individual_footer_lower.mustache 
b/reg_d_individual_footer_lower.mustache
new file mode 100644
index 0000000..bd8e6e2
--- /dev/null
+++ b/reg_d_individual_footer_lower.mustache
@@ -0,0 +1,19 @@
+<font size="-2">
+
+<table width="100%" cellspacing="0" cellpadding="0">
+    <tr>
+        <td colspan="3">&nbsp;</td>
+    </tr>
+    <tr>
+        <td>{{InsCoName}}</td>
+        <td align="center">System Version: {{LmiVersion}}</td>
+        <td align="right">Policy Form: {{PolicyForm}}</td>
+    </tr>
+    <tr>
+        <td>{{InsCoAddr}}</td>
+        <td>&nbsp;</td>
+        <td align="right">{{page_number}}</td>
+    </tr>
+</table>
+
+</font>
diff --git a/reg_d_individual_footer_upper.mustache 
b/reg_d_individual_footer_upper.mustache
new file mode 100644
index 0000000..a2e968e
--- /dev/null
+++ b/reg_d_individual_footer_upper.mustache
@@ -0,0 +1,7 @@
+<font size="-2">
+
+<p>
+This illustration is not complete unless all pages as noted below are included.
+</p>
+
+</font>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]