deltacloud-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mar...@apache.org
Subject svn commit: r1353588 [3/23] - in /deltacloud/trunk/site: ./ content/ content/Scripts/ content/assets/ content/assets/css/ content/assets/img/ content/assets/img/documentation_files/ content/assets/js/ content/assets/less/ content/css/ content/css/bluep...
Date Mon, 25 Jun 2012 15:05:57 GMT
Copied: deltacloud/trunk/site/content/assets/img/documentation.html (from r1336750, deltacloud/trunk/site/output/documentation.html)
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/img/documentation.html?p2=deltacloud/trunk/site/content/assets/img/documentation.html&p1=deltacloud/trunk/site/output/documentation.html&r1=1336750&r2=1353588&rev=1353588&view=diff
==============================================================================
--- deltacloud/trunk/site/output/documentation.html (original)
+++ deltacloud/trunk/site/content/assets/img/documentation.html Mon Jun 25 15:05:02 2012
@@ -1,115 +1,114 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html>
-  <head>
+<html><head>
     <title>
       Deltacloud - Documentation
     </title>
-    <meta content='' name='keywords' />
-    <meta content='' name='description' />
-    <meta content='text/html; charset=utf-8' http-equiv='Content-Type' />
-    <link href='./styles/favicon.ico' rel='shortcut icon' type='image/x-icon' />
-    <link href='./styles/default.css' rel='StyleSheet' title='Main style' type='text/css' />
-    <link href='./styles/default-debug.css' rel='Alternate StyleSheet' title='Debug main style' type='text/css' />
+    <meta content="" name="keywords">
+    <meta content="" name="description">
+    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
+    <link href="http://deltacloud.apache.org/styles/favicon.ico" rel="shortcut icon" type="image/x-icon">
+    <link href="documentation_files/default.css" rel="StyleSheet" title="Main style" type="text/css">
+    <link href="documentation_files/default-debug.css" rel="Alternate StyleSheet" title="Debug main style" type="text/css">
   </head>
   <body>
-    <div id='header'>
-      <div class='container'>
-        <div id='headerLogo' onclick="location.href='index.html';" style='cursor: pointer;'>
+    <div id="header">
+      <div class="container">
+        <div id="headerLogo" onclick="location.href='index.html';" style="cursor: pointer;">
           <h1>
             Deltacloud - Many clouds. One API. No problem.
           </h1>
         </div>
       </div>
     </div>
-    <div id='navigation'>
-      <div class='container' id='menu'>
-        <ul class='l0'>
+    <div id="navigation">
+      <div class="container" id="menu">
+        <ul class="l0">
           <li>
-            <a class='inactive' href='./index.html' title='Deltacloud Home'>Home</a>
+            <a class="inactive" href="http://deltacloud.apache.org/index.html" title="Deltacloud Home">Home</a>
           </li>
           <li>
-            <a class='inactive' href='./download.html' title='Get the latest releases'>Download</a>
+            <a class="inactive" href="http://deltacloud.apache.org/download.html" title="Get the latest releases">Download</a>
           </li>
           <li>
-            <a class='inactive' href='./developers.html' title='Information for developers'>Developers</a>
+            <a class="inactive" href="http://deltacloud.apache.org/developers.html" title="Information for developers">Developers</a>
           </li>
           <li>
-            <a class='active' href='./documentation.html' title='Project documentation'>Documentation</a>
+            <a class="active" href="http://deltacloud.apache.org/documentation.html" title="Project documentation">Documentation</a>
           </li>
           <li>
-            <a class='inactive' href='./contact.html' title='Contact us!'>Contact</a>
+            <a class="inactive" href="http://deltacloud.apache.org/contact.html" title="Contact us!">Contact</a>
           </li>
         </ul>
       </div>
     </div>
-    <div id='subnavigation'>
-      <div class='container' id='submenu'>
-        <ul class='l1'>
+    <div id="subnavigation">
+      <div class="container" id="submenu">
+        <ul class="l1">
           <li>
-            <a class='active' href='documentation.html'>
+            <a class="active" href="http://deltacloud.apache.org/documentation.html">
               Installation
             </a>
           </li>
           <li>
-            <a class='inactive' href='api.html'>
+            <a class="inactive" href="http://deltacloud.apache.org/api.html">
               REST API
             </a>
           </li>
           <li>
-            <a class='inactive' href='drivers.html'>
+            <a class="inactive" href="http://deltacloud.apache.org/drivers.html">
               Drivers
             </a>
           </li>
           <li>
-            <a class='inactive' href='client-ruby.html'>
+            <a class="inactive" href="http://deltacloud.apache.org/client-ruby.html">
               Ruby Client
             </a>
           </li>
           <li>
-            <a class='inactive' href='libdeltacloud.html'>
+            <a class="inactive" href="http://deltacloud.apache.org/libdeltacloud.html">
               Libdeltacloud
             </a>
           </li>
         </ul>
       </div>
     </div>
-    <div id='frontpageHeader'></div>
-    <div id='main'>
-      <div class='container' id='content-deltacloud'>
+    <div id="frontpageHeader"></div>
+    <div id="main">
+      <div class="container" id="content-deltacloud">
         <h1>Documentation</h1>
         <p>The Deltacloud documentation is divided into the following parts:</p>
         <ul>
           <li>
-            <a href='documentation.html'>
+            <a href="http://deltacloud.apache.org/documentation.html">
               Installation, dependencies and quick-start (this page)
             </a>
           </li>
           <li>
-            <a href='api.html'>
+            <a href="http://deltacloud.apache.org/api.html">
               REST API definition
             </a>
           </li>
           <li>
-            <a href='drivers.html'>
+            <a href="http://deltacloud.apache.org/drivers.html">
               Information about currently supported drivers
             </a>
           </li>
           <li>
-            <a href='client-ruby.html'>
+            <a href="http://deltacloud.apache.org/client-ruby.html">
               The Deltacloud Ruby client
             </a>
           </li>
           <li>
-            <a href='libdeltacloud.html'>
+            <a href="http://deltacloud.apache.org/libdeltacloud.html">
               The libdeltacloud C library
             </a>
           </li>
         </ul>
-        <br />
-        <br />
-        <hr />
-        <br />
-        <a name='install_deltacloud'></a>
+        <br>
+        <br>
+        <hr>
+        <br>
+        <a name="install_deltacloud"></a>
         <h1>Install Deltacloud</h1>
         This page lists the libraries and packages that you will need in order to install
         the Deltacloud server, a "Hello Deltacloud" quick-start guide as well as some
@@ -117,8 +116,8 @@
         <h2>Installation of Deltacloud itself</h2>
         Once you've setup all the dependencies listed below, installing Deltacloud is as easy as
         typing:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ sudo gem install deltacloud-core</code></pre>
         And
         <strong>thats it!</strong>
@@ -127,21 +126,21 @@
         command will automatically fetch and install all other gems that the Deltacloud server
         needs if you don't already have these. As an alternative you can get the latest
         releases of Deltacloud from the
-        <a href='http://www.apache.org/dist/deltacloud/'>
+        <a href="http://www.apache.org/dist/deltacloud/">
           Apache website.
         </a>
-        <br />
-        <br />
-        <hr />
-        <br />
-        <a name='dependencies'></a>
+        <br>
+        <br>
+        <hr>
+        <br>
+        <a name="dependencies"></a>
         <h2>Installation dependencies</h2>
         The Deltacloud server relies on a number of external rubygems and other libraries.
         You must have the following packages installed before trying to install and
         run the Deltacloud server. Please note that the names of the packages below
         may differ for your distribution (e.g. 'ruby-devel' vs 'ruby-dev'). In short, you need:
-        <br />
-        <br />
+        <br>
+        <br>
         <ul>
           <li>ruby and ruby-devel,</li>
           <li>gem (RubyGems),</li>
@@ -153,31 +152,33 @@
         More info on getting these follows:
         <h3>ruby and ruby-devel</h3>
         You need to
-        <a href='http://www.ruby-lang.org/en/downloads/'>
+        <a href="http://www.ruby-lang.org/en/downloads/">
           install ruby.
         </a>
         You can check to see if you already have a ruby installation by typing:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ ruby -v</code></pre>
         If you see something that looks like the following:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-linux]</code></pre>
         then you can skip the ruby installation. Deltacloud requires ruby to be
         at least version 1.8.7. You also need the development headers (ruby-devel) as
         Deltacloud relies on some rubygems with C extensions. If you use a package manager
         such as yum or apt-get:
-        <br />
-        <br />
-        <pre><code>sudo yum install ruby&#x000A;sudo yum install ruby-devel</code></pre>
+        <br>
+        <br>
+        <pre><code>sudo yum install ruby
+sudo yum install ruby-devel</code></pre>
         OR
-        <br />
-        <br />
-        <pre><code>sudo apt-get install ruby&#x000A;sudo apt-get install ruby-devel</code></pre>
+        <br>
+        <br>
+        <pre><code>sudo apt-get install ruby
+sudo apt-get install ruby-devel</code></pre>
         <h3>gem (RubyGems)</h3>
         Deltacloud relies on a number of ruby gems so you also need to
-        <a href='http://docs.rubygems.org/read/chapter/3'>
+        <a href="http://docs.rubygems.org/read/chapter/3">
           install RubyGems.
         </a>
         As with ruby, you can check if you already have the
@@ -185,39 +186,41 @@
         executable installed by typing
         <strong>gem -v</strong>
         . Again, your package manager can help with the installation:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ sudo yum install rubygems</code></pre>
         <h3>gcc-c++, libxml2, libxml2-devel, libxslt, libxslt-devel</h3>
         These are required to build RubyGems that have C extensions. Again, typically
         the easiest way to get these is with you package manager:
-        <br />
-        <br />
-        <pre><code>$ sudo yum install gcc-c++&#x000A;$ sudo yum install libxml libxml2-devel&#x000A;$ sudo yum install libxslt libxslt-devel</code></pre>
+        <br>
+        <br>
+        <pre><code>$ sudo yum install gcc-c++
+$ sudo yum install libxml libxml2-devel
+$ sudo yum install libxslt libxslt-devel</code></pre>
         <h3>rake</h3>
-        <a href='http://rake.rubyforge.org/'>
+        <a href="http://rake.rubyforge.org/">
           Rake
         </a>
         is Ruby's Make and is itself a ruby gem. Once you have RubyGems installed you can
         get rake with:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ sudo gem install rake</code></pre>
-        <br />
-        <br />
-        <hr />
-        <br />
-        <a name='quick_start'></a>
+        <br>
+        <br>
+        <hr>
+        <br>
+        <a name="quick_start"></a>
         <h1>"Hello Deltacloud!", quick-start guide</h1>
         This guide assumes a linux environment. Some of the Deltacloud developers
         are running recent versions of
-        <a href='http://fedoraproject.org'>
+        <a href="http://fedoraproject.org/">
           Fedora.
         </a>
         However, as Deltacloud is written in Ruby you should be able to install it on
         any OS that supports Ruby. If you have succesfully installed Deltacloud or are
         having any problems doing so, please
