Browse Source

PRS DESKTOP - moving email utilities to correct area, added resources

Nick-PRSDigital@bitbucket.org 2 years ago
parent
commit
dfe95e6999

+ 2 - 114
prs.desktop/MainWindow.xaml.cs

@@ -1078,75 +1078,11 @@ namespace PRSDesktop
         {
             if (CurrentPanel == null)
                 return new List<ReportExportDefinition>() { new ReportExportDefinition("Email Report", PRSDesktop.Resources.email, ReportExportType.PDF,
-                            DoEmailReport)};
-            var model = CurrentPanel.DataModel(Selection.Selected);
-            var templates = new Client<DataModelTemplate>().Query(new Filter<DataModelTemplate>(x => x.Model).IsEqualTo(model.Name)
-                .And(x => x.Visible).IsEqualTo(true));
-
-            if (templates.Rows.Any())
-            {
-                List<ReportExportDefinition> list = new List<ReportExportDefinition>();
-                foreach (CoreRow row in templates.Rows)
-                {
-                    Action<DataModel, byte[]> action = new Action<DataModel, byte[]>((model, data) =>
-                    {
-                        DoEmailAction(model, data, row.Get<DataModelTemplate, string>(x => x.Name));
-                    });
-                    list.Add(new ReportExportDefinition("Email Report", CreateControl(row.Get<DataModelTemplate, string>(x => x.Name)), ReportExportType.PDF, action));
-                }
-                return list;
-            }
+                            EmailUtils.DoEmailReport)};
             else
-                return new List<ReportExportDefinition>() { new ReportExportDefinition("Email Report", PRSDesktop.Resources.email, ReportExportType.PDF,
-                            DoEmailReport)};
+                return EmailUtils.CreateTemplateDefinitions(CurrentPanel.DataModel(Selection.Selected));
         }
 
-        private ContentControl CreateControl(string caption)
-        {
-            Frame frame = new Frame();
-            frame.Padding = new Thickness(0);
-            frame.Margin = new Thickness(0);
-
-            Grid grid = new Grid();
-            grid.Margin = new Thickness(0);
-            grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(4, GridUnitType.Star) });
-            grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(1, GridUnitType.Star) });         
-
-            var img = GetImage(PRSDesktop.Resources.email);
-            img.SetValue(Grid.RowProperty, 0);
-            img.Margin = new Thickness(0);
-            grid.Children.Add(img);
-
-            var lbl = new System.Windows.Controls.Label();
-            lbl.Content = caption;
-            lbl.Margin = new Thickness(0);
-            lbl.HorizontalContentAlignment = System.Windows.HorizontalAlignment.Center;
-            lbl.SetValue(Grid.RowProperty, 1);
-            
-            grid.Children.Add(lbl);
-
-            frame.Content = grid;
-
-            return frame;
-        }
-
-        private System.Windows.Controls.Image GetImage(Bitmap bitmap)
-        {
-            return new System.Windows.Controls.Image
-            {
-                Source = bitmap.AsBitmapImage(),
-                Height = 32.0F,
-                Width = 32.0F,
-                Margin = new Thickness(10)
-            };
-        }
-
-        private void DoEmailAction(DataModel model, byte[] data, string templateName)
-        {
-            var template = new Client<DataModelTemplate>().Query(new Filter<DataModelTemplate>(x => x.Name).IsEqualTo(templateName)).Rows.FirstOrDefault();
-
-            ParseTemplateAndCreateEmail(template, model, data);
-        }
 
         private void SetupDock<TSecurityDescriptor>(LayoutAnchorable layout, IDockPanel dock)
             where TSecurityDescriptor : ISecurityDescriptor, new()
@@ -1876,54 +1812,6 @@ namespace PRSDesktop
             tab.Visibility = bVisible ? Visibility.Visible : Visibility.Collapsed;
         }
 
