update build scripts for WP8

Project: http://git-wip-us.apache.org/repos/asf/cordova-wp8/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-wp8/commit/57b876f3
Tree: http://git-wip-us.apache.org/repos/asf/cordova-wp8/tree/57b876f3
Diff: http://git-wip-us.apache.org/repos/asf/cordova-wp8/diff/57b876f3

Branch: refs/heads/2.9.x
Commit: 57b876f3d4b935c1c5c01a8227422721e1142bbf
Parents: 6c3badc
Author: Jesse MacFadyen <[email protected]>
Authored: Tue Jun 18 12:17:42 2013 -0700
Committer: Jesse MacFadyen <[email protected]>
Committed: Tue Jun 18 12:17:42 2013 -0700

----------------------------------------------------------------------
 wp8/template/MyTemplate.vstemplate              | 133 ++++++++++
 wp8/template/__PreviewImage.jpg                 | Bin 0 -> 25875 bytes
 wp8/template/__TemplateIcon.png                 | Bin 0 -> 6546 bytes
 wp8/template/vs/MyTemplateStandAlone.vstemplate | 144 ----------
 wp8/template/vs/description.txt                 |   8 -
 wp8/template/vs/pg_templateIcon.png             | Bin 6546 -> 0 bytes
 wp8/template/vs/pg_templatePreview.jpg          | Bin 25875 -> 0 bytes
 wp8/tooling/scripts/createTemplates.bat         |   2 +
 wp8/tooling/scripts/createTemplates.js          | 261 +++++++++++++++++++
 9 files changed, 396 insertions(+), 152 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-wp8/blob/57b876f3/wp8/template/MyTemplate.vstemplate