-        <a href='contact.html'>
+        <a href="http://deltacloud.apache.org/contact.html">
           let us know,
         </a>
         we'd love to hear from you!
@@ -238,13 +241,13 @@
         is the name of the cloud provider that you have an account with, for example 'ec2'.
         If you don't yet have an account with a cloud provider, you can still try the Deltacloud
         mock driver:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>deltacloudd -i mock</code></pre>
         This will start the Deltacloud server on your local machine with the mock driver, accepting
         connections on port 3001 (the default). From version 0.4.0 of Deltacloud, you can use the
         '-l' flag to see
-        <a href='drivers.html#providers'>
+        <a href="http://deltacloud.apache.org/drivers.html#providers">
           all available
         </a>
         <strong>
@@ -255,9 +258,24 @@
         that can be used with the
         <strong>deltacloudd</strong>
         executable.
-        <br />
-        <br />
-        <pre><code>$ deltacloudd -l&#x000A;<br />&#x000A;Available drivers:&#x000A;* condor&#x000A;* vsphere&#x000A;* opennebula&#x000A;* eucalyptus&#x000A;* rhevm&#x000A;* sbc&#x000A;* azure&#x000A;* gogrid&#x000A;* mock&#x000A;* rackspace&#x000A;* rimuhosting&#x000A;* terremark&#x000A;* ec2</code></pre>
+        <br>
+        <br>
+        <pre><code>$ deltacloudd -l
+<br>
+Available drivers:
+* condor
+* vsphere
+* opennebula
+* eucalyptus
+* rhevm
+* sbc
+* azure
+* gogrid
+* mock
+* rackspace
+* rimuhosting
+* terremark
+* ec2</code></pre>
         After you start the server, the Deltacloud HTML interface is available at
         <strong>
           http://localhost:3001/api
@@ -271,7 +289,7 @@
         </strong>
         to each URL. On Webkit based browsers like Safari, you might need to instruct the
         server explicitly to
-        <a href='http://www.gethifi.com/blog/webkit-team-admits-accept-header-error'>
+        <a href="http://www.gethifi.com/blog/webkit-team-admits-accept-header-error">
           return HTML
         </a>
         Do this by appending
@@ -281,39 +299,39 @@
           </em>
         </strong>
         to each URL. Your browser will prompt you for
-        <a href='drivers.html#credentials'>
+        <a href="http://deltacloud.apache.org/drivers.html#credentials">
           credentials
         </a>
         when you invoke an operation that requires
-        <a href='api.html#authentication'>
+        <a href="http://deltacloud.apache.org/api.html#authentication">
           authentication.
         </a>
-        <br />
-        <br />
+        <br>
+        <br>
         The '-h' flag will list all available options for
         <strong>deltacloudd.</strong>
         For example, to start the Deltacloud server with the Rackspace driver on port 10000
         you can use:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ deltacloudd -i rackspace -P 10000</code></pre>
         You may want to install the server on another machine and make Deltacloud available on
         your local network. To do this you need to bind the Deltacloud server to an address other
         than 'localhost' (default). For instance, if you install and start Deltacloud on a machine
         with the IP address 192.168.10.200 you should start the server with:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ deltacloudd -i ec2 -P 5000 -r 192.168.10.200</code></pre>
         This will make the Deltacloud server available at the address
         <strong>
           http://192.168.10.200:5000/api.
         </strong>
-        <br />
-        <br />
-        <br />
-        <br />
-        <hr />
-        <br />
+        <br>
+        <br>
+        <br>
+        <br>
+        <hr>
+        <br>
         <h2>The Deltacloud ruby client</h2>
         The Deltacloud project also maintains a ruby client, which you need to install
         seperately to the Deltacloud API server. The Deltacloud client consists of a
@@ -324,18 +342,31 @@
         <strong>
           192.168.10.244:5000
         </strong>
-        <br />
-        <br />
-        <pre><code>require 'deltacloud'&#x000A;<br />&#x000A;api_url      = 'http://192.168.10.244:5000/api'&#x000A;api_name     = 'TK2PJCAN9R1HKG2FK24Z'&#x000A;api_password = 'aLe27rZlRhlBcVoQbL4JsVtaNga12vEL9d9kS5CA'&#x000A;<br />&#x000A;client = DeltaCloud.new( api_name, api_password, api_url )&#x000A;<br />&#x000A;# get a list of currently running instances (virtual machines)&#x000A;client.instances.each do |instance|&#x000A; puts instance.name&#x000A;end&#x000A;<br />&#x000A;<div id='do'>other work with client here</div></code></pre>
+        <br>
+        <br>
+        <pre><code>require 'deltacloud'
+<br>
+api_url      = 'http://192.168.10.244:5000/api'
+api_name     = 'TK2PJCAN9R1HKG2FK24Z'
+api_password = 'aLe27rZlRhlBcVoQbL4JsVtaNga12vEL9d9kS5CA'
+<br>
+client = DeltaCloud.new( api_name, api_password, api_url )
+<br>
+# get a list of currently running instances (virtual machines)
+client.instances.each do |instance|
+ puts instance.name
+end
+<br>
+<div id="do">other work with client here</div></code></pre>
         More comprehensive information on using the Deltacloud ruby client in this way
         can be found in the
-        <a href='client-ruby.html'>
+        <a href="http://deltacloud.apache.org/client-ruby.html">
           client documentation.
         </a>
         Assuming you already have Ruby and RubyGems setup, you can install the Deltacloud
         client by simply typing:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ sudo gem install deltacloud-client</code></pre>
         Installing the Deltacloud client also gives you the
         <strong>
@@ -343,15 +374,15 @@
         </strong>
         command line tool. This executable makes use of the Deltacloud client library to speak to the
         Deltacloud server using the
-        <a href='api.html'>
+        <a href="http://deltacloud.apache.org/api.html">
           REST API.
         </a>
         This allows you to to control your IAAS cloud infrastructure form the command line;
         even better if you are familiar with linux scripting, you can knock up a bash script in no time
         to automate your cloud infrastructure tasks.
         The general usage pattern for deltacloudc is:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ deltacloudc collection operation [options]</code></pre>
         <ul>
           <li>
@@ -362,7 +393,7 @@
             </strong>
             refers to the Deltacloud object collections, such as Instances,
             Images, Buckets, Realms etc, as described in greater detail in the
-            <a href='api.html#h1'>
+            <a href="http://deltacloud.apache.org/api.html#h1">
               REST API
             </a>
           </li>
@@ -402,7 +433,7 @@
             (e.g., export API_URL=http://mockuser:mockpassword@localhost:3001/api). A
             listing of the credentials you need to provide for each back-end cloud provider
             is available
-            <a href='drivers.html#credentials'>
+            <a href="http://deltacloud.apache.org/drivers.html#credentials">
               here.
             </a>
           </li>
@@ -415,36 +446,36 @@
         <strong>deltacloudd -i mock</strong>
         ).
         To list all collections available in the current driver:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ deltacloudc -l -u http://mockuser:mockpassword@localhost:3001/api</code></pre>
         To get a list of all
         <strong>images:</strong>
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ deltacloudc images index -u http://mockuser:mockpassword@localhost:3001/api</code></pre>
         To list all operations for the
         <strong>buckets</strong>
         collection:
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ deltacloudc buckets -l -u http://mockuser:mockpassword@localhost:3001/api</code></pre>
         To create a new blob in the bucket called 'bucket1':
-        <br />
-        <br />
+        <br>
+        <br>
         <pre><code>$ deltacloudc blob create -i 'my_new_blob' -b 'bucket1' -f /home/marios/file.txt</code></pre>
-        <br />
-        <br />
-        <hr />
-        <br />
+        <br>
+        <br>
+        <hr>
+        <br>
         <h2>Other HTTP clients - cURL</h2>
         As interaction with the Deltacloud server is via HTTP calls, you can use any
         HTTP client to talk to it using the Deltacloud
-        <a href='api.html'>
+        <a href="http://deltacloud.apache.org/api.html">
           REST API.
         </a>
         One popular command line tool available on most modern linux distributions is
-        <a href='http://curl.haxx.se/'>
+        <a href="http://curl.haxx.se/">
           cURL.
         </a>
         We give some examples here of how you can use cURL to interact with Deltacloud,
@@ -454,59 +485,65 @@
         <strong>deltacloudd -i ec2</strong>
         ).
         To get a
-        <a href='api.html#list_images'>
+        <a href="http://deltacloud.apache.org/api.html#list_images">
           listing of all images
         </a>
         available in the back-end cloud:
-        <br />
-        <br />
-        <pre><code>curl  --user "pGbAJ1TsVg5PKs3BK27O:dPs47ralgBlldqYNbLg3scthsg4g8v0L9d6Mb5DK"&#x000A;"http://localhost:3001/api/images?format=xml"</code></pre>
+        <br>
+        <br>
+        <pre><code>curl  --user "pGbAJ1TsVg5PKs3BK27O:dPs47ralgBlldqYNbLg3scthsg4g8v0L9d6Mb5DK"
+"http://localhost:3001/api/images?format=xml"</code></pre>
         The cURL
         <strong>--user</strong>
         option is used to specify the
         <strong>username:password</strong>
-        <a href='drivers.html#credentials'>
+        <a href="http://deltacloud.apache.org/drivers.html#credentials">
           credentials
         </a>
         for access to the back-end cloud provider (Amazon EC2 in this case).
         To
-        <a href='api.html#create_instance'>
+        <a href="http://deltacloud.apache.org/api.html#create_instance">
           create a new instance
         </a>
         from the
-        <a href='api.html#h3_3'>
+        <a href="http://deltacloud.apache.org/api.html#h3_3">
           image
         </a>
         with id 'ami-f51aff9c', in
-        <a href='api.html#h3_1'>
+        <a href="http://deltacloud.apache.org/api.html#h3_1">
           realm
         </a>
         'us-east-1c', with the
-        <a href='api.html#h3_2'>
+        <a href="http://deltacloud.apache.org/api.html#h3_2">
           hardware profile
         </a>
         'c1.medium', in
-        <a href='api.html#h3_7'>
+        <a href="http://deltacloud.apache.org/api.html#h3_7">
           firewall
         </a>
         'default':
-        <br />
-        <br />
-        <pre><code>curl -X POST -F "keyname=eftah" -F "image_id=ami-f51aff9c"&#x000A;-F "realm_id=us-east-1c" -F "hwp_id=c1.medium" -F "firewalls1=default"&#x000A;--user "pGbAJ1TsVg5PKs3BK27O:dPs47ralgBlldqYNbLg3scthsg4g8v0L9d6Mb5DK"&#x000A;"http://localhost:3001/api/instances?format=xml"</code></pre>
+        <br>
+        <br>
+        <pre><code>curl -X POST -F "keyname=eftah" -F "image_id=ami-f51aff9c"
+-F "realm_id=us-east-1c" -F "hwp_id=c1.medium" -F "firewalls1=default"
+--user "pGbAJ1TsVg5PKs3BK27O:dPs47ralgBlldqYNbLg3scthsg4g8v0L9d6Mb5DK"
+"http://localhost:3001/api/instances?format=xml"</code></pre>
         To
