﻿<?xml version="1.0" encoding="utf-16"?>
<JiwaDocument xmlns:jiwa="http://www.jiwa.com.au/xml/schemas" Type="JiwaFinancials.Jiwa.JiwaApplication.Plugin.Plugin">
  <RecID>776451c0-4e99-493c-b578-899d05eb20e3</RecID>
  <Name>Email Attachment Test</Name>
  <Description>Adds a tool to the Actions group of the  sales order form ribbon "Email Test" - which creates an email with a file attachment.&amp;#13;&amp;#10;&amp;#13;&amp;#10;The file attachment to use is a hard-coded path stored in a constant which should be updated before using.</Description>
  <IsEnabled>true</IsEnabled>
  <IsIsolatedToOwnAppDomain>false</IsIsolatedToOwnAppDomain>
  <ExecutionOrder>0</ExecutionOrder>
  <Author>Jiwa Financials</Author>
  <Version>7.2.1.25.0</Version>
  <Code>using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using JiwaFinancials.Jiwa;
using System.Windows.Forms;

#region "FormPlugin"
public class FormPlugin : System.MarshalByRefObject, JiwaFinancials.Jiwa.JiwaApplication.IJiwaFormPlugin
{
	public const string AttachmentPath = "C:\\Users\\mike\\Downloads\\IndeterminateProgressAnimation.gif";
	
    public override object InitializeLifetimeService()
    {
        // returning null here will prevent the lease manager
        // from deleting the Object.
        return null;
    }

    public void SetupBeforeHandlers(JiwaFinancials.Jiwa.JiwaApplication.IJiwaForm JiwaForm, JiwaFinancials.Jiwa.JiwaApplication.Plugin.Plugin Plugin)
    {
    }

    public void Setup(JiwaFinancials.Jiwa.JiwaApplication.IJiwaForm JiwaForm, JiwaFinancials.Jiwa.JiwaApplication.Plugin.Plugin Plugin)
    {
		JiwaFinancials.Jiwa.JiwaSalesUI.SalesOrder.SalesOrderEntryForm salesOrderForm = (JiwaFinancials.Jiwa.JiwaSalesUI.SalesOrder.SalesOrderEntryForm)JiwaForm;
	    Infragistics.Win.UltraWinToolbars.RibbonGroup group;
	    Infragistics.Win.UltraWinToolbars.ButtonTool buttonTool;

	    buttonTool = new Infragistics.Win.UltraWinToolbars.ButtonTool("EmailTest");
	    buttonTool.SharedProps.Caption = "Email Test";
	    buttonTool.SharedProps.AppearancesSmall.Appearance.Image = Plugin.Manager.GetEmbeddedPicture("JiwaFinancials.Jiwa.JiwaApplication.Email.png", false);
	    salesOrderForm.UltraToolbarsManager1.Tools.Add(buttonTool);

	    group = salesOrderForm.UltraToolbarsManager1.Ribbon.Tabs["Main"].Groups["Actions"];
	    group.Tools.AddTool("EmailTest");

	    //pluginForm.UltraToolbarsManager1.Toolbars("Toolbar").Tools.InsertTool(pluginForm.UltraToolbarsManager1.Toolbars("Toolbar").Tools("ID_RecordUtilitiesCopy").Index + 1, "EmailTest");

	    salesOrderForm.UltraToolbarsManager1.ToolClick += UltraToolbarsManager1_ToolClick;
    }
	