-        #region Email
-
-        private void DoEmailReport(DataModel model, byte[] data)
-        {
-            string attachmentName = DetermineName(model);
-            EmailUtils.CreateEMLFile(attachmentName, data, App.EmployeeEmail, "Emailing report for " + attachmentName);
-        }
-
-        private void ParseTemplateAndCreateEmail(CoreRow row, DataModel model, byte[] data)
-        {
-            var to = DataModelUtils.ParseTemplate(model, row.Get<DataModelTemplate, string>(x => x.To)).Replace("\n", "").Replace("\r", "");
-            var Subject = DataModelUtils.ParseTemplate(model, row.Get<DataModelTemplate, string>(x => x.Subject)).Replace("\n", "").Replace("\r", "");
-            var attachmentName = DataModelUtils.ParseTemplate(model, row.Get<DataModelTemplate, string>(x => x.AttachmentName)).Replace("\n", "").Replace("\r", "");
-            var body = DataModelUtils.ParseTemplate(model, row.Get<DataModelTemplate, string>(x => x.Template));
-
-            if (string.IsNullOrWhiteSpace(attachmentName))
-                attachmentName = model.Name;
-            EmailUtils.CreateEMLFile(attachmentName, data, App.EmployeeEmail, Subject, body, to);
-        }
-
-        private string DetermineName(DataModel model)
-        {
-            string title = model.Name;
-            if (model.AsDictionary.ContainsKey(typeof(Requisition)))
-            {
-                CoreTable table = model.AsDictionary[typeof(Requisition)];
-                title = title + " - " + table.Rows.FirstOrDefault().Get<Requisition, string>(x => x.Title);
-            }
-            else if (model.AsDictionary.ContainsKey(typeof(PurchaseOrder)))
-            {
-                title = "Purchase Order ";
-                CoreTable table = model.AsDictionary[typeof(PurchaseOrder)];
-                if (table.Rows.Count == 1)
-                    title = title + table.Rows.FirstOrDefault().Get<PurchaseOrder, string>(x => x.PONumber);
-                else if (table.Rows.Count > 1)
-                {
-                    foreach (CoreRow row in table.Rows)
-                    {
-                        title = title + row.Get<PurchaseOrder, string>(x => x.PONumber) + ", ";
-                    }
-                    title = title.Substring(0, title.Length - 2);
-                }
-            }
-
-            return title;
-        }
-        #endregion
-
         private Fluent.RibbonGroupBox? FindRibbonBar(Fluent.RibbonTabItem tab, Func<Fluent.RibbonGroupBox, bool> predicate)
         {
             foreach (var group in tab.Groups)

+ 10 - 0
prs.desktop/Resources.Designer.cs

@@ -588,6 +588,16 @@ namespace PRSDesktop {
             }
         }
         
