Clean unimplemented files
Clean unimplemented files


Former-commit-id: a22e9f755ca7a5948d41e17941d609b336a2adc7

--- a/.gitmodules
+++ b/.gitmodules
@@ -19,7 +19,4 @@
 [submodule "javascripts/sigma"]
 	path = javascripts/sigma
 	url = https://github.com/jacomyal/sigma.js.git
-[submodule "javascripts/bubbletree"]
-	path = javascripts/bubbletree
-	url = https://github.com/okfn/bubbletree.git
 

--- a/admin/importGov2RegisterRSSFacebookTwitter.php
+++ b/admin/importGov2RegisterRSSFacebookTwitter.php
@@ -1,7 +1,7 @@
 <?php
 
 require_once '../include/common.inc.php';
-require($basePath . 'lib/phpquery/phpQuery/phpQuery.php');
+require($basePath.'lib/phpquery/phpQuery/phpQuery.php');
 
 $db = $server->get_db('disclosr-agencies');
 $rows = $db->get_view("app", "byName")->rows;
@@ -10,40 +10,41 @@
 foreach ($rows as $row) {
     $nametoid[trim($row->key)] = $row->value;
 }
-
 function extractHTMLAccounts($url, $accountType) {
     global $accounts, $nametoid;
     $request = Requests::get($url);
     $doc = phpQuery::newDocumentHTML($request->body);
     phpQuery::selectDocument($doc);
     foreach (pq('tr')->elements as $tr) {
-        //echo $tr->nodeValue.PHP_EOL;
-        $agency = "";
-        $url = "";
-        foreach ($tr->childNodes as $td) {
-            $class = $td->getAttribute("class");
-            //echo "cccc $class ".$td->nodeValue.PHP_EOL;
-            if ($class == "s11" || $class == "s10" || $class == "s7") {
-                $agency = $td->nodeValue;
-            } else if ($class == "s6" || $class == "s9") {
-                $url = $td->nodeValue;
-                foreach ($td->childNodes as $a) {
-                    $href = $a->getAttribute("href");
-                    if ($href != "") {
-                        $url = $href;
+       //echo $tr->nodeValue.PHP_EOL;
+       $agency = "";
+       $url = "";
+       foreach ($tr->childNodes as $td) {
+           $class = $td->getAttribute("class");
+           //echo "cccc $class ".$td->nodeValue.PHP_EOL;
+           if ($class == "s11" || $class == "s10" || $class == "s7") {
+               $agency = $td->nodeValue;
+           } else if ($class == "s6" || $class == "s9"){
+               $url = $td->nodeValue;
+               foreach($td->childNodes as $a) {
+                   $href = $a->getAttribute("href");
+                   if ($href != "") {
+                       $url = $href;
+                   }
+               }
+           }
+       }
+       if ($agency != "" && $url != "") {
+           if (!in_array(trim($agency), array_keys($nametoid))) {
+                        echo trim($agency)." missing" . PHP_EOL;
+                    } else {
+                     //   echo $agency." = ".$url.PHP_EOL;
+                        $accounts[$nametoid[trim($agency)]][$accountType][] = $url;
                     }
-                }
-            }
-        }
-        if ($agency != "" && $url != "") {
-            if (!in_array(trim($agency), array_keys($nametoid))) {
-                echo trim($agency) . " missing" . PHP_EOL;
-            } else {
-                //   echo $agency." = ".$url.PHP_EOL;
-                $accounts[$nametoid[trim($agency)]][$accountType][] = $url;
-            }
-        }
+       
+       }
     }
+    
 }
 
 function extractCSVAccounts($url, $accountType, $nameField, $accountField, $filter) {
@@ -52,7 +53,7 @@
     $Data = str_getcsv($request->body, "\n"); //parse the rows 
     $headers = Array();
     foreach ($Data as $num => $line) {
-        $Row = str_getcsv($line, ",", '"');
+        $Row = str_getcsv($line, ",",'"');
         if ($num == 0) {
             
         } else if ($num == 1) {
@@ -63,7 +64,7 @@
                 $agencyName = $Row[array_search($nameField, $headers)];
                 if (!$filter || $Row[array_search("State", $headers)] == "NAT") {
                     if (!in_array(trim($agencyName), array_keys($nametoid))) {
-                        echo trim($agencyName) . " missing" . PHP_EOL;
+                        echo trim($agencyName)." missing" . PHP_EOL;
                     } else {
                         // echo $Row[array_search($nameField, $headers)] . PHP_EOL;
                         $accounts[$nametoid[trim($agencyName)]][$accountType][] = $Row[array_search($accountField, $headers)];
@@ -83,18 +84,6 @@
 extractHTMLAccounts("https://docs.google.com/spreadsheet/pub?hl=en_GB&hl=en_GB&key=0Ah41IAK0HzSTdGJxandJREhLSGlWWUZfZ2xKOTNHZ0E&output=html", "RSS");
 // facebook 
 extractHTMLAccounts("https://docs.google.com/spreadsheet/pub?hl=en_GB&hl=en_GB&key=0Ah41IAK0HzSTdGtjcW9vOXdyZ3pOV21vQU51VmhzQnc&single=true&gid=0&output=html", "Facebook");
-foreach ($accounts as $id => $accountTypes) {
-    echo $id . "<br>" . PHP_EOL;
-    $doc = object_to_array($db->get($id));
-    // print_r($doc);
 
-    foreach ($accountTypes as $accountType => $accounts) {
-        if (!isset($doc["has" . $accountType]) || !is_array($doc["has" . $accountType])) {
-            $doc["has" . $accountType] = Array();
-        }
-        $doc["has" . $accountType] = array_unique(array_merge($doc["has" . $accountType], $accounts));
-    }
-    $db->save($doc);
-}
 ?>
 

file:a/admin/validation.py (deleted)
--- a/admin/validation.py
+++ /dev/null
@@ -1,30 +1,1 @@
-#http://packages.python.org/CouchDB/client.html
-import couchdb
-import json
-import pprint
-import re
-from tidylib import tidy_document
 
-couch = couchdb.Server('http://127.0.0.1:5984/')
-
-# select database
-docsdb = couch['disclosr-documents']
-
-def f(x):
-	invalid = re.compile(r"ensure|testing|flicker|updating|longdesc|Accessibility Checks|not recognized")
-	valid = re.compile(r"line")
-	return (not invalid.search(x)) and valid.search(x) and x != ''
-
-for row in docsdb.view('app/getValidationRequired'): 
-    print row.id
-    html = docsdb.get_attachment(row.id,row.value.iterkeys().next()).read()
-    #print html
-    document, errors = tidy_document(html,options={'accessibility-check':1,'show-warnings':0,'markup':0},keep_doc=True)
-    #http://www.aprompt.ca/Tidy/accessibilitychecks.html
-    #print document
-    errors = '\n'.join(filter(f,errors.split('\n')))
-    #print errors
-    doc = docsdb.get(row.id)
-    doc['validation'] = errors
-    docsdb.save(doc)
-

file:a/bubbletree.php (deleted)
--- a/bubbletree.php
+++ /dev/null
@@ -1,108 +1,1 @@
 
-<!DOCTYPE html> 
-<html xmlns="http://www.w3.org/1999/xhtml"> 
-<head> 
-	<meta charset="UTF-8"/> 
-	<title>Minimal BubbleTree Demo</title> 
-	<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.js"></script> 
-	<script type="text/javascript" src="javascripts/bubbletree/lib/jquery.history.js"></script> 
-	<script type="text/javascript" src="javascripts/bubbletree/lib/raphael.js"></script> 
-	<script type="text/javascript" src="javascripts/bubbletree/lib/vis4.js"></script> 
-	<script type="text/javascript" src="javascripts/bubbletree/lib/Tween.js"></script> 
-	<script type="text/javascript" src="javascripts/bubbletree/build/bubbletree.js"></script> 
-	<link rel="stylesheet" type="text/css" href="javascripts/bubbletree/build/bubbletree.css" /> 
-	<script type="text/javascript" src="javascripts/bubbletree/styles/cofog.js"></script> 
-	
-	
-	<script type="text/javascript"> 
-       
-		$(function() {
-		<?php
-include_once('include/common.inc.php');
-
-include("lib/Color.php");
-$color = new Lux_Color();
-
-$portfolios = Array();
-
-$db = $server->get_db('disclosr-agencies');
-try {
-    $rows = $db->get_view("app", "byDeptStateName", null, true)->rows;
-    foreach ($rows as $row) {
-       	$portfolios[trim(str_replace(Array("Department of","Department","the","'","`"),"",$row->key))] = $row->value;
-    }
-} catch (SetteeRestClientException $e) {
-    setteErrorHandler($e);
-}
-
-$agencies = Array();
-try {
-    $rows = $db->get_view("app", "byCanonicalName", null, true)->rows;
-//print_r($rows);
-    foreach ($rows as $row) {
-	$employees = 0;
-	$portfolioid = 0;
-	if ($row->value->employees) $employees = $row->value->employees;
-	if (isset($row->value->statistics->employees)) {
-$agencyEmployeesArray = object_to_array($row->value->statistics->employees);
- $employees = $agencyEmployeesArray["2010-2011"]["value"];
-}
-if (!($employees > 0)) $employees =0;
-	if (isset($row->value->parentOrg)) $portfolioid = $row->value->parentOrg;
-	if (isset($row->value->orgType) && $row->value->orgType == "FMA-DepartmentOfState") $portfolioid = $row->id;
-       	$agencies[$portfolioid][$row->value->name] = $employees;
-    }
-} catch (SetteeRestClientException $e) {
-    setteErrorHandler($e);
-}
-//print_r($portfolios);
-//print_r($agencies);
-$i = 0;
-foreach ($portfolios as $portfolioName => $portfolioID) {
-$i++;
-$portfolioColor = $color->hsv2hex(Array($i/10, .7, abs(($i*(1/10))-.5) + .5));
-	$subnodes = Array();
-	$portfolioEmployees = 0;
-	foreach ($agencies[$portfolioID] as $agencyName => $agencyEmployees) {
-		$agencyColor = $color->hsv2hex(Array($i/10, rand(1,10)/10, abs(($i*(1/10))-.5) + .5));
-		$subnodes[] = Array(
-			"label" => str_replace(Array("'","`"),"",$agencyName),
-			"amount" => $agencyEmployees,
-			"color" => "#".$agencyColor
-		);
-		$portfolioEmployees += $agencyEmployees;
-	}
-	$nodes[] = Array(
-		"label" => $portfolioName,
-		"amount" => $portfolioEmployees,
-		"color" => "#".$portfolioColor,
-		"children" => $subnodes
-	);
-	$total += $portfolioEmployees;
-}
-$data = Array(
-	"label" => "Australian Federal Government",
-	"amount" => $total,
-	"color" => "#000000",
-	"children" => $nodes
-);
-echo "var data =eval('('+'" . json_encode($data) . "'+')');";
-?>
-
-			new BubbleTree({
-				data: data,
-				container: '.bubbletree'
-			});
-		
-			
-		});
-     
-	</script> 
-</head> 
-<body> 
-	<div class="bubbletree-wrapper"> 
-		<div class="bubbletree"></div> 
-	</div> 
-</body> 
-</html> 
-

directory:a/couchdb/settee -> directory:b/couchdb/settee
--- a/couchdb/settee
+++ b/couchdb/settee

file:a/graph.php -> file:b/graph.php
--- a/graph.php
+++ b/graph.php
@@ -113,12 +113,12 @@
  sigInst.bind('downnodes',function(event){
     var nodes = event.content;
  });
-  // Draw the graph :
-  sigInst.draw();
   // Start the ForceAtlas2 algorithm
   // (requires "sigma.forceatlas2.js" to be included)
   sigInst.startForceAtlas2();
   
+  // Draw the graph :
+  sigInst.draw();
 }
 
 if (document.addEventListener) {

--- a/include/couchdb.inc.php
+++ b/include/couchdb.inc.php
@@ -22,10 +22,7 @@
        },
        "byWebServer": {
            "map": "function(doc) {\n  emit(doc.web_server, doc);\n}"
-       },
-  "getValidationRequired": {
-       "map": "function(doc) {\nif (doc.mime_type == \"text/html\" \n&& typeof(doc.validation) == \"undefined\") {\n  emit(doc._id, doc._attachments);\n}\n}"
-   }
+       }
    }*/
 }
 
@@ -170,4 +167,3 @@
 function setteErrorHandler($e) {
     echo $e->getMessage() . "<br>" . PHP_EOL;
 }
-

directory:a/javascripts/bubbletree (deleted)
--- a/javascripts/bubbletree
+++ /dev/null

file:a/lib/Color.php (deleted)
--- a/lib/Color.php
+++ /dev/null
@@ -1,502 +1,1 @@
-<?php

-/**

- *

- * Color values manipulation utilities. Provides methods to convert from and to

- * Hex, RGB, HSV and HSL color representattions.

- *

- * Several color conversion logic are based on pseudo-code from

- * http://www.easyrgb.com/math.php

- *

- * @category Lux

- *

- * @package Lux_Color

- *

- * @author Rodrigo Moraes <rodrigo.moraes@gmail.com>

- *

- * @license http://www.opensource.org/licenses/bsd-license.php BSD License

- *

- * @version $Id$

- *

- */

-class Lux_Color

-{

-    /**

-     *

-     * Converts hexadecimal colors to RGB.

-     *

-     * @param string $hex Hexadecimal value. Accepts values with 3 or 6 numbers,

-     * with or without #, e.g., CCC, #CCC, CCCCCC or #CCCCCC.

-     *

-     * @return array RGB values: 0 => R, 1 => G, 2 => B

-     *

-     */

-    public function hex2rgb($hex)

-    {

-        // Remove #.

-        if (strpos($hex, '#') === 0) {

-            $hex = substr($hex, 1);

-        }

-

-        if (strlen($hex) == 3) {

-            $hex .= $hex;

-        }

-

-        if (strlen($hex) != 6) {

-            return false;

-        }

-

-        // Convert each tuple to decimal.

-        $r = hexdec(substr($hex, 0, 2));

-        $g = hexdec(substr($hex, 2, 2));

-        $b = hexdec(substr($hex, 4, 2));

-

-        return array($r, $g, $b);

-    }

-

-    /**

-     *

-     * Converts hexadecimal colors to HSV.

-     *

-     * @param string $hex Hexadecimal value. Accepts values with 3 or 6 numbers,

-     * with or without #, e.g., CCC, #CCC, CCCCCC or #CCCCCC.

-     *

-     * @return array HSV values: 0 => H, 1 => S, 2 => V

-     *

-     */

-    public function hex2hsv($hex)

-    {

-        return $this->rgb2hsv($this->hex2rgb($hex));

-    }

-

-    /**

-     *

-     * Converts hexadecimal colors to HSL.

-     *

-     * @param string $hex Hexadecimal value. Accepts values with 3 or 6 numbers,

-     * with or without #, e.g., CCC, #CCC, CCCCCC or #CCCCCC.

-     *

-     * @return array HSL values: 0 => H, 1 => S, 2 => L

-     *

-     */

-    public function hex2hsl($hex)

-    {

-        return $this->rgb2hsl($this->hex2rgb($hex));

-    }

-

-    /**

-     *

-     * Converts RGB colors to hexadecimal.

-     *

-     * @param array $rgb RGB values: 0 => R, 1 => G, 2 => B

-     *

-     * @return string Hexadecimal value with six digits, e.g., CCCCCC.

-     *

-     */

-    public function rgb2hex($rgb)

-    {

-        if(count($rgb) < 3) {

-            return false;

-        }

-

-        list($r, $g, $b) = $rgb;

-

-        // From php.net.

-        $r = 0x10000 * max(0, min(255, $r));

-        $g = 0x100 * max(0, min(255, $g));

-        $b = max(0, min(255, $b));

-

-        return strtoupper(str_pad(dechex($r + $g + $b), 6, 0, STR_PAD_LEFT));

-    }

-

-    /**

-     *

-     * Converts RGB to HSV.

-     *

-     * @param array $rgb RGB values: 0 => R, 1 => G, 2 => B

-     *

-     * @return array HSV values: 0 => H, 1 => S, 2 => V

-     *

-     */

-    public function rgb2hsv($rgb)

-    {

-        // RGB values = 0 ÷ 255

-        $var_R = ($rgb[0] / 255);

-        $var_G = ($rgb[1] / 255);

-        $var_B = ($rgb[2] / 255);

-

-        // Min. value of RGB

-        $var_Min = min($var_R, $var_G, $var_B);

-

-        // Max. value of RGB

-        $var_Max = max($var_R, $var_G, $var_B);

-

-        // Delta RGB value

-        $del_Max = $var_Max - $var_Min;

-

-        $V = $var_Max;

-

-        // This is a gray, no chroma...

-        if ( $del_Max == 0 ) {

-           // HSV results = 0 ÷ 1

-           $H = 0;

-           $S = 0;

-        } else {

-           // Chromatic data...

-           $S = $del_Max / $var_Max;

-

-           $del_R = ((($var_Max - $var_R) / 6) + ($del_Max / 2)) / $del_Max;

-           $del_G = ((($var_Max - $var_G) / 6) + ($del_Max / 2)) / $del_Max;

-           $del_B = ((($var_Max - $var_B) / 6) + ($del_Max / 2)) / $del_Max;

-

-           if ($var_R == $var_Max) {

-               $H = $del_B - $del_G;

-           } else if ($var_G == $var_Max) {

-               $H = (1 / 3) + $del_R - $del_B;

-           } else if ($var_B == $var_Max) {

-               $H = (2 / 3) + $del_G - $del_R;

-           }

-

-           if ($H < 0) {

-               $H += 1;

-           }

-           if ($H > 1) {

-               $H -= 1;

-           }

-        }

-

-        // Returns agnostic values.

-        // Range will depend on the application: e.g. $H*360, $S*100, $V*100.

-        return array($H, $S, $V);

-    }

-

-    /**

-     *

-     * Converts RGB to HSL.

-     *

-     * @param array $rgb RGB values: 0 => R, 1 => G, 2 => B

-     *

-     * @return array HSL values: 0 => H, 1 => S, 2 => L

-     *

-     */

-    public function rgb2hsl($rgb)

-    {

-        // Where RGB values = 0 ÷ 255.

-        $var_R = $rgb[0] / 255;

-        $var_G = $rgb[1] / 255;

-        $var_B = $rgb[2] / 255;

-

-        // Min. value of RGB

-        $var_Min = min($var_R, $var_G, $var_B);

-        // Max. value of RGB

-        $var_Max = max($var_R, $var_G, $var_B);

-        // Delta RGB value

-        $del_Max = $var_Max - $var_Min;

-

-        $L = ($var_Max + $var_Min) / 2;

-

-        if ( $del_Max == 0 ) {

-            // This is a gray, no chroma...

-            // HSL results = 0 ÷ 1

-            $H = 0;

-            $S = 0;

-        } else {

-            // Chromatic data...

-            if ($L < 0.5) {

-                $S = $del_Max / ($var_Max + $var_Min);

-            } else {

-                $S = $del_Max / ( 2 - $var_Max - $var_Min );

-            }

-

-            $del_R = ((($var_Max - $var_R) / 6) + ($del_Max / 2)) / $del_Max;

-            $del_G = ((($var_Max - $var_G) / 6) + ($del_Max / 2)) / $del_Max;

-            $del_B = ((($var_Max - $var_B) / 6) + ($del_Max / 2)) / $del_Max;

-

-            if ($var_R == $var_Max) {

-                $H = $del_B - $del_G;

-            } else if ($var_G == $var_Max) {

-                $H = ( 1 / 3 ) + $del_R - $del_B;

-            } else if ($var_B == $var_Max) {

-                $H = ( 2 / 3 ) + $del_G - $del_R;

-            }

-

-            if ($H < 0) {

-                $H += 1;

-            }

-            if ($H > 1) {

-                $H -= 1;

-            }

-        }

-

-        return array($H, $S, $L);

-    }

-

-    /**

-     *

-     * Converts HSV colors to hexadecimal.

-     *

-     * @param array $hsv HSV values: 0 => H, 1 => S, 2 => V

-     *

-     * @return string Hexadecimal value with six digits, e.g., CCCCCC.

-     *

-     */

-    public function hsv2hex($hsv)

-    {

-        return $this->rgb2hex($this->hsv2rgb($hsv));

-    }

-

-    /**

-     *

-     * Converts HSV to RGB.

-     *

-     * @param array $hsv HSV values: 0 => H, 1 => S, 2 => V

-     *

-     * @return array RGB values: 0 => R, 1 => G, 2 => B

-     *

-     */

-    public function hsv2rgb($hsv)

-    {

-        $H = $hsv[0];

-        $S = $hsv[1];

-        $V = $hsv[2];

-

-        // HSV values = 0 ÷ 1

-        if ($S == 0) {

-            $R = $V * 255;

-            $G = $V * 255;

-            $B = $V * 255;

-        } else {

-            $var_h = $H * 6;

-            // H must be < 1

-            if ( $var_h == 6 ) {

-                $var_h = 0;

-            }

-            // Or ... $var_i = floor( $var_h )

-            $var_i = floor( $var_h );

-            $var_1 = $V * ( 1 - $S );

-            $var_2 = $V * ( 1 - $S * ( $var_h - $var_i ) );

-            $var_3 = $V * ( 1 - $S * ( 1 - ( $var_h - $var_i ) ) );

-

-            switch($var_i) {

-                case 0:

-                    $var_r = $V;

-                    $var_g = $var_3;

-                    $var_b = $var_1;

-                    break;

-                case 1:

-                    $var_r = $var_2;

-                    $var_g = $V;

-                    $var_b = $var_1;

-                    break;

-                case 2:

-                    $var_r = $var_1;

-                    $var_g = $V;

-                    $var_b = $var_3;

-                    break;

-                case 3:

-                    $var_r = $var_1;

-                    $var_g = $var_2;

-                    $var_b = $V;

-                    break;

-                case 4:

-                    $var_r = $var_3;

-                    $var_g = $var_1;

-                    $var_b = $V;

-                    break;

-                default:

-                    $var_r = $V;

-                    $var_g = $var_1;

-                    $var_b = $var_2;

-            }

-

-            //RGB results = 0 ÷ 255

-            $R = $var_r * 255;

-            $G = $var_g * 255;

-            $B = $var_b * 255;

-        }

-

-        return array($R, $G, $B);

-    }

-

-    /**

-     *

-     * Converts HSV colors to HSL.

-     *

-     * @param array $hsv HSV values: 0 => H, 1 => S, 2 => V

-     *

-     * @return array HSL values: 0 => H, 1 => S, 2 => L

-     *

-     */

-    public function hsv2hsl($hsv)

-    {

-        return $this->rgb2hsl($this->hsv2rgb($hsv));

-    }

-

-    /**

-     *

-     * Converts hexadecimal colors to HSL.

-     *

-     * @param array $hsl HSL values: 0 => H, 1 => S, 2 => L

-     *

-     * @return string Hexadecimal value. Accepts values with 3 or 6 numbers,

-     * with or without #, e.g., CCC, #CCC, CCCCCC or #CCCCCC.

-     *

-     */

-    public function hsl2hex($hsl)

-    {

-        return $this->rgb2hex($this->hsl2rgb($hsl));

-    }

-

-    /**

-     *

-     * Converts HSL to RGB.

-     *

-     * @param array $hsv HSL values: 0 => H, 1 => S, 2 => L

-     *

-     * @return array RGB values: 0 => R, 1 => G, 2 => B

-     *

-     */

-    public function hsl2rgb($hsl)

-    {

-        list($H, $S, $L) = $hsl;

-

-        if ($S == 0) {

-            // HSL values = 0 ÷ 1

-            // RGB results = 0 ÷ 255

-            $R = $L * 255;

-            $G = $L * 255;

-            $B = $L * 255;

-        } else {

-            if ($L < 0.5) {

-                $var_2 = $L * (1 + $S);

-            } else {

-                $var_2 = ($L + $S) - ($S * $L);

-            }

-

-            $var_1 = 2 * $L - $var_2;

-

-            $R = 255 * $this->_hue2rgb($var_1, $var_2, $H + (1 / 3));

-            $G = 255 * $this->_hue2rgb($var_1, $var_2, $H);

-            $B = 255 * $this->_hue2rgb($var_1, $var_2, $H - (1 / 3));

-        }

-

-        return array($R, $G, $B);

-    }

-

-    /**

-     *

-     * Support method for hsl2rgb(): converts hue ro RGB.

-     *

-     * @param

-     *

-     * @param

-     *

-     * @param

-     *

-     * @return int

-     *

-     */

-    protected function _hue2rgb($v1, $v2, $vH)

-    {

-        if ($vH < 0) {

-            $vH += 1;

-        }

-

-        if ($vH > 1) {

-            $vH -= 1;

-        }

-

-        if ((6 * $vH) < 1) {

-            return ($v1 + ($v2 - $v1) * 6 * $vH);

-        }

-

-        if ((2 * $vH) < 1) {

-            return $v2;

-        }

-

-        if ((3 * $vH) < 2) {

-            return ($v1 + ($v2 - $v1) * (( 2 / 3) - $vH) * 6);

-        }

-

-        return $v1;

-    }

-

-    /**

-     *

-     * Converts hexadecimal colors to HSL.

-     *

-     * @param array $hsl HSL values: 0 => H, 1 => S, 2 => L

-     *

-     * @return array HSV values: 0 => H, 1 => S, 2 => V

-     *

-     */

-    public function hsl2hsv($hsl)

-    {

-        return $this->rgb2hsv($this->hsl2rgb($hsl));

-    }

-

-    /**

-     *

-     * Updates HSV values.

-     *

-     * @param array $hsv HSV values: 0 => H, 1 => S, 2 => V

-     *

-     * @param array $values Values to update: 0 => value to add to H (0 to 360),

-     * 1 and 2 => values to multiply S and V (0 to 100). Example:

-     *

-     * {{{code:php

-     *     // Update saturation to 80% in the provided HSV.

-     *     $hsv = array(120, 0.75, 0.75);

-     *     $new_hsv = $color->updateHsv($hsv, array(null, 80, null));

-     * }}}

-     *

-     */

-    public function updateHsv($hsv, $values)

-    {

-        if (isset($values[0])) {

-            $hsv[0] = max(0, min(360, ($hsv[0] + $values[0])));

-        }

-

-        if (isset($values[1])) {

-            $hsv[1] = max(0, min(1, ($hsv[1] * ($values[1] / 100))));

-        }

-

-        if (isset($values[2])) {

-            $hsv[2] = max(0, min(1, ($hsv[2] * ($values[2] / 100))));

-        }

-

-        return $hsv;

-    }

-

-    /**

-     *

-     * Updates HSL values.

-     *

-     * @param array $hsl HSL values: 0 => H, 1 => S, 2 => L

-     *

-     * @param array $values Values to update: 0 => value to add to H (0 to 360),

-     * 1 and 2 => values to multiply S and V (0 to 100). Example:

-     *

-     * {{{code:php

-     *     // Update saturation to 80% in the provided HSL.

-     *     $hsl = array(120, 0.75, 0.75);

-     *     $new_hsl = $color->updateHsl($hsl, array(null, 80, null));

-     * }}}

-     *

-     */

-    public function updateHsl($hsl, $values)

-    {

-        if (isset($values[0])) {

-            $hsl[0] = max(0, min(360, ($hsl[0] + $values[0])));

-        }

-

-        if (isset($values[1])) {

-            $hsl[1] = max(0, min(1, ($hsl[1] * ($values[1] / 100))));

-        }

-

-        if (isset($values[2])) {

-            $hsl[2] = max(0, min(1, ($hsl[2] * ($values[2] / 100))));

-        }

-

-        return $hsl;

-    }

-}
+

--- a/unimplemented/foundation.html
+++ /dev/null
@@ -1,137 +1,1 @@
-<!DOCTYPE html>
 
-<!-- paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
-<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]-->
-<!--[if IE 7]>    <html class="no-js lt-ie9 lt-ie8" lang="en"> <![endif]-->
-<!--[if IE 8]>    <html class="no-js lt-ie9" lang="en"> <![endif]-->
-<!--[if gt IE 8]><!--> <html lang="en"> <!--<![endif]-->
-<head>
-	<meta charset="utf-8" />
-
-	<!-- Set the viewport width to device width for mobile -->
-	<meta name="viewport" content="width=device-width" />
-
-	<title>Welcome to Foundation</title>
-  
-	<!-- Included CSS Files -->
-	<link rel="stylesheet" href="stylesheets/foundation.css">
-	<link rel="stylesheet" href="stylesheets/app.css">
-
-	<!--[if lt IE 9]>
-		<link rel="stylesheet" href="stylesheets/ie.css">
-	<![endif]-->
-
-
-	<!-- IE Fix for HTML5 Tags -->
-	<!--[if lt IE 9]>
-		<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
-	<![endif]-->
-
-</head>
-<body>
-
-	<!-- container -->
-	<div class="container">
-
-		<div class="row">
-			<div class="twelve columns">
-				<h2>Welcome to Foundation</h2>
-				<p>This is version 2.1.4 released on December 19, 2011</p>
-				<hr />
-			</div>
-		</div>
-
-		<div class="row">
-			<div class="eight columns">
-				<h3>The Grid</h3>
-
-				<!-- Grid Example -->
-				<div class="row">