----------------------------------------------------------------------
diff --git a/wp8/template/MyTemplate.vstemplate 
b/wp8/template/MyTemplate.vstemplate
new file mode 100644
index 0000000..6eebeef
--- /dev/null
+++ b/wp8/template/MyTemplate.vstemplate
@@ -0,0 +1,133 @@
+<VSTemplate Version="3.0.0" 
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005"; Type="Project">
+  <TemplateData>
+    <Name>CordovaWP8_2_9_0rc1</Name>
+    <Description>Starter project for building a Cordova app for Windows Phone 
8 version: 0.0.0</Description>
+    <ProjectType>CSharp</ProjectType>
+    <ProjectSubType>
+    </ProjectSubType>
+    <SortOrder>1000</SortOrder>
+    <CreateNewFolder>true</CreateNewFolder>
+    <DefaultName>CordovaWP8_2_9_0rc1</DefaultName>
+    <ProvideDefaultName>true</ProvideDefaultName>
+    <LocationField>Enabled</LocationField>
+    <EnableLocationBrowseButton>true</EnableLocationBrowseButton>
+    <Icon>__TemplateIcon.png</Icon>
+    <PreviewImage>__PreviewImage.jpg</PreviewImage>
+  </TemplateData>
+  <TemplateContent>
+    <Project TargetFileName="CordovaWP8AppProj.csproj" 
File="CordovaWP8AppProj.csproj" ReplaceParameters="true">
+      <ProjectItem ReplaceParameters="true" 
TargetFileName="App.xaml">App.xaml</ProjectItem>
+      <ProjectItem ReplaceParameters="true" 
TargetFileName="App.xaml.cs">App.xaml.cs</ProjectItem>
+      <ProjectItem ReplaceParameters="false" 
TargetFileName="ApplicationIcon.png">ApplicationIcon.png</ProjectItem>
+      <ProjectItem ReplaceParameters="false" 
TargetFileName="Background.png">Background.png</ProjectItem>
+      <ProjectItem ReplaceParameters="true" 
TargetFileName="config.xml">config.xml</ProjectItem>
+      <Folder Name="cordova" TargetFolderName="cordova">
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="build.bat">build.bat</ProjectItem>
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="clean.bat">clean.bat</ProjectItem>
+        <Folder Name="lib" TargetFolderName="lib">
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="build.js">build.js</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="clean.js">clean.js</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="deploy.js">deploy.js</ProjectItem>
+          <ProjectItem ReplaceParameters="false" 
TargetFileName="install-device.bat">install-device.bat</ProjectItem>
+          <ProjectItem ReplaceParameters="false" 
TargetFileName="install-emulator.bat">install-emulator.bat</ProjectItem>
+          <ProjectItem ReplaceParameters="false" 
TargetFileName="list-devices.bat">list-devices.bat</ProjectItem>
+          <ProjectItem ReplaceParameters="false" 
TargetFileName="list-emulator-images.bat">list-emulator-images.bat</ProjectItem>
+          <ProjectItem ReplaceParameters="false" 
TargetFileName="list-started-emulators.bat">list-started-emulators.bat</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="log.js">log.js</ProjectItem>
+          <ProjectItem ReplaceParameters="false" 
TargetFileName="start-emulator.bat">start-emulator.bat</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="target-list.js">target-list.js</ProjectItem>
+        </Folder>
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="log.bat">log.bat</ProjectItem>
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="run.bat">run.bat</ProjectItem>
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="version.bat">version.bat</ProjectItem>
+      </Folder>
+      <Folder Name="cordovalib" TargetFolderName="cordovalib">
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="BrowserMouseHelper.cs">BrowserMouseHelper.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="CommandFactory.cs">CommandFactory.cs</ProjectItem>
+        <Folder Name="Commands" TargetFolderName="Commands">
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="BaseCommand.cs">BaseCommand.cs</ProjectItem>
+        </Folder>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="ConfigHandler.cs">ConfigHandler.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="CordovaCommandCall.cs">CordovaCommandCall.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="CordovaView.xaml">CordovaView.xaml</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="CordovaView.xaml.cs">CordovaView.xaml.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="DOMStorageHelper.cs">DOMStorageHelper.cs</ProjectItem>
+        <Folder Name="JSON" TargetFolderName="JSON">
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="JsonHelper.cs">JsonHelper.cs</ProjectItem>
+        </Folder>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="NativeExecution.cs">NativeExecution.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="OrientationHelper.cs">OrientationHelper.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="PluginResult.cs">PluginResult.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="ScriptCallback.cs">ScriptCallback.cs</ProjectItem>
+      </Folder>
+      <Folder Name="Images" TargetFolderName="Images">
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.back.rest.png">appbar.back.rest.png</ProjectItem>
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.close.rest.png">appbar.close.rest.png</ProjectItem>
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.feature.video.rest.png">appbar.feature.video.rest.png</ProjectItem>
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.next.rest.png">appbar.next.rest.png</ProjectItem>
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.save.rest.png">appbar.save.rest.png</ProjectItem>
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.stop.rest.png">appbar.stop.rest.png</ProjectItem>
+      </Folder>
+      <ProjectItem ReplaceParameters="true" 
TargetFileName="MainPage.xaml">MainPage.xaml</ProjectItem>
+      <ProjectItem ReplaceParameters="true" 
TargetFileName="MainPage.xaml.cs">MainPage.xaml.cs</ProjectItem>
+      <Folder Name="Plugins" TargetFolderName="Plugins">
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="Accelerometer.cs">Accelerometer.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="AudioFormatsHelper.cs">AudioFormatsHelper.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="AudioPlayer.cs">AudioPlayer.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="Battery.cs">Battery.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="Camera.cs">Camera.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="Capture.cs">Capture.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="Compass.cs">Compass.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="Contacts.cs">Contacts.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="DebugConsole.cs">DebugConsole.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="Device.cs">Device.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="File.cs">File.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="FileTransfer.cs">FileTransfer.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="GeoLocation.cs">GeoLocation.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="Globalization.cs">Globalization.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="ImageExifHelper.cs">ImageExifHelper.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="InAppBrowser.cs">InAppBrowser.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="Media.cs">Media.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="MimeTypeMapper.cs">MimeTypeMapper.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="NetworkStatus.cs">NetworkStatus.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="Notification.cs">Notification.cs</ProjectItem>
+        <Folder Name="UI" TargetFolderName="UI">
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="AudioCaptureTask.cs">AudioCaptureTask.cs</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="AudioRecorder.xaml">AudioRecorder.xaml</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="AudioRecorder.xaml.cs">AudioRecorder.xaml.cs</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="ImageCapture.xaml">ImageCapture.xaml</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="ImageCapture.xaml.cs">ImageCapture.xaml.cs</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="NotificationBox.xaml">NotificationBox.xaml</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="NotificationBox.xaml.cs">NotificationBox.xaml.cs</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="VideoCaptureTask.cs">VideoCaptureTask.cs</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="VideoRecorder.xaml">VideoRecorder.xaml</ProjectItem>
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="VideoRecorder.xaml.cs">VideoRecorder.xaml.cs</ProjectItem>
+        </Folder>
+      </Folder>
+      <Folder Name="Properties" TargetFolderName="Properties">
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="AppManifest.xml">AppManifest.xml</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="AssemblyInfo.cs">AssemblyInfo.cs</ProjectItem>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="WMAppManifest.xml">WMAppManifest.xml</ProjectItem>
+      </Folder>
+      <Folder Name="resources" TargetFolderName="resources">
+        <ProjectItem ReplaceParameters="false" 
TargetFileName="notification-beep.wav">notification-beep.wav</ProjectItem>
+      </Folder>
+      <Folder Name="Service References" TargetFolderName="Service References" 
/>
+      <ProjectItem ReplaceParameters="false" 
TargetFileName="SplashScreenImage.jpg">SplashScreenImage.jpg</ProjectItem>
+      <ProjectItem ReplaceParameters="false" 
TargetFileName="VERSION">VERSION</ProjectItem>
+      <Folder Name="www" TargetFolderName="www">
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="cordova.js">cordova.js</ProjectItem>
+        <Folder Name="css" TargetFolderName="css">
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="index.css">index.css</ProjectItem>
+        </Folder>
+        <Folder Name="img" TargetFolderName="img">
+          <ProjectItem ReplaceParameters="false" 
TargetFileName="logo.png">logo.png</ProjectItem>
+        </Folder>
+        <ProjectItem ReplaceParameters="true" 
TargetFileName="index.html">index.html</ProjectItem>
+        <Folder Name="js" TargetFolderName="js">
+          <ProjectItem ReplaceParameters="true" 
TargetFileName="index.js">index.js</ProjectItem>
+        </Folder>
+      </Folder>
+    </Project>
+  </TemplateContent>
+</VSTemplate>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-wp8/blob/57b876f3/wp8/template/__PreviewImage.jpg
----------------------------------------------------------------------
diff --git a/wp8/template/__PreviewImage.jpg b/wp8/template/__PreviewImage.jpg
new file mode 100644
index 0000000..1d72941
Binary files /dev/null and b/wp8/template/__PreviewImage.jpg differ