+        /// <summary>
+        ///   Looks up a localized resource of type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap emailreport {
+            get {
+                object obj = ResourceManager.GetObject("emailreport", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized resource of type System.Drawing.Bitmap.
         /// </summary>

+ 771 - 938
prs.desktop/Resources.resx

@@ -1,943 +1,776 @@
 <?xml version="1.0" encoding="utf-8"?>
 <root>
-    <!-- 
-      Microsoft ResX Schema 
-      
-      Version 2.0
-      
-      The primary goals of this format is to allow a simple XML format 
-      that is mostly human readable. The generation and parsing of the 
-      various data types are done through the TypeConverter classes 
-      associated with the data types.
-      
-      Example:
-      
-      ... ado.net/XML headers & schema ...
-      <resheader name="resmimetype">text/microsoft-resx</resheader>
-      <resheader name="version">2.0</resheader>
-      <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-      <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-      <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-      <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-      <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-          <value>[base64 mime encoded serialized .NET Framework object]</value>
-      </data>
-      <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-          <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-          <comment>This is a comment</comment>
-      </data>
-                  
-      There are any number of "resheader" rows that contain simple 
-      name/value pairs.
-      
-      Each data row contains a name, and value. The row also contains a 
-      type or mimetype. Type corresponds to a .NET class that support 
-      text/value conversion through the TypeConverter architecture. 
-      Classes that don't support this are serialized and stored with the 
-      mimetype set.
-      
-      The mimetype is used for serialized objects, and tells the 
-      ResXResourceReader how to depersist the object. This is currently not 
-      extensible. For a given mimetype the value must be set accordingly:
-      
-      Note - application/x-microsoft.net.object.binary.base64 is the format 
-      that the ResXResourceWriter will generate, however the reader can 
-      read any of the formats listed below.
-      
-      mimetype: application/x-microsoft.net.object.binary.base64
-      value   : The object must be serialized with 
-              : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-              : and then encoded with base64 encoding.
-      
-      mimetype: application/x-microsoft.net.object.soap.base64
-      value   : The object must be serialized with 
-              : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-              : and then encoded with base64 encoding.
-  
-      mimetype: application/x-microsoft.net.object.bytearray.base64
-      value   : The object must be serialized into a byte array 
-              : using a System.ComponentModel.TypeConverter
-              : and then encoded with base64 encoding.
-      -->
-    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"
-                id="root"
-                xmlns="">
-        <xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
-        <xsd:element name="root" msdata:IsDataSet="true">
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
             <xsd:complexType>
-                <xsd:choice maxOccurs="unbounded">
-                    <xsd:element name="metadata">
-                        <xsd:complexType>
-                            <xsd:sequence>
-                                <xsd:element name="value" type="xsd:string" minOccurs="0"/>
-                            </xsd:sequence>
-                            <xsd:attribute name="name" use="required" type="xsd:string"/>
-                            <xsd:attribute name="type" type="xsd:string"/>
-                            <xsd:attribute name="mimetype" type="xsd:string"/>
-                            <xsd:attribute ref="xml:space"/>
-                        </xsd:complexType>
-                    </xsd:element>
-                    <xsd:element name="assembly">
-                        <xsd:complexType>
-                            <xsd:attribute name="alias" type="xsd:string"/>
-                            <xsd:attribute name="name" type="xsd:string"/>
-                        </xsd:complexType>
-                    </xsd:element>
-                    <xsd:element name="data">
-                        <xsd:complexType>
-                            <xsd:sequence>
-                                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
-                                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
-                            </xsd:sequence>
-                            <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1"/>
-                            <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3"/>
-                            <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4"/>
-                            <xsd:attribute ref="xml:space"/>
-                        </xsd:complexType>
-                    </xsd:element>
-                    <xsd:element name="resheader">
-                        <xsd:complexType>
-                            <xsd:sequence>
-                                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
-                            </xsd:sequence>
-                            <xsd:attribute name="name" type="xsd:string" use="required"/>
-                        </xsd:complexType>
-                    </xsd:element>
-                </xsd:choice>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
             </xsd:complexType>
-        </xsd:element>
-    </xsd:schema>
-    <resheader name="resmimetype">
-        <value>text/microsoft-resx</value>
-    </resheader>
-    <resheader name="version">
-        <value>2.0</value>
-    </resheader>
-    <resheader name="reader">
-        <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b77a5c561934e089
-        </value>
-    </resheader>
-    <resheader name="writer">
-        <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b77a5c561934e089
-        </value>
-    </resheader>
-    <assembly alias="System.Windows.Forms"
-              name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
-    <data name="add" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\add.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="add1" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\add.wav;System.IO.MemoryStream, mscorlib, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b77a5c561934e089
-        </value>
-    </data>
-    <data name="anonymous" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\anonymous.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="attachment" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\attachment.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="barcode" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\barcode.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="bookmark" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\bookmark.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="box" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\box.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="change" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\change.wav;System.IO.MemoryStream, mscorlib, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b77a5c561934e089
-        </value>
-    </data>
-    <data name="checklist" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\checklist.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="clock" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\clock.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="contract" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\contract.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\delete.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="design" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\design.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="doc_bmp" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\doc-bmp.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="doc_jpg" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\doc-jpg.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="doc_misc" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\doc-misc.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="doc_pdf" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\doc-pdf.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="doc_png" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\doc-png.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="doc_rtf" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\doc-rtf.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="doc_txt" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\doc-txt.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="doc_xls" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\doc-xls.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="downarrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\downarrow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\edit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="error" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\error.wav;System.IO.MemoryStream, mscorlib, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b77a5c561934e089
-        </value>
-    </data>
-    <data name="everyone" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\everyone.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="grouped" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\grouped.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="lifter" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\lifter.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="link" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\link.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="milestone" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\milestone.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="printer" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\printer.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="remove" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\remove.wav;System.IO.MemoryStream, mscorlib, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b77a5c561934e089
-        </value>
-    </data>
-    <data name="revision" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\revision.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0,
-            Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="schedule_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\schedule - disabled.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0,
-            Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="schedule_enabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\schedule - enabled.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0,
-            Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="shared" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\shared.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="sick" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\sick.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="spanner" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\spanner.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="specifications" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\specifications.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="stop" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\stop.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="target" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\target.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="tick" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\tick.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="time" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\time.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="truck" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\truck.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="uparrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\uparrow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="warning" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\warning.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="wrench" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\wrench.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="warehouse" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\warehouse.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="refresh" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\refresh.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="costcentre" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\costcentre.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="costsheet" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\costsheet.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="costsheetsection" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\costsheetsection.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="customer" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\customer.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="employeerole" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\employeerole.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="employees" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\employees.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="glcode" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\glcode.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="kit" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\kit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="kitcondition" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\kitcondition.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="kitformula" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\kitformula.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="product" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\product.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="productgroup" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\productgroup.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="requisition" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\requisition.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="supplier" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\supplier.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="unitofmeasure" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\unitofmeasure.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="pencil" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\pencil.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="attendance" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\attendance.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="employee" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\employee.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="localfile" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\localfile.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="remotefile" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\remotefile.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="leave" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\leave.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="quality" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\quality.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="assignments" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\assignments.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="bill" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\bill.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="factory" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\factory.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="factorysetup" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\factorysetup.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="invoice" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\invoice.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="payment" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\payment.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="purchase" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\purchase.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="receipt" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\receipt.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="template" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\template.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="email" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\email.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="taxcode" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\taxcode.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="view" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\view.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="split" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\split.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\disabled.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="copy" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\copy.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="team" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\team.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="locked" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\lock.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="back" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\back.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="first" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\first.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="last" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\last.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="next" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\next1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="overtime" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\overtime.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="kanban" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\kanban.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="kanbantype" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\kanbantype.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="password" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\password.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="pin" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\pin.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="securitygroup" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\securitygroup.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="user" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\user.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="kpi" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\kpi.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="consignment" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\consignment.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="consignmenttype" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\consignmenttype.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="finger" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\finger.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="hand" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\hand.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="text" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\text.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="circle" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\circle.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="draw" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\draw.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="fontsize" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\fontsize.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="line" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\line.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="palette" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\palette.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="square" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\square.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="fullpage" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\fullpage.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="pagewidth" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\pagewidth.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="trolley" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\trolley.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="forward" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\forward.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="reply" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\reply.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="smiley" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\smiley.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="forklift" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\forklift.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="rack" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\rack.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="parcel" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\parcel.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="project" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\project.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="quotation" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\quotation.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="service" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\service.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="kitgroup" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\kitgroup.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="lightbulb" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\lightbulb.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="fireworks" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\fireworks.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="report" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\report.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="help" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\help.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="contacttype" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\contacttype.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="quotestatus" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\quotestatus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="certificate" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\certificate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="map" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\map.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="mapmarker" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\mapmarker.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\minus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\plus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="box_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\box-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="clock_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\clock-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="delete_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\delete-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="lock_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\lock-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="tick_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\tick-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="disk" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\disk.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="disk_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\disk-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="clone" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\clone.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="costsheetbrand" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\costsheetbrand.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="costsheettype" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\costsheettype.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="key" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\key.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="leftarrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\leftarrow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="rightarrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\rightarrow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="small_add" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\small_add.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="small_delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\small_delete.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="small_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\small_edit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="archive" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\archive.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="audiorecording" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\audiorecording.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="videorecording" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\videorecording.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="speechbubble" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\speechbubble.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="orgchart" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\orgchart.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="position" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\position.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="appicon" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\appicon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="splash_small" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\splash-small.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="script" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\script.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="autoupdate" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\autoupdate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="download" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\download.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
-    <data name="upload" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\upload.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>    
-    <data name="menu" type="System.Resources.ResXFileRef, System.Windows.Forms">
-        <value>.\Resources\menu.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
-            PublicKeyToken=b03f5f7f11d50a3a
-        </value>
-    </data>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+  <data name="add" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\add.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="add1" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\add.wav;System.IO.MemoryStream, mscorlib, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="anonymous" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\anonymous.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="attachment" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\attachment.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="barcode" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\barcode.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="bookmark" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\bookmark.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="box" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\box.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="change" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\change.wav;System.IO.MemoryStream, mscorlib, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="checklist" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\checklist.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="clock" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\clock.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="contract" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\contract.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\delete.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="design" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\design.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="doc_bmp" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\doc-bmp.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="doc_jpg" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\doc-jpg.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="doc_misc" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\doc-misc.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="doc_pdf" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\doc-pdf.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="doc_png" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\doc-png.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="doc_rtf" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\doc-rtf.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="doc_txt" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\doc-txt.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="doc_xls" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\doc-xls.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="downarrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\downarrow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\edit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="error" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\error.wav;System.IO.MemoryStream, mscorlib, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="everyone" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\everyone.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="grouped" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\grouped.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="lifter" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\lifter.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="link" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\link.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="milestone" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\milestone.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="printer" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\printer.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="remove" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\remove.wav;System.IO.MemoryStream, mscorlib, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b77a5c561934e089</value>
+  </data>
+  <data name="revision" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\revision.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0,
+            Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="schedule_disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\schedule - disabled.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0,
+            Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="schedule_enabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\schedule - enabled.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0,
+            Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="shared" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\shared.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="sick" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\sick.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="spanner" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\spanner.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="specifications" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\specifications.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="stop" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\stop.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="target" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\target.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="tick" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\tick.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="time" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\time.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="truck" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\truck.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="uparrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\uparrow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="warning" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\warning.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="wrench" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\wrench.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="warehouse" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\warehouse.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="refresh" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\refresh.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="costcentre" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\costcentre.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="costsheet" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\costsheet.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="costsheetsection" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\costsheetsection.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="customer" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\customer.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="employeerole" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\employeerole.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="employees" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\employees.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="glcode" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\glcode.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="kit" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\kit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="kitcondition" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\kitcondition.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="kitformula" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\kitformula.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="product" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\product.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="productgroup" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\productgroup.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="requisition" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\requisition.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="supplier" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\supplier.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="unitofmeasure" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\unitofmeasure.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="pencil" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\pencil.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="attendance" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\attendance.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="employee" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\employee.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="localfile" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\localfile.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="remotefile" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\remotefile.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="leave" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\leave.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="quality" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\quality.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="assignments" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\assignments.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="bill" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\bill.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="factory" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\factory.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="factorysetup" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\factorysetup.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="invoice" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\invoice.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="payment" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\payment.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="purchase" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\purchase.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="receipt" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\receipt.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="template" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\template.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="email" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\email.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="taxcode" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\taxcode.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="view" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\view.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="split" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\split.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="disabled" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\disabled.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="copy" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\copy.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="team" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\team.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="locked" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\lock.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="back" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\back.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="first" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\first.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="last" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\last.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="next" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\next1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="overtime" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\overtime.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="kanban" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\kanban.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="kanbantype" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\kanbantype.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="password" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\password.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="pin" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\pin.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="securitygroup" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\securitygroup.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="user" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\user.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="kpi" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\kpi.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="consignment" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\consignment.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="consignmenttype" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\consignmenttype.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="finger" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\finger.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="hand" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\hand.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="text" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\text.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="circle" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\circle.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="draw" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\draw.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="fontsize" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\fontsize.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="line" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\line.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="palette" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\palette.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="square" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\square.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="fullpage" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\fullpage.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="pagewidth" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\pagewidth.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="trolley" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\trolley.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="forward" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\forward.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="reply" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\reply.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="smiley" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\smiley.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="forklift" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\forklift.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="rack" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\rack.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="parcel" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\parcel.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="project" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\project.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="quotation" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\quotation.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="service" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\service.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="kitgroup" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\kitgroup.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="lightbulb" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\lightbulb.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="fireworks" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\fireworks.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="report" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\report.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="help" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\help.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="contacttype" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\contacttype.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="quotestatus" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\quotestatus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="certificate" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\certificate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="map" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\map.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="mapmarker" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\mapmarker.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="minus" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\minus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\plus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="box_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\box-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="clock_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\clock-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="delete_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\delete-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="lock_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\lock-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="tick_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\tick-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="disk" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\disk.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="disk_sml" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\disk-sml.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="clone" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\clone.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="costsheetbrand" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\costsheetbrand.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="costsheettype" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\costsheettype.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="key" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\key.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="leftarrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\leftarrow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="rightarrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\rightarrow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="small_add" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\small_add.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="small_delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\small_delete.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="small_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\small_edit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="archive" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\archive.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="audiorecording" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\audiorecording.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="videorecording" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\videorecording.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="speechbubble" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\speechbubble.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="orgchart" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\orgchart.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="position" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\position.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="appicon" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\appicon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="splash_small" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\splash-small.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="script" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\script.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="autoupdate" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\autoupdate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="download" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\download.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="upload" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\upload.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="menu" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>.\Resources\menu.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral,
+            PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="emailreport" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>Resources\emailreport.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
 </root>

BIN
prs.desktop/Resources/emailreport.png


BIN
prs.desktop/Resources/reportemail.bmp


+ 227 - 0
prs.desktop/Utils/EmailUtils.cs

@@ -0,0 +1,227 @@
+using InABox.Clients;
+using InABox.Core;
+using InABox.Reports;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.IO;
+using System.Linq;
+using System.Net.Mail;
+using System.Reflection;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Controls;
+using System.Windows;
+using System.Windows.Forms;
+using System.Drawing;
+using InABox.WPF;
+using MessageBox = System.Windows.Forms.MessageBox;
+using Comal.Classes;
+using TextBox = System.Windows.Controls.TextBox;
+
+namespace PRSDesktop
+{
+    public class EmailUtils
+    {   
+        /// <summary>
+         /// Creates and opens an email with the default email app - selected by the user.
+         /// This method is for emails with a PDF attachment. Provide the file name and data.
+         /// Optionally provide from, subject and body.
+         /// If from is not provided, an attempt will be made to find the User's email address - if empty it will throw an error (cannot be empty)
+         /// </summary>
+         /// <param name="attachmentname"></param>
+         /// <param name="attachmentdata"></param>
+         /// <param name="from"></param>
+         /// <param name="subject"></param>
+         /// <param name="body"></param>
+        public static void CreateEMLFile(string attachmentname, byte[] attachmentdata, string from = "", string subject = "", string body = "", string to = "")
+        {
+            var message = CreateMessage(from, subject, body, to);
+
+            message = AddAttachment(message, attachmentname, attachmentdata);
+
+            OpenEmail(message, attachmentname);
+        }
+
+        /// <summary>
+        /// Creates and opens an email with the default email app - selected by the user.
+        /// This method is for emails with no attachments.
+        /// Optionally provide from, subject and body.
+        /// If from is not provided, an attempt will be made to find the User's email address - if empty it will throw an error (cannot be empty)
+        /// </summary>
+        /// <param name="from"></param>
+        /// <param name="subject"></param>
+        /// <param name="body"></param>
+
+        public static void CreateEMLFile(string from = "", string subject = "", string body = "")
+        {
+            var message = CreateMessage(from, subject, body);
+
+            OpenEmail(message, "Message from " + from);
+        }
+
+        private static void OpenEmail(MailMessage message, string name)
+        {
+            var filename = Path.Combine(Path.GetTempPath(), Path.ChangeExtension(name, ".eml"));
+
+            using (var filestream = File.Open(filename, FileMode.Create))
+            {
+                var binaryWriter = new BinaryWriter(filestream);
+                //Write the Unsent header to the file so the mail client knows this mail must be presented in "New message" mode
+                binaryWriter.Write(Encoding.UTF8.GetBytes("X-Unsent: 1" + Environment.NewLine));
+
+                var assembly = typeof(SmtpClient).Assembly;
+                var mailWriterType = assembly.GetType("System.Net.Mail.MailWriter")!;
+
+                // Get reflection info for MailWriter contructor
+                var mailWriterConstructor =
+                    mailWriterType.GetConstructor(BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { typeof(Stream), typeof(bool) }, null)!;
+
+                // Construct MailWriter object with our FileStream
+                var mailWriter = mailWriterConstructor.Invoke(new object[] { filestream, true });
+
+                // Get reflection info for Send() method on MailMessage
+                var sendMethod = typeof(MailMessage).GetMethod("Send", BindingFlags.Instance | BindingFlags.NonPublic)!;
+
+                sendMethod.Invoke(message, BindingFlags.Instance | BindingFlags.NonPublic, null, new[] { mailWriter, true, true }, null);
+
+                // Finally get reflection info for Close() method on our MailWriter
+                var closeMethod = mailWriter.GetType().GetMethod("Close", BindingFlags.Instance | BindingFlags.NonPublic)!;
+
+                // Call close method
+                closeMethod.Invoke(mailWriter, BindingFlags.Instance | BindingFlags.NonPublic, null, new object[] { }, null);
+            }
+
+            // Open the file with the default associated application registered on the local machine
+            Process.Start(new ProcessStartInfo(filename) { UseShellExecute = true });
+        }
+
+        private static MailMessage CreateMessage(string from, string subject, string body, string to = "")
+        {
+            if (string.IsNullOrWhiteSpace(to))
+                to = "example@outlook.com.au";
+            if (string.IsNullOrWhiteSpace(from))
+                from = GetAddressFromUser();
+            if (string.IsNullOrWhiteSpace(subject))
+                subject = "Enter subject";
+            if (string.IsNullOrWhiteSpace(body))
+                body = "Enter message";
+            var message = new MailMessage(from, to, subject, body);
+            message.IsBodyHtml = false;
+
+            return message;
+        }
+
+        private static string GetAddressFromUser()
+        {
+            CoreTable table = new Client<User>().Query(new Filter<User>(x => x.ID).IsEqualTo(ClientFactory.UserGuid)
+                , new Columns<User>(x => x.EmailAddress));
+            User user = table.Rows.FirstOrDefault().ToObject<User>();
+
+            if (!string.IsNullOrWhiteSpace(user.EmailAddress))
+                return user.EmailAddress;
+            else
+                MessageBox.Show("Current User Email Address is blank - please fill in (Human Resources -> User Accounts -> Choose your User -> Email Settings -> Email Address", "Error");
+
+            return "";
+
+        }
+
+        private static MailMessage AddAttachment(MailMessage message, string attachmentname, byte[] attachmentdata)
+        {
+            var attachment = Path.Combine(Path.GetTempPath(), Path.ChangeExtension(attachmentname, ".pdf"));
+            File.WriteAllBytes(attachment, attachmentdata);
+
+            message.Attachments.Add(new Attachment(attachment));
+
+            return message;
+        }
+
+        public static IEnumerable<ReportExportDefinition> CreateTemplateDefinitions(DataModel model)
+        {
+            var templates = new Client<DataModelTemplate>().Query(new Filter<DataModelTemplate>(x => x.Model).IsEqualTo(model.Name)
+                .And(x => x.Visible).IsEqualTo(true));
+
+            if (templates.Rows.Any())
+            {
+                List<ReportExportDefinition> list = new List<ReportExportDefinition>();
+                foreach (CoreRow row in templates.Rows)
+                {
+                    Action<DataModel, byte[]> action = new Action<DataModel, byte[]>((model, data) =>
+                    {
+                        DoEmailAction(model, data, row.Get<DataModelTemplate, string>(x => x.Name));
+                    });
+                    list.Add(
+                        new ReportExportDefinition(
+                            "Email Report",
+                            ImageUtils.CreatePreviewWindowButtonContent(row.Get<DataModelTemplate, string>(x => x.Name),PRSDesktop.Resources.emailreport), 
+                            ReportExportType.PDF, 
+                            action));
+                }
+                return list;
+            }
+            else
+                return new List<ReportExportDefinition>() 
+                { 
+                    new ReportExportDefinition(
+                        "Email Report",
+                        ImageUtils.CreatePreviewWindowButtonContent("Email",PRSDesktop.Resources.emailreport), 
+                        ReportExportType.PDF,
+                            DoEmailReport)
+                };
+        }
+
+        private static void DoEmailAction(DataModel model, byte[] data, string templateName)
+        {
+            var template = new Client<DataModelTemplate>().Query(new Filter<DataModelTemplate>(x => x.Name).IsEqualTo(templateName)).Rows.FirstOrDefault();
+
+            ParseTemplateAndCreateEmail(template, model, data);
+        }
+
+        private static void ParseTemplateAndCreateEmail(CoreRow row, DataModel model, byte[] data)
+        {
+            var to = DataModelUtils.ParseTemplate(model, row.Get<DataModelTemplate, string>(x => x.To)).Replace("\n", "").Replace("\r", "");
+            var Subject = DataModelUtils.ParseTemplate(model, row.Get<DataModelTemplate, string>(x => x.Subject)).Replace("\n", "").Replace("\r", "");
+            var attachmentName = DataModelUtils.ParseTemplate(model, row.Get<DataModelTemplate, string>(x => x.AttachmentName)).Replace("\n", "").Replace("\r", "");
+            var body = DataModelUtils.ParseTemplate(model, row.Get<DataModelTemplate, string>(x => x.Template));
+
+            if (string.IsNullOrWhiteSpace(attachmentName))
+                attachmentName = model.Name;
+            EmailUtils.CreateEMLFile(attachmentName, data, App.EmployeeEmail, Subject, body, to);
+        }
+
+        public static void DoEmailReport(DataModel model, byte[] data)
+        {
+            string attachmentName = DetermineName(model);
+            EmailUtils.CreateEMLFile(attachmentName, data, App.EmployeeEmail, "Emailing report for " + attachmentName);
+        }
+
+        private static string DetermineName(DataModel model)
+        {
+            string title = model.Name;
+            if (model.AsDictionary.ContainsKey(typeof(Requisition)))
+            {
+                CoreTable table = model.AsDictionary[typeof(Requisition)];
+                title = title + " - " + table.Rows.FirstOrDefault().Get<Requisition, string>(x => x.Title);
+            }
+            else if (model.AsDictionary.ContainsKey(typeof(PurchaseOrder)))
+            {
+                title = "Purchase Order ";
+                CoreTable table = model.AsDictionary[typeof(PurchaseOrder)];
+                if (table.Rows.Count == 1)
+                    title = title + table.Rows.FirstOrDefault().Get<PurchaseOrder, string>(x => x.PONumber);
+                else if (table.Rows.Count > 1)
+                {
+                    foreach (CoreRow row in table.Rows)
+                    {
+                        title = title + row.Get<PurchaseOrder, string>(x => x.PONumber) + ", ";
+                    }
+                    title = title.Substring(0, title.Length - 2);
+                }
+            }
+
+            return title;
+        }
+
+    }
+}

+ 0 - 127
prs.shared/EmailUtils.cs

@@ -1,127 +0,0 @@
-
-using System.Diagnostics;
-using System.IO;
-using System.Net.Mail;
-using System.Reflection;
-using System.Text;
-using InABox.Clients;
-using InABox.Core;
-
-namespace PRS.Shared
-{
-    public class EmailUtils
-    {
-        /// <summary>
-        /// Creates and opens an email with the default email app - selected by the user.
-        /// This method is for emails with a PDF attachment. Provide the file name and data.
-        /// Optionally provide from, subject and body.
-        /// If from is not provided, an attempt will be made to find the User's email address - if empty it will throw an error (cannot be empty)
-        /// </summary>
-        /// <param name="attachmentname"></param>
-        /// <param name="attachmentdata"></param>
-        /// <param name="from"></param>
-        /// <param name="subject"></param>
-        /// <param name="body"></param>
-        public static void CreateEMLFile(string attachmentname, byte[] attachmentdata, string from = "", string subject = "", string body = "", string to = "")
-        {
-            var message = CreateMessage(from, subject, body, to);
-
-            message = AddAttachment(message, attachmentname, attachmentdata);
-
-            OpenEmail(message, attachmentname);
-        }
-
-        /// <summary>
-        /// Creates and opens an email with the default email app - selected by the user.
-        /// This method is for emails with no attachments.
-        /// Optionally provide from, subject and body.
-        /// If from is not provided, an attempt will be made to find the User's email address - if empty it will throw an error (cannot be empty)
-        /// </summary>
-        /// <param name="from"></param>
-        /// <param name="subject"></param>
-        /// <param name="body"></param>
-        public static void CreateEMLFile(string from = "", string subject = "", string body = "")
-        {
-            var message = CreateMessage(from, subject, body);
-
-            OpenEmail(message, "Message from " + from);
-        }
-
-        private static void OpenEmail(MailMessage message, string name)
-        {
-            var filename = Path.Combine(Path.GetTempPath(), Path.ChangeExtension(name, ".eml"));
-
-            using (var filestream = File.Open(filename, FileMode.Create))
-            {
-                var binaryWriter = new BinaryWriter(filestream);
-                //Write the Unsent header to the file so the mail client knows this mail must be presented in "New message" mode
-                binaryWriter.Write(Encoding.UTF8.GetBytes("X-Unsent: 1" + Environment.NewLine));
-
-                var assembly = typeof(SmtpClient).Assembly;
-                var mailWriterType = assembly.GetType("System.Net.Mail.MailWriter")!;
-
-                // Get reflection info for MailWriter contructor
-                var mailWriterConstructor =
-                    mailWriterType.GetConstructor(BindingFlags.Instance | BindingFlags.NonPublic, null, new Type[] { typeof(Stream), typeof(bool) }, null)!;
-
-                // Construct MailWriter object with our FileStream
-                var mailWriter = mailWriterConstructor.Invoke(new object[] { filestream, true });
-
-                // Get reflection info for Send() method on MailMessage
-                var sendMethod = typeof(MailMessage).GetMethod("Send", BindingFlags.Instance | BindingFlags.NonPublic)!;
-
-                sendMethod.Invoke(message, BindingFlags.Instance | BindingFlags.NonPublic, null, new[] { mailWriter, true, true }, null);
-
-                // Finally get reflection info for Close() method on our MailWriter
-                var closeMethod = mailWriter.GetType().GetMethod("Close", BindingFlags.Instance | BindingFlags.NonPublic)!;
-
-                // Call close method
-                closeMethod.Invoke(mailWriter, BindingFlags.Instance | BindingFlags.NonPublic, null, new object[] { }, null);
-            }
-
-            // Open the file with the default associated application registered on the local machine
-            Process.Start(new ProcessStartInfo(filename) { UseShellExecute = true });
-        }
-
-        private static MailMessage CreateMessage(string from, string subject, string body, string to = "")
-        {
-            if (string.IsNullOrWhiteSpace(to))
-                to = "example@outlook.com.au";
-            if (string.IsNullOrWhiteSpace(from))
-                from = GetAddressFromUser();
-            if (string.IsNullOrWhiteSpace(subject))
-                subject = "Enter subject";
-            if (string.IsNullOrWhiteSpace(body))
-                body = "Enter message";
-            var message = new MailMessage(from, to, subject, body);                  
-            message.IsBodyHtml = false;
-
-            return message;
-        }
-
-        private static string GetAddressFromUser()
-        {
-            CoreTable table = new Client<User>().Query(new Filter<User>(x => x.ID).IsEqualTo(ClientFactory.UserGuid)
-                , new Columns<User>(x => x.EmailAddress));
-            User user = table.Rows.FirstOrDefault().ToObject<User>();
-
-            if (!string.IsNullOrWhiteSpace(user.EmailAddress))
-                return user.EmailAddress;
-            else
-                MessageBox.Show("Current User Email Address is blank - please fill in (Human Resources -> User Accounts -> Choose your User -> Email Settings -> Email Address", "Error");
-
-            return "";
-
-        }
-
-        private static MailMessage AddAttachment(MailMessage message, string attachmentname, byte[] attachmentdata)
-        {
-            var attachment = Path.Combine(Path.GetTempPath(), Path.ChangeExtension(attachmentname, ".pdf"));
-            File.WriteAllBytes(attachment, attachmentdata);
-
-            message.Attachments.Add(new Attachment(attachment));
-
-            return message;
-        }
-    }
-}