-        <a href='api.html#delete_firewall'>
+        <a href="http://deltacloud.apache.org/api.html#delete_firewall">
           delete a firewall
         </a>
         called 'develgroup':
-        <br />
-        <br />
-        <pre><code>curl -X DELETE&#x000A;--user "pGbAJ1TsVg5PKs3BK27O:dPs47ralgBlldqYNbLg3scthsg4g8v0L9d6Mb5DK"&#x000A;http://localhost:3001/api/firewalls/develgroup?format=xml</code></pre>
+        <br>
+        <br>
+        <pre><code>curl -X DELETE
+--user "pGbAJ1TsVg5PKs3BK27O:dPs47ralgBlldqYNbLg3scthsg4g8v0L9d6Mb5DK"
+http://localhost:3001/api/firewalls/develgroup?format=xml</code></pre>
         To
-        <a href='api.html#create_blob'>
+        <a href="http://deltacloud.apache.org/api.html#create_blob">
           create a blob
         </a>
         called 'my_new_blob' within the
-        <a href='api.html#h4_3'>
+        <a href="http://deltacloud.apache.org/api.html#h4_3">
           bucket
         </a>
         'mybucket' from a local file with
@@ -522,30 +559,36 @@
           </em>
         </strong>
         pairs:
-        <br />
-        <br />
-        <pre><code>curl -H 'content-type: text/html' -H 'X-Deltacloud-Blobmeta-Name:mariosblob'&#x000A;-H 'X-Deltacloud-Blobmeta-Version:2.1' --upload-file&#x000A;"/home/marios/Desktop/somefile.html"&#x000A;--user "pGbAJ1TsVg5PKs3BK27O:dPs47ralgBlldqYNbLg3scthsg4g8v0L9d6Mb5DK"&#x000A;http://localhost:3001/api/buckets/mybucket/my_new_blob?format=xml</code></pre>
+        <br>
+        <br>
+        <pre><code>curl -H 'content-type: text/html' -H 'X-Deltacloud-Blobmeta-Name:mariosblob'
+-H 'X-Deltacloud-Blobmeta-Version:2.1' --upload-file
+"/home/marios/Desktop/somefile.html"
+--user "pGbAJ1TsVg5PKs3BK27O:dPs47ralgBlldqYNbLg3scthsg4g8v0L9d6Mb5DK"
+http://localhost:3001/api/buckets/mybucket/my_new_blob?format=xml</code></pre>
         To
-        <a href='api.html#h4_3_10'>
+        <a href="http://deltacloud.apache.org/api.html#h4_3_10">
           retrieve blob metadata
         </a>
         for the blob called 'my_new_blob':
-        <br />
-        <br />
-        <pre><code>curl -iv -X HEAD&#x000A;--user "pGbAJ1TsVg5PKs3BK27O:dPs47ralgBlldqYNbLg3scthsg4g8v0L9d6Mb5DK"&#x000A;http://localhost:3001/api/buckets/mybucket/my_new_blob?format=xml</code></pre>
+        <br>
+        <br>
+        <pre><code>curl -iv -X HEAD
+--user "pGbAJ1TsVg5PKs3BK27O:dPs47ralgBlldqYNbLg3scthsg4g8v0L9d6Mb5DK"
+http://localhost:3001/api/buckets/mybucket/my_new_blob?format=xml</code></pre>
         Note the use of the '-iv' flags here which will ensure that cURL displays the
         request and response headers (blob metadata is reported in the response headers,
         with an empty response body).
       </div>
     </div>
-    <div id='footer-deltacloud'>
-      <div class='container'>
+    <div id="footer-deltacloud">
+      <div class="container">
         <p>
-          <a href='http://www.apache.org'>
-            <img alt='Apache Software Foundation Logo' src='http://www.apache.org/images/asf_logo_wide.png' />
+          <a href="http://www.apache.org/">
+            <img alt="Apache Software Foundation Logo" src="documentation_files/asf_logo_wide.png">
           </a>
         </p>
-        <p id='disclaimer'>
+        <p id="disclaimer">
           Apache Deltacloud is a top-level project at the Apache
           Software Foundation, having graduated from the ASF Incubator
           in October 2011. Through a collaborative and meritocratic
@@ -554,12 +597,12 @@
         </p>
       </div>
     </div>
-  </body>
-  <script type='text/javascript'>
+  
+  <script type="text/javascript">
     var pkBaseURL = (("https:" == document.location.protocol) ? "https://stats.salasaga.org/aeolus/piwik/" : "http://stats.salasaga.org/aeolus/piwik/");
     document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
-  </script>
-  <script type='text/javascript'>
+  </script><script src="documentation_files/piwik.js" type="text/javascript"></script>
+  <script type="text/javascript">
     //<![CDATA[
       try {
         var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 2);
@@ -573,4 +616,5 @@
       <img alt='' src='http://stats.salasaga.org/aeolus/piwik/piwik.php?idsite=2' style='border:0' />
     </p>
   </noscript>
-</html>
+
+</body></html>
\ No newline at end of file

Added: deltacloud/trunk/site/content/assets/img/documentation_files/asf_logo_wide.png
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/img/documentation_files/asf_logo_wide.png?rev=1353588&view=auto
==============================================================================
Files deltacloud/trunk/site/content/assets/img/documentation_files/asf_logo_wide.png (added) and deltacloud/trunk/site/content/assets/img/documentation_files/asf_logo_wide.png Mon Jun 25 15:05:02 2012 differ

Copied: deltacloud/trunk/site/content/assets/img/documentation_files/default-debug.css (from r1336750, deltacloud/trunk/site/content/styles/default-debug.css)
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/img/documentation_files/default-debug.css?p2=deltacloud/trunk/site/content/assets/img/documentation_files/default-debug.css&p1=deltacloud/trunk/site/content/styles/default-debug.css&r1=1336750&r2=1353588&rev=1353588&view=diff
==============================================================================
    (empty)

Copied: deltacloud/trunk/site/content/assets/img/documentation_files/default.css (from r1336750, deltacloud/trunk/site/content/styles/default.css)
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/img/documentation_files/default.css?p2=deltacloud/trunk/site/content/assets/img/documentation_files/default.css&p1=deltacloud/trunk/site/content/styles/default.css&r1=1336750&r2=1353588&rev=1353588&view=diff
==============================================================================
    (empty)