http://git-wip-us.apache.org/repos/asf/cordova-wp8/blob/57b876f3/wp8/template/__TemplateIcon.png
----------------------------------------------------------------------
diff --git a/wp8/template/__TemplateIcon.png b/wp8/template/__TemplateIcon.png
new file mode 100644
index 0000000..75c17c7
Binary files /dev/null and b/wp8/template/__TemplateIcon.png differ

http://git-wip-us.apache.org/repos/asf/cordova-wp8/blob/57b876f3/wp8/template/vs/MyTemplateStandAlone.vstemplate
----------------------------------------------------------------------
diff --git a/wp8/template/vs/MyTemplateStandAlone.vstemplate 
b/wp8/template/vs/MyTemplateStandAlone.vstemplate
deleted file mode 100644
index 6ecd8db..0000000
--- a/wp8/template/vs/MyTemplateStandAlone.vstemplate
+++ /dev/null
@@ -1,144 +0,0 @@
-<VSTemplate Version="3.0.0" 
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005"; Type="Project">
-  <TemplateData>
-    <Name>CordovaWP8_0_0_0</Name>
-    <Description>Cordova 0.0.0 for Windows Phone 8 using the Cordova source 
code directly.</Description>
-    <ProjectType>CSharp</ProjectType>
-    <ProjectSubType>
-    </ProjectSubType>
-    <SortOrder>1000</SortOrder>
-    <CreateNewFolder>true</CreateNewFolder>
-    <DefaultName>CordovaWP8_0_0_0</DefaultName>
-    <ProvideDefaultName>true</ProvideDefaultName>
-    <LocationField>Enabled</LocationField>
-    <EnableLocationBrowseButton>true</EnableLocationBrowseButton>
-    <Icon>__TemplateIcon.png</Icon>
-    <PreviewImage>__PreviewImage.jpg</PreviewImage>
-  </TemplateData>
-  <TemplateContent>
-    <Project TargetFileName="CordovaAppProj.csproj" 
File="CordovaAppProj.csproj" ReplaceParameters="true">
-      <ProjectItem ReplaceParameters="true" 
TargetFileName="App.xaml">App.xaml</ProjectItem>
-      <ProjectItem ReplaceParameters="true" 
TargetFileName="App.xaml.cs">App.xaml.cs</ProjectItem>
-      <ProjectItem ReplaceParameters="false" 
TargetFileName="ApplicationIcon.png">ApplicationIcon.png</ProjectItem>
-      <ProjectItem ReplaceParameters="false" 
TargetFileName="Background.png">Background.png</ProjectItem>
-      <ProjectItem ReplaceParameters="true" 
TargetFileName="config.xml">config.xml</ProjectItem>
-      <Folder Name="cordovalib" TargetFolderName="cordovalib">
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="BrowserMouseHelper.cs">BrowserMouseHelper.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="CommandFactory.cs">CommandFactory.cs</ProjectItem>
-        <Folder Name="Commands" TargetFolderName="Commands">
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="BaseCommand.cs">BaseCommand.cs</ProjectItem>
-        </Folder>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="ConfigHandler.cs">ConfigHandler.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="CordovaCommandCall.cs">CordovaCommandCall.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="CordovaView.xaml">CordovaView.xaml</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="CordovaView.xaml.cs">CordovaView.xaml.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="DOMStorageHelper.cs">DOMStorageHelper.cs</ProjectItem>
-        <Folder Name="JSON" TargetFolderName="JSON">
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="JsonHelper.cs">JsonHelper.cs</ProjectItem>
-        </Folder>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="NativeExecution.cs">NativeExecution.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="OrientationHelper.cs">OrientationHelper.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="PluginResult.cs">PluginResult.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="ScriptCallback.cs">ScriptCallback.cs</ProjectItem>
-      </Folder>
-      <Folder Name="Images" TargetFolderName="Images">
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.back.rest.png">appbar.back.rest.png</ProjectItem>
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.close.rest.png">appbar.close.rest.png</ProjectItem>
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.feature.video.rest.png">appbar.feature.video.rest.png</ProjectItem>
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.next.rest.png">appbar.next.rest.png</ProjectItem>
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.save.rest.png">appbar.save.rest.png</ProjectItem>
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="appbar.stop.rest.png">appbar.stop.rest.png</ProjectItem>
-      </Folder>
-      <ProjectItem ReplaceParameters="true" 
TargetFileName="MainPage.xaml">MainPage.xaml</ProjectItem>
-      <ProjectItem ReplaceParameters="true" 
TargetFileName="MainPage.xaml.cs">MainPage.xaml.cs</ProjectItem>
-      <Folder Name="Plugins" TargetFolderName="Plugins">
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="Accelerometer.cs">Accelerometer.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="AudioFormatsHelper.cs">AudioFormatsHelper.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="AudioPlayer.cs">AudioPlayer.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="Battery.cs">Battery.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="Camera.cs">Camera.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="Capture.cs">Capture.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="Compass.cs">Compass.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="Contacts.cs">Contacts.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="DebugConsole.cs">DebugConsole.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="Device.cs">Device.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="File.cs">File.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="FileTransfer.cs">FileTransfer.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="GeoLocation.cs">GeoLocation.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="Globalization.cs">Globalization.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="ImageExifHelper.cs">ImageExifHelper.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="InAppBrowser.cs">InAppBrowser.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="Media.cs">Media.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="MimeTypeMapper.cs">MimeTypeMapper.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="NetworkStatus.cs">NetworkStatus.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="Notification.cs">Notification.cs</ProjectItem>
-        <Folder Name="UI" TargetFolderName="UI">
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="AudioCaptureTask.cs">AudioCaptureTask.cs</ProjectItem>
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="AudioRecorder.xaml">AudioRecorder.xaml</ProjectItem>
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="AudioRecorder.xaml.cs">AudioRecorder.xaml.cs</ProjectItem>
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="ImageCapture.xaml">ImageCapture.xaml</ProjectItem>
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="ImageCapture.xaml.cs">ImageCapture.xaml.cs</ProjectItem>
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="NotificationBox.xaml">NotificationBox.xaml</ProjectItem>
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="NotificationBox.xaml.cs">NotificationBox.xaml.cs</ProjectItem>
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="VideoCaptureTask.cs">VideoCaptureTask.cs</ProjectItem>
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="VideoRecorder.xaml">VideoRecorder.xaml</ProjectItem>
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="VideoRecorder.xaml.cs">VideoRecorder.xaml.cs</ProjectItem>
-        </Folder>
-      </Folder>
-      <Folder Name="Properties" TargetFolderName="Properties">
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="AppManifest.xml">AppManifest.xml</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="AssemblyInfo.cs">AssemblyInfo.cs</ProjectItem>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="WMAppManifest.xml">WMAppManifest.xml</ProjectItem>
-      </Folder>
-      <Folder Name="resources" TargetFolderName="resources">
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="notification-beep.wav">notification-beep.wav</ProjectItem>
-      </Folder>
-      <Folder Name="Service References" TargetFolderName="Service References" 
/>
-      <ProjectItem ReplaceParameters="false" 
TargetFileName="SplashScreenImage.jpg">SplashScreenImage.jpg</ProjectItem>
-      <ProjectItem ReplaceParameters="false" 
TargetFileName="VERSION">VERSION</ProjectItem>
-      <Folder Name="www" TargetFolderName="www">
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="cordova.js">cordova.js</ProjectItem>
-        <Folder Name="css" TargetFolderName="css">
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="index.css">index.css</ProjectItem>
-        </Folder>
-        <Folder Name="img" TargetFolderName="img">
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="logo.png">logo.png</ProjectItem>
-        </Folder>
-        <ProjectItem ReplaceParameters="true" 
TargetFileName="index.html">index.html</ProjectItem>
-        <Folder Name="js" TargetFolderName="js">
-          <ProjectItem ReplaceParameters="true" 
TargetFileName="index.js">index.js</ProjectItem>
-        </Folder>
-      </Folder>
-      <Folder Name="cordova" TargetFolderName="cordova">
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="build.bat">build.bat</ProjectItem>
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="clean.bat">clean.bat</ProjectItem>
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="log.bat">log.bat</ProjectItem>
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="run.bat">run.bat</ProjectItem>
-        <ProjectItem ReplaceParameters="false" 
TargetFileName="version.bat">version.bat</ProjectItem>
-        <Folder Name="lib" TargetFolderName="lib">
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="build.js">build.js</ProjectItem>
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="clean.js">clean.js</ProjectItem>
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="deploy.js">deploy.js</ProjectItem>
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="install-device.bat">install-device.bat</ProjectItem>
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="install-emulator.bat">install-emulator.bat</ProjectItem>
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="list-devices.bat">list-devices.bat</ProjectItem>
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="list-emulator-images.bat">list-emulator-images.bat</ProjectItem>
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="list-started-emulators.bat">list-started-emulators.bat</ProjectItem>
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="log.js">log.js</ProjectItem>
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="start-emulator.bat">start-emulator.bat</ProjectItem>
-          <ProjectItem ReplaceParameters="false" 
TargetFileName="target-list.js">target-list.js</ProjectItem>
-          <Folder Name="CordovaDeploy" TargetFolderName="CordovaDeploy">
-            <ProjectItem ReplaceParameters="false" 
TargetFileName="CordovaDeploy.sln">CordovaDeploy.sln</ProjectItem>
-            <Folder Name="CordovaDeploy" TargetFolderName="CordovaDeploy">
-              <ProjectItem ReplaceParameters="false" 
TargetFileName="app.config">app.config</ProjectItem>
-              <ProjectItem ReplaceParameters="false" 
TargetFileName="CordovaDeploy.csproj">CordovaDeploy.csproj</ProjectItem>
-              <ProjectItem ReplaceParameters="false" 
TargetFileName="Program.cs">Program.cs</ProjectItem>
-              <Folder Name="Properties" TargetFolderName="Properties">
-                <ProjectItem ReplaceParameters="false" 
TargetFileName="AssemblyInfo.cs">AssemblyInfo.cs</ProjectItem>
-              </Folder>
-            </Folder>
-          </Folder>
-        </Folder>
-      </Folder>
-    </Project>
-  </TemplateContent>
-</VSTemplate>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-wp8/blob/57b876f3/wp8/template/vs/description.txt
----------------------------------------------------------------------
diff --git a/wp8/template/vs/description.txt b/wp8/template/vs/description.txt
deleted file mode 100644
index 99306fa..0000000
--- a/wp8/template/vs/description.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-CordovaWP8_2_6_0_Full
-Apache Cordova 0.0.0 Windows Phone 8 App using a pre-built dll.
-
-CordovaWP8_2_6_0_StandAlone
-Apache Cordova 0.0.0 Windows Phone 8 App including all framework source code.
-
-
-

