<?xml version="1.0"?>


<!--

Pendientes: 

1- que no suba todos las archivos al ftp.
2- que tome los mails de un archivo para enviar el listado de actualizacion con el listado de 
cambios que ocurrieron.

3- Los paths son todos duros hay que hacerlos relativos para lograr que sea portable.
4- parametrizar el destino de los archivos al ftp si release o debug.


-->
<project name="DotNetRocks" default="all">
    <property name="debug" value="true" />
    <target name="all"/>    
   <target name="clean" description="remove all build products">
        <delete dir="build"  if="${directory::exists('build')}" />
    </target>
    
     <target name="init">
     	<mkdir dir="build" />
      </target>
        
    <target name="vss"  depends="init" description="Generar nueva version.">
    
    
   		<vssget username="ivan" password="sdf2zjk"
                      localpath="Sisco"
                      recursive="true"
                      replace="true"
                      writable="true"
                      dbpath="\\192.168.2.90\sistemas\vss2005\srcsafe.ini"
                      path="$/Sisco.root/sisco"
                    />
                    
	</target>
	
	<target name="compilar" depends="vss">

		<msbuild project="C:\nanttest\SiscoV2\Sisco\Sisco.sln">
			<property name="Configuration" value="Release"/>
		 </msbuild>
	</target>

	



	
    
    
 	