Added: deltacloud/trunk/site/content/assets/img/documentation_files/piwik.js
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/img/documentation_files/piwik.js?rev=1353588&view=auto
==============================================================================
--- deltacloud/trunk/site/content/assets/img/documentation_files/piwik.js (added)
+++ deltacloud/trunk/site/content/assets/img/documentation_files/piwik.js Mon Jun 25 15:05:02 2012
@@ -0,0 +1,29 @@
+/*
+ * Piwik - Web Analytics
+ *
+ * JavaScript tracking client
+ *
+ * @link http://piwik.org
+ * @source http://dev.piwik.org/trac/browser/trunk/js/piwik.js
+ * @license http://www.opensource.org/licenses/bsd-license.php Simplified BSD
+ */
+if(!this.JSON2){this.JSON2={}}(function(){function d(f){return f<10?"0"+f:f}function l(n,m){var f=Object.prototype.toString.apply(n);if(f==="[object Date]"){return isFinite(n.valueOf())?n.getUTCFullYear()+"-"+d(n.getUTCMonth()+1)+"-"+d(n.getUTCDate())+"T"+d(n.getUTCHours())+":"+d(n.getUTCMinutes())+":"+d(n.getUTCSeconds())+"Z":null}if(f==="[object String]"||f==="[object Number]"||f==="[object Boolean]"){return n.valueOf()}if(f!=="[object Array]"&&typeof n.toJSON==="function"){return n.toJSON(m)}return n}var c=new RegExp("[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]","g"),e='\\\\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]',i=new RegExp("["+e,"g"),j,b,k={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},h;
+function a(f){i.lastIndex=0;return i.test(f)?'"'+f.replace(i,function(m){var n=k[m];return typeof n==="string"?n:"\\u"+("0000"+m.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+f+'"'}function g(s,p){var n,m,t,f,q=j,o,r=p[s];if(r&&typeof r==="object"){r=l(r,s)}if(typeof h==="function"){r=h.call(p,s,r)}switch(typeof r){case"string":return a(r);case"number":return isFinite(r)?String(r):"null";case"boolean":case"null":return String(r);case"object":if(!r){return"null"}j+=b;o=[];if(Object.prototype.toString.apply(r)==="[object Array]"){f=r.length;for(n=0;n<f;n+=1){o[n]=g(n,r)||"null"}t=o.length===0?"[]":j?"[\n"+j+o.join(",\n"+j)+"\n"+q+"]":"["+o.join(",")+"]";j=q;return t}if(h&&typeof h==="object"){f=h.length;for(n=0;n<f;n+=1){if(typeof h[n]==="string"){m=h[n];t=g(m,r);if(t){o.push(a(m)+(j?": ":":")+t)}}}}else{for(m in r){if(Object.prototype.hasOwnProperty.call(r,m)){t=g(m,r);if(t){o.push(a(m)+(j?": ":":")+t)}}}}t=o.length===0?"{}":j?"{\n"+j+o.join(",\n"+j)+"\n"+q+"}":"{"+o.join("
 ,")+"}";j=q;
+return t}}if(typeof JSON2.stringify!=="function"){JSON2.stringify=function(o,m,n){var f;j="";b="";if(typeof n==="number"){for(f=0;f<n;f+=1){b+=" "}}else{if(typeof n==="string"){b=n}}h=m;if(m&&typeof m!=="function"&&(typeof m!=="object"||typeof m.length!=="number")){throw new Error("JSON.stringify")}return g("",{"":o})}}if(typeof JSON2.parse!=="function"){JSON2.parse=function(o,f){var n;function m(s,r){var q,p,t=s[r];if(t&&typeof t==="object"){for(q in t){if(Object.prototype.hasOwnProperty.call(t,q)){p=m(t,q);if(p!==undefined){t[q]=p}else{delete t[q]}}}}return f.call(s,r,t)}o=String(o);c.lastIndex=0;if(c.test(o)){o=o.replace(c,function(p){return"\\u"+("0000"+p.charCodeAt(0).toString(16)).slice(-4)})}if((new RegExp("^[\\],:{}\\s]*$")).test(o.replace(new RegExp('\\\\(?:["\\\\/bfnrt]|u[0-9a-fA-F]{4})',"g"),"@").replace(new RegExp('"[^"\\\\\n\r]*"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?',"g"),"]").replace(new RegExp("(?:^|:|,)(?:\\s*\\[)+","g"),""))){n=eval("("+o+"
 )");
+return typeof f==="function"?m({"":n},""):n}throw new SyntaxError("JSON.parse")}}}());var _paq=_paq||[],Piwik=Piwik||(function(){var f,a={},p=document,c=navigator,A=screen,x=window,m=false,v=[],h=x.encodeURIComponent,w=x.decodeURIComponent,d=unescape,B,D;function r(i){return typeof i!=="undefined"}function n(i){return typeof i==="function"}function z(i){return typeof i==="object"}function j(i){return typeof i==="string"||i instanceof String}function G(){var L,N,M;for(L=0;L<arguments.length;L+=1){M=arguments[L];N=M.shift();if(j(N)){B[N].apply(B,M)}else{N.apply(B,M)}}}function J(N,M,L,i){if(N.addEventListener){N.addEventListener(M,L,i);return true}if(N.attachEvent){return N.attachEvent("on"+M,L)}N["on"+M]=L}function E(M,P){var L="",O,N;for(O in a){if(Object.prototype.hasOwnProperty.call(a,O)){N=a[O][M];if(n(N)){L+=N(P)}}}return L}function H(){var i;E("unload");if(f){do{i=new Date()}while(i.getTimeAlias()<f)}}function F(){var L;if(!m){m=true;E("load");for(L=0;L<v.length;L++){v[
 L]()}}return true
+}function k(){var L;if(p.addEventListener){J(p,"DOMContentLoaded",function i(){p.removeEventListener("DOMContentLoaded",i,false);F()})}else{if(p.attachEvent){p.attachEvent("onreadystatechange",function i(){if(p.readyState==="complete"){p.detachEvent("onreadystatechange",i);F()}});if(p.documentElement.doScroll&&x===x.top){(function i(){if(!m){try{p.documentElement.doScroll("left")}catch(M){setTimeout(i,0);return}F()}}())}}}if((new RegExp("WebKit")).test(c.userAgent)){L=setInterval(function(){if(m||/loaded|complete/.test(p.readyState)){clearInterval(L);F()}},10)}J(x,"load",F,false)}function s(){var i="";try{i=x.top.document.referrer}catch(M){if(x.parent){try{i=x.parent.document.referrer}catch(L){i=""}}}if(i===""){i=p.referrer}return i}function g(i){var M=new RegExp("^([a-z]+):"),L=M.exec(i);return L?L[1]:null}function b(i){var M=new RegExp("^(?:(?:https?|ftp):)/*(?:[^@]+@)?([^:/#]+)"),L=M.exec(i);return L?L[1]:i}function y(M,L){var P=new RegExp("^(?:https?|ftp)(?::/*(?:[^?]+)[
 ?])([^#]+)"),O=P.exec(M),N=new RegExp("(?:^|&)"+L+"=([^&]*)"),i=O?N.exec(O[1]):0;
+return i?w(i[1]):""}function l(Q,N,M,P,L,O){var i;if(M){i=new Date();i.setTime(i.getTime()+M)}p.cookie=Q+"="+h(N)+(M?";expires="+i.toGMTString():"")+";path="+(P||"/")+(L?";domain="+L:"")+(O?";secure":"")}function e(M){var i=new RegExp("(^|;)[ ]*"+M+"=([^;]*)"),L=i.exec(p.cookie);return L?w(L[2]):0}function o(i){return d(h(i))}function I(ab){var N=function(W,i){return(W<<i)|(W>>>(32-i))},ac=function(ai){var ah="",ag,W;for(ag=7;ag>=0;ag--){W=(ai>>>(ag*4))&15;ah+=W.toString(16)}return ah},Q,ae,ad,M=[],U=1732584193,S=4023233417,R=2562383102,P=271733878,O=3285377520,aa,Z,Y,X,V,af,L,T=[];ab=o(ab);L=ab.length;for(ae=0;ae<L-3;ae+=4){ad=ab.charCodeAt(ae)<<24|ab.charCodeAt(ae+1)<<16|ab.charCodeAt(ae+2)<<8|ab.charCodeAt(ae+3);T.push(ad)}switch(L&3){case 0:ae=2147483648;break;case 1:ae=ab.charCodeAt(L-1)<<24|8388608;break;case 2:ae=ab.charCodeAt(L-2)<<24|ab.charCodeAt(L-1)<<16|32768;break;case 3:ae=ab.charCodeAt(L-3)<<24|ab.charCodeAt(L-2)<<16|ab.charCodeAt(L-1)<<8|128;break}T.push(ae);
 while((T.length&15)!==14){T.push(0)
+}T.push(L>>>29);T.push((L<<3)&4294967295);for(Q=0;Q<T.length;Q+=16){for(ae=0;ae<16;ae++){M[ae]=T[Q+ae]}for(ae=16;ae<=79;ae++){M[ae]=N(M[ae-3]^M[ae-8]^M[ae-14]^M[ae-16],1)}aa=U;Z=S;Y=R;X=P;V=O;for(ae=0;ae<=19;ae++){af=(N(aa,5)+((Z&Y)|(~Z&X))+V+M[ae]+1518500249)&4294967295;V=X;X=Y;Y=N(Z,30);Z=aa;aa=af}for(ae=20;ae<=39;ae++){af=(N(aa,5)+(Z^Y^X)+V+M[ae]+1859775393)&4294967295;V=X;X=Y;Y=N(Z,30);Z=aa;aa=af}for(ae=40;ae<=59;ae++){af=(N(aa,5)+((Z&Y)|(Z&X)|(Y&X))+V+M[ae]+2400959708)&4294967295;V=X;X=Y;Y=N(Z,30);Z=aa;aa=af}for(ae=60;ae<=79;ae++){af=(N(aa,5)+(Z^Y^X)+V+M[ae]+3395469782)&4294967295;V=X;X=Y;Y=N(Z,30);Z=aa;aa=af}U=(U+aa)&4294967295;S=(S+Z)&4294967295;R=(R+Y)&4294967295;P=(P+X)&4294967295;O=(O+V)&4294967295}af=ac(U)+ac(S)+ac(R)+ac(P)+ac(O);return af.toLowerCase()}function C(M,i,L){if(M==="translate.googleusercontent.com"){if(L===""){L=i}i=y(i,"u");M=b(i)}else{if(M==="cc.bingj.com"||M==="webcache.googleusercontent.com"||M.slice(0,5)==="74.6."){i=p.links[0].href;M=b(i)}}retur
 n[M,i,L]}function t(L){var i=L.length;
+if(L.charAt(--i)==="."){L=L.slice(0,i)}if(L.slice(0,2)==="*."){L=L.slice(1)}return L}function K(L){if(!j(L)){L=L.text||"";var i=p.getElementsByTagName("title");if(i&&r(i[0])){L=i[0].text}}return L}function u(ad,aB){var O=C(p.domain,x.location.href,s()),aT=t(O[0]),a7=O[1],aH=O[2],aF="GET",N=ad||"",aX=aB||"",ar,ai=p.title,ak="7z|aac|ar[cj]|as[fx]|avi|bin|csv|deb|dmg|doc|exe|flv|gif|gz|gzip|hqx|jar|jpe?g|js|mp(2|3|4|e?g)|mov(ie)?|ms[ip]|od[bfgpst]|og[gv]|pdf|phps|png|ppt|qtm?|ra[mr]?|rpm|sea|sit|tar|t?bz2?|tgz|torrent|txt|wav|wm[av]|wpd||xls|xml|z|zip",aD=[aT],R=[],aw=[],ac=[],aC=500,S,ae,T,U,am=["pk_campaign","piwik_campaign","utm_campaign","utm_source","utm_medium"],ah=["pk_kwd","piwik_kwd","utm_term"],a5="_pk_",W,a6,a0,ao,aq,aa=63072000000,ab=1800000,at=15768000000,Z=p.location.protocol==="https",Q=false,ax={},a1=200,aN={},aY={},aK=false,aI=false,aG,ay,X,al=I,aJ,ap;function a2(ba){var bb;if(T){bb=new RegExp("#.*");return ba.replace(bb,"")}return ba}function aS(bc,ba){var bd=
 g(ba),bb;if(bd){return ba
+}if(ba.slice(0,1)==="/"){return g(bc)+"://"+b(bc)+ba}bc=a2(bc);if((bb=bc.indexOf("?"))>=0){bc=bc.slice(0,bb)}if((bb=bc.lastIndexOf("/"))!==bc.length-1){bc=bc.slice(0,bb+1)}return bc+ba}function aE(bd){var bb,ba,bc;for(bb=0;bb<aD.length;bb++){ba=t(aD[bb].toLowerCase());if(bd===ba){return true}if(ba.slice(0,1)==="."){if(bd===ba.slice(1)){return true}bc=bd.length-ba.length;if((bc>0)&&(bd.slice(bc)===ba)){return true}}}return false}function a9(ba){var bb=new Image(1,1);bb.onload=function(){};bb.src=N+(N.indexOf("?")<0?"?":"&")+ba}function aP(ba){try{var bc=x.XDomainRequest?new x.XDomainRequest():x.XMLHttpRequest?new x.XMLHttpRequest():x.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;bc.open("POST",N,true);bc.onreadystatechange=function(){if(this.readyState===4&&this.status!==200){a9(ba)}};bc.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");bc.send(ba)}catch(bb){a9(ba)}}function an(bc,bb){var ba=new Date();if(!a0){if(aF==="POST"){aP(b
 c)}else{a9(bc)
+}f=ba.getTime()+bb}}function aO(ba){return a5+ba+"."+aX+"."+aJ}function P(){var ba=aO("testcookie");if(!r(c.cookieEnabled)){l(ba,"1");return e(ba)==="1"?"1":"0"}return c.cookieEnabled?"1":"0"}function az(){aJ=al((W||aT)+(a6||"/")).slice(0,4)}function Y(){var bb=aO("cvar"),ba=e(bb);if(ba.length){ba=JSON2.parse(ba);if(z(ba)){return ba}}return{}}function M(){if(Q===false){Q=Y()}}function aW(){var ba=new Date();aG=ba.getTime()}function V(be,bb,ba,bd,bc,bf){l(aO("id"),be+"."+bb+"."+ba+"."+bd+"."+bc+"."+bf,aa,a6,W,Z)}function L(){var bb=new Date(),ba=Math.round(bb.getTime()/1000),bd=e(aO("id")),bc;if(bd){bc=bd.split(".");bc.unshift("0")}else{if(!ap){ap=al((c.userAgent||"")+(c.platform||"")+JSON2.stringify(aY)+ba).slice(0,16)}bc=["1",ap,ba,0,ba,"",""]}return bc}function i(){var ba=e(aO("ref"));if(ba.length){try{ba=JSON2.parse(ba);if(z(ba)){return ba}}catch(bb){}}return["","",0,""]}function aj(bc,bA,bB,be){var by,bb=new Date(),bk=Math.round(bb.getTime()/1000),bD,bz,bg,br,bv,bj,bt,bh
 ,bx,bf=1024,bE,bn,bu=Q,bp=aO("id"),bl=aO("ses"),bm=aO("ref"),bF=aO("cvar"),bs=L(),bo=e(bl),bw=i(),bC=ar||a7,bi,ba;
+if(a0){l(bp,"",-1,a6,W);l(bl,"",-1,a6,W);l(bF,"",-1,a6,W);l(bm,"",-1,a6,W);return""}bD=bs[0];bz=bs[1];br=bs[2];bg=bs[3];bv=bs[4];bj=bs[5];if(!r(bs[6])){bs[6]=""}bt=bs[6];if(!r(be)){be=""}bi=bw[0];ba=bw[1];bh=bw[2];bx=bw[3];if(!bo){bg++;bj=bv;if(!aq||!bi.length){for(by in am){if(Object.prototype.hasOwnProperty.call(am,by)){bi=y(bC,am[by]);if(bi.length){break}}}for(by in ah){if(Object.prototype.hasOwnProperty.call(ah,by)){ba=y(bC,ah[by]);if(ba.length){break}}}}bE=b(aH);bn=bx.length?b(bx):"";if(bE.length&&!aE(bE)&&(!aq||!bn.length||aE(bn))){bx=aH}if(bx.length||bi.length){bh=bk;bw=[bi,ba,bh,a2(bx.slice(0,bf))];l(bm,JSON2.stringify(bw),at,a6,W,Z)}}bc+="&idsite="+aX+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+bb.getHours()+"&m="+bb.getMinutes()+"&s="+bb.getSeconds()+"&url="+h(a2(bC))+(aH.length?"&urlref="+h(a2(aH)):"")+"&_id="+bz+"&_idts="+br+"&_idvc="+bg+"&_idn="+bD+(bi.length?"&_rcn="+h(bi):"")+(ba.length?"&_rck="+h(ba):"")+"&_refts="+bh+"&_viewts="+bj+(String(bt).length?
 "&_ects="+bt:"")+(String(bx).length?"&_ref="+h(a2(bx.slice(0,bf))):"");
+var bd=JSON2.stringify(ax);if(bd.length>2){bc+="&cvar="+h(bd)}for(by in aY){if(Object.prototype.hasOwnProperty.call(aY,by)){bc+="&"+by+"="+aY[by]}}if(bA){bc+="&data="+h(JSON2.stringify(bA))}else{if(U){bc+="&data="+h(JSON2.stringify(U))}}if(Q){var bq=JSON2.stringify(Q);if(bq.length>2){bc+="&_cvar="+h(bq)}for(by in bu){if(Object.prototype.hasOwnProperty.call(bu,by)){if(Q[by][0]===""||Q[by][1]===""){delete Q[by]}}}l(bF,JSON2.stringify(Q),ab,a6,W,Z)}V(bz,br,bg,bk,bj,r(be)&&String(be).length?be:bt);l(bl,"*",ab,a6,W,Z);bc+=E(bB);return bc}function aR(bd,bc,bh,be,ba,bk){var bf="idgoal=0",bg,bb=new Date(),bi=[],bj;if(String(bd).length){bf+="&ec_id="+h(bd);bg=Math.round(bb.getTime()/1000)}bf+="&revenue="+bc;if(String(bh).length){bf+="&ec_st="+bh}if(String(be).length){bf+="&ec_tx="+be}if(String(ba).length){bf+="&ec_sh="+ba}if(String(bk).length){bf+="&ec_dt="+bk}if(aN){for(bj in aN){if(Object.prototype.hasOwnProperty.call(aN,bj)){if(!r(aN[bj][1])){aN[bj][1]=""}if(!r(aN[bj][2])){aN[bj][
 2]=""}if(!r(aN[bj][3])||String(aN[bj][3]).length===0){aN[bj][3]=0
+}if(!r(aN[bj][4])||String(aN[bj][4]).length===0){aN[bj][4]=1}bi.push(aN[bj])}}bf+="&ec_items="+h(JSON2.stringify(bi))}bf=aj(bf,U,"ecommerce",bg);an(bf,aC)}function aQ(ba,be,bd,bc,bb,bf){if(String(ba).length&&r(be)){aR(ba,be,bd,bc,bb,bf)}}function a4(ba){if(r(ba)){aR("",ba,"","","","")}}function av(bd,be){var ba=new Date(),bc=aj("action_name="+h(K(bd||ai)),be,"log");an(bc,aC);if(S&&ae&&!aI){aI=true;J(p,"click",aW);J(p,"mouseup",aW);J(p,"mousedown",aW);J(p,"mousemove",aW);J(p,"mousewheel",aW);J(x,"DOMMouseScroll",aW);J(x,"scroll",aW);J(p,"keypress",aW);J(p,"keydown",aW);J(p,"keyup",aW);J(x,"resize",aW);J(x,"focus",aW);J(x,"blur",aW);aG=ba.getTime();setTimeout(function bb(){var bf=new Date(),bg;if((aG+ae)>bf.getTime()){if(S<bf.getTime()){bg=aj("ping=1",be,"ping");an(bg,aC)}setTimeout(bb,ae)}},ae)}}function aA(ba,bd,bc){var bb=aj("idgoal="+ba+(bd?"&revenue="+bd:""),bc,"goal");an(bb,aC)}function aV(bb,ba,bd){var bc=aj(ba+"="+h(a2(bb)),bd,"link");an(bc,aC)}function aZ(bb,ba){if(bb
 !==""){return bb+ba.charAt(0).toUpperCase()+ba.slice(1)
+}return ba}function ag(bf){var be,ba,bd=["","webkit","ms","moz"],bc;if(!ao){for(ba=0;ba<bd.length;ba++){bc=bd[ba];if(Object.prototype.hasOwnProperty.call(p,aZ(bc,"hidden"))){if(p[aZ(bc,"visibilityState")]==="prerender"){be=true}break}}}if(be){J(p,bc+"visibilitychange",function bb(){p.removeEventListener(bc+"visibilitychange",bb,false);bf()});return}bf()}function af(bc,bb){var bd,ba="(^| )(piwik[_-]"+bb;if(bc){for(bd=0;bd<bc.length;bd++){ba+="|"+bc[bd]}}ba+=")( |$)";return new RegExp(ba)}function aU(bd,ba,be){if(!be){return"link"}var bc=af(aw,"download"),bb=af(ac,"link"),bf=new RegExp("\\.("+ak+")([?&#]|$)","i");return bb.test(bd)?"link":(bc.test(bd)||bf.test(ba)?"download":0)}function aM(bf){var bd,bb,ba;while((bd=bf.parentNode)!==null&&r(bd)&&((bb=bf.tagName.toUpperCase())!=="A"&&bb!=="AREA")){bf=bd}if(r(bf.href)){var bg=bf.hostname||b(bf.href),bh=bg.toLowerCase(),bc=bf.href.replace(bg,bh),be=new RegExp("^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto):","i
 ");if(!be.test(bc)){ba=aU(bf.className,bc,aE(bh));
+if(ba){bc=d(bc);aV(bc,ba)}}}}function a8(ba){var bb,bc;ba=ba||x.event;bb=ba.which||ba.button;bc=ba.target||ba.srcElement;if(ba.type==="click"){if(bc){aM(bc)}}else{if(ba.type==="mousedown"){if((bb===1||bb===2)&&bc){ay=bb;X=bc}else{ay=X=null}}else{if(ba.type==="mouseup"){if(bb===ay&&bc===X){aM(bc)}ay=X=null}}}}function aL(bb,ba){if(ba){J(bb,"mouseup",a8,false);J(bb,"mousedown",a8,false)}else{J(bb,"click",a8,false)}}function au(bb){if(!aK){aK=true;var bc,ba=af(R,"ignore"),bd=p.links;if(bd){for(bc=0;bc<bd.length;bc++){if(!ba.test(bd[bc].className)){aL(bd[bc],bb)}}}}}function a3(){var ba,bb,bc={pdf:"application/pdf",qt:"video/quicktime",realp:"audio/x-pn-realaudio-plugin",wma:"application/x-mplayer2",dir:"application/x-director",fla:"application/x-shockwave-flash",java:"application/x-java-vm",gears:"application/x-googlegears",ag:"application/x-silverlight"};if(c.mimeTypes&&c.mimeTypes.length){for(ba in bc){if(Object.prototype.hasOwnProperty.call(bc,ba)){bb=c.mimeTypes[bc[ba]];aY[
 ba]=(bb&&bb.enabledPlugin)?"1":"0"
+}}}if(typeof navigator.javaEnabled!=="unknown"&&r(c.javaEnabled)&&c.javaEnabled()){aY.java="1"}if(n(x.GearsFactory)){aY.gears="1"}aY.res=A.width+"x"+A.height;aY.cookie=P()}a3();az();return{getVisitorId:function(){return(L())[1]},getVisitorInfo:function(){return L()},getAttributionInfo:function(){return i()},getAttributionCampaignName:function(){return i()[0]},getAttributionCampaignKeyword:function(){return i()[1]},getAttributionReferrerTimestamp:function(){return i()[2]},getAttributionReferrerUrl:function(){return i()[3]},setTrackerUrl:function(ba){N=ba},setSiteId:function(ba){aX=ba},setCustomData:function(ba,bb){if(z(ba)){U=ba}else{if(!U){U=[]}U[ba]=bb}},getCustomData:function(){return U},setCustomVariable:function(bb,ba,be,bc){var bd;if(!r(bc)){bc="visit"}if(bb>0){ba=r(ba)&&!j(ba)?String(ba):ba;be=r(be)&&!j(be)?String(be):be;bd=[ba.slice(0,a1),be.slice(0,a1)];if(bc==="visit"||bc===2){M();Q[bb]=bd}else{if(bc==="page"||bc===3){ax[bb]=bd}}}},getCustomVariable:function(bb,bc){
 var ba;if(!r(bc)){bc="visit"
+}if(bc==="page"||bc===3){ba=ax[bb]}else{if(bc==="visit"||bc===2){M();ba=Q[bb]}}if(!r(ba)||(ba&&ba[0]==="")){return false}return ba},deleteCustomVariable:function(ba,bb){if(this.getCustomVariable(ba,bb)){this.setCustomVariable(ba,"","",bb)}},setLinkTrackingTimer:function(ba){aC=ba},setDownloadExtensions:function(ba){ak=ba},addDownloadExtensions:function(ba){ak+="|"+ba},setDomains:function(ba){aD=j(ba)?[ba]:ba;aD.push(aT)},setIgnoreClasses:function(ba){R=j(ba)?[ba]:ba},setRequestMethod:function(ba){aF=ba||"GET"},setReferrerUrl:function(ba){aH=ba},setCustomUrl:function(ba){ar=aS(a7,ba)},setDocumentTitle:function(ba){ai=ba},setDownloadClasses:function(ba){aw=j(ba)?[ba]:ba},setLinkClasses:function(ba){ac=j(ba)?[ba]:ba},setCampaignNameKey:function(ba){am=j(ba)?[ba]:ba},setCampaignKeywordKey:function(ba){ah=j(ba)?[ba]:ba},discardHashTag:function(ba){T=ba},setCookieNamePrefix:function(ba){a5=ba;Q=Y()},setCookieDomain:function(ba){W=t(ba);az()},setCookiePath:function(ba){a6=ba;az()},
 setVisitorCookieTimeout:function(ba){aa=ba*1000
+},setSessionCookieTimeout:function(ba){ab=ba*1000},setReferralCookieTimeout:function(ba){at=ba*1000},setConversionAttributionFirstReferrer:function(ba){aq=ba},setDoNotTrack:function(bb){var ba=c.doNotTrack||c.msDoNotTrack;a0=bb&&(ba==="yes"||ba==="1")},addListener:function(bb,ba){aL(bb,ba)},enableLinkTracking:function(ba){if(m){au(ba)}else{v.push(function(){au(ba)})}},setHeartBeatTimer:function(bc,bb){var ba=new Date();S=ba.getTime()+bc*1000;ae=bb*1000},killFrame:function(){if(x.location!==x.top.location){x.top.location=x.location}},redirectFile:function(ba){if(x.location.protocol==="file:"){x.location=ba}},setCountPreRendered:function(ba){ao=ba},trackGoal:function(ba,bc,bb){ag(function(){aA(ba,bc,bb)})},trackLink:function(bb,ba,bc){ag(function(){aV(bb,ba,bc)})},trackPageView:function(ba,bb){ag(function(){av(ba,bb)})},setEcommerceView:function(bd,ba,bc,bb){if(!r(bc)||!bc.length){bc=""}else{if(bc instanceof Array){bc=JSON2.stringify(bc)}}ax[5]=["_pkc",bc];if(r(bb)&&String(bb)
 .length){ax[2]=["_pkp",bb]
+}if((!r(bd)||!bd.length)&&(!r(ba)||!ba.length)){return}if(r(bd)&&bd.length){ax[3]=["_pks",bd]}if(!r(ba)||!ba.length){ba=""}ax[4]=["_pkn",ba]},addEcommerceItem:function(be,ba,bc,bb,bd){if(be.length){aN[be]=[be,ba,bc,bb,bd]}},trackEcommerceOrder:function(ba,be,bd,bc,bb,bf){aQ(ba,be,bd,bc,bb,bf)},trackEcommerceCartUpdate:function(ba){a4(ba)}}}function q(){return{push:G}}J(x,"beforeunload",H,false);k();Date.prototype.getTimeAlias=Date.prototype.getTime;B=new u();for(D=0;D<_paq.length;D++){G(_paq[D])}_paq=new q();return{addPlugin:function(i,L){a[i]=L},getTracker:function(i,L){return new u(i,L)},getAsyncTracker:function(){return B}}}()),piwik_track,piwik_log=function(b,f,d,g){function a(h){try{return eval("piwik_"+h)}catch(i){}return}var c,e=Piwik.getTracker(d,f);e.setDocumentTitle(b);e.setCustomData(g);c=a("tracker_pause");if(c){e.setLinkTrackingTimer(c)}c=a("download_extensions");if(c){e.setDownloadExtensions(c)}c=a("hosts_alias");if(c){e.setDomains(c)}c=a("ignore_classes");if(c
 ){e.setIgnoreClasses(c)
+}e.trackPageView();if(a("install_tracker")){piwik_track=function(i,k,j,h){e.setSiteId(k);e.setTrackerUrl(j);e.trackLink(i,h)};e.enableLinkTracking()}};
\ No newline at end of file

Added: deltacloud/trunk/site/content/assets/img/glyphicons-halflings-white.png
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/img/glyphicons-halflings-white.png?rev=1353588&view=auto
==============================================================================
Files deltacloud/trunk/site/content/assets/img/glyphicons-halflings-white.png (added) and deltacloud/trunk/site/content/assets/img/glyphicons-halflings-white.png Mon Jun 25 15:05:02 2012 differ

Added: deltacloud/trunk/site/content/assets/img/glyphicons-halflings.png
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/img/glyphicons-halflings.png?rev=1353588&view=auto
==============================================================================
Files deltacloud/trunk/site/content/assets/img/glyphicons-halflings.png (added) and deltacloud/trunk/site/content/assets/img/glyphicons-halflings.png Mon Jun 25 15:05:02 2012 differ

Copied: deltacloud/trunk/site/content/assets/img/introbg.png (from r1336750, deltacloud/trunk/site/content/styles/introbg.png)
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/img/introbg.png?p2=deltacloud/trunk/site/content/assets/img/introbg.png&p1=deltacloud/trunk/site/content/styles/introbg.png&r1=1336750&r2=1353588&rev=1353588&view=diff
==============================================================================
Binary files - no diff available.

Added: deltacloud/trunk/site/content/assets/img/logo.png
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/img/logo.png?rev=1353588&view=auto
==============================================================================
Files deltacloud/trunk/site/content/assets/img/logo.png (added) and deltacloud/trunk/site/content/assets/img/logo.png Mon Jun 25 15:05:02 2012 differ

Copied: deltacloud/trunk/site/content/assets/img/pattern.png (from r1336750, deltacloud/trunk/site/content/styles/footer_pattern.png)
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/img/pattern.png?p2=deltacloud/trunk/site/content/assets/img/pattern.png&p1=deltacloud/trunk/site/content/styles/footer_pattern.png&r1=1336750&r2=1353588&rev=1353588&view=diff
==============================================================================
Binary files - no diff available.

Added: deltacloud/trunk/site/content/assets/js/application.js
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/js/application.js?rev=1353588&view=auto
==============================================================================
--- deltacloud/trunk/site/content/assets/js/application.js (added)
+++ deltacloud/trunk/site/content/assets/js/application.js Mon Jun 25 15:05:02 2012
@@ -0,0 +1,16 @@
+$(document).ready(function() {
+  $(".tweet").tweet({
+    username: "deltacloud",
+    query : '#deltacloud OR @deltacloud',
+    join_text: "auto",
+    avatar_size: 32,
+    count: 2,
+    retweets : false,
+    auto_join_text_default: "we said,",
+    auto_join_text_ed: "",
+    auto_join_text_ing: "",
+    auto_join_text_reply: "we replied to",
+    auto_join_text_url: "we were checking out",
+    loading_text: "Loading news..."
+  });
+});

Added: deltacloud/trunk/site/content/assets/js/bootstrap-alert.js
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/js/bootstrap-alert.js?rev=1353588&view=auto
==============================================================================
--- deltacloud/trunk/site/content/assets/js/bootstrap-alert.js (added)
+++ deltacloud/trunk/site/content/assets/js/bootstrap-alert.js Mon Jun 25 15:05:02 2012
@@ -0,0 +1,94 @@
+/* ==========================================================
+ * bootstrap-alert.js v2.0.1
+ * http://twitter.github.com/bootstrap/javascript.html#alerts
+ * ==========================================================
+ * Copyright 2012 Twitter, Inc.
+ *
+ * Licensed 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.
+ * ========================================================== */
+
+
+!function( $ ){
+
+  "use strict"
+
+ /* ALERT CLASS DEFINITION
+  * ====================== */
+
+  var dismiss = '[data-dismiss="alert"]'
+    , Alert = function ( el ) {
+        $(el).on('click', dismiss, this.close)
+      }
+
+  Alert.prototype = {
+
+    constructor: Alert
+
+  , close: function ( e ) {
+      var $this = $(this)
+        , selector = $this.attr('data-target')
+        , $parent
+
+      if (!selector) {
+        selector = $this.attr('href')
+        selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
+      }
+
+      $parent = $(selector)
+      $parent.trigger('close')
+
+      e && e.preventDefault()
+
+      $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
+
+      $parent
+        .trigger('close')
+        .removeClass('in')
+
+      function removeElement() {
+        $parent
+          .trigger('closed')
+          .remove()
+      }
+
+      $.support.transition && $parent.hasClass('fade') ?
+        $parent.on($.support.transition.end, removeElement) :
+        removeElement()
+    }
+
+  }
+
+
+ /* ALERT PLUGIN DEFINITION
+  * ======================= */
+
+  $.fn.alert = function ( option ) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('alert')
+      if (!data) $this.data('alert', (data = new Alert(this)))
+      if (typeof option == 'string') data[option].call($this)
+    })
+  }
+
+  $.fn.alert.Constructor = Alert
+
+
+ /* ALERT DATA-API
+  * ============== */
+
+  $(function () {
+    $('body').on('click.alert.data-api', dismiss, Alert.prototype.close)
+  })
+
+}( window.jQuery );
\ No newline at end of file