http://git-wip-us.apache.org/repos/asf/cordova-wp8/blob/57b876f3/wp8/template/vs/pg_templateIcon.png
----------------------------------------------------------------------
diff --git a/wp8/template/vs/pg_templateIcon.png 
b/wp8/template/vs/pg_templateIcon.png
deleted file mode 100644
index 75c17c7..0000000
Binary files a/wp8/template/vs/pg_templateIcon.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/cordova-wp8/blob/57b876f3/wp8/template/vs/pg_templatePreview.jpg
----------------------------------------------------------------------
diff --git a/wp8/template/vs/pg_templatePreview.jpg 
b/wp8/template/vs/pg_templatePreview.jpg
deleted file mode 100644
index 1d72941..0000000
Binary files a/wp8/template/vs/pg_templatePreview.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/cordova-wp8/blob/57b876f3/wp8/tooling/scripts/createTemplates.bat
----------------------------------------------------------------------
diff --git a/wp8/tooling/scripts/createTemplates.bat 
b/wp8/tooling/scripts/createTemplates.bat
new file mode 100644
index 0000000..cf85190
--- /dev/null
+++ b/wp8/tooling/scripts/createTemplates.bat
@@ -0,0 +1,2 @@
+@echo off
+cscript "%~dp0\createTemplates.js" %* //nologo
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-wp8/blob/57b876f3/wp8/tooling/scripts/createTemplates.js
----------------------------------------------------------------------
diff --git a/wp8/tooling/scripts/createTemplates.js 
b/wp8/tooling/scripts/createTemplates.js
new file mode 100644
index 0000000..573c176
--- /dev/null
+++ b/wp8/tooling/scripts/createTemplates.js
@@ -0,0 +1,261 @@
+/*
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+*/
+
+var fso = WScript.CreateObject('Scripting.FileSystemObject'),
+    shell = WScript.CreateObject("shell.application"),
+    wscript_shell = WScript.CreateObject("WScript.Shell");
+
+//Set up directory structure of current release
+//arguments passed in
+var args = WScript.Arguments;
+
+//Root folder of cordova-windowsphone (i.e C:\Cordova\cordova-windowsphone)
+var repoRoot = WScript.ScriptFullName.split('\\wp8\\tooling\\', 1);
+
+//Sub folder containing templates
+var templatePath = '\\template';
+
+//Get version number
+var versionNum ='0.0.0';
+
+var platformRoot = WScript.ScriptFullName.split('\\tooling\\', 1);
+
+//  set with the -install switch, default false 
+var addToVS = false; 
+
+// help function
+function Usage() {
+    Log("\nUsage: createTemplates [-install]");
+    Log("Build/zips up templates from the local repo")
+    Log("    -install : also installs templates to user directory on 
success\n");
+}
+
+// logs messaged to stdout and stderr
+function Log(msg, error) {
+    if (error) {
+        WScript.StdErr.WriteLine(msg);
+    }
+    else {
+        WScript.StdOut.WriteLine(msg);
+    }
+}
+
+// deletes file if it exists
+function deleteFileIfExists(path) {
+    if(fso.FileExists(path)) {
+        fso.DeleteFile(path);
+   }
+}
+
+function deleteFolderIfExists(path) {
+    if(fso.FolderExists(path)) {
+        fso.DeleteFolder(path);
+    }
+}
+
+var ForReading = 1, ForWriting = 2, ForAppending = 8;
+var TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0;
+
+// returns the contents of a file
+function read(filename) {
+    WScript.Echo('Reading in ' + filename);
+    if(fso.FileExists(filename))
+    {
+        var f=fso.OpenTextFile(filename, 1,2);
+        var s=f.ReadAll();
+        f.Close();
+        return s;
+    }
+    else
+    {
+        WScript.StdErr.WriteLine('Cannot read non-existant file : ' + 
filename);
+        WScript.Quit(1);
+    }
+    return null;
+}
+
+// writes the contents to the specified file
+function write(filename, contents) {
+    var f=fso.OpenTextFile(filename, ForWriting, TristateTrue);
+    f.Write(contents);
+    f.Close();
+}
+
+// replaces the matches of regexp with replacement
+function replaceInFile(filename, regexp, replacement) {
+    //WScript.Echo("Replaceing with "+replacement+ " in:");
+    var text = read(filename).replace(regexp,replacement);
+    //WScript.Echo(text);
+    write(filename,text);
+}
+
+// executes a commmand in the shell
+function exec(command) {
+    Log("exec:" + command);
+    var oShell=wscript_shell.Exec(command);
+    var maxTime = 5000;
+    while (oShell.Status === 0) {
+        if(maxTime > 0) {
+            maxTime -= 100;
+            WScript.sleep(100);
+        }
+        else {
+            Log("Exec timed out with command :: " + command);
+        }
+    }
+}
+
+// executes a commmand in the shell
+function exec_verbose(command) {
+    //Log("Command: " + command);
+    var oShell=wscript_shell.Exec(command);
+    while (oShell.Status === 0) {
+        //Wait a little bit so we're not super looping
+        WScript.sleep(100);
+        //Print any stdout output from the script
+        if(!oShell.StdOut.AtEndOfStream) {
+            var line = oShell.StdOut.ReadLine();
+            Log(line);
+        }
+    }
+    //Check to make sure our scripts did not encounter an error
+    if(!oShell.StdErr.AtEndOfStream)
+    {
+        var err_line = oShell.StdErr.ReadAll();
+        WScript.StdErr.WriteLine(err_line);
+        WScript.Quit(1);
+    }
+}
+
+function copyFile(src,dest) {
+    exec('%comspec% /c copy /Y ' + src + ' ' + dest);
+}
+
+
+// packages templates into .zip
+function package_templates()
+{
+    Log("Creating template .zip files ...");
+    var templateOutFilename = repoRoot + '\\CordovaWP8_' + 
versionNum.replace(/\./g, '_') + '.zip';
+    
+    // clear the destination
+    deleteFileIfExists(templateOutFilename);
+
+    // clean the template folder, if the project was opened in VS, it creates 
some useless cruft.
+    deleteFolderIfExists(platformRoot + templatePath + '\\Bin');
+    deleteFolderIfExists(platformRoot + templatePath + '\\obj');
+    deleteFolderIfExists(platformRoot + templatePath + '\\Service\ 
References');
+
+    deleteFileIfExists(platformRoot + templatePath + 
"\\CordovaWP8Solution.v11.suo");
+
+    exec('%comspec% /c xcopy /Y /E /I ' + repoRoot + '\\Plugins ' + 
platformRoot + templatePath + '\\Plugins');
+    copyFile(repoRoot + '\\VERSION',platformRoot + templatePath);
+
+    // update .vstemplate files for the template zips.
+    var name_regex = /CordovaWP8[_](\d+)[_](\d+)[_](\d+)(rc\d)?/g;
+    var discript_regex = /Cordova\s*(\d+)[.](\d+)[.](\d+)(rc\d)?/;
+
+    replaceInFile(platformRoot + templatePath + '\\MyTemplate.vstemplate', 
name_regex,  'CordovaWP8_' + versionNum.replace(/\./g, '_'));
+    replaceInFile(platformRoot + templatePath + '\\MyTemplate.vstemplate', 
discript_regex,  "Cordova " + versionNum);
+
+
+    zip_project(templateOutFilename, platformRoot + templatePath);
+
+    if(addToVS)
+    {
+        var template_dir = 
wscript_shell.ExpandEnvironmentStrings("%USERPROFILE%") + '\\Documents\\Visual 
Studio 2012\\Templates\\ProjectTemplates\\Testing';
+        if(fso.FolderExists(template_dir ))
+        {
+            Log("template_dir = " + template_dir);
+            dest = shell.NameSpace(template_dir);
+            dest.CopyHere(templateOutFilename, 4|20);
+        }
+        else
+        {
+            Log("WARNING: Could not find template directory in Visual 
Studio,\n you can manually copy over the template .zip files.");
+        }
+  }
+}
+
+function zip_project(zip_path, project_path) {
+    // create empty ZIP file and open for adding
+    var file = fso.CreateTextFile(zip_path, true);
+
+    // create twenty-two byte "fingerprint" for .zip
+    file.write("PK");
+    file.write(String.fromCharCode(5));
+    file.write(String.fromCharCode(6));
+    file.write('\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0');
+    file.Close();
+
+    // open .zip folder and copy contents of project_path to zip_path
+    var zipFolder = shell.NameSpace(zip_path);
+    Log("zip_path = " + zip_path);
+    Log("zipFolder = " + zipFolder);
+    Log("project_path = " + project_path);
+
+    var sourceItems = shell.NameSpace(project_path).items();
+    if (zipFolder !== null) {
+        zipFolder.CopyHere(sourceItems, 4|16|512|1024);
+        var maxTime = 5000;
+        Log("sourceItems.Count = " + sourceItems.Count);
+        while(zipFolder.items().Count < sourceItems.Count)
+        {
+            maxTime -= 100;
+            if(maxTime > 0 ) {
+                WScript.Sleep(100);
+            }
+            else {
+                Log('Timeout. Failed to create .zip file.', true);
+                break;
+            }
+        }
+        Log("zipFolder.items().Count = " + zipFolder.items().Count);
+    }
+    else {
+        Log('Failed to create .zip file.', true);
+    }
+}
+
+// delete any unneeded files when finished
+function cleanUp() {
+
+}
+
+function parseArgs() {
+    if(args.Count() > 0) {
+
+        //Support help flags -help, --help, /? 
+        if(args(0).indexOf("-help") > -1 || 
+           args(0).indexOf("/?") > -1 ) {
+            Usage();
+            WScript.Quit(1);
+        }
+        else if(args(0).indexOf("-install") > -1) {
+            addToVS = true;
+        }
+    }
+}
+
+// MAIN
+parseArgs();
+// build/package the templates
+versionNum = read(repoRoot + "\\VERSION");
+package_templates(repoRoot);
+cleanUp();
\ No newline at end of file

Reply via email to