	private void UltraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
	{
		if (e.Tool.Key == "EmailTest")
		{
			JiwaFinancials.Jiwa.JiwaSalesUI.SalesOrder.SalesOrderEntryForm salesOrderForm = (JiwaFinancials.Jiwa.JiwaSalesUI.SalesOrder.SalesOrderEntryForm)e.Tool.ToolbarsManager.DockWithinContainer;
			
			/**/
			JiwaFinancials.Jiwa.JiwaApplication.JiwaEmail.EmailMessage email = salesOrderForm.Manager.BusinessLogicFactory.CreateBusinessLogic&lt;JiwaFinancials.Jiwa.JiwaApplication.JiwaEmail.EmailMessage&gt;(null);
		    email.CreateNew();
		    email.EmailFrom = salesOrderForm.Manager.Staff.EmailAddress;
		    email.BodyIsHTML = false;
		    email.EmailSubject = "Your RGS+ Subscription Purchase";
		    string emailAddress = "mikes@jiwa.com.au";
//		    if(emailAddress == null || emailAddress.Trim() == "" || !IsValidEmail(emailAddress))
//		    {
//		        return;
//		    }   
		    email.EmailTo = emailAddress;
		    email.EmailBody = "Email message Body";

		    //var docName = GenerateReport(salesOrder.SalesOrderHistorys[salesOrder.CurrentHistoryNo].RecID);
		    // Return the file
		    byte[] bytes = System.IO.File.ReadAllBytes(AttachmentPath);
		    JiwaFinancials.Jiwa.JiwaApplication.Documents.Document doc = salesOrderForm.Manager.CollectionItemFactory.CreateCollectionItem&lt;JiwaFinancials.Jiwa.JiwaApplication.Documents.Document&gt;();
		    doc.PhysicalFileName = System.IO.Path.GetFileName(AttachmentPath)  ;
		    doc.FileBinary = bytes;
		    doc.Description = "Subscription Notice";
		    doc.DocumentType = email.Attachments.DocumentTypes.GetDefaultDocumentType();

		    email.Attachments.Add(doc);
		    email.Save();
			/**/
		}
	}
}
#endregion
</Code>
  <ExceptionPolicy>Abort</ExceptionPolicy>
  <Language>CSharp</Language>
  <PluginFormCollection>
    <PluginForm>
      <RecID>c83a4ff0-67d7-4577-a1a5-e51740fd78fd</RecID>
      <Description>Sales Orders</Description>
      <ClassName>JiwaFinancials.Jiwa.JiwaSalesUI.SalesOrder.SalesOrderEntryForm</ClassName>
    </PluginForm>
  </PluginFormCollection>
  <ReferenceCollection>
    <Reference>
      <RecID>e02b7159-68fa-437e-acef-536bb9450cae</RecID>
      <AssemblyFullName>JiwaApplication, Version=7.2.1.25, Culture=neutral, PublicKeyToken=e30ce81e37f29c8c</AssemblyFullName>
      <AssemblyName>JiwaApplication.dll</AssemblyName>
      <AssemblyLocation>C:\VSTS\Jiwa 7\MikesV7JiwaBranch\Built Files\JiwaApplication.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>1ec2be9f-8e82-4ce0-ae6c-7867790ed6ca</RecID>
      <AssemblyFullName>mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</AssemblyFullName>
      <AssemblyName>mscorlib.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.NET\Framework\v4.0.30319\mscorlib.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>663201b0-5dc1-452d-8030-84923025368b</RecID>
      <AssemblyFullName>System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</AssemblyFullName>
      <AssemblyName>System.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>d6d86e46-4145-455c-a80e-e8827083b5d4</RecID>
      <AssemblyFullName>System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</AssemblyFullName>
      <AssemblyName>System.Drawing.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Drawing\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>ce5d8556-f059-4d24-9f75-3088efbfd537</RecID>
      <AssemblyFullName>JiwaODBC, Version=7.2.1.25, Culture=neutral, PublicKeyToken=e30ce81e37f29c8c</AssemblyFullName>
      <AssemblyName>JiwaODBC.dll</AssemblyName>
      <AssemblyLocation>C:\VSTS\Jiwa 7\MikesV7JiwaBranch\Built Files\JiwaODBC.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>c204965a-a1fd-48a7-a480-ce3cebec5a39</RecID>
      <AssemblyFullName>FarPoint.Win.Spread, Version=8.35.20151.0, Culture=neutral, PublicKeyToken=327c3516b1b18457</AssemblyFullName>
      <AssemblyName>FarPoint.Win.Spread.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\assembly\GAC_MSIL\FarPoint.Win.Spread\8.35.20151.0__327c3516b1b18457\FarPoint.Win.Spread.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>b8a0742a-e8a4-45fc-89ec-ac75b7a9bc45</RecID>
      <AssemblyFullName>System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</AssemblyFullName>
      <AssemblyName>System.Windows.Forms.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Windows.Forms\v4.0_4.0.0.0__b77a5c561934e089\System.Windows.Forms.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>5cdca578-8f7a-4bdc-a15e-682d5413e7e3</RecID>
      <AssemblyFullName>Infragistics4.Win.Misc.v13.1, Version=13.1.20131.2060, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb</AssemblyFullName>
      <AssemblyName>Infragistics4.Win.Misc.v13.1.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Infragistics4.Win.Misc.v13.1\v4.0_13.1.20131.2060__7dd5c3163f2cd0cb\Infragistics4.Win.Misc.v13.1.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>d0d4717e-876b-4bcb-a9e3-aeda68719a5f</RecID>
      <AssemblyFullName>Infragistics4.Win.UltraWinEditors.v13.1, Version=13.1.20131.2060, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb</AssemblyFullName>
      <AssemblyName>Infragistics4.Win.UltraWinEditors.v13.1.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Infragistics4.Win.UltraWinEditors.v13.1\v4.0_13.1.20131.2060__7dd5c3163f2cd0cb\Infragistics4.Win.UltraWinEditors.v13.1.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>17bf75c6-8bb0-4376-8304-c4ba3bd4a46f</RecID>
      <AssemblyFullName>Infragistics4.Win.v13.1, Version=13.1.20131.2060, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb</AssemblyFullName>
      <AssemblyName>Infragistics4.Win.v13.1.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Infragistics4.Win.v13.1\v4.0_13.1.20131.2060__7dd5c3163f2cd0cb\Infragistics4.Win.v13.1.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>b725658e-0723-4096-9ea3-191cfb8fa289</RecID>
      <AssemblyFullName>System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</AssemblyFullName>
      <AssemblyName>System.Core.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>a41afc7b-b671-4813-93a2-75710cdfd8aa</RecID>
      <AssemblyFullName>Infragistics4.Shared.v13.1, Version=13.1.20131.2060, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb</AssemblyFullName>
      <AssemblyName>Infragistics4.Shared.v13.1.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Infragistics4.Shared.v13.1\v4.0_13.1.20131.2060__7dd5c3163f2cd0cb\Infragistics4.Shared.v13.1.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>bde14223-d095-4236-a99b-dae1849b31be</RecID>
      <AssemblyFullName>Infragistics4.Win.UltraWinToolbars.v13.1, Version=13.1.20131.2060, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb</AssemblyFullName>
      <AssemblyName>Infragistics4.Win.UltraWinToolbars.v13.1.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Infragistics4.Win.UltraWinToolbars.v13.1\v4.0_13.1.20131.2060__7dd5c3163f2cd0cb\Infragistics4.Win.UltraWinToolbars.v13.1.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>3cbdbf86-22c1-4064-a660-63c3b9f2ecc6</RecID>
      <AssemblyFullName>Infragistics4.Win.UltraWinStatusBar.v13.1, Version=13.1.20131.2060, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb</AssemblyFullName>
      <AssemblyName>Infragistics4.Win.UltraWinStatusBar.v13.1.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Infragistics4.Win.UltraWinStatusBar.v13.1\v4.0_13.1.20131.2060__7dd5c3163f2cd0cb\Infragistics4.Win.UltraWinStatusBar.v13.1.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>4308b717-3ce2-4e39-8535-4c438f3c8b97</RecID>
      <AssemblyFullName>JiwaLib, Version=7.2.1.25, Culture=neutral, PublicKeyToken=e30ce81e37f29c8c</AssemblyFullName>
      <AssemblyName>JiwaLib.dll</AssemblyName>
      <AssemblyLocation>C:\VSTS\Jiwa 7\MikesV7JiwaBranch\Built Files\JiwaLib.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>8fd4ebad-50c0-430d-852c-456950652dfd</RecID>
      <AssemblyFullName>FarPoint.Win, Version=8.35.20151.0, Culture=neutral, PublicKeyToken=327c3516b1b18457</AssemblyFullName>
      <AssemblyName>FarPoint.Win.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\assembly\GAC_MSIL\FarPoint.Win\8.35.20151.0__327c3516b1b18457\FarPoint.Win.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>f7fb042d-1912-401f-932f-1c34de99ae1f</RecID>
      <AssemblyFullName>JiwaSalesUI, Version=7.2.1.25, Culture=neutral, PublicKeyToken=e30ce81e37f29c8c</AssemblyFullName>
      <AssemblyName>JiwaSalesUI.dll</AssemblyName>
      <AssemblyLocation>C:\VSTS\Jiwa 7\MikesV7JiwaBranch\Built Files\JiwaSalesUI.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>4585b7e6-b005-484e-8b11-c4d1cb4c6ff8</RecID>
      <AssemblyFullName>JiwaSales, Version=7.2.1.25, Culture=neutral, PublicKeyToken=e30ce81e37f29c8c</AssemblyFullName>
      <AssemblyName>JiwaSales.dll</AssemblyName>
      <AssemblyLocation>C:\VSTS\Jiwa 7\MikesV7JiwaBranch\Built Files\JiwaSales.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>06d32c3a-2484-4b54-8823-241b7acfa921</RecID>
      <AssemblyFullName>Infragistics4.Win.UltraWinTree.v13.1, Version=13.1.20131.2060, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb</AssemblyFullName>
      <AssemblyName>Infragistics4.Win.UltraWinTree.v13.1.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Infragistics4.Win.UltraWinTree.v13.1\v4.0_13.1.20131.2060__7dd5c3163f2cd0cb\Infragistics4.Win.UltraWinTree.v13.1.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>4874927e-1707-48ab-993e-b86cad808f3d</RecID>
      <AssemblyFullName>JiwaPriceSchemes, Version=7.2.1.25, Culture=neutral, PublicKeyToken=e30ce81e37f29c8c</AssemblyFullName>
      <AssemblyName>JiwaPriceSchemes.dll</AssemblyName>
      <AssemblyLocation>C:\VSTS\Jiwa 7\MikesV7JiwaBranch\Built Files\JiwaPriceSchemes.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>f039b7f4-5417-46cd-801d-2b56af96ae05</RecID>
      <AssemblyFullName>Infragistics4.Win.UltraWinTabControl.v13.1, Version=13.1.20131.2060, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb</AssemblyFullName>
      <AssemblyName>Infragistics4.Win.UltraWinTabControl.v13.1.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Infragistics4.Win.UltraWinTabControl.v13.1\v4.0_13.1.20131.2060__7dd5c3163f2cd0cb\Infragistics4.Win.UltraWinTabControl.v13.1.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>243e981c-ca76-4feb-a2aa-ca6b19c15263</RecID>
      <AssemblyFullName>Infragistics4.Win.UltraWinSchedule.v13.1, Version=13.1.20131.2060, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb</AssemblyFullName>
      <AssemblyName>Infragistics4.Win.UltraWinSchedule.v13.1.dll</AssemblyName>
      <AssemblyLocation>C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Infragistics4.Win.UltraWinSchedule.v13.1\v4.0_13.1.20131.2060__7dd5c3163f2cd0cb\Infragistics4.Win.UltraWinSchedule.v13.1.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>fcfa9fb8-0075-4b36-84f9-029cf96b3d74</RecID>
      <AssemblyFullName>JiwaJobCosting, Version=7.2.1.25, Culture=neutral, PublicKeyToken=e30ce81e37f29c8c</AssemblyFullName>
      <AssemblyName>JiwaJobCosting.dll</AssemblyName>
      <AssemblyLocation>C:\VSTS\Jiwa 7\MikesV7JiwaBranch\Built Files\JiwaJobCosting.dll</AssemblyLocation>
    </Reference>
    <Reference>
      <RecID>d3aab09b-8230-4b67-bb7f-4356895c785f</RecID>
      <AssemblyFullName>JiwaSerialNumbersUI, Version=7.2.1.25, Culture=neutral, PublicKeyToken=e30ce81e37f29c8c</AssemblyFullName>
      <AssemblyName>JiwaSerialNumbersUI.dll</AssemblyName>
      <AssemblyLocation>C:\VSTS\Jiwa 7\MikesV7JiwaBranch\Built Files\JiwaSerialNumbersUI.dll</AssemblyLocation>
    </Reference>
  </ReferenceCollection>
</JiwaDocument>