Added: deltacloud/trunk/site/content/assets/js/bootstrap-button.js
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/js/bootstrap-button.js?rev=1353588&view=auto
==============================================================================
--- deltacloud/trunk/site/content/assets/js/bootstrap-button.js (added)
+++ deltacloud/trunk/site/content/assets/js/bootstrap-button.js Mon Jun 25 15:05:02 2012
@@ -0,0 +1,100 @@
+/* ============================================================
+ * bootstrap-button.js v2.0.1
+ * http://twitter.github.com/bootstrap/javascript.html#buttons
+ * ============================================================
+ * Copyright 2012 Twitter, Inc.
+ *
+ * Licensed 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.
+ * ============================================================ */
+
+!function( $ ){
+
+  "use strict"
+
+ /* BUTTON PUBLIC CLASS DEFINITION
+  * ============================== */
+
+  var Button = function ( element, options ) {
+    this.$element = $(element)
+    this.options = $.extend({}, $.fn.button.defaults, options)
+  }
+
+  Button.prototype = {
+
+      constructor: Button
+
+    , setState: function ( state ) {
+        var d = 'disabled'
+          , $el = this.$element
+          , data = $el.data()
+          , val = $el.is('input') ? 'val' : 'html'
+
+        state = state + 'Text'
+        data.resetText || $el.data('resetText', $el[val]())
+
+        $el[val](data[state] || this.options[state])
+
+        // push to event loop to allow forms to submit
+        setTimeout(function () {
+          state == 'loadingText' ?
+            $el.addClass(d).attr(d, d) :
+            $el.removeClass(d).removeAttr(d)
+        }, 0)
+      }
+
+    , toggle: function () {
+        var $parent = this.$element.parent('[data-toggle="buttons-radio"]')
+
+        $parent && $parent
+          .find('.active')
+          .removeClass('active')
+
+        this.$element.toggleClass('active')
+      }
+
+  }
+
+
+ /* BUTTON PLUGIN DEFINITION
+  * ======================== */
+
+  $.fn.button = function ( option ) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('button')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('button', (data = new Button(this, options)))
+      if (option == 'toggle') data.toggle()
+      else if (option) data.setState(option)
+    })
+  }
+
+  $.fn.button.defaults = {
+    loadingText: 'loading...'
+  }
+
+  $.fn.button.Constructor = Button
+
+
+ /* BUTTON DATA-API
+  * =============== */
+
+  $(function () {
+    $('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) {
+      var $btn = $(e.target)
+      if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
+      $btn.button('toggle')
+    })
+  })
+
+}( window.jQuery );
\ No newline at end of file