<target name="inno" depends="compilar">

		<innosetup script="Sisco.iss" ></innosetup>

	</target>
	
	
	
	<target name="xml" depends="inno" description="assembly.">
	             <script language="C#" >
	    	             <references>
	    			<include name="System.dll" />
	    			<include name="System.Net.dll" />
	    		   </references>
	    			<imports>
	    				<import namespace="System.IO" />
	    				
	    			</imports>
	    	           <code>
	    	             <![CDATA[
	    	               public static void ScriptMain(Project project) {
	    				
	    				
	    				
	    				System.Diagnostics.FileVersionInfo  fvi =  
	    				System.Diagnostics.FileVersionInfo.GetVersionInfo(@"C:\nanttest\SiscoV2\Sisco\Sisco\bin\Release\sisco.exe");
	    				
	    				string fileName = @"C:\nanttest\siscoV2\Installation\versionapp.xml";
	    				
	    				if (System.IO.File.Exists(fileName))
					{
						System.IO.File.Delete(fileName);
                			}
	    				
	    				
	    				FileStream stream = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write);
	    				StreamWriter writer = new StreamWriter(stream);
	    				
	    				writer.Write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
	    				writer.Write(@"<update>");
	    				writer.Write(@"<title>Actualizacion</title>");
	    				writer.Write(@"<newversion>" + fvi.FileVersion + "</newversion>");
	    
	    				writer.Write(@"<url>http://alpha2000.com.ar/sistemas/clientes/Sisco/Actualizacion/SetupSisco_" + fvi.FileVersion + "_" + DateTime.Now.Day.ToString("00") + "-" + DateTime.Now.Month.ToString("00") + "-" + DateTime.Now.Year + ".exe" + "</url>");
	    				writer.Write(@"</update>");
	    				writer.Close();
	    				
	    	               }
	    	             ]]>
	    	           </code>
	          </script>
          </target>

	<target name="xmlDebug" depends="inno" description="assembly.">
	             <script language="C#" >
	    	             <references>
	    			<include name="System.dll" />
	    			<include name="System.Net.dll" />
	    		   </references>
	    			<imports>
	    				<import namespace="System.IO" />
	    				
	    			</imports>
	    	           <code>
	    	             <![CDATA[
	    	               public static void ScriptMain(Project project) {
	    				
	    				System.Diagnostics.FileVersionInfo  fvi =  
	    				System.Diagnostics.FileVersionInfo.GetVersionInfo(@"C:\nanttest\SiscoV2\Sisco\Sisco\bin\Release\sisco.exe");
	    				
	    				string fileName = @"C:\nanttest\siscoV2\Installation\versionapp.xml";
	    				
	    				if (System.IO.File.Exists(fileName))
					{
						System.IO.File.Delete(fileName);
					}
	    				
	    				FileStream stream = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write);
	    				StreamWriter writer = new StreamWriter(stream);
	    				
	    				writer.Write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
	    				writer.Write(@"<update>");
	    				writer.Write(@"<title>Actualizacion</title>");
	    				writer.Write(@"<newversion>" + fvi.FileVersion + "</newversion>");
	    
	    				writer.Write(@"<url>http://alpha2000.com.ar/sistemas/clientes/Sisco/ActualizacionDebug/SetupSisco_" + fvi.FileVersion + "_" + DateTime.Now.Day.ToString("00") + "-" + DateTime.Now.Month.ToString("00") + "-" + DateTime.Now.Year + ".exe" + "</url>");
	    				writer.Write(@"</update>");
	    				writer.Close();
	    				
	    	               }
	    	             ]]>
	    	           </code>
	          </script>
          </target>


	<target name="ftp" depends="xml"> 
	 <exec program="ftp2.bat">
	    <arg value="1" />
	</exec>
	</target> 
	
	
	<target name="ftpDebug" depends="xmlDebug"> 
		 <exec program="ftpDebug.bat">
		    <arg value="1" />
		</exec>
	</target> 
	
	<target name="generar" depends="ftp" description="assembly.">
		 <script language="C#" >
			     <references>
						<include name="System.dll" />
						<include name="System.Net.dll" />
					   </references>
					   <imports>
					       <import namespace="System.Net.Mail" />
	
	
			   </imports>
			   <code>
			     <![CDATA[
			       public static void ScriptMain(Project project) {
					string From;
					string To;
					string Message;
					string Subject;
	
				   System.Net.Mail.MailMessage Email;
				   From = "sistemas@alpha2000.com.ar";
				   To = "ivan@alpha2000.com.ar";
				   Message = "Se acaba de crear un nuevo instalador del Sisco.";
				   Subject = "Instalador Sisco.";
	
				   //Establesco El Email
	
				   Email = new System.Net.Mail.MailMessage(From, To, Subject, Message);
				   System.Net.Mail.SmtpClient smtpMail = new System.Net.Mail.SmtpClient("smtp.gmail.com");
				   Email.IsBodyHtml = true;
	
				   smtpMail.EnableSsl = true;
	
				   smtpMail.UseDefaultCredentials = false;
				   smtpMail.Credentials = new System.Net.NetworkCredential("ivancasbarro@gmail.com", "sdf2zjk");
				   smtpMail.Send(Email);
	
			       }
			     ]]>
			   </code>
	      </script>
	  </target>

	
	
	<target name="generarDebug" depends="ftpDebug" description="assembly.">
			 <script language="C#" >
				     <references>
							<include name="System.dll" />
							<include name="System.Net.dll" />
						   </references>
						   <imports>
						       <import namespace="System.Net.Mail" />
		
		
				   </imports>
				   <code>
				     <![CDATA[
				       public static void ScriptMain(Project project) {
						string From;
						string To;
						string Message;
						string Subject;
		
					   System.Net.Mail.MailMessage Email;
					   From = "sistemas@alpha2000.com.ar";
					   To = "ivan@alpha2000.com.ar";
					   Message = "Se acaba de crear un nuevo instalador del Sisco.";
					   Subject = "Instalador Sisco.";
		
					   //Establesco El Email
		
					   Email = new System.Net.Mail.MailMessage(From, To, Subject, Message);
					   System.Net.Mail.SmtpClient smtpMail = new System.Net.Mail.SmtpClient("smtp.gmail.com");
					   Email.IsBodyHtml = true;
		
					   smtpMail.EnableSsl = true;
		
					   smtpMail.UseDefaultCredentials = false;
					   smtpMail.Credentials = new System.Net.NetworkCredential("ivancasbarro@gmail.com", "sdf2zjk");
					   smtpMail.Send(Email);
		
				       }
				     ]]>
				   </code>
		      </script>
	  </target>
	

</project>