Added: deltacloud/trunk/site/content/assets/js/bootstrap-carousel.js
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/js/bootstrap-carousel.js?rev=1353588&view=auto
==============================================================================
--- deltacloud/trunk/site/content/assets/js/bootstrap-carousel.js (added)
+++ deltacloud/trunk/site/content/assets/js/bootstrap-carousel.js Mon Jun 25 15:05:02 2012
@@ -0,0 +1,157 @@
+/* ==========================================================
+ * bootstrap-carousel.js v2.0.1
+ * http://twitter.github.com/bootstrap/javascript.html#carousel
+ * ==========================================================
+ * Copyright 2012 Twitter, Inc.
+ *
+ * Licensed 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.
+ * ========================================================== */
+
+
+!function( $ ){
+
+  "use strict"
+
+ /* CAROUSEL CLASS DEFINITION
+  * ========================= */
+
+  var Carousel = function (element, options) {
+    this.$element = $(element)
+    this.options = $.extend({}, $.fn.carousel.defaults, options)
+    this.options.slide && this.slide(this.options.slide)
+  }
+
+  Carousel.prototype = {
+
+    cycle: function () {
+      this.interval = setInterval($.proxy(this.next, this), this.options.interval)
+      return this
+    }
+
+  , to: function (pos) {
+      var $active = this.$element.find('.active')
+        , children = $active.parent().children()
+        , activePos = children.index($active)
+        , that = this
+
+      if (pos > (children.length - 1) || pos < 0) return
+
+      if (this.sliding) {
+        return this.$element.one('slid', function () {
+          that.to(pos)
+        })
+      }
+
+      if (activePos == pos) {
+        return this.pause().cycle()
+      }
+
+      return this.slide(pos > activePos ? 'next' : 'prev', $(children[pos]))
+    }
+
+  , pause: function () {
+      clearInterval(this.interval)
+      this.interval = null
+      return this
+    }
+
+  , next: function () {
+      if (this.sliding) return
+      return this.slide('next')
+    }
+
+  , prev: function () {
+      if (this.sliding) return
+      return this.slide('prev')
+    }
+
+  , slide: function (type, next) {
+      var $active = this.$element.find('.active')
+        , $next = next || $active[type]()
+        , isCycling = this.interval
+        , direction = type == 'next' ? 'left' : 'right'
+        , fallback  = type == 'next' ? 'first' : 'last'
+        , that = this
+
+      if (!$next.length) return
+
+      this.sliding = true
+
+      isCycling && this.pause()
+
+      $next = $next.length ? $next : this.$element.find('.item')[fallback]()
+
+      if (!$.support.transition && this.$element.hasClass('slide')) {
+        this.$element.trigger('slide')
+        $active.removeClass('active')
+        $next.addClass('active')
+        this.sliding = false
+        this.$element.trigger('slid')
+      } else {
+        $next.addClass(type)
+        $next[0].offsetWidth // force reflow
+        $active.addClass(direction)
+        $next.addClass(direction)
+        this.$element.trigger('slide')
+        this.$element.one($.support.transition.end, function () {
+          $next.removeClass([type, direction].join(' ')).addClass('active')
+          $active.removeClass(['active', direction].join(' '))
+          that.sliding = false
+          setTimeout(function () { that.$element.trigger('slid') }, 0)
+        })
+      }
+
+      isCycling && this.cycle()
+
+      return this
+    }
+
+  }
+
+
+ /* CAROUSEL PLUGIN DEFINITION
+  * ========================== */
+
+  $.fn.carousel = function ( option ) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('carousel')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('carousel', (data = new Carousel(this, options)))
+      if (typeof option == 'number') data.to(option)
+      else if (typeof option == 'string' || (option = options.slide)) data[option]()
+      else data.cycle()
+    })
+  }
+
+  $.fn.carousel.defaults = {
+    interval: 5000
+  }
+
+  $.fn.carousel.Constructor = Carousel
+
+
+ /* CAROUSEL DATA-API
+  * ================= */
+
+  $(function () {
+    $('body').on('click.carousel.data-api', '[data-slide]', function ( e ) {
+      var $this = $(this), href
+        , $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
+        , options = !$target.data('modal') && $.extend({}, $target.data(), $this.data())
+      $target.carousel(options)
+      e.preventDefault()
+    })
+  })
+
+}( window.jQuery );
\ No newline at end of file

Added: deltacloud/trunk/site/content/assets/js/bootstrap-collapse.js
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/js/bootstrap-collapse.js?rev=1353588&view=auto
==============================================================================
--- deltacloud/trunk/site/content/assets/js/bootstrap-collapse.js (added)
+++ deltacloud/trunk/site/content/assets/js/bootstrap-collapse.js Mon Jun 25 15:05:02 2012
@@ -0,0 +1,136 @@
+/* =============================================================
+ * bootstrap-collapse.js v2.0.1
+ * http://twitter.github.com/bootstrap/javascript.html#collapse
+ * =============================================================
+ * Copyright 2012 Twitter, Inc.
+ *
+ * Licensed 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.
+ * ============================================================ */
+
+!function( $ ){
+
+  "use strict"
+
+  var Collapse = function ( element, options ) {
+  	this.$element = $(element)
+    this.options = $.extend({}, $.fn.collapse.defaults, options)
+
+    if (this.options["parent"]) {
+      this.$parent = $(this.options["parent"])
+    }
+
+    this.options.toggle && this.toggle()
+  }
+
+  Collapse.prototype = {
+
+    constructor: Collapse
+
+  , dimension: function () {
+      var hasWidth = this.$element.hasClass('width')
+      return hasWidth ? 'width' : 'height'
+    }
+
+  , show: function () {
+      var dimension = this.dimension()
+        , scroll = $.camelCase(['scroll', dimension].join('-'))
+        , actives = this.$parent && this.$parent.find('.in')
+        , hasData
+
+      if (actives && actives.length) {
+        hasData = actives.data('collapse')
+        actives.collapse('hide')
+        hasData || actives.data('collapse', null)
+      }
+
+      this.$element[dimension](0)
+      this.transition('addClass', 'show', 'shown')
+      this.$element[dimension](this.$element[0][scroll])
+
+    }
+
+  , hide: function () {
+      var dimension = this.dimension()
+      this.reset(this.$element[dimension]())
+      this.transition('removeClass', 'hide', 'hidden')
+      this.$element[dimension](0)
+    }
+
+  , reset: function ( size ) {
+      var dimension = this.dimension()
+
+      this.$element
+        .removeClass('collapse')
+        [dimension](size || 'auto')
+        [0].offsetWidth
+
+      this.$element.addClass('collapse')
+    }
+
+  , transition: function ( method, startEvent, completeEvent ) {
+      var that = this
+        , complete = function () {
+            if (startEvent == 'show') that.reset()
+            that.$element.trigger(completeEvent)
+          }
+
+      this.$element
+        .trigger(startEvent)
+        [method]('in')
+
+      $.support.transition && this.$element.hasClass('collapse') ?
+        this.$element.one($.support.transition.end, complete) :
+        complete()
+  	}
+
+  , toggle: function () {
+      this[this.$element.hasClass('in') ? 'hide' : 'show']()
+  	}
+
+  }
+
+  /* COLLAPSIBLE PLUGIN DEFINITION
+  * ============================== */
+
+  $.fn.collapse = function ( option ) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('collapse')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('collapse', (data = new Collapse(this, options)))
+      if (typeof option == 'string') data[option]()
+    })
+  }
+
+  $.fn.collapse.defaults = {
+    toggle: true
+  }
+
+  $.fn.collapse.Constructor = Collapse
+
+
+ /* COLLAPSIBLE DATA-API
+  * ==================== */
+
+  $(function () {
+    $('body').on('click.collapse.data-api', '[data-toggle=collapse]', function ( e ) {
+      var $this = $(this), href
+        , target = $this.attr('data-target')
+          || e.preventDefault()
+          || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
+        , option = $(target).data('collapse') ? 'toggle' : $this.data()
+      $(target).collapse(option)
+    })
+  })
+
+}( window.jQuery );
\ No newline at end of file

Added: deltacloud/trunk/site/content/assets/js/bootstrap-dropdown.js
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/js/bootstrap-dropdown.js?rev=1353588&view=auto
==============================================================================
--- deltacloud/trunk/site/content/assets/js/bootstrap-dropdown.js (added)
+++ deltacloud/trunk/site/content/assets/js/bootstrap-dropdown.js Mon Jun 25 15:05:02 2012
@@ -0,0 +1,92 @@
+/* ============================================================
+ * bootstrap-dropdown.js v2.0.1
+ * http://twitter.github.com/bootstrap/javascript.html#dropdowns
+ * ============================================================
+ * Copyright 2012 Twitter, Inc.
+ *
+ * Licensed 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.
+ * ============================================================ */
+
+
+!function( $ ){
+
+  "use strict"
+
+ /* DROPDOWN CLASS DEFINITION
+  * ========================= */
+
+  var toggle = '[data-toggle="dropdown"]'
+    , Dropdown = function ( element ) {
+        var $el = $(element).on('click.dropdown.data-api', this.toggle)
+        $('html').on('click.dropdown.data-api', function () {
+          $el.parent().removeClass('open')
+        })
+      }
+
+  Dropdown.prototype = {
+
+    constructor: Dropdown
+
+  , toggle: function ( e ) {
+      var $this = $(this)
+        , selector = $this.attr('data-target')
+        , $parent
+        , isActive
+
+      if (!selector) {
+        selector = $this.attr('href')
+        selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
+      }
+
+      $parent = $(selector)
+      $parent.length || ($parent = $this.parent())
+
+      isActive = $parent.hasClass('open')
+
+      clearMenus()
+      !isActive && $parent.toggleClass('open')
+
+      return false
+    }
+
+  }
+
+  function clearMenus() {
+    $(toggle).parent().removeClass('open')
+  }
+
+
+  /* DROPDOWN PLUGIN DEFINITION
+   * ========================== */
+
+  $.fn.dropdown = function ( option ) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('dropdown')
+      if (!data) $this.data('dropdown', (data = new Dropdown(this)))
+      if (typeof option == 'string') data[option].call($this)
+    })
+  }
+
+  $.fn.dropdown.Constructor = Dropdown
+
+
+  /* APPLY TO STANDARD DROPDOWN ELEMENTS
+   * =================================== */
+
+  $(function () {
+    $('html').on('click.dropdown.data-api', clearMenus)
+    $('body').on('click.dropdown.data-api', toggle, Dropdown.prototype.toggle)
+  })
+
+}( window.jQuery );
\ No newline at end of file

Added: deltacloud/trunk/site/content/assets/js/bootstrap-modal.js
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/js/bootstrap-modal.js?rev=1353588&view=auto
==============================================================================
--- deltacloud/trunk/site/content/assets/js/bootstrap-modal.js (added)
+++ deltacloud/trunk/site/content/assets/js/bootstrap-modal.js Mon Jun 25 15:05:02 2012
@@ -0,0 +1,210 @@
+/* =========================================================
+ * bootstrap-modal.js v2.0.1
+ * http://twitter.github.com/bootstrap/javascript.html#modals
+ * =========================================================
+ * Copyright 2012 Twitter, Inc.
+ *
+ * Licensed 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.
+ * ========================================================= */
+
+
+!function( $ ){
+
+  "use strict"
+
+ /* MODAL CLASS DEFINITION
+  * ====================== */
+
+  var Modal = function ( content, options ) {
+    this.options = options
+    this.$element = $(content)
+      .delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this))
+  }
+
+  Modal.prototype = {
+
+      constructor: Modal
+
+    , toggle: function () {
+        return this[!this.isShown ? 'show' : 'hide']()
+      }
+
+    , show: function () {
+        var that = this
+
+        if (this.isShown) return
+
+        $('body').addClass('modal-open')
+
+        this.isShown = true
+        this.$element.trigger('show')
+
+        escape.call(this)
+        backdrop.call(this, function () {
+          var transition = $.support.transition && that.$element.hasClass('fade')
+
+          !that.$element.parent().length && that.$element.appendTo(document.body) //don't move modals dom position
+
+          that.$element
+            .show()
+
+          if (transition) {
+            that.$element[0].offsetWidth // force reflow
+          }
+
+          that.$element.addClass('in')
+
+          transition ?
+            that.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) :
+            that.$element.trigger('shown')
+
+        })
+      }
+
+    , hide: function ( e ) {
+        e && e.preventDefault()
+
+        if (!this.isShown) return
+
+        var that = this
+        this.isShown = false
+
+        $('body').removeClass('modal-open')
+
+        escape.call(this)
+
+        this.$element
+          .trigger('hide')
+          .removeClass('in')
+
+        $.support.transition && this.$element.hasClass('fade') ?
+          hideWithTransition.call(this) :
+          hideModal.call(this)
+      }
+
+  }
+
+
+ /* MODAL PRIVATE METHODS
+  * ===================== */
+
+  function hideWithTransition() {
+    var that = this
+      , timeout = setTimeout(function () {
+          that.$element.off($.support.transition.end)
+          hideModal.call(that)
+        }, 500)
+
+    this.$element.one($.support.transition.end, function () {
+      clearTimeout(timeout)
+      hideModal.call(that)
+    })
+  }
+
+  function hideModal( that ) {
+    this.$element
+      .hide()
+      .trigger('hidden')
+
+    backdrop.call(this)
+  }
+
+  function backdrop( callback ) {
+    var that = this
+      , animate = this.$element.hasClass('fade') ? 'fade' : ''
+
+    if (this.isShown && this.options.backdrop) {
+      var doAnimate = $.support.transition && animate
+
+      this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
+        .appendTo(document.body)
+
+      if (this.options.backdrop != 'static') {
+        this.$backdrop.click($.proxy(this.hide, this))
+      }
+
+      if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
+
+      this.$backdrop.addClass('in')
+
+      doAnimate ?
+        this.$backdrop.one($.support.transition.end, callback) :
+        callback()
+
+    } else if (!this.isShown && this.$backdrop) {
+      this.$backdrop.removeClass('in')
+
+      $.support.transition && this.$element.hasClass('fade')?
+        this.$backdrop.one($.support.transition.end, $.proxy(removeBackdrop, this)) :
+        removeBackdrop.call(this)
+
+    } else if (callback) {
+      callback()
+    }
+  }
+
+  function removeBackdrop() {
+    this.$backdrop.remove()
+    this.$backdrop = null
+  }
+
+  function escape() {
+    var that = this
+    if (this.isShown && this.options.keyboard) {
+      $(document).on('keyup.dismiss.modal', function ( e ) {
+        e.which == 27 && that.hide()
+      })
+    } else if (!this.isShown) {
+      $(document).off('keyup.dismiss.modal')
+    }
+  }
+
+
+ /* MODAL PLUGIN DEFINITION
+  * ======================= */
+
+  $.fn.modal = function ( option ) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('modal')
+        , options = $.extend({}, $.fn.modal.defaults, $this.data(), typeof option == 'object' && option)
+      if (!data) $this.data('modal', (data = new Modal(this, options)))
+      if (typeof option == 'string') data[option]()
+      else if (options.show) data.show()
+    })
+  }
+
+  $.fn.modal.defaults = {
+      backdrop: true
+    , keyboard: true
+    , show: true
+  }
+
+  $.fn.modal.Constructor = Modal
+
+
+ /* MODAL DATA-API
+  * ============== */
+
+  $(function () {
+    $('body').on('click.modal.data-api', '[data-toggle="modal"]', function ( e ) {
+      var $this = $(this), href
+        , $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
+        , option = $target.data('modal') ? 'toggle' : $.extend({}, $target.data(), $this.data())
+
+      e.preventDefault()
+      $target.modal(option)
+    })
+  })
+
+}( window.jQuery );
\ No newline at end of file

Added: deltacloud/trunk/site/content/assets/js/bootstrap-popover.js
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/js/bootstrap-popover.js?rev=1353588&view=auto
==============================================================================
--- deltacloud/trunk/site/content/assets/js/bootstrap-popover.js (added)
+++ deltacloud/trunk/site/content/assets/js/bootstrap-popover.js Mon Jun 25 15:05:02 2012
@@ -0,0 +1,95 @@
+/* ===========================================================
+ * bootstrap-popover.js v2.0.1
+ * http://twitter.github.com/bootstrap/javascript.html#popovers
+ * ===========================================================
+ * Copyright 2012 Twitter, Inc.
+ *
+ * Licensed 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.
+ * =========================================================== */
+
+
+!function( $ ) {
+
+ "use strict"
+
+  var Popover = function ( element, options ) {
+    this.init('popover', element, options)
+  }
+
+  /* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js
+     ========================================== */
+
+  Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype, {
+
+    constructor: Popover
+
+  , setContent: function () {
+      var $tip = this.tip()
+        , title = this.getTitle()
+        , content = this.getContent()
+
+      $tip.find('.popover-title')[ $.type(title) == 'object' ? 'append' : 'html' ](title)
+      $tip.find('.popover-content > *')[ $.type(content) == 'object' ? 'append' : 'html' ](content)
+
+      $tip.removeClass('fade top bottom left right in')
+    }
+
+  , hasContent: function () {
+      return this.getTitle() || this.getContent()
+    }
+
+  , getContent: function () {
+      var content
+        , $e = this.$element
+        , o = this.options
+
+      content = $e.attr('data-content')
+        || (typeof o.content == 'function' ? o.content.call($e[0]) :  o.content)
+
+      content = content.toString().replace(/(^\s*|\s*$)/, "")
+
+      return content
+    }
+
+  , tip: function() {
+      if (!this.$tip) {
+        this.$tip = $(this.options.template)
+      }
+      return this.$tip
+    }
+
+  })
+
+
+ /* POPOVER PLUGIN DEFINITION
+  * ======================= */
+
+  $.fn.popover = function ( option ) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('popover')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('popover', (data = new Popover(this, options)))
+      if (typeof option == 'string') data[option]()
+    })
+  }
+
+  $.fn.popover.Constructor = Popover
+
+  $.fn.popover.defaults = $.extend({} , $.fn.tooltip.defaults, {
+    placement: 'right'
+  , content: ''
+  , template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
+  })
+
+}( window.jQuery );
\ No newline at end of file

Added: deltacloud/trunk/site/content/assets/js/bootstrap-scrollspy.js
URL: http://svn.apache.org/viewvc/deltacloud/trunk/site/content/assets/js/bootstrap-scrollspy.js?rev=1353588&view=auto
==============================================================================
--- deltacloud/trunk/site/content/assets/js/bootstrap-scrollspy.js (added)
+++ deltacloud/trunk/site/content/assets/js/bootstrap-scrollspy.js Mon Jun 25 15:05:02 2012
@@ -0,0 +1,125 @@
+/* =============================================================
+ * bootstrap-scrollspy.js v2.0.1
+ * http://twitter.github.com/bootstrap/javascript.html#scrollspy
+ * =============================================================
+ * Copyright 2012 Twitter, Inc.
+ *
+ * Licensed 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.
+ * ============================================================== */
+
+!function ( $ ) {
+
+  "use strict"
+
+  /* SCROLLSPY CLASS DEFINITION
+   * ========================== */
+
+  function ScrollSpy( element, options) {
+    var process = $.proxy(this.process, this)
+      , $element = $(element).is('body') ? $(window) : $(element)
+      , href
+    this.options = $.extend({}, $.fn.scrollspy.defaults, options)
+    this.$scrollElement = $element.on('scroll.scroll.data-api', process)
+    this.selector = (this.options.target
+      || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
+      || '') + ' .nav li > a'
+    this.$body = $('body').on('click.scroll.data-api', this.selector, process)
+    this.refresh()
+    this.process()
+  }
+
+  ScrollSpy.prototype = {
+
+      constructor: ScrollSpy
+
+    , refresh: function () {
+        this.targets = this.$body
+          .find(this.selector)
+          .map(function () {
+            var href = $(this).attr('href')
+            return /^#\w/.test(href) && $(href).length ? href : null
+          })
+
+        this.offsets = $.map(this.targets, function (id) {
+          return $(id).position().top
+        })
+      }
+
+    , process: function () {
+        var scrollTop = this.$scrollElement.scrollTop() + this.options.offset
+          , offsets = this.offsets
+          , targets = this.targets
+          , activeTarget = this.activeTarget
+          , i
+
+        for (i = offsets.length; i--;) {
+          activeTarget != targets[i]
+            && scrollTop >= offsets[i]
+            && (!offsets[i + 1] || scrollTop <= offsets[i + 1])
+            && this.activate( targets[i] )
+        }
+      }
+
+    , activate: function (target) {
+        var active
+
+        this.activeTarget = target
+
+        this.$body
+          .find(this.selector).parent('.active')
+          .removeClass('active')
+
+        active = this.$body
+          .find(this.selector + '[href="' + target + '"]')
+          .parent('li')
+          .addClass('active')
+
+        if ( active.parent('.dropdown-menu') )  {
+          active.closest('li.dropdown').addClass('active')
+        }
+      }
+
+  }
+
+
+ /* SCROLLSPY PLUGIN DEFINITION
+  * =========================== */
+
+  $.fn.scrollspy = function ( option ) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('scrollspy')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('scrollspy', (data = new ScrollSpy(this, options)))
+      if (typeof option == 'string') data[option]()
+    })
+  }
+
+  $.fn.scrollspy.Constructor = ScrollSpy
+
+  $.fn.scrollspy.defaults = {
+    offset: 10
+  }
+
+
+ /* SCROLLSPY DATA-API
+  * ================== */
+
+  $(function () {
+    $('[data-spy="scroll"]').each(function () {
+      var $spy = $(this)
+      $spy.scrollspy($spy.data())
+    })
+  })
+
+}( window.jQuery );
\ No newline at end of file



Mime
View raw message