33eed8c5 by Jeff Balicki

composer update

Signed-off-by: Jeff <jeff@gotenzing.com>
1 parent d6e1cd89
Showing 157 changed files with 10 additions and 4649 deletions
1 { 1 {
2 "name": "insu/commonwell-corp", 2 "name": "insu/commonwell-broker",
3 "authors": [ 3 "authors": [
4 { 4 {
5 "name": "Insu Mun", 5 "name": "Insu Mun",
...@@ -10,6 +10,6 @@ ...@@ -10,6 +10,6 @@
10 10
11 }, 11 },
12 "require-dev": { 12 "require-dev": {
13 "sunra/php-simple-html-dom-parser": "v1.5.0" 13
14 } 14 }
15 } 15 }
......
...@@ -4,57 +4,9 @@ ...@@ -4,57 +4,9 @@
4 "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", 4 "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5 "This file is @generated automatically" 5 "This file is @generated automatically"
6 ], 6 ],
7 "content-hash": "93c274f4eed4187c43b9bb3922987c5a", 7 "content-hash": "617e9641bee528364791c3db43dc6451",
8 "packages": [], 8 "packages": [],
9 "packages-dev": [ 9 "packages-dev": [],
10 {
11 "name": "sunra/php-simple-html-dom-parser",
12 "version": "v1.5.0",
13 "source": {
14 "type": "git",
15 "url": "https://github.com/sunra/php-simple-html-dom-parser.git",
16 "reference": "a0b80ace086c7e09085669205e1b3c2c9c7a453c"
17 },
18 "dist": {
19 "type": "zip",
20 "url": "https://api.github.com/repos/sunra/php-simple-html-dom-parser/zipball/a0b80ace086c7e09085669205e1b3c2c9c7a453c",
21 "reference": "a0b80ace086c7e09085669205e1b3c2c9c7a453c",
22 "shasum": ""
23 },
24 "require": {
25 "php": ">=5.3.2"
26 },
27 "type": "library",
28 "autoload": {
29 "psr-0": {
30 "Sunra\\PhpSimple\\HtmlDomParser": "Src/"
31 }
32 },
33 "notification-url": "https://packagist.org/downloads/",
34 "license": [
35 "MIT"
36 ],
37 "authors": [
38 {
39 "name": "Sunra",
40 "email": "sunra@yandex.ru",
41 "homepage": "https://github.com/sunra"
42 }
43 ],
44 "description": "Composer adaptation of: A HTML DOM parser written in PHP5+ let you manipulate HTML in a very easy way! Require PHP 5+. Supports invalid HTML. Find tags on an HTML page with selectors just like jQuery. Extract contents from HTML in a single line.",
45 "homepage": "https://github.com/sunra/php-simple-html-dom-parser",
46 "keywords": [
47 "dom",
48 "html",
49 "parser"
50 ],
51 "support": {
52 "issues": "https://github.com/sunra/php-simple-html-dom-parser/issues",
53 "source": "https://github.com/sunra/php-simple-html-dom-parser/tree/v1.5.0"
54 },
55 "time": "2013-05-04T14:32:03+00:00"
56 }
57 ],
58 "aliases": [], 10 "aliases": [],
59 "minimum-stability": "stable", 11 "minimum-stability": "stable",
60 "stability-flags": [], 12 "stability-flags": [],
......
...@@ -6,5 +6,4 @@ $vendorDir = dirname(__DIR__); ...@@ -6,5 +6,4 @@ $vendorDir = dirname(__DIR__);
6 $baseDir = dirname($vendorDir); 6 $baseDir = dirname($vendorDir);
7 7
8 return array( 8 return array(
9 'Sunra\\PhpSimple\\HtmlDomParser' => array($vendorDir . '/sunra/php-simple-html-dom-parser/Src'),
10 ); 9 );
......
...@@ -6,16 +6,6 @@ namespace Composer\Autoload; ...@@ -6,16 +6,6 @@ namespace Composer\Autoload;
6 6
7 class ComposerStaticInit7eed35e2f38ed1cb03859be433a9922f 7 class ComposerStaticInit7eed35e2f38ed1cb03859be433a9922f
8 { 8 {
9 public static $prefixesPsr0 = array (
10 'S' =>
11 array (
12 'Sunra\\PhpSimple\\HtmlDomParser' =>
13 array (
14 0 => __DIR__ . '/..' . '/sunra/php-simple-html-dom-parser/Src',
15 ),
16 ),
17 );
18
19 public static $classMap = array ( 9 public static $classMap = array (
20 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', 10 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php',
21 ); 11 );
...@@ -23,7 +13,6 @@ class ComposerStaticInit7eed35e2f38ed1cb03859be433a9922f ...@@ -23,7 +13,6 @@ class ComposerStaticInit7eed35e2f38ed1cb03859be433a9922f
23 public static function getInitializer(ClassLoader $loader) 13 public static function getInitializer(ClassLoader $loader)
24 { 14 {
25 return \Closure::bind(function () use ($loader) { 15 return \Closure::bind(function () use ($loader) {
26 $loader->prefixesPsr0 = ComposerStaticInit7eed35e2f38ed1cb03859be433a9922f::$prefixesPsr0;
27 $loader->classMap = ComposerStaticInit7eed35e2f38ed1cb03859be433a9922f::$classMap; 16 $loader->classMap = ComposerStaticInit7eed35e2f38ed1cb03859be433a9922f::$classMap;
28 17
29 }, null, ClassLoader::class); 18 }, null, ClassLoader::class);
......
1 { 1 {
2 "packages": [ 2 "packages": [],
3 {
4 "name": "sunra/php-simple-html-dom-parser",
5 "version": "v1.5.0",
6 "version_normalized": "1.5.0.0",
7 "source": {
8 "type": "git",
9 "url": "https://github.com/sunra/php-simple-html-dom-parser.git",
10 "reference": "a0b80ace086c7e09085669205e1b3c2c9c7a453c"
11 },
12 "dist": {
13 "type": "zip",
14 "url": "https://api.github.com/repos/sunra/php-simple-html-dom-parser/zipball/a0b80ace086c7e09085669205e1b3c2c9c7a453c",
15 "reference": "a0b80ace086c7e09085669205e1b3c2c9c7a453c",
16 "shasum": ""
17 },
18 "require": {
19 "php": ">=5.3.2"
20 },
21 "time": "2013-05-04T14:32:03+00:00",
22 "type": "library",
23 "installation-source": "dist",
24 "autoload": {
25 "psr-0": {
26 "Sunra\\PhpSimple\\HtmlDomParser": "Src/"
27 }
28 },
29 "notification-url": "https://packagist.org/downloads/",
30 "license": [
31 "MIT"
32 ],
33 "authors": [
34 {
35 "name": "Sunra",
36 "email": "sunra@yandex.ru",
37 "homepage": "https://github.com/sunra"
38 }
39 ],
40 "description": "Composer adaptation of: A HTML DOM parser written in PHP5+ let you manipulate HTML in a very easy way! Require PHP 5+. Supports invalid HTML. Find tags on an HTML page with selectors just like jQuery. Extract contents from HTML in a single line.",
41 "homepage": "https://github.com/sunra/php-simple-html-dom-parser",
42 "keywords": [
43 "dom",
44 "html",
45 "parser"
46 ],
47 "support": {
48 "issues": "https://github.com/sunra/php-simple-html-dom-parser/issues",
49 "source": "https://github.com/sunra/php-simple-html-dom-parser/tree/v1.5.0"
50 },
51 "install-path": "../sunra/php-simple-html-dom-parser"
52 }
53 ],
54 "dev": true, 3 "dev": true,
55 "dev-package-names": [ 4 "dev-package-names": []
56 "sunra/php-simple-html-dom-parser"
57 ]
58 } 5 }
......
1 <?php return array( 1 <?php return array(
2 'root' => array( 2 'root' => array(
3 'name' => 'insu/commonwell-corp', 3 'name' => 'insu/commonwell-broker',
4 'pretty_version' => 'dev-master', 4 'pretty_version' => 'dev-master',
5 'version' => 'dev-master', 5 'version' => 'dev-master',
6 'reference' => 'a0ae488ac7432224a2caa5b58213e0be46b6f35c', 6 'reference' => 'd6e1cd89c8749f10e6e4c2fec159f992e1c61639',
7 'type' => 'library', 7 'type' => 'library',
8 'install_path' => __DIR__ . '/../../', 8 'install_path' => __DIR__ . '/../../',
9 'aliases' => array(), 9 'aliases' => array(),
10 'dev' => true, 10 'dev' => true,
11 ), 11 ),
12 'versions' => array( 12 'versions' => array(
13 'insu/commonwell-corp' => array( 13 'insu/commonwell-broker' => array(
14 'pretty_version' => 'dev-master', 14 'pretty_version' => 'dev-master',
15 'version' => 'dev-master', 15 'version' => 'dev-master',
16 'reference' => 'a0ae488ac7432224a2caa5b58213e0be46b6f35c', 16 'reference' => 'd6e1cd89c8749f10e6e4c2fec159f992e1c61639',
17 'type' => 'library', 17 'type' => 'library',
18 'install_path' => __DIR__ . '/../../', 18 'install_path' => __DIR__ . '/../../',
19 'aliases' => array(), 19 'aliases' => array(),
20 'dev_requirement' => false, 20 'dev_requirement' => false,
21 ), 21 ),
22 'sunra/php-simple-html-dom-parser' => array(
23 'pretty_version' => 'v1.5.0',
24 'version' => '1.5.0.0',
25 'reference' => 'a0b80ace086c7e09085669205e1b3c2c9c7a453c',
26 'type' => 'library',
27 'install_path' => __DIR__ . '/../sunra/php-simple-html-dom-parser',
28 'aliases' => array(),
29 'dev_requirement' => true,
30 ),
31 ), 22 ),
32 ); 23 );
......
1 php-simple-html-dom-parser
2 ==========================
3
4 Version 1.5
5
6 Adaptation for Composer and PSR-0 of:
7
8 A HTML DOM parser written in PHP5+ let you manipulate HTML in a very easy way!
9 Require PHP 5+.
10 Supports invalid HTML.
11 Find tags on an HTML page with selectors just like jQuery.
12 Extract contents from HTML in a single line.
13
14 http://simplehtmldom.sourceforge.net/
15
16
17 Install
18 -------
19
20 composer.phar require
21 - package name: "sunra/php-simple-html-dom-parser": "dev-master"
22
23
24 Usage
25 -----
26
27 ```php
28 use Sunra\PhpSimple\HtmlDomParser;
29
30 ...
31 $dom = HtmlDomParser::str_get_html( $str );
32 or
33 $dom = HtmlDomParser::file_get_html( $file_name );
34
35 $elems = $dom->find($elem_name);
36 ...
37
38 ```
1 <?php
2 // say me who add "О╩©" into start of file?
3 // Becouse of this 3 symbol before <?php - php get error
4 // i think it Sublime Text
5
6 namespace Sunra\PhpSimple;
7
8 require 'simplehtmldom_1_5'.DIRECTORY_SEPARATOR.'simple_html_dom.php';
9
10 class HtmlDomParser {
11
12 static public function file_get_html() {
13 return call_user_func_array ( '\file_get_html' , func_get_args() );
14 }
15
16 // get html dom from string
17 static public function str_get_html() {
18 return call_user_func_array ( '\str_get_html' , func_get_args() );
19 }
20 }
...\ No newline at end of file ...\ No newline at end of file
1 K 25
2 svn:wc:ra_dav:version-url
3 V 45
4 /svnroot/simplehtmldom/!svn/ver/179/trunk/app
5 END
6 google.htm
7 K 25
8 svn:wc:ra_dav:version-url
9 V 56
10 /svnroot/simplehtmldom/!svn/ver/179/trunk/app/google.htm
11 END
12 index.php
13 K 25
14 svn:wc:ra_dav:version-url
15 V 55
16 /svnroot/simplehtmldom/!svn/ver/176/trunk/app/index.php
17 END
1 10
2
3 dir
4 182
5 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/app
6 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
7
8
9
10 2009-02-23T09:04:02.699587Z
11 179
12 me578022
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 d0e60b4b-9046-0410-940c-b97530268c78
28
29 google.htm
30 file
31
32
33
34
35 2010-08-17T19:13:52.500237Z
36 72a16a066c5a729cd5ddaf6e39082b05
37 2009-02-23T09:04:02.699587Z
38 179
39 me578022
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 60128
62
63 js
64 dir
65
66 index.php
67 file
68
69
70
71
72 2010-08-17T19:13:52.502237Z
73 3793524c0c846be09274b428d4972b60
74 2008-12-14T19:02:48.351607Z
75 176
76 me578022
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98 4496
99
1 <?php
2 error_reporting(E_ALL);
3 include_once('../simple_html_dom.php');
4
5 $html = file_get_html('google.htm');
6 //$html = file_get_html('youtube.htm');
7 //$html = file_get_html('Product.ibatis.xml');
8
9
10 $lang = '';
11 $l=$html->find('html', 0);
12 if ($l!==null)
13 $lang = $l->lang;
14 if ($lang!='')
15 $lang = 'lang="'.$lang.'"';
16
17 $charset = $html->find('meta[http-equiv*=content-type]', 0);
18 $target = array();
19 $query = '';
20
21 if (isset($_REQUEST['query'])) {
22 $query = $_REQUEST['query'];
23 $target = $html->find($query);
24 }
25
26 function stat_dom($dom) {
27 $count_text = 0;
28 $count_comm = 0;
29 $count_elem = 0;
30 $count_tag_end = 0;
31 $count_unknown = 0;
32
33 foreach($dom->nodes as $n) {
34 if ($n->nodetype==HDOM_TYPE_TEXT)
35 ++$count_text;
36 if ($n->nodetype==HDOM_TYPE_COMMENT)
37 ++$count_comm;
38 if ($n->nodetype==HDOM_TYPE_ELEMENT)
39 ++$count_elem;
40 if ($n->nodetype==HDOM_TYPE_ENDTAG)
41 ++$count_tag_end;
42 if ($n->nodetype==HDOM_TYPE_UNKNOWN)
43 ++$count_unknown;
44 }
45
46 echo 'Total: '. count($dom->nodes).
47 ', Text: '.$count_text.
48 ', Commnet: '.$count_comm.
49 ', Tag: '.$count_elem.
50 ', End Tag: '.$count_tag_end.
51 ', Unknown: '.$count_unknown;
52 }
53
54 function dump_my_html_tree($node, $show_attr=true, $deep=0, $last=true) {
55 $count = count($node->nodes);
56 if ($count>0) {
57 if($last)
58 echo '<li class="expandable lastExpandable"><div class="hitarea expandable-hitarea lastExpandable-hitarea"></div>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
59 else
60 echo '<li class="expandable"><div class="hitarea expandable-hitarea"></div>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
61 }
62 else {
63 $laststr = ($last===false) ? '' : ' class="last"';
64 echo '<li'.$laststr.'>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
65 }
66
67 if ($show_attr) {
68 foreach($node->attr as $k=>$v) {
69 echo ' '.htmlspecialchars($k).'="<span class="attr">'.htmlspecialchars($node->$k).'</span>"';
70 }
71 }
72 echo '&gt;';
73
74 if ($node->tag==='text' || $node->tag==='comment') {
75 echo htmlspecialchars($node->innertext);
76 return;
77 }
78
79 if ($count>0) echo "\n<ul style=\"display: none;\">\n";
80 $i=0;
81 foreach($node->nodes as $c) {
82 $last = (++$i==$count) ? true : false;
83 dump_my_html_tree($c, $show_attr, $deep+1, $last);
84 }
85 if ($count>0)
86 echo "</ul>\n";
87
88 //if ($count>0) echo '&lt;/<span class="attr">'.htmlspecialchars($node->tag).'</span>&gt;';
89 echo "</li>\n";
90 }
91 ?>
92 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
93
94 <html <?=$lang?>>
95 <head>
96 <?
97 if ($lang!='')
98 echo '<meta http-equiv="content-type" content="text/html; charset=utf-8"/>';
99 else if ($charset)
100 echo $charset;
101 else
102 echo '<meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>';
103 ?>
104 <title>Simple HTML DOM Query Test</title>
105 <link rel="stylesheet" href="js/jquery.treeview.css" />
106 <link rel="stylesheet" href="js/screen.css" />
107 <style>
108 .tag { color: blue; }
109 .attr { color: #990033; }
110 </style>
111 <script src="js/jquery.js" type="text/javascript"></script>
112 <script src="js/jquery.treeview.js" type="text/javascript"></script>
113 <script type="text/javascript">
114 $(document).ready(function(){
115 $("#html_tree").treeview({
116 control:"#sidetreecontrol",
117 collapsed: true,
118 prerendered: true
119 });
120 });
121 </script>
122 </head>
123 <body>
124 <div id="main">
125 <h4>Simple HTML DOM Test</h4>
126 <form name="form1" method="post" action="">
127 find: <input name="query" type="text" size="60" maxlength="60" value="<?=htmlspecialchars($query)?>">
128 <input type="submit" name="Submit" value="Go">
129 </form>
130 <br>
131 HTML STAT (<?stat_dom($html);?>)<br>
132 <br>
133 <div id="sidetreecontrol"><a href="?#">Collapse All</a> | <a href="?#">Expand All</a></div><br>
134 <ul class="treeview" id="html_tree">
135 <?
136 ob_start();
137 foreach($target as $e)
138 dump_my_html_tree($e, true);
139 ob_end_flush();
140 ?>
141 </ul>
142 </div>
143
144 </body></html>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 error_reporting(E_ALL);
3 include_once('../simple_html_dom.php');
4
5 $html = file_get_html('google.htm');
6 //$html = file_get_html('youtube.htm');
7 //$html = file_get_html('Product.ibatis.xml');
8
9
10 $lang = '';
11 $l=$html->find('html', 0);
12 if ($l!==null)
13 $lang = $l->lang;
14 if ($lang!='')
15 $lang = 'lang="'.$lang.'"';
16
17 $charset = $html->find('meta[http-equiv*=content-type]', 0);
18 $target = array();
19 $query = '';
20
21 if (isset($_REQUEST['query'])) {
22 $query = $_REQUEST['query'];
23 $target = $html->find($query);
24 }
25
26 function stat_dom($dom) {
27 $count_text = 0;
28 $count_comm = 0;
29 $count_elem = 0;
30 $count_tag_end = 0;
31 $count_unknown = 0;
32
33 foreach($dom->nodes as $n) {
34 if ($n->nodetype==HDOM_TYPE_TEXT)
35 ++$count_text;
36 if ($n->nodetype==HDOM_TYPE_COMMENT)
37 ++$count_comm;
38 if ($n->nodetype==HDOM_TYPE_ELEMENT)
39 ++$count_elem;
40 if ($n->nodetype==HDOM_TYPE_ENDTAG)
41 ++$count_tag_end;
42 if ($n->nodetype==HDOM_TYPE_UNKNOWN)
43 ++$count_unknown;
44 }
45
46 echo 'Total: '. count($dom->nodes).
47 ', Text: '.$count_text.
48 ', Commnet: '.$count_comm.
49 ', Tag: '.$count_elem.
50 ', End Tag: '.$count_tag_end.
51 ', Unknown: '.$count_unknown;
52 }
53
54 function dump_my_html_tree($node, $show_attr=true, $deep=0, $last=true) {
55 $count = count($node->nodes);
56 if ($count>0) {
57 if($last)
58 echo '<li class="expandable lastExpandable"><div class="hitarea expandable-hitarea lastExpandable-hitarea"></div>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
59 else
60 echo '<li class="expandable"><div class="hitarea expandable-hitarea"></div>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
61 }
62 else {
63 $laststr = ($last===false) ? '' : ' class="last"';
64 echo '<li'.$laststr.'>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
65 }
66
67 if ($show_attr) {
68 foreach($node->attr as $k=>$v) {
69 echo ' '.htmlspecialchars($k).'="<span class="attr">'.htmlspecialchars($node->$k).'</span>"';
70 }
71 }
72 echo '&gt;';
73
74 if ($node->tag==='text' || $node->tag==='comment') {
75 echo htmlspecialchars($node->innertext);
76 return;
77 }
78
79 if ($count>0) echo "\n<ul style=\"display: none;\">\n";
80 $i=0;
81 foreach($node->nodes as $c) {
82 $last = (++$i==$count) ? true : false;
83 dump_my_html_tree($c, $show_attr, $deep+1, $last);
84 }
85 if ($count>0)
86 echo "</ul>\n";
87
88 //if ($count>0) echo '&lt;/<span class="attr">'.htmlspecialchars($node->tag).'</span>&gt;';
89 echo "</li>\n";
90 }
91 ?>
92 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
93
94 <html <?=$lang?>>
95 <head>
96 <?
97 if ($lang!='')
98 echo '<meta http-equiv="content-type" content="text/html; charset=utf-8"/>';
99 else if ($charset)
100 echo $charset;
101 else
102 echo '<meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>';
103 ?>
104 <title>Simple HTML DOM Query Test</title>
105 <link rel="stylesheet" href="js/jquery.treeview.css" />
106 <link rel="stylesheet" href="js/screen.css" />
107 <style>
108 .tag { color: blue; }
109 .attr { color: #990033; }
110 </style>
111 <script src="js/jquery.js" type="text/javascript"></script>
112 <script src="js/jquery.treeview.js" type="text/javascript"></script>
113 <script type="text/javascript">
114 $(document).ready(function(){
115 $("#html_tree").treeview({
116 control:"#sidetreecontrol",
117 collapsed: true,
118 prerendered: true
119 });
120 });
121 </script>
122 </head>
123 <body>
124 <div id="main">
125 <h4>Simple HTML DOM Test</h4>
126 <form name="form1" method="post" action="">
127 find: <input name="query" type="text" size="60" maxlength="60" value="<?=htmlspecialchars($query)?>">
128 <input type="submit" name="Submit" value="Go">
129 </form>
130 <br>
131 HTML STAT (<?stat_dom($html);?>)<br>
132 <br>
133 <div id="sidetreecontrol"><a href="?#">Collapse All</a> | <a href="?#">Expand All</a></div><br>
134 <ul class="treeview" id="html_tree">
135 <?
136 ob_start();
137 foreach($target as $e)
138 dump_my_html_tree($e, true);
139 ob_end_flush();
140 ?>
141 </ul>
142 </div>
143
144 </body></html>
...\ No newline at end of file ...\ No newline at end of file
1 K 25
2 svn:wc:ra_dav:version-url
3 V 48
4 /svnroot/simplehtmldom/!svn/ver/176/trunk/app/js
5 END
6 jquery.treeview.css
7 K 25
8 svn:wc:ra_dav:version-url
9 V 68
10 /svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/jquery.treeview.css
11 END
12 jquery.treeview.js
13 K 25
14 svn:wc:ra_dav:version-url
15 V 67
16 /svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/jquery.treeview.js
17 END
18 screen.css
19 K 25
20 svn:wc:ra_dav:version-url
21 V 59
22 /svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/screen.css
23 END
24 jquery.js
25 K 25
26 svn:wc:ra_dav:version-url
27 V 58
28 /svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/jquery.js
29 END
1 10
2
3 dir
4 182
5 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/app/js
6 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
7
8
9
10 2008-12-14T19:02:48.351607Z
11 176
12 me578022
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 d0e60b4b-9046-0410-940c-b97530268c78
28
29 jquery.treeview.css
30 file
31
32
33
34
35 2010-08-17T19:13:52.459235Z
36 339ab1bbbaefa62f58c1fbf4459a7d0e
37 2008-12-14T19:02:48.351607Z
38 176
39 me578022
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 2589
62
63 jquery.treeview.js
64 file
65
66
67
68
69 2010-08-17T19:13:52.460235Z
70 3f81db67b7a973c8835ef5213e3b93c6
71 2008-12-14T19:02:48.351607Z
72 176
73 me578022
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95 7839
96
97 images
98 dir
99
100 screen.css
101 file
102
103
104
105
106 2010-08-17T19:13:52.463235Z
107 b8e74072c3d1b740bce61509ce86fe68
108 2008-12-14T19:02:48.351607Z
109 176
110 me578022
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132 623
133
134 jquery.js
135 file
136
137
138
139
140 2010-08-17T19:13:52.465235Z
141 957620aeffb2e5b562591b7a19928ea4
142 2008-12-14T19:02:48.351607Z
143 176
144 me578022
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166 94443
167
1 .treeview, .treeview ul {
2 padding: 0;
3 margin: 0;
4 list-style: none;
5 }
6
7 .treeview ul {
8 background-color: white;
9 margin-top: 4px;
10 }
11
12 .treeview .hitarea {
13 background: url(images/treeview-default.gif) -64px -25px no-repeat;
14 height: 16px;
15 width: 16px;
16 margin-left: -16px;
17 float: left;
18 cursor: pointer;
19 }
20 /* fix for IE6 */
21 * html .hitarea {
22 display: inline;
23 float:none;
24 }
25
26 .treeview li {
27 margin: 0;
28 padding: 3px 0pt 3px 16px;
29 }
30
31 .treeview a.selected {
32 background-color: #eee;
33 }
34
35 #treecontrol { margin: 1em 0; display: none; }
36
37 .treeview .hover { color: red; cursor: pointer; }
38
39 .treeview li { background: url(images/treeview-default-line.gif) 0 0 no-repeat; }
40 .treeview li.collapsable, .treeview li.expandable { background-position: 0 -176px; }
41
42 .treeview .expandable-hitarea { background-position: -80px -3px; }
43
44 .treeview li.last { background-position: 0 -1766px }
45 .treeview li.lastCollapsable, .treeview li.lastExpandable { background-image: url(images/treeview-default.gif); }
46 .treeview li.lastCollapsable { background-position: 0 -111px }
47 .treeview li.lastExpandable { background-position: -32px -67px }
48
49 .treeview div.lastCollapsable-hitarea, .treeview div.lastExpandable-hitarea { background-position: 0; }
50
51 .treeview-red li { background-image: url(images/treeview-red-line.gif); }
52 .treeview-red .hitarea, .treeview-red li.lastCollapsable, .treeview-red li.lastExpandable { background-image: url(images/treeview-red.gif); }
53
54 .treeview-black li { background-image: url(images/treeview-black-line.gif); }
55 .treeview-black .hitarea, .treeview-black li.lastCollapsable, .treeview-black li.lastExpandable { background-image: url(images/treeview-black.gif); }
56
57 .treeview-gray li { background-image: url(images/treeview-gray-line.gif); }
58 .treeview-gray .hitarea, .treeview-gray li.lastCollapsable, .treeview-gray li.lastExpandable { background-image: url(images/treeview-gray.gif); }
59
60 .treeview-famfamfam li { background-image: url(images/treeview-famfamfam-line.gif); }
61 .treeview-famfamfam .hitarea, .treeview-famfamfam li.lastCollapsable, .treeview-famfamfam li.lastExpandable { background-image: url(images/treeview-famfamfam.gif); }
62
63
64 .filetree li { padding: 3px 0 2px 16px; }
65 .filetree span.folder, .filetree span.file { padding: 1px 0 1px 16px; display: block; }
66 .filetree span.folder { background: url(images/folder.gif) 0 0 no-repeat; }
67 .filetree li.expandable span.folder { background: url(images/folder-closed.gif) 0 0 no-repeat; }
68 .filetree span.file { background: url(images/file.gif) 0 0 no-repeat; }
1 /*
2 * Treeview 1.4 - jQuery plugin to hide and show branches of a tree
3 *
4 * http://bassistance.de/jquery-plugins/jquery-plugin-treeview/
5 * http://docs.jquery.com/Plugins/Treeview
6 *
7 * Copyright (c) 2007 Jörn Zaefferer
8 *
9 * Dual licensed under the MIT and GPL licenses:
10 * http://www.opensource.org/licenses/mit-license.php
11 * http://www.gnu.org/licenses/gpl.html
12 *
13 * Revision: $Id: jquery.treeview.js 4684 2008-02-07 19:08:06Z joern.zaefferer $
14 *
15 */
16
17 ;(function($) {
18
19 $.extend($.fn, {
20 swapClass: function(c1, c2) {
21 var c1Elements = this.filter('.' + c1);
22 this.filter('.' + c2).removeClass(c2).addClass(c1);
23 c1Elements.removeClass(c1).addClass(c2);
24 return this;
25 },
26 replaceClass: function(c1, c2) {
27 return this.filter('.' + c1).removeClass(c1).addClass(c2).end();
28 },
29 hoverClass: function(className) {
30 className = className || "hover";
31 return this.hover(function() {
32 $(this).addClass(className);
33 }, function() {
34 $(this).removeClass(className);
35 });
36 },
37 heightToggle: function(animated, callback) {
38 animated ?
39 this.animate({ height: "toggle" }, animated, callback) :
40 this.each(function(){
41 jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ]();
42 if(callback)
43 callback.apply(this, arguments);
44 });
45 },
46 heightHide: function(animated, callback) {
47 if (animated) {
48 this.animate({ height: "hide" }, animated, callback);
49 } else {
50 this.hide();
51 if (callback)
52 this.each(callback);
53 }
54 },
55 prepareBranches: function(settings) {
56 if (!settings.prerendered) {
57 // mark last tree items
58 this.filter(":last-child:not(ul)").addClass(CLASSES.last);
59 // collapse whole tree, or only those marked as closed, anyway except those marked as open
60 this.filter((settings.collapsed ? "" : "." + CLASSES.closed) + ":not(." + CLASSES.open + ")").find(">ul").hide();
61 }
62 // return all items with sublists
63 return this.filter(":has(>ul)");
64 },
65 applyClasses: function(settings, toggler) {
66 this.filter(":has(>ul):not(:has(>a))").find(">span").click(function(event) {
67 toggler.apply($(this).next());
68 }).add( $("a", this) ).hoverClass();
69
70 if (!settings.prerendered) {
71 // handle closed ones first
72 this.filter(":has(>ul:hidden)")
73 .addClass(CLASSES.expandable)
74 .replaceClass(CLASSES.last, CLASSES.lastExpandable);
75
76 // handle open ones
77 this.not(":has(>ul:hidden)")
78 .addClass(CLASSES.collapsable)
79 .replaceClass(CLASSES.last, CLASSES.lastCollapsable);
80
81 // create hitarea
82 this.prepend("<div class=\"" + CLASSES.hitarea + "\"/>").find("div." + CLASSES.hitarea).each(function() {
83 var classes = "";
84 $.each($(this).parent().attr("class").split(" "), function() {
85 classes += this + "-hitarea ";
86 });
87 $(this).addClass( classes );
88 });
89 }
90
91 // apply event to hitarea
92 this.find("div." + CLASSES.hitarea).click( toggler );
93 },
94 treeview: function(settings) {
95
96 settings = $.extend({
97 cookieId: "treeview"
98 }, settings);
99
100 if (settings.add) {
101 return this.trigger("add", [settings.add]);
102 }
103
104 if ( settings.toggle ) {
105 var callback = settings.toggle;
106 settings.toggle = function() {
107 return callback.apply($(this).parent()[0], arguments);
108 };
109 }
110
111 // factory for treecontroller
112 function treeController(tree, control) {
113 // factory for click handlers
114 function handler(filter) {
115 return function() {
116 // reuse toggle event handler, applying the elements to toggle
117 // start searching for all hitareas
118 toggler.apply( $("div." + CLASSES.hitarea, tree).filter(function() {
119 // for plain toggle, no filter is provided, otherwise we need to check the parent element
120 return filter ? $(this).parent("." + filter).length : true;
121 }) );
122 return false;
123 };
124 }
125 // click on first element to collapse tree
126 $("a:eq(0)", control).click( handler(CLASSES.collapsable) );
127 // click on second to expand tree
128 $("a:eq(1)", control).click( handler(CLASSES.expandable) );
129 // click on third to toggle tree
130 $("a:eq(2)", control).click( handler() );
131 }
132
133 // handle toggle event
134 function toggler() {
135 $(this)
136 .parent()
137 // swap classes for hitarea
138 .find(">.hitarea")
139 .swapClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
140 .swapClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
141 .end()
142 // swap classes for parent li
143 .swapClass( CLASSES.collapsable, CLASSES.expandable )
144 .swapClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
145 // find child lists
146 .find( ">ul" )
147 // toggle them
148 .heightToggle( settings.animated, settings.toggle );
149 if ( settings.unique ) {
150 $(this).parent()
151 .siblings()
152 // swap classes for hitarea
153 .find(">.hitarea")
154 .replaceClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
155 .replaceClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
156 .end()
157 .replaceClass( CLASSES.collapsable, CLASSES.expandable )
158 .replaceClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
159 .find( ">ul" )
160 .heightHide( settings.animated, settings.toggle );
161 }
162 }
163
164 function serialize() {
165 function binary(arg) {
166 return arg ? 1 : 0;
167 }
168 var data = [];
169 branches.each(function(i, e) {
170 data[i] = $(e).is(":has(>ul:visible)") ? 1 : 0;
171 });
172 $.cookie(settings.cookieId, data.join("") );
173 }
174
175 function deserialize() {
176 var stored = $.cookie(settings.cookieId);
177 if ( stored ) {
178 var data = stored.split("");
179 branches.each(function(i, e) {
180 $(e).find(">ul")[ parseInt(data[i]) ? "show" : "hide" ]();
181 });
182 }
183 }
184
185 // add treeview class to activate styles
186 this.addClass("treeview");
187
188 // prepare branches and find all tree items with child lists
189 var branches = this.find("li").prepareBranches(settings);
190
191 switch(settings.persist) {
192 case "cookie":
193 var toggleCallback = settings.toggle;
194 settings.toggle = function() {
195 serialize();
196 if (toggleCallback) {
197 toggleCallback.apply(this, arguments);
198 }
199 };
200 deserialize();
201 break;
202 case "location":
203 var current = this.find("a").filter(function() { return this.href.toLowerCase() == location.href.toLowerCase(); });
204 if ( current.length ) {
205 current.addClass("selected").parents("ul, li").add( current.next() ).show();
206 }
207 break;
208 }
209
210 branches.applyClasses(settings, toggler);
211
212 // if control option is set, create the treecontroller and show it
213 if ( settings.control ) {
214 treeController(this, settings.control);
215 $(settings.control).show();
216 }
217
218 return this.bind("add", function(event, branches) {
219 $(branches).prev()
220 .removeClass(CLASSES.last)
221 .removeClass(CLASSES.lastCollapsable)
222 .removeClass(CLASSES.lastExpandable)
223 .find(">.hitarea")
224 .removeClass(CLASSES.lastCollapsableHitarea)
225 .removeClass(CLASSES.lastExpandableHitarea);
226 $(branches).find("li").andSelf().prepareBranches(settings).applyClasses(settings, toggler);
227 });
228 }
229 });
230
231 // classes used by the plugin
232 // need to be styled via external stylesheet, see first example
233 var CLASSES = $.fn.treeview.classes = {
234 open: "open",
235 closed: "closed",
236 expandable: "expandable",
237 expandableHitarea: "expandable-hitarea",
238 lastExpandableHitarea: "lastExpandable-hitarea",
239 collapsable: "collapsable",
240 collapsableHitarea: "collapsable-hitarea",
241 lastCollapsableHitarea: "lastCollapsable-hitarea",
242 lastCollapsable: "lastCollapsable",
243 lastExpandable: "lastExpandable",
244 last: "last",
245 hitarea: "hitarea"
246 };
247
248 // provide backwards compability
249 $.fn.Treeview = $.fn.treeview;
250
251 })(jQuery);
...\ No newline at end of file ...\ No newline at end of file
1 html, body {height:100%; margin: 0; padding: 0; }
2
3 html>body {
4 font-size: 16px;
5 font-size: 68.75%;
6 } /* Reset Base Font Size */
7
8 body {
9 font-family: Verdana, helvetica, arial, sans-serif;
10 font-size: 68.75%;
11 background: #fff;
12 color: #333;
13 }
14
15 h1, h2 { font-family: 'trebuchet ms', verdana, arial; padding: 10px; margin: 0 }
16 h1 { font-size: large }
17
18 #banner { padding: 15px; background-color: #06b; color: white; font-size: large; border-bottom: 1px solid #ccc;
19 background: url(bg.gif) repeat-x; text-align: center }
20 #banner a { color: white; }
21
22 #main { padding: 1em; }
23
24 a img { border: none; }
...\ No newline at end of file ...\ No newline at end of file
1 K 25
2 svn:wc:ra_dav:version-url
3 V 55
4 /svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/images
5 END
6 treeview-default.gif
7 K 25
8 svn:wc:ra_dav:version-url
9 V 76
10 /svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/images/treeview-default.gif
11 END
12 treeview-default-line.gif
13 K 25
14 svn:wc:ra_dav:version-url
15 V 81
16 /svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/images/treeview-default-line.gif
17 END
1 10
2
3 dir
4 182
5 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/app/js/images
6 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
7
8
9
10 2008-12-14T19:02:48.351607Z
11 176
12 me578022
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 d0e60b4b-9046-0410-940c-b97530268c78
28
29 treeview-default.gif
30 file
31
32
33
34
35 2010-08-17T19:13:52.297225Z
36 46878a9b3ede269c4e234550c9c89cd0
37 2008-12-14T19:02:48.351607Z
38 176
39 me578022
40 has-props
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 1222
62
63 treeview-default-line.gif
64 file
65
66
67
68
69 2010-08-17T19:13:52.303226Z
70 5e3c0e0c48f48c23c45aef7b72c739c0
71 2008-12-14T19:02:48.351607Z
72 176
73 me578022
74 has-props
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95 1993
96
1 .treeview, .treeview ul {
2 padding: 0;
3 margin: 0;
4 list-style: none;
5 }
6
7 .treeview ul {
8 background-color: white;
9 margin-top: 4px;
10 }
11
12 .treeview .hitarea {
13 background: url(images/treeview-default.gif) -64px -25px no-repeat;
14 height: 16px;
15 width: 16px;
16 margin-left: -16px;
17 float: left;
18 cursor: pointer;
19 }
20 /* fix for IE6 */
21 * html .hitarea {
22 display: inline;
23 float:none;
24 }
25
26 .treeview li {
27 margin: 0;
28 padding: 3px 0pt 3px 16px;
29 }
30
31 .treeview a.selected {
32 background-color: #eee;
33 }
34
35 #treecontrol { margin: 1em 0; display: none; }
36
37 .treeview .hover { color: red; cursor: pointer; }
38
39 .treeview li { background: url(images/treeview-default-line.gif) 0 0 no-repeat; }
40 .treeview li.collapsable, .treeview li.expandable { background-position: 0 -176px; }
41
42 .treeview .expandable-hitarea { background-position: -80px -3px; }
43
44 .treeview li.last { background-position: 0 -1766px }
45 .treeview li.lastCollapsable, .treeview li.lastExpandable { background-image: url(images/treeview-default.gif); }
46 .treeview li.lastCollapsable { background-position: 0 -111px }
47 .treeview li.lastExpandable { background-position: -32px -67px }
48
49 .treeview div.lastCollapsable-hitarea, .treeview div.lastExpandable-hitarea { background-position: 0; }
50
51 .treeview-red li { background-image: url(images/treeview-red-line.gif); }
52 .treeview-red .hitarea, .treeview-red li.lastCollapsable, .treeview-red li.lastExpandable { background-image: url(images/treeview-red.gif); }
53
54 .treeview-black li { background-image: url(images/treeview-black-line.gif); }
55 .treeview-black .hitarea, .treeview-black li.lastCollapsable, .treeview-black li.lastExpandable { background-image: url(images/treeview-black.gif); }
56
57 .treeview-gray li { background-image: url(images/treeview-gray-line.gif); }
58 .treeview-gray .hitarea, .treeview-gray li.lastCollapsable, .treeview-gray li.lastExpandable { background-image: url(images/treeview-gray.gif); }
59
60 .treeview-famfamfam li { background-image: url(images/treeview-famfamfam-line.gif); }
61 .treeview-famfamfam .hitarea, .treeview-famfamfam li.lastCollapsable, .treeview-famfamfam li.lastExpandable { background-image: url(images/treeview-famfamfam.gif); }
62
63
64 .filetree li { padding: 3px 0 2px 16px; }
65 .filetree span.folder, .filetree span.file { padding: 1px 0 1px 16px; display: block; }
66 .filetree span.folder { background: url(images/folder.gif) 0 0 no-repeat; }
67 .filetree li.expandable span.folder { background: url(images/folder-closed.gif) 0 0 no-repeat; }
68 .filetree span.file { background: url(images/file.gif) 0 0 no-repeat; }
1 /*
2 * Treeview 1.4 - jQuery plugin to hide and show branches of a tree
3 *
4 * http://bassistance.de/jquery-plugins/jquery-plugin-treeview/
5 * http://docs.jquery.com/Plugins/Treeview
6 *
7 * Copyright (c) 2007 Jörn Zaefferer
8 *
9 * Dual licensed under the MIT and GPL licenses:
10 * http://www.opensource.org/licenses/mit-license.php
11 * http://www.gnu.org/licenses/gpl.html
12 *
13 * Revision: $Id: jquery.treeview.js 4684 2008-02-07 19:08:06Z joern.zaefferer $
14 *
15 */
16
17 ;(function($) {
18
19 $.extend($.fn, {
20 swapClass: function(c1, c2) {
21 var c1Elements = this.filter('.' + c1);
22 this.filter('.' + c2).removeClass(c2).addClass(c1);
23 c1Elements.removeClass(c1).addClass(c2);
24 return this;
25 },
26 replaceClass: function(c1, c2) {
27 return this.filter('.' + c1).removeClass(c1).addClass(c2).end();
28 },
29 hoverClass: function(className) {
30 className = className || "hover";
31 return this.hover(function() {
32 $(this).addClass(className);
33 }, function() {
34 $(this).removeClass(className);
35 });
36 },
37 heightToggle: function(animated, callback) {
38 animated ?
39 this.animate({ height: "toggle" }, animated, callback) :
40 this.each(function(){
41 jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ]();
42 if(callback)
43 callback.apply(this, arguments);
44 });
45 },
46 heightHide: function(animated, callback) {
47 if (animated) {
48 this.animate({ height: "hide" }, animated, callback);
49 } else {
50 this.hide();
51 if (callback)
52 this.each(callback);
53 }
54 },
55 prepareBranches: function(settings) {
56 if (!settings.prerendered) {
57 // mark last tree items
58 this.filter(":last-child:not(ul)").addClass(CLASSES.last);
59 // collapse whole tree, or only those marked as closed, anyway except those marked as open
60 this.filter((settings.collapsed ? "" : "." + CLASSES.closed) + ":not(." + CLASSES.open + ")").find(">ul").hide();
61 }
62 // return all items with sublists
63 return this.filter(":has(>ul)");
64 },
65 applyClasses: function(settings, toggler) {
66 this.filter(":has(>ul):not(:has(>a))").find(">span").click(function(event) {
67 toggler.apply($(this).next());
68 }).add( $("a", this) ).hoverClass();
69
70 if (!settings.prerendered) {
71 // handle closed ones first
72 this.filter(":has(>ul:hidden)")
73 .addClass(CLASSES.expandable)
74 .replaceClass(CLASSES.last, CLASSES.lastExpandable);
75
76 // handle open ones
77 this.not(":has(>ul:hidden)")
78 .addClass(CLASSES.collapsable)
79 .replaceClass(CLASSES.last, CLASSES.lastCollapsable);
80
81 // create hitarea
82 this.prepend("<div class=\"" + CLASSES.hitarea + "\"/>").find("div." + CLASSES.hitarea).each(function() {
83 var classes = "";
84 $.each($(this).parent().attr("class").split(" "), function() {
85 classes += this + "-hitarea ";
86 });
87 $(this).addClass( classes );
88 });
89 }
90
91 // apply event to hitarea
92 this.find("div." + CLASSES.hitarea).click( toggler );
93 },
94 treeview: function(settings) {
95
96 settings = $.extend({
97 cookieId: "treeview"
98 }, settings);
99
100 if (settings.add) {
101 return this.trigger("add", [settings.add]);
102 }
103
104 if ( settings.toggle ) {
105 var callback = settings.toggle;
106 settings.toggle = function() {
107 return callback.apply($(this).parent()[0], arguments);
108 };
109 }
110
111 // factory for treecontroller
112 function treeController(tree, control) {
113 // factory for click handlers
114 function handler(filter) {
115 return function() {
116 // reuse toggle event handler, applying the elements to toggle
117 // start searching for all hitareas
118 toggler.apply( $("div." + CLASSES.hitarea, tree).filter(function() {
119 // for plain toggle, no filter is provided, otherwise we need to check the parent element
120 return filter ? $(this).parent("." + filter).length : true;
121 }) );
122 return false;
123 };
124 }
125 // click on first element to collapse tree
126 $("a:eq(0)", control).click( handler(CLASSES.collapsable) );
127 // click on second to expand tree
128 $("a:eq(1)", control).click( handler(CLASSES.expandable) );
129 // click on third to toggle tree
130 $("a:eq(2)", control).click( handler() );
131 }
132
133 // handle toggle event
134 function toggler() {
135 $(this)
136 .parent()
137 // swap classes for hitarea
138 .find(">.hitarea")
139 .swapClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
140 .swapClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
141 .end()
142 // swap classes for parent li
143 .swapClass( CLASSES.collapsable, CLASSES.expandable )
144 .swapClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
145 // find child lists
146 .find( ">ul" )
147 // toggle them
148 .heightToggle( settings.animated, settings.toggle );
149 if ( settings.unique ) {
150 $(this).parent()
151 .siblings()
152 // swap classes for hitarea
153 .find(">.hitarea")
154 .replaceClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
155 .replaceClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
156 .end()
157 .replaceClass( CLASSES.collapsable, CLASSES.expandable )
158 .replaceClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
159 .find( ">ul" )
160 .heightHide( settings.animated, settings.toggle );
161 }
162 }
163
164 function serialize() {
165 function binary(arg) {
166 return arg ? 1 : 0;
167 }
168 var data = [];
169 branches.each(function(i, e) {
170 data[i] = $(e).is(":has(>ul:visible)") ? 1 : 0;
171 });
172 $.cookie(settings.cookieId, data.join("") );
173 }
174
175 function deserialize() {
176 var stored = $.cookie(settings.cookieId);
177 if ( stored ) {
178 var data = stored.split("");
179 branches.each(function(i, e) {
180 $(e).find(">ul")[ parseInt(data[i]) ? "show" : "hide" ]();
181 });
182 }
183 }
184
185 // add treeview class to activate styles
186 this.addClass("treeview");
187
188 // prepare branches and find all tree items with child lists
189 var branches = this.find("li").prepareBranches(settings);
190
191 switch(settings.persist) {
192 case "cookie":
193 var toggleCallback = settings.toggle;
194 settings.toggle = function() {
195 serialize();
196 if (toggleCallback) {
197 toggleCallback.apply(this, arguments);
198 }
199 };
200 deserialize();
201 break;
202 case "location":
203 var current = this.find("a").filter(function() { return this.href.toLowerCase() == location.href.toLowerCase(); });
204 if ( current.length ) {
205 current.addClass("selected").parents("ul, li").add( current.next() ).show();
206 }
207 break;
208 }
209
210 branches.applyClasses(settings, toggler);
211
212 // if control option is set, create the treecontroller and show it
213 if ( settings.control ) {
214 treeController(this, settings.control);
215 $(settings.control).show();
216 }
217
218 return this.bind("add", function(event, branches) {
219 $(branches).prev()
220 .removeClass(CLASSES.last)
221 .removeClass(CLASSES.lastCollapsable)
222 .removeClass(CLASSES.lastExpandable)
223 .find(">.hitarea")
224 .removeClass(CLASSES.lastCollapsableHitarea)
225 .removeClass(CLASSES.lastExpandableHitarea);
226 $(branches).find("li").andSelf().prepareBranches(settings).applyClasses(settings, toggler);
227 });
228 }
229 });
230
231 // classes used by the plugin
232 // need to be styled via external stylesheet, see first example
233 var CLASSES = $.fn.treeview.classes = {
234 open: "open",
235 closed: "closed",
236 expandable: "expandable",
237 expandableHitarea: "expandable-hitarea",
238 lastExpandableHitarea: "lastExpandable-hitarea",
239 collapsable: "collapsable",
240 collapsableHitarea: "collapsable-hitarea",
241 lastCollapsableHitarea: "lastCollapsable-hitarea",
242 lastCollapsable: "lastCollapsable",
243 lastExpandable: "lastExpandable",
244 last: "last",
245 hitarea: "hitarea"
246 };
247
248 // provide backwards compability
249 $.fn.Treeview = $.fn.treeview;
250
251 })(jQuery);
...\ No newline at end of file ...\ No newline at end of file
1 html, body {height:100%; margin: 0; padding: 0; }
2
3 html>body {
4 font-size: 16px;
5 font-size: 68.75%;
6 } /* Reset Base Font Size */
7
8 body {
9 font-family: Verdana, helvetica, arial, sans-serif;
10 font-size: 68.75%;
11 background: #fff;
12 color: #333;
13 }
14
15 h1, h2 { font-family: 'trebuchet ms', verdana, arial; padding: 10px; margin: 0 }
16 h1 { font-size: large }
17
18 #banner { padding: 15px; background-color: #06b; color: white; font-size: large; border-bottom: 1px solid #ccc;
19 background: url(bg.gif) repeat-x; text-align: center }
20 #banner a { color: white; }
21
22 #main { padding: 1em; }
23
24 a img { border: none; }
...\ No newline at end of file ...\ No newline at end of file
1 #$Rev: 194 $
2 [Updates - add some ability to insert and create nodes.]
3 [1: add ability to search the "noise" array]
4
5 [PHP Simple HTML Dom version 1.5 released.]
6 1: Memory leak fixed!
7 2: Added support for detecting the source html character set. This is used to convert characters when plaintext is requested.
8 3: Other little fixes and features, too numerous to categorize.
9
10 [On going]
11 1. Error of "file_get_contents()" will be thrown as an exception.
12 2. Add flag: LOCK_EX while calling "file_put_contents()".
13 3. Fix the typo of "token_blank_t".
14
15
16 [PHP Simple HTML DOM Parser v1.11 is released]
17 1. Supports xpath generated from Firebug.
18 2. New method "dump" of "simple_html_dom_node".
19 3. New attribute "xmltext" of "simple_html_dom_node".
20 4. remove preg_quote on selector match function: [attribute*=value];
21 5. Element "Comment" will treat as children.
22 6. Fixed the problem with <pre>.
23 7. Fixed bug #2207477 (does not load some pages properly).
24 8. Fixed bug #2315853 (Error with character after < sign).
25
26
27 [PHP Simple HTML DOM Parser v1.10 is released]
28 1. Negative indexes supports of "find" method, thanks for Vadim Voituk.
29 2. Constructor with automatically load contents either text or file/url, thanks for Antcs.
30 3. Fully supports wildcard in selectors.
31 4. Fixed bug of confusing by the < symbol inside the text.
32 5. Fixed bug of dash in selectors.
33 6. Fixed bug of <nobr>.
34 7. Fixed bug #2155883 (Nested List Parses Incorrectly).
35 8. Fixed bug #2155113 (error with unclosed html tags).
36
37
38 [PHP Simple HTML DOM Parser v1.00 is released]
39 1. New method "getAllAttributes" of "simple_html_dom_node".
40 2. Fix the bug of selector in some critical conditions.
41 3. Fix the bug of striping php tags.
42 4. Fix the bug of remove_noise().
43 5. Fix the bug of noise in attributes.
44 6. Supports full javascript string in selector: $e->find("a[onclick=alert('hello')]").
45 7. Change selector "*=" to case-insentive.
46
47
48 [PHP Simple HTML DOM Parser v0.99 is released]
49 1. Performance turning (boost 10%).
50 2. Memory requirement reduce 25%.
51 3. Change function name from "file_get_dom()" to "file_get_html()".
52 4. Change function name from "str_get_dom()" to "str_get_html()".
53 5. Fixed bug #2011286 (Error with unclosed html tags).
54 6. Fixed bug #2012551 (Error parsing divs).
55 7. Fixed bug #2020924 (Error for missed tag.).
56 8. Fixed bug (problem with <body> tag's innertext).
57
58
59 [PHP Simple HTML DOM Parser v0.98 is released]
60 1. Performance turning (boost 20%).
61 2. Supports "multiple class" selector feature: <div class="a b c"></div>.
62 3. New "callback function" feature.
63 4. New "multiple selectors" feature: $dom->find('p,a,b');
64 5. New examples.
65 6. Supports extract contents from HTML features: $dom->plaintext;
66 7. Fix the bug of $dom->clear().
67 8. Fix the bug of text nodes' innertext.
68 9. Fix the bug of comment nodes' innertext.
69 10. Fix the bug of decendent selector with optional tags.
70 11. Change simple_html_dom_node method name from "text()" to "makeup()".
71
72
73 [PHP Simple HTML DOM Parser v0.97 is released]
74 1. Important!! file and class name changed (html_dom_parser->simple_html_dom)!
75 2. Important!! ($dom->save_file) will not support anymore.
76 3. New node type "comment" (eg. $dom->find('comment')).
77 4. Add self-closing tags: 'base', 'spacer'.
78 5. Fix the bug of outertext (th).
79 6. Fix the bug of regular expression escaping chars ($dom->find).
80 7. Fix the bug while line-breaker and "\t" in tags.
81 8. Remove example "example_customize_parser.php".
82 9. New example "simple_html_dom_utility.php".
83
84
85 [PHP Simple HTML DOM Parser v0.96 is released]
86 1. (Request #1936000) New DOM operations(first_child, last_child, next_sibling, previous_sibling).
87 2. New method to remove attribute.
88 3. Add the solution while server behind proxy in FAQ (Thanks to Yousuke Shaggy).
89 4. Add traverse section in manual.
90 5. Now file_get_dom supports full file_get_contents parameters.
91 6. Fix the bug of self-closing tags in the end of file.
92 7. Fix the bug of blanks in the end of tag.
93 8. Add Reference section in manual.
94 #. Fix some typo of testcase.
95
96
97 [PHP Simple HTML DOM Parser v0.95 is released]
98 1. New attribute filters (Thanks to Yousuke Kumakura).
99 2. Fix the bug of optional-closing tags.
100 3. Fix the bug of parsing the line break next to the tag's name.
101 4. Supports tag name with namespace.
102 #. Refine structure of testcase.
103
104
105 [PHP Simple HTML DOM Parser v0.94 is released]
106 1. Stop infinity loop while tthe source content is BAD HTML.
107 2. Fix the bug of adding new attributes to self closing tags.
108 3. Fix the bug of customize parser without $dom->remove_noise();
109 4. Add FAQ section in manual.
...\ No newline at end of file ...\ No newline at end of file
1 K 25
2 svn:wc:ra_dav:version-url
3 V 49
4 /svnroot/simplehtmldom/!svn/ver/169/trunk/example
5 END
6 example_extract_html.php
7 K 25
8 svn:wc:ra_dav:version-url
9 V 74
10 /svnroot/simplehtmldom/!svn/ver/133/trunk/example/example_extract_html.php
11 END
12 example_basic_selector.php
13 K 25
14 svn:wc:ra_dav:version-url
15 V 76
16 /svnroot/simplehtmldom/!svn/ver/133/trunk/example/example_basic_selector.php
17 END
18 example_modify_contents.php
19 K 25
20 svn:wc:ra_dav:version-url
21 V 77
22 /svnroot/simplehtmldom/!svn/ver/133/trunk/example/example_modify_contents.php
23 END
24 simple_html_dom_utility.php
25 K 25
26 svn:wc:ra_dav:version-url
27 V 77
28 /svnroot/simplehtmldom/!svn/ver/133/trunk/example/simple_html_dom_utility.php
29 END
30 example_advanced_selector.php
31 K 25
32 svn:wc:ra_dav:version-url
33 V 79
34 /svnroot/simplehtmldom/!svn/ver/133/trunk/example/example_advanced_selector.php
35 END
36 example_callback.php
37 K 25
38 svn:wc:ra_dav:version-url
39 V 70
40 /svnroot/simplehtmldom/!svn/ver/134/trunk/example/example_callback.php
41 END
1 10
2
3 dir
4 182
5 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/example
6 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
7
8
9
10 2008-10-29T19:08:25.076520Z
11 169
12 me578022
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 d0e60b4b-9046-0410-940c-b97530268c78
28
29 example_extract_html.php
30 file
31
32
33
34
35 2010-08-17T19:13:52.948263Z
36 5815bb5f7500b9a88ecc70a123893c1b
37 2008-07-25T12:31:14.828880Z
38 133
39 me578022
40 has-props
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 110
62
63 example_basic_selector.php
64 file
65
66
67
68
69 2010-08-17T19:13:52.951263Z
70 217a2d96745c826e96d13c055e31638b
71 2008-07-25T12:31:14.828880Z
72 133
73 me578022
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95 976
96
97 example_modify_contents.php
98 file
99
100
101
102
103 2010-08-17T19:13:52.953263Z
104 e6fcf41d1b2a1867b0314f80efe7eb9a
105 2008-07-25T12:31:14.828880Z
106 133
107 me578022
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129 378
130
131 simple_html_dom_utility.php
132 file
133
134
135
136
137 2010-08-17T19:13:52.955263Z
138 3d75d01886f4fb7bc15a8f9a4b204428
139 2008-07-25T12:31:14.828880Z
140 133
141 me578022
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163 927
164
165 scraping
166 dir
167
168 example_advanced_selector.php
169 file
170
171
172
173
174 2010-08-17T19:13:52.956263Z
175 273077bc1a0c8945acc1f318b60d8476
176 2008-07-25T12:31:14.828880Z
177 133
178 me578022
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200 1521
201
202 example_callback.php
203 file
204
205
206
207
208 2010-08-17T19:13:52.964264Z
209 0d52be96ec57b5b40efb8588898159e4
210 2008-07-25T12:32:01.594191Z
211 134
212 me578022
213 has-props
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234 604
235
1 <?php
2 // example of how to use advanced selector features
3 include('../simple_html_dom.php');
4
5 // -----------------------------------------------------------------------------
6 // descendant selector
7 $str = <<<HTML
8 <div>
9 <div>
10 <div class="foo bar">ok</div>
11 </div>
12 </div>
13 HTML;
14
15 $html = str_get_html($str);
16 echo $html->find('div div div', 0)->innertext . '<br>'; // result: "ok"
17
18 // -----------------------------------------------------------------------------
19 // nested selector
20 $str = <<<HTML
21 <ul id="ul1">
22 <li>item:<span>1</span></li>
23 <li>item:<span>2</span></li>
24 </ul>
25 <ul id="ul2">
26 <li>item:<span>3</span></li>
27 <li>item:<span>4</span></li>
28 </ul>
29 HTML;
30
31 $html = str_get_html($str);
32 foreach($html->find('ul') as $ul) {
33 foreach($ul->find('li') as $li)
34 echo $li->innertext . '<br>';
35 }
36
37 // -----------------------------------------------------------------------------
38 // parsing checkbox
39 $str = <<<HTML
40 <form name="form1" method="post" action="">
41 <input type="checkbox" name="checkbox1" value="checkbox1" checked>item1<br>
42 <input type="checkbox" name="checkbox2" value="checkbox2">item2<br>
43 <input type="checkbox" name="checkbox3" value="checkbox3" checked>item3<br>
44 </form>
45 HTML;
46
47 $html = str_get_html($str);
48 foreach($html->find('input[type=checkbox]') as $checkbox) {
49 if ($checkbox->checked)
50 echo $checkbox->name . ' is checked<br>';
51 else
52 echo $checkbox->name . ' is not checked<br>';
53 }
54 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 // example of how to use basic selector to retrieve HTML contents
3 include('../simple_html_dom.php');
4
5 // get DOM from URL or file
6 $html = file_get_html('http://www.google.com/');
7
8 // find all link
9 foreach($html->find('a') as $e)
10 echo $e->href . '<br>';
11
12 // find all image
13 foreach($html->find('img') as $e)
14 echo $e->src . '<br>';
15
16 // find all image with full tag
17 foreach($html->find('img') as $e)
18 echo $e->outertext . '<br>';
19
20 // find all div tags with id=gbar
21 foreach($html->find('div#gbar') as $e)
22 echo $e->innertext . '<br>';
23
24 // find all span tags with class=gb1
25 foreach($html->find('span.gb1') as $e)
26 echo $e->outertext . '<br>';
27
28 // find all td tags with attribite align=center
29 foreach($html->find('td[align=center]') as $e)
30 echo $e->innertext . '<br>';
31
32 // extract text from table
33 echo $html->find('td[align="center"]', 1)->plaintext.'<br><hr>';
34
35 // extract text from HTML
36 echo $html->plaintext;
37 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../simple_html_dom.php');
3
4
5 // 1. Write a function with parameter "$element"
6 function my_callback($element) {
7 if ($element->tag=='input')
8 $element->outertext = 'input';
9
10 if ($element->tag=='img')
11 $element->outertext = 'img';
12
13 if ($element->tag=='a')
14 $element->outertext = 'a';
15 }
16
17
18 // 2. create HTML Dom
19 $html = file_get_html('http://www.google.com/');
20
21
22 // 3. Register the callback function with it's function name
23 $html->set_callback('my_callback');
24
25
26 // 4. Callback function will be invoked while dumping
27 echo $html;
28 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../simple_html_dom.php');
3
4 echo file_get_html('http://www.google.com/')->plaintext;
5 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 // example of how to modify HTML contents
3 include('../simple_html_dom.php');
4
5 // get DOM from URL or file
6 $html = file_get_html('http://www.google.com/');
7
8 // remove all image
9 foreach($html->find('img') as $e)
10 $e->outertext = '';
11
12 // replace all input
13 foreach($html->find('input') as $e)
14 $e->outertext = '[INPUT]';
15
16 // dump contents
17 echo $html;
18 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../simple_html_dom.php');
3
4 // -----------------------------------------------------------------------------
5 // remove HTML comments
6 function html_no_comment($url) {
7 // create HTML DOM
8 $html = file_get_html($url);
9
10 // remove all comment elements
11 foreach($html->find('comment') as $e)
12 $e->outertext = '';
13
14 $ret = $html->save();
15
16 // clean up memory
17 $html->clear();
18 unset($html);
19
20 return $ret;
21 }
22
23 // -----------------------------------------------------------------------------
24 // search elements that contains an specific text
25 function find_contains($html, $selector, $keyword, $index=-1) {
26 $ret = array();
27 foreach ($html->find($selector) as $e) {
28 if (strpos($e->innertext, $keyword)!==false)
29 $ret[] = $e;
30 }
31
32 if ($index<0) return $ret;
33 return (isset($ret[$index])) ? $ret[$index] : null;
34 }
35 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 // example of how to use advanced selector features
3 include('../simple_html_dom.php');
4
5 // -----------------------------------------------------------------------------
6 // descendant selector
7 $str = <<<HTML
8 <div>
9 <div>
10 <div class="foo bar">ok</div>
11 </div>
12 </div>
13 HTML;
14
15 $html = str_get_html($str);
16 echo $html->find('div div div', 0)->innertext . '<br>'; // result: "ok"
17
18 // -----------------------------------------------------------------------------
19 // nested selector
20 $str = <<<HTML
21 <ul id="ul1">
22 <li>item:<span>1</span></li>
23 <li>item:<span>2</span></li>
24 </ul>
25 <ul id="ul2">
26 <li>item:<span>3</span></li>
27 <li>item:<span>4</span></li>
28 </ul>
29 HTML;
30
31 $html = str_get_html($str);
32 foreach($html->find('ul') as $ul) {
33 foreach($ul->find('li') as $li)
34 echo $li->innertext . '<br>';
35 }
36
37 // -----------------------------------------------------------------------------
38 // parsing checkbox
39 $str = <<<HTML
40 <form name="form1" method="post" action="">
41 <input type="checkbox" name="checkbox1" value="checkbox1" checked>item1<br>
42 <input type="checkbox" name="checkbox2" value="checkbox2">item2<br>
43 <input type="checkbox" name="checkbox3" value="checkbox3" checked>item3<br>
44 </form>
45 HTML;
46
47 $html = str_get_html($str);
48 foreach($html->find('input[type=checkbox]') as $checkbox) {
49 if ($checkbox->checked)
50 echo $checkbox->name . ' is checked<br>';
51 else
52 echo $checkbox->name . ' is not checked<br>';
53 }
54 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 // example of how to use basic selector to retrieve HTML contents
3 include('../simple_html_dom.php');
4
5 // get DOM from URL or file
6 $html = file_get_html('http://www.google.com/');
7
8 // find all link
9 foreach($html->find('a') as $e)
10 echo $e->href . '<br>';
11
12 // find all image
13 foreach($html->find('img') as $e)
14 echo $e->src . '<br>';
15
16 // find all image with full tag
17 foreach($html->find('img') as $e)
18 echo $e->outertext . '<br>';
19
20 // find all div tags with id=gbar
21 foreach($html->find('div#gbar') as $e)
22 echo $e->innertext . '<br>';
23
24 // find all span tags with class=gb1
25 foreach($html->find('span.gb1') as $e)
26 echo $e->outertext . '<br>';
27
28 // find all td tags with attribite align=center
29 foreach($html->find('td[align=center]') as $e)
30 echo $e->innertext . '<br>';
31
32 // extract text from table
33 echo $html->find('td[align="center"]', 1)->plaintext.'<br><hr>';
34
35 // extract text from HTML
36 echo $html->plaintext;
37 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../simple_html_dom.php');
3
4
5 // 1. Write a function with parameter "$element"
6 function my_callback($element) {
7 if ($element->tag=='input')
8 $element->outertext = 'input';
9
10 if ($element->tag=='img')
11 $element->outertext = 'img';
12
13 if ($element->tag=='a')
14 $element->outertext = 'a';
15 }
16
17
18 // 2. create HTML Dom
19 $html = file_get_html('http://www.google.com/');
20
21
22 // 3. Register the callback function with it's function name
23 $html->set_callback('my_callback');
24
25
26 // 4. Callback function will be invoked while dumping
27 echo $html;
28 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../simple_html_dom.php');
3
4 echo file_get_html('http://www.google.com/')->plaintext;
5 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 // example of how to modify HTML contents
3 include('../simple_html_dom.php');
4
5 // get DOM from URL or file
6 $html = file_get_html('http://www.google.com/');
7
8 // remove all image
9 foreach($html->find('img') as $e)
10 $e->outertext = '';
11
12 // replace all input
13 foreach($html->find('input') as $e)
14 $e->outertext = '[INPUT]';
15
16 // dump contents
17 echo $html;
18 ?>
...\ No newline at end of file ...\ No newline at end of file
1 K 25
2 svn:wc:ra_dav:version-url
3 V 58
4 /svnroot/simplehtmldom/!svn/ver/169/trunk/example/scraping
5 END
6 example_scraping_digg.php
7 K 25
8 svn:wc:ra_dav:version-url
9 V 84
10 /svnroot/simplehtmldom/!svn/ver/133/trunk/example/scraping/example_scraping_digg.php
11 END
12 example_scraping_imdb.php
13 K 25
14 svn:wc:ra_dav:version-url
15 V 84
16 /svnroot/simplehtmldom/!svn/ver/133/trunk/example/scraping/example_scraping_imdb.php
17 END
18 example_scraping_slashdot.php
19 K 25
20 svn:wc:ra_dav:version-url
21 V 88
22 /svnroot/simplehtmldom/!svn/ver/169/trunk/example/scraping/example_scraping_slashdot.php
23 END
1 10
2
3 dir
4 182
5 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/example/scraping
6 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
7
8
9
10 2008-10-29T19:08:25.076520Z
11 169
12 me578022
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 d0e60b4b-9046-0410-940c-b97530268c78
28
29 example_scraping_digg.php
30 file
31
32
33
34
35 2010-08-17T19:13:52.895260Z
36 bd67cef1e4729067a8fef9aff1a61dc3
37 2008-07-25T12:31:14.828880Z
38 133
39 me578022
40 has-props
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 1059
62
63 example_scraping_imdb.php
64 file
65
66
67
68
69 2010-08-17T19:13:52.901260Z
70 477179278b3752eccc5c286a0754e014
71 2008-07-25T12:31:14.828880Z
72 133
73 me578022
74 has-props
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95 1311
96
97 example_scraping_slashdot.php
98 file
99
100
101
102
103 2010-08-17T19:13:52.909260Z
104 f3996448238646b8e76006da56fa42d2
105 2008-10-29T19:08:25.076520Z
106 169
107 me578022
108 has-props
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129 829
130
1 <?php
2 include_once('../../simple_html_dom.php');
3
4 function scraping_digg() {
5 // create HTML DOM
6 $html = file_get_html('http://digg.com/');
7
8 // get news block
9 foreach($html->find('div.news-summary') as $article) {
10 // get title
11 $item['title'] = trim($article->find('h3', 0)->plaintext);
12 // get details
13 $item['details'] = trim($article->find('p', 0)->plaintext);
14 // get intro
15 $item['diggs'] = trim($article->find('li a strong', 0)->plaintext);
16
17 $ret[] = $item;
18 }
19
20 // clean up memory
21 $html->clear();
22 unset($html);
23
24 return $ret;
25 }
26
27
28 // -----------------------------------------------------------------------------
29 // test it!
30
31 // "http://digg.com" will check user_agent header...
32 ini_set('user_agent', 'My-Application/2.5');
33
34 $ret = scraping_digg();
35
36 foreach($ret as $v) {
37 echo $v['title'].'<br>';
38 echo '<ul>';
39 echo '<li>'.$v['details'].'</li>';
40 echo '<li>Diggs: '.$v['diggs'].'</li>';
41 echo '</ul>';
42 }
43
44 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../../simple_html_dom.php');
3
4 function scraping_IMDB($url) {
5 // create HTML DOM
6 $html = file_get_html($url);
7
8 // get title
9 $ret['Title'] = $html->find('title', 0)->innertext;
10
11 // get rating
12 $ret['Rating'] = $html->find('div[class="general rating"] b', 0)->innertext;
13
14 // get overview
15 foreach($html->find('div[class="info"]') as $div) {
16 // skip user comments
17 if($div->find('h5', 0)->innertext=='User Comments:')
18 return $ret;
19
20 $key = '';
21 $val = '';
22
23 foreach($div->find('*') as $node) {
24 if ($node->tag=='h5')
25 $key = $node->plaintext;
26
27 if ($node->tag=='a' && $node->plaintext!='more')
28 $val .= trim(str_replace("\n", '', $node->plaintext));
29
30 if ($node->tag=='text')
31 $val .= trim(str_replace("\n", '', $node->plaintext));
32 }
33
34 $ret[$key] = $val;
35 }
36
37 // clean up memory
38 $html->clear();
39 unset($html);
40
41 return $ret;
42 }
43
44
45 // -----------------------------------------------------------------------------
46 // test it!
47 $ret = scraping_IMDB('http://imdb.com/title/tt0335266/');
48
49 foreach($ret as $k=>$v)
50 echo '<strong>'.$k.' </strong>'.$v.'<br>';
51 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../../simple_html_dom.php');
3
4 function scraping_slashdot() {
5 // create HTML DOM
6 $html = file_get_html('http://slashdot.org/');
7
8 // get article block
9 foreach($html->find('div[id^=firehose-]') as $article) {
10 // get title
11 $item['title'] = trim($article->find('a.datitle', 0)->plaintext);
12 // get body
13 $item['body'] = trim($article->find('div.body', 0)->plaintext);
14
15 $ret[] = $item;
16 }
17
18 // clean up memory
19 $html->clear();
20 unset($html);
21
22 return $ret;
23 }
24
25 // -----------------------------------------------------------------------------
26 // test it!
27 $ret = scraping_slashdot();
28
29 foreach($ret as $v) {
30 echo $v['title'].'<br>';
31 echo '<ul>';
32 echo '<li>'.$v['body'].'</li>';
33 echo '</ul>';
34 }
35 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../../simple_html_dom.php');
3
4 function scraping_digg() {
5 // create HTML DOM
6 $html = file_get_html('http://digg.com/');
7
8 // get news block
9 foreach($html->find('div.news-summary') as $article) {
10 // get title
11 $item['title'] = trim($article->find('h3', 0)->plaintext);
12 // get details
13 $item['details'] = trim($article->find('p', 0)->plaintext);
14 // get intro
15 $item['diggs'] = trim($article->find('li a strong', 0)->plaintext);
16
17 $ret[] = $item;
18 }
19
20 // clean up memory
21 $html->clear();
22 unset($html);
23
24 return $ret;
25 }
26
27
28 // -----------------------------------------------------------------------------
29 // test it!
30
31 // "http://digg.com" will check user_agent header...
32 ini_set('user_agent', 'My-Application/2.5');
33
34 $ret = scraping_digg();
35
36 foreach($ret as $v) {
37 echo $v['title'].'<br>';
38 echo '<ul>';
39 echo '<li>'.$v['details'].'</li>';
40 echo '<li>Diggs: '.$v['diggs'].'</li>';
41 echo '</ul>';
42 }
43
44 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../../simple_html_dom.php');
3
4 function scraping_IMDB($url) {
5 // create HTML DOM
6 $html = file_get_html($url);
7
8 // get title
9 $ret['Title'] = $html->find('title', 0)->innertext;
10
11 // get rating
12 $ret['Rating'] = $html->find('div[class="general rating"] b', 0)->innertext;
13
14 // get overview
15 foreach($html->find('div[class="info"]') as $div) {
16 // skip user comments
17 if($div->find('h5', 0)->innertext=='User Comments:')
18 return $ret;
19
20 $key = '';
21 $val = '';
22
23 foreach($div->find('*') as $node) {
24 if ($node->tag=='h5')
25 $key = $node->plaintext;
26
27 if ($node->tag=='a' && $node->plaintext!='more')
28 $val .= trim(str_replace("\n", '', $node->plaintext));
29
30 if ($node->tag=='text')
31 $val .= trim(str_replace("\n", '', $node->plaintext));
32 }
33
34 $ret[$key] = $val;
35 }
36
37 // clean up memory
38 $html->clear();
39 unset($html);
40
41 return $ret;
42 }
43
44
45 // -----------------------------------------------------------------------------
46 // test it!
47 $ret = scraping_IMDB('http://imdb.com/title/tt0335266/');
48
49 foreach($ret as $k=>$v)
50 echo '<strong>'.$k.' </strong>'.$v.'<br>';
51 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../../simple_html_dom.php');
3
4 function scraping_slashdot() {
5 // create HTML DOM
6 $html = file_get_html('http://slashdot.org/');
7
8 // get article block
9 foreach($html->find('div[id^=firehose-]') as $article) {
10 // get title
11 $item['title'] = trim($article->find('a.datitle', 0)->plaintext);
12 // get body
13 $item['body'] = trim($article->find('div.body', 0)->plaintext);
14
15 $ret[] = $item;
16 }
17
18 // clean up memory
19 $html->clear();
20 unset($html);
21
22 return $ret;
23 }
24
25 // -----------------------------------------------------------------------------
26 // test it!
27 $ret = scraping_slashdot();
28
29 foreach($ret as $v) {
30 echo $v['title'].'<br>';
31 echo '<ul>';
32 echo '<li>'.$v['body'].'</li>';
33 echo '</ul>';
34 }
35 ?>
...\ No newline at end of file ...\ No newline at end of file
1 <?php
2 include_once('../simple_html_dom.php');
3
4 // -----------------------------------------------------------------------------
5 // remove HTML comments
6 function html_no_comment($url) {
7 // create HTML DOM
8 $html = file_get_html($url);
9
10 // remove all comment elements
11 foreach($html->find('comment') as $e)
12 $e->outertext = '';
13
14 $ret = $html->save();
15
16 // clean up memory
17 $html->clear();
18 unset($html);
19
20 return $ret;
21 }
22
23 // -----------------------------------------------------------------------------
24 // search elements that contains an specific text
25 function find_contains($html, $selector, $keyword, $index=-1) {
26 $ret = array();
27 foreach ($html->find($selector) as $e) {
28 if (strpos($e->innertext, $keyword)!==false)
29 $ret[] = $e;
30 }
31
32 if ($index<0) return $ret;
33 return (isset($ret[$index])) ? $ret[$index] : null;
34 }
35 ?>
...\ No newline at end of file ...\ No newline at end of file
1 K 25
2 svn:wc:ra_dav:version-url
3 V 48
4 /svnroot/simplehtmldom/!svn/ver/165/trunk/manual
5 END
6 manual.htm
7 K 25
8 svn:wc:ra_dav:version-url
9 V 59
10 /svnroot/simplehtmldom/!svn/ver/165/trunk/manual/manual.htm
11 END
12 manual_faq.htm
13 K 25
14 svn:wc:ra_dav:version-url
15 V 63
16 /svnroot/simplehtmldom/!svn/ver/165/trunk/manual/manual_faq.htm
17 END
18 manual_api.htm
19 K 25
20 svn:wc:ra_dav:version-url
21 V 63
22 /svnroot/simplehtmldom/!svn/ver/165/trunk/manual/manual_api.htm
23 END
1 10
2
3 dir
4 182
5 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/manual
6 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
7
8
9
10 2008-10-20T21:14:53.811160Z
11 165
12 me578022
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 d0e60b4b-9046-0410-940c-b97530268c78
28
29 manual.htm
30 file
31
32
33
34
35 2010-08-17T19:13:53.692305Z
36 299f58f40c40054c245399752d7164ec
37 2008-10-20T21:14:53.811160Z
38 165
39 me578022
40 has-props
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 24678
62
63 css
64 dir
65
66 manual_faq.htm
67 file
68
69
70
71
72 2010-08-17T19:13:53.698306Z
73 2d0d134462e6bf404b93d7f8eefe2767
74 2008-10-20T21:14:53.811160Z
75 165
76 me578022
77 has-props
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98 4818
99
100 img
101 dir
102
103 js
104 dir
105
106 manual_api.htm
107 file
108
109
110
111
112 2010-08-17T19:13:53.705306Z
113 3ff73eb882e61bd23b87c6cc0ba743b4
114 2008-10-20T21:14:53.811160Z
115 165
116 me578022
117 has-props
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138 11505
139
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5 <title>PHP Simple HTML DOM Parser: FAQ</title>
6 <link href="css/default.css" rel="stylesheet" type="text/css">
7 </head>
8 <body>
9 <h1><a name="top"></a>PHP Simple HTML DOM Parser Manual</h1>
10 <div id="content">
11 <h2>FAQ</h2>
12 <ul>
13 <li><a href="manual.htm">Back</a></li>
14 <li><a href="#find">Problem with finding</a></li>
15 <li><a href="#hosting">Problem with hosting</a></li>
16 <li><a href="#proxy">Behind a proxy</a></li>
17 <li><a href="#memory_leak">Memory leak!</a></li>
18 </ul>
19 <div>
20 <a name="find"></a>
21 <h2>Problem with finding</h2>
22 <a class="top" href="#top">Top</a>
23 <div class="code"> <span class="var">Q:</span> Element not found in such case:<br>
24 $html-&gt;find('div[style=<span class="var">padding: 0px 2px;</span>] span[class=rf]');<br>
25 <br>
26 <span class="var">A:</span> If there is blank in selectors, quote it!  <br>
27 $html-&gt;find('div[style=<strong class="var">&quot;padding: 0px 2px;&quot;</strong>] span[class=rf]');</div>
28 <a name="hosting"></a>
29 <h2>Problem with hosting</h2>
30 <a class="top" href="#top">Top</a>
31 <div class="code"> <span class="var">Q:</span> On my local server everything works fine, but when I put it on my esternal server it doesn't work. <br>
32 <br>
33 <span class="var">A:</span> The "file_get_dom" function is a wrapper of "file_get_contents" function,  you must set "<strong>allow_url_fopen</strong>" as <strong>TRUE</strong> in "php.ini" to allow accessing files via HTTP or FTP. However, some hosting venders disabled PHP's "allow_url_fopen" flag for security issues... PHP provides excellent support for "curl" library to do the same job, Use curl to get the page, then call "str_get_dom" to create DOM object. <br>
34 <br>
35 Example: <br>
36  <br>
37 $curl = curl_init(); <br>
38 curl_setopt(<span class="var">$curl, CURLOPT_URL, 'http://????????'</span>);  <br>
39 curl_setopt(<span class="var">$curl, CURLOPT_RETURNTRANSFER, 1</span>);  <br>
40 curl_setopt(<span class="var">$curl, CURLOPT_CONNECTTIMEOUT, 10</span>);  <br>
41 $str = curl_exec(<span class="var">$curl</span>);  <br>
42 curl_close($curl);  <br>
43  <br>
44 $html= <strong>str_get_html</strong>($str); <br>
45 ...  </div>
46 <a name="proxy"></a>
47 <div>
48 <h2>Behind a proxy</h2>
49 <a class="top" href="#top">Top</a>
50 <div class="code"> <span class="var">Q:</span> My server is behind a Proxy and i can't use file_get_contents b/c it returns a unauthorized error.<br>
51 <br>
52 <span class="var">A:</span> Thanks for Shaggy to provide the solution: <br>
53  <br>
54 <span class="comment">// Define a context for HTTP. </span><br>
55 $context = array<br>
56 <br>
57 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="var">'http'</span> =&gt; array<br>
58 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>
59 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="var">'proxy'</span> =&gt; <span class="var">'addresseproxy:portproxy'</span>, <span class="comment">// This needs to be the server and the port of the NTLM Authentication Proxy Server. </span><br>
60 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="var"> 'request_fulluri'</span> =&gt; true, <br>
61 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ), <br>
62 ); <br>
63 <br>
64 $context = <strong>stream_context_create</strong>($context); <br>
65  <br>
66 $html= <strong>file_get_html</strong>(<span class="var">'http://www.php.net'</span>, <span class="var">false</span>, <span class="var">$context</span>); <br>
67 ...<br>
68 </div>
69 </div>
70 <a name="memory_leak"></a>
71 <h2>Memory leak!</h2>
72 <a class="top" href="#top">Top</a>
73 <div class="code"> <span class="var">Q:</span> This script is leaking memory seriously... After it finished running, it's not cleaning up dom object properly from memory.. <br>
74 <br>
75 <span class="var">A:</span> Due to php5 circular references memory leak, after creating DOM object, you must call $dom-&gt;clear() to free memory if call file_get_dom() more then once. <br>
76 <br>
77 Example: <br>
78 <br>
79 $html = file_get_html(...); <br>
80 <span class="comment">// do something... </span><br>
81 $html-&gt;clear(); <br>
82 unset($html);</div>
83 <br>
84 Author: S.C. Chen (me578022@gmail.com)<br>
85 Original idea is from Jose Solorzano's <a href="http://php-html.sourceforge.net/">HTML Parser for PHP 4</a>. <br>
86 Contributions by: Yousuke Kumakura, Vadim Voituk, Antcs<br>
87 </div>
88 </div>
89 </body>
90 </html>
91 <!--$Rev$-->
1 K 25
2 svn:wc:ra_dav:version-url
3 V 52
4 /svnroot/simplehtmldom/!svn/ver/120/trunk/manual/css
5 END
6 default.css
7 K 25
8 svn:wc:ra_dav:version-url
9 V 64
10 /svnroot/simplehtmldom/!svn/ver/120/trunk/manual/css/default.css
11 END
12 ui.tabs.css
13 K 25
14 svn:wc:ra_dav:version-url
15 V 63
16 /svnroot/simplehtmldom/!svn/ver/29/trunk/manual/css/ui.tabs.css
17 END
1 10
2
3 dir
4 182
5 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/manual/css
6 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
7
8
9
10 2008-06-24T22:59:40.092528Z
11 120
12 me578022
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 d0e60b4b-9046-0410-940c-b97530268c78
28
29 default.css
30 file
31
32
33
34
35 2010-08-17T19:13:53.530296Z
36 2f01e1ff8a4fa8fe63c8be8e17800ab0
37 2008-06-24T22:59:40.092528Z
38 120
39 me578022
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 2069
62
63 ui.tabs.css
64 file
65
66
67
68
69 2010-08-17T19:13:53.531296Z
70 995c002d1908567d7542ec9c2adfdc65
71 2008-03-14T14:58:12.908404Z
72 29
73 me578022
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95 3833
96
1 /*$Rev: 46 $*/
2
3 body {
4 margin: 0;
5 padding: 0;
6 font-family: verdana,arial,helvetica,sans-serif;
7 font-size: 11px;
8 color: #4F5155;
9 }
10
11 #content {
12 margin: 0 20px 0 20px;
13 line-height: 16px;
14 padding: 0;
15 }
16
17 h1 {
18 font-size: 18px;
19 margin: 0;
20 padding: 0 0 2px 0;
21 background-color: #D0D0D0;
22 text-align: center;
23 }
24
25 h2 {
26 background-color: #727EA3;
27 border-right: 1px solid #D0D0D0;
28 border-bottom: 1px solid #D0D0D0;
29 color: #FFFFFF;
30 font-size: 14px;
31 font-weight: bold;
32 margin: 14px 0 4px 0;
33 padding: 1px 10px 1px 10px;
34 }
35
36 ul {
37 margin-top: 0;
38 margin-bottom: 0;
39 line-height:1.5em;
40 list-style-image:url(bullet.gif);
41 list-style-type:square;
42 }
43
44 .top {
45 font-size: 11px;
46 float: right;
47 }
48
49 .code {
50 font-size: 11px;
51 font-family: Monaco, Verdana, Sans-serif;
52 line-height: 14px;
53 background-color: #f6f6f6;
54 border-bottom: 1px solid #D0D0D0;
55 border-top: 1px solid #A0A0A0;
56 border-left: 1px solid #A0A0A0;
57 border-right: 1px solid #D0D0D0;
58 color: #002166;
59 display: block;
60 margin: 2px 0 2px 0;
61 padding: 2px 10px 2px 10px;
62 }
63
64 .code A:link {color: #002166; text-decoration: none; font-weight: bold;}
65 .code A:visited {color: #002166; text-decoration: none; font-weight: bold;}
66 .code A:active {color: #002166; text-decoration: none; font-weight: bold;}
67 .code A:hover {color: #0000ff; text-decoration: underline; font-weight: bold;}
68
69 .code .keyword {
70 color: #007700;
71 }
72
73 .code .comment {
74 font-size: 10px;
75 color: #888;
76 }
77
78 .code .var {
79 color: #770000;
80 }
81
82 th {
83 font-family: Lucida Grande, Verdana, Geneva, Sans-serif;
84 color: #000000;
85 background-color: #CFD4E6;
86 margin: 2px 2px 2px 2px;
87 padding: 2px 2px 2px 2px;
88 font-size: 13px;
89 font-weight: normal;
90 font-style: normal;
91 }
92
93 td {
94 background-color: #dddddd;
95 }
96
97 .description {
98 font-family: Lucida Grande, Verdana, Geneva, Sans-serif;
99 font-size: 11px;
100 color: #333;
101 text-ident: 30px;
102 font-style: normal;
103 }
104
105 .returns {
106 font-family: Monaco, Verdana, Sans-serif;
107 font-size: 10px;
108 color: #888;
109 float: left;
110 text-align: right;
111 margin: 0 4px 0 0;
112 width: 48px;
113 }
...\ No newline at end of file ...\ No newline at end of file
1 /* Caution! Ensure accessibility in print and other media types... */
2 @media projection, screen { /* Use class for showing/hiding tab content, so that visibility can be better controlled in different media types... */
3 .ui-tabs-hide {
4 display: none;
5 }
6 }
7
8 /* Hide useless elements in print layouts... */
9 @media print {
10 .ui-tabs-nav {
11 display: none;
12 }
13 }
14
15 /* Skin */
16 .ui-tabs-nav, .ui-tabs-panel {
17 font-family: "Trebuchet MS", Trebuchet, Verdana, Helvetica, Arial, sans-serif;
18 font-size: 12px;
19 }
20 .ui-tabs-nav {
21 list-style: none;
22 margin: 0;
23 padding: 0 0 0 4px;
24 }
25 .ui-tabs-nav:after { /* clearing without presentational markup, IE gets extra treatment */
26 display: block;
27 clear: both;
28 content: " ";
29 }
30 .ui-tabs-nav li {
31 float: left;
32 margin: 0 0 0 1px;
33 min-width: 84px; /* be nice to Opera */
34 }
35 .ui-tabs-nav a, .ui-tabs-nav a span {
36 display: block;
37 padding: 0 10px;
38 background: url(../img/tab.png) no-repeat;
39 }
40 .ui-tabs-nav a {
41 margin: 1px 0 0; /* position: relative makes opacity fail for disabled tab in IE */
42 padding-left: 0;
43 color: #27537a;
44 font-weight: bold;
45 line-height: 1.2;
46 text-align: center;
47 text-decoration: none;
48 white-space: nowrap; /* required in IE 6 */
49 outline: 0; /* prevent dotted border in Firefox */
50 }
51 .ui-tabs-nav .ui-tabs-selected a {
52 position: relative;
53 top: 1px;
54 z-index: 2;
55 margin-top: 0;
56 color: #000;
57 }
58 .ui-tabs-nav a span {
59 width: 64px; /* IE 6 treats width as min-width */
60 min-width: 64px;
61 height: 18px; /* IE 6 treats height as min-height */
62 min-height: 18px;
63 padding-top: 6px;
64 padding-right: 0;
65 }
66 *>.ui-tabs-nav a span { /* hide from IE 6 */
67 width: auto;
68 height: auto;
69 }
70 .ui-tabs-nav .ui-tabs-selected a span {
71 padding-bottom: 1px;
72 }
73 .ui-tabs-nav .ui-tabs-selected a, .ui-tabs-nav a:hover, .ui-tabs-nav a:focus, .ui-tabs-nav a:active {
74 background-position: 100% -150px;
75 }
76 .ui-tabs-nav a, .ui-tabs-nav .ui-tabs-disabled a:hover, .ui-tabs-nav .ui-tabs-disabled a:focus, .ui-tabs-nav .ui-tabs-disabled a:active {
77 background-position: 100% -100px;
78 }
79 .ui-tabs-nav .ui-tabs-selected a span, .ui-tabs-nav a:hover span, .ui-tabs-nav a:focus span, .ui-tabs-nav a:active span {
80 background-position: 0 -50px;
81 }
82 .ui-tabs-nav a span, .ui-tabs-nav .ui-tabs-disabled a:hover span, .ui-tabs-nav .ui-tabs-disabled a:focus span, .ui-tabs-nav .ui-tabs-disabled a:active span {
83 background-position: 0 0;
84 }
85 .ui-tabs-nav .ui-tabs-selected a:link, .ui-tabs-nav .ui-tabs-selected a:visited, .ui-tabs-nav .ui-tabs-disabled a:link, .ui-tabs-nav .ui-tabs-disabled a:visited { /* @ Opera, use pseudo classes otherwise it confuses cursor... */
86 cursor: text;
87 }
88 .ui-tabs-nav a:hover, .ui-tabs-nav a:focus, .ui-tabs-nav a:active,
89 .ui-tabs-nav .ui-tabs-unselect a:hover, .ui-tabs-nav .ui-tabs-unselect a:focus, .ui-tabs-nav .ui-tabs-unselect a:active { /* @ Opera, we need to be explicit again here now... */
90 cursor: pointer;
91 }
92 .ui-tabs-disabled {
93 opacity: .4;
94 filter: alpha(opacity=40);
95 }
96 .ui-tabs-panel {
97 border-top: 1px solid #97a5b0;
98 padding: 2px 4px 2px 4px;
99 background: #fff; /* declare background color for container to avoid distorted fonts in IE while fading */
100 border: 1px solid #D0D0D0;
101 border-bottom: 1px solid #A0A0A0;
102 border-right: 1px solid #A0A0A0;
103 }
104 .ui-tabs-loading em {
105 padding: 0 0 0 20px;
106 background: url(loading.gif) no-repeat 0 50%;
107 }
108
109 /* Additional IE specific bug fixes... */
110 * html .ui-tabs-nav { /* auto clear, @ IE 6 & IE 7 Quirks Mode */
111 display: inline-block;
112 }
113 *:first-child+html .ui-tabs-nav { /* @ IE 7 Standards Mode - do not group selectors, otherwise IE 6 will ignore complete rule (because of the unknown + combinator)... */
114 display: inline-block;
115 }
116
1 /*$Rev: 46 $*/
2
3 body {
4 margin: 0;
5 padding: 0;
6 font-family: verdana,arial,helvetica,sans-serif;
7 font-size: 11px;
8 color: #4F5155;
9 }
10
11 #content {
12 margin: 0 20px 0 20px;
13 line-height: 16px;
14 padding: 0;
15 }
16
17 h1 {
18 font-size: 18px;
19 margin: 0;
20 padding: 0 0 2px 0;
21 background-color: #D0D0D0;
22 text-align: center;
23 }
24
25 h2 {
26 background-color: #727EA3;
27 border-right: 1px solid #D0D0D0;
28 border-bottom: 1px solid #D0D0D0;
29 color: #FFFFFF;
30 font-size: 14px;
31 font-weight: bold;
32 margin: 14px 0 4px 0;
33 padding: 1px 10px 1px 10px;
34 }
35
36 ul {
37 margin-top: 0;
38 margin-bottom: 0;
39 line-height:1.5em;
40 list-style-image:url(bullet.gif);
41 list-style-type:square;
42 }
43
44 .top {
45 font-size: 11px;
46 float: right;
47 }
48
49 .code {
50 font-size: 11px;
51 font-family: Monaco, Verdana, Sans-serif;
52 line-height: 14px;
53 background-color: #f6f6f6;
54 border-bottom: 1px solid #D0D0D0;
55 border-top: 1px solid #A0A0A0;
56 border-left: 1px solid #A0A0A0;
57 border-right: 1px solid #D0D0D0;
58 color: #002166;
59 display: block;
60 margin: 2px 0 2px 0;
61 padding: 2px 10px 2px 10px;
62 }
63
64 .code A:link {color: #002166; text-decoration: none; font-weight: bold;}
65 .code A:visited {color: #002166; text-decoration: none; font-weight: bold;}
66 .code A:active {color: #002166; text-decoration: none; font-weight: bold;}
67 .code A:hover {color: #0000ff; text-decoration: underline; font-weight: bold;}
68
69 .code .keyword {
70 color: #007700;
71 }
72
73 .code .comment {
74 font-size: 10px;
75 color: #888;
76 }
77
78 .code .var {
79 color: #770000;
80 }
81
82 th {
83 font-family: Lucida Grande, Verdana, Geneva, Sans-serif;
84 color: #000000;
85 background-color: #CFD4E6;
86 margin: 2px 2px 2px 2px;
87 padding: 2px 2px 2px 2px;
88 font-size: 13px;
89 font-weight: normal;
90 font-style: normal;
91 }
92
93 td {
94 background-color: #dddddd;
95 }
96
97 .description {
98 font-family: Lucida Grande, Verdana, Geneva, Sans-serif;
99 font-size: 11px;
100 color: #333;
101 text-ident: 30px;
102 font-style: normal;
103 }
104
105 .returns {
106 font-family: Monaco, Verdana, Sans-serif;
107 font-size: 10px;
108 color: #888;
109 float: left;
110 text-align: right;
111 margin: 0 4px 0 0;
112 width: 48px;
113 }
...\ No newline at end of file ...\ No newline at end of file
1 /* Caution! Ensure accessibility in print and other media types... */
2 @media projection, screen { /* Use class for showing/hiding tab content, so that visibility can be better controlled in different media types... */
3 .ui-tabs-hide {
4 display: none;
5 }
6 }
7
8 /* Hide useless elements in print layouts... */
9 @media print {
10 .ui-tabs-nav {
11 display: none;
12 }
13 }
14
15 /* Skin */
16 .ui-tabs-nav, .ui-tabs-panel {
17 font-family: "Trebuchet MS", Trebuchet, Verdana, Helvetica, Arial, sans-serif;
18 font-size: 12px;
19 }
20 .ui-tabs-nav {
21 list-style: none;
22 margin: 0;
23 padding: 0 0 0 4px;
24 }
25 .ui-tabs-nav:after { /* clearing without presentational markup, IE gets extra treatment */
26 display: block;
27 clear: both;
28 content: " ";
29 }
30 .ui-tabs-nav li {
31 float: left;
32 margin: 0 0 0 1px;
33 min-width: 84px; /* be nice to Opera */
34 }
35 .ui-tabs-nav a, .ui-tabs-nav a span {
36 display: block;
37 padding: 0 10px;
38 background: url(../img/tab.png) no-repeat;
39 }
40 .ui-tabs-nav a {
41 margin: 1px 0 0; /* position: relative makes opacity fail for disabled tab in IE */
42 padding-left: 0;
43 color: #27537a;
44 font-weight: bold;
45 line-height: 1.2;
46 text-align: center;
47 text-decoration: none;
48 white-space: nowrap; /* required in IE 6 */
49 outline: 0; /* prevent dotted border in Firefox */
50 }
51 .ui-tabs-nav .ui-tabs-selected a {
52 position: relative;
53 top: 1px;
54 z-index: 2;
55 margin-top: 0;
56 color: #000;
57 }
58 .ui-tabs-nav a span {
59 width: 64px; /* IE 6 treats width as min-width */
60 min-width: 64px;
61 height: 18px; /* IE 6 treats height as min-height */
62 min-height: 18px;
63 padding-top: 6px;
64 padding-right: 0;
65 }
66 *>.ui-tabs-nav a span { /* hide from IE 6 */
67 width: auto;
68 height: auto;
69 }
70 .ui-tabs-nav .ui-tabs-selected a span {
71 padding-bottom: 1px;
72 }
73 .ui-tabs-nav .ui-tabs-selected a, .ui-tabs-nav a:hover, .ui-tabs-nav a:focus, .ui-tabs-nav a:active {
74 background-position: 100% -150px;
75 }
76 .ui-tabs-nav a, .ui-tabs-nav .ui-tabs-disabled a:hover, .ui-tabs-nav .ui-tabs-disabled a:focus, .ui-tabs-nav .ui-tabs-disabled a:active {
77 background-position: 100% -100px;
78 }
79 .ui-tabs-nav .ui-tabs-selected a span, .ui-tabs-nav a:hover span, .ui-tabs-nav a:focus span, .ui-tabs-nav a:active span {
80 background-position: 0 -50px;
81 }
82 .ui-tabs-nav a span, .ui-tabs-nav .ui-tabs-disabled a:hover span, .ui-tabs-nav .ui-tabs-disabled a:focus span, .ui-tabs-nav .ui-tabs-disabled a:active span {
83 background-position: 0 0;
84 }
85 .ui-tabs-nav .ui-tabs-selected a:link, .ui-tabs-nav .ui-tabs-selected a:visited, .ui-tabs-nav .ui-tabs-disabled a:link, .ui-tabs-nav .ui-tabs-disabled a:visited { /* @ Opera, use pseudo classes otherwise it confuses cursor... */
86 cursor: text;
87 }
88 .ui-tabs-nav a:hover, .ui-tabs-nav a:focus, .ui-tabs-nav a:active,
89 .ui-tabs-nav .ui-tabs-unselect a:hover, .ui-tabs-nav .ui-tabs-unselect a:focus, .ui-tabs-nav .ui-tabs-unselect a:active { /* @ Opera, we need to be explicit again here now... */
90 cursor: pointer;
91 }
92 .ui-tabs-disabled {
93 opacity: .4;
94 filter: alpha(opacity=40);
95 }
96 .ui-tabs-panel {
97 border-top: 1px solid #97a5b0;
98 padding: 2px 4px 2px 4px;
99 background: #fff; /* declare background color for container to avoid distorted fonts in IE while fading */
100 border: 1px solid #D0D0D0;
101 border-bottom: 1px solid #A0A0A0;
102 border-right: 1px solid #A0A0A0;
103 }
104 .ui-tabs-loading em {
105 padding: 0 0 0 20px;
106 background: url(loading.gif) no-repeat 0 50%;
107 }
108
109 /* Additional IE specific bug fixes... */
110 * html .ui-tabs-nav { /* auto clear, @ IE 6 & IE 7 Quirks Mode */
111 display: inline-block;
112 }
113 *:first-child+html .ui-tabs-nav { /* @ IE 7 Standards Mode - do not group selectors, otherwise IE 6 will ignore complete rule (because of the unknown + combinator)... */
114 display: inline-block;
115 }
116
1 K 25
2 svn:wc:ra_dav:version-url
3 V 51
4 /svnroot/simplehtmldom/!svn/ver/29/trunk/manual/img
5 END
6 tab.png
7 K 25
8 svn:wc:ra_dav:version-url
9 V 59
10 /svnroot/simplehtmldom/!svn/ver/29/trunk/manual/img/tab.png
11 END
1 10
2
3 dir
4 182
5 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/manual/img
6 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
7
8
9
10 2008-03-14T14:58:12.908404Z
11 29
12 me578022
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 d0e60b4b-9046-0410-940c-b97530268c78
28
29 tab.png
30 file
31
32
33
34
35 2010-08-17T19:13:53.595300Z
36 83a79d462146a7d0d1ea4dd969101885
37 2008-03-14T14:58:12.908404Z
38 29
39 me578022
40 has-props
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 734
62
1 K 25
2 svn:wc:ra_dav:version-url
3 V 50
4 /svnroot/simplehtmldom/!svn/ver/29/trunk/manual/js
5 END
6 jquery-1.2.3.pack.js
7 K 25
8 svn:wc:ra_dav:version-url
9 V 71
10 /svnroot/simplehtmldom/!svn/ver/29/trunk/manual/js/jquery-1.2.3.pack.js
11 END
12 ui.tabs.pack.js
13 K 25
14 svn:wc:ra_dav:version-url
15 V 66
16 /svnroot/simplehtmldom/!svn/ver/29/trunk/manual/js/ui.tabs.pack.js
17 END
1 10
2
3 dir
4 182
5 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/manual/js
6 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
7
8
9
10 2008-03-14T14:58:12.908404Z
11 29
12 me578022
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 d0e60b4b-9046-0410-940c-b97530268c78
28
29 jquery-1.2.3.pack.js
30 file
31
32
33
34
35 2010-08-17T19:13:53.654303Z
36 fb49bb7a70d7be19cc6a145146ca7d44
37 2008-03-14T14:58:12.908404Z
38 29
39 me578022
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 29846
62
63 ui.tabs.pack.js
64 file
65
66
67
68
69 2010-08-17T19:13:53.655303Z
70 14b07b37095bc686e405e7d043fee344
71 2008-03-14T14:58:12.908404Z
72 29
73 me578022
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95 6417
96
1 /*
2 * Tabs 3 - New Wave Tabs
3 *
4 * Copyright (c) 2007 Klaus Hartl (stilbuero.de)
5 * Dual licensed under the MIT (MIT-LICENSE.txt)
6 * and GPL (GPL-LICENSE.txt) licenses.
7 *
8 * http://docs.jquery.com/UI/Tabs
9 */
10 eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(6($){$.4=$.4||{};$.2o.3=6(){7 b=1K 1q[0]==\'1X\'&&1q[0];7 c=b&&1P.1N.2g.2c(1q,1)||1q;l b==\'C\'?$.m(2[0],\'4-3\').$3.C:2.I(6(){5(b){7 a=$.m(2,\'4-3\');a[b].2n(a,c)}D 2l $.4.3(2,c[0]||{})})};$.4.3=6(e,f){7 d=2;2.q=e;2.8=$.1H({p:0,S:f.p===L,12:\'1A\',t:[],G:L,1l:\'2B&#2x;\',K:y,1R:\'4-3-\',1j:{},X:L,1Q:\'<E><a x="#{x}"><1h>#{1g}</1h></a></E>\',1v:\'<1L></1L>\',1f:\'4-3-2f\',w:\'4-3-p\',1t:\'4-3-S\',Q:\'4-3-t\',U:\'4-3-1e\',M:\'4-3-Y\',1s:\'4-3-2Y\'},f);5(f.p===L)2.8.p=L;2.8.12+=\'.4-3\';2.8.G=$.G&&$.G.28==2V&&2.8.G;$(e).1b(\'2T.4-3\',6(b,c,a){5((/^p/).27(c))d.1o(a);D{d.8[c]=a;d.11()}}).1b(\'2Q.4-3\',6(a,b){l d.8[b]});$.m(e,\'4-3\',2);2.11(1a)};$.1H($.4.3.1N,{1z:6(a){l a.22&&a.22.V(/\\s/g,\'1Z\').V(/[^A-2A-2y-9\\-1Z:\\.]/g,\'\')||2.8.1R+$.m(a)},4:6(a,b){l{2w:2,8:2.8,2v:a,1e:b}},11:6(f){2.$u=$(\'E:2s(a[x])\',2.q);2.$3=2.$u.1i(6(){l $(\'a\',2)[0]});2.$k=$([]);7 e=2,o=2.8;2.$3.I(6(i,a){5(a.H&&a.H.V(\'#\',\'\'))e.$k=e.$k.17(a.H);D 5($(a).W(\'x\')!=\'#\'){$.m(a,\'x.4-3\',a.x);$.m(a,\'z.4-3\',a.x);7 b=e.1z(a);a.x=\'#\'+b;7 c=$(\'#\'+b);5(!c.C){c=$(o.1v).W(\'16\',b).v(o.U).2m(e.$k[i-1]||e.q);c.m(\'15.4-3\',1a)}e.$k=e.$k.17(c)}D o.t.1O(i+1)});5(f){$(2.q).J(o.1f)||$(2.q).v(o.1f);2.$k.I(6(){7 a=$(2);a.J(o.U)||a.v(o.U)});2.$3.I(6(i,a){5(1w.H){5(a.H==1w.H){o.p=i;5($.O.14||$.O.2k){7 b=$(1w.H),1M=b.W(\'16\');b.W(\'16\',\'\');1u(6(){b.W(\'16\',1M)},2j)}2i(0,0);l y}}D 5(o.G){7 c=2h($.G(\'4-3\'+$.m(e.q)),10);5(c&&e.$3[c]){o.p=c;l y}}D 5(e.$u.F(i).J(o.w)){o.p=i;l y}});2.$k.v(o.M);2.$u.B(o.w);5(!o.S){2.$k.F(o.p).N().B(o.M);2.$u.F(o.p).v(o.w)}7 h=!o.S&&$.m(2.$3[o.p],\'z.4-3\');5(h)2.z(o.p);o.t=$.2e(o.t.2d($.1i(2.$u.T(\'.\'+o.Q),6(n,i){l e.$u.Z(n)}))).1J();$(2b).1b(\'2a\',6(){e.$3.1d(\'.4-3\');e.$u=e.$3=e.$k=L})}29(7 i=0,E;E=2.$u[i];i++)$(E)[$.1I(i,o.t)!=-1&&!$(E).J(o.w)?\'v\':\'B\'](o.Q);5(o.K===y)2.$3.1r(\'K.4-3\');7 j,R,1c={\'2X-2W\':0,1G:1},1F=\'2U\';5(o.X&&o.X.28==1P)j=o.X[0]||1c,R=o.X[1]||1c;D j=R=o.X||1c;7 g={1p:\'\',2S:\'\',2R:\'\'};5(!$.O.14)g.1E=\'\';6 1D(b,c,a){c.26(j,j.1G||1F,6(){c.v(o.M).13(g);5($.O.14&&j.1E)c[0].24.T=\'\';5(a)1C(b,a,c)})}6 1C(b,a,c){5(R===1c)a.13(\'1p\',\'1B\');a.26(R,R.1G||1F,6(){a.B(o.M).13(g);5($.O.14&&R.1E)a[0].24.T=\'\';$(e.q).P(\'N.4-3\',[e.4(b,a[0])])})}6 23(c,a,d,b){a.v(o.w).2P().B(o.w);1D(c,d,b)}2.$3.1d(\'.4-3\').1b(o.12,6(){7 b=$(2).2O(\'E:F(0)\'),$Y=e.$k.T(\':2N\'),$N=$(2.H);5((b.J(o.w)&&!o.S)||b.J(o.Q)||$(e.q).P(\'1o.4-3\',[e.4(2,$N[0])])===y){2.1k();l y}e.8.p=e.$3.Z(2);5(o.S){5(b.J(o.w)){e.8.p=L;b.B(o.w);e.$k.1y();1D(2,$Y);2.1k();l y}D 5(!$Y.C){e.$k.1y();7 a=2;e.z(e.$3.Z(2),6(){b.v(o.w).v(o.1t);1C(a,$N)});2.1k();l y}}5(o.G)$.G(\'4-3\'+$.m(e.q),e.8.p,o.G);e.$k.1y();5($N.C){7 a=2;e.z(e.$3.Z(2),6(){23(a,b,$Y,$N)})}D 2M\'21 2K 2J: 2H 2G 2F.\';5($.O.14)2.1k();l y});5(!(/^1A/).27(o.12))2.$3.1b(\'1A.4-3\',6(){l y})},17:6(d,e,f){5(f==1Y)f=2.$3.C;7 o=2.8;7 a=$(o.1Q.V(/#\\{x\\}/,d).V(/#\\{1g\\}/,e));a.m(\'15.4-3\',1a);7 b=d.2D(\'#\')==0?d.V(\'#\',\'\'):2.1z($(\'a:2C-2z\',a)[0]);7 c=$(\'#\'+b);5(!c.C){c=$(o.1v).W(\'16\',b).v(o.U).v(o.M);c.m(\'15.4-3\',1a)}5(f>=2.$u.C){a.1W(2.q);c.1W(2.q.2E)}D{a.1V(2.$u[f]);c.1V(2.$k[f])}o.t=$.1i(o.t,6(n,i){l n>=f?++n:n});2.11();5(2.$3.C==1){a.v(o.w);c.B(o.M);7 g=$.m(2.$3[0],\'z.4-3\');5(g)2.z(f,g)}$(2.q).P(\'17.4-3\',[2.4(2.$3[f],2.$k[f])])},19:6(a){7 o=2.8,$E=2.$u.F(a).19(),$1e=2.$k.F(a).19();5($E.J(o.w)&&2.$3.C>1)2.1o(a+(a+1<2.$3.C?1:-1));o.t=$.1i($.1U(o.t,6(n,i){l n!=a}),6(n,i){l n>=a?--n:n});2.11();$(2.q).P(\'19.4-3\',[2.4($E.2I(\'a\')[0],$1e[0])])},25:6(a){7 o=2.8;5($.1I(a,o.t)==-1)l;7 b=2.$u.F(a).B(o.Q);5($.O.2u){b.13(\'1p\',\'2L-1B\');1u(6(){b.13(\'1p\',\'1B\')},0)}o.t=$.1U(o.t,6(n,i){l n!=a});$(2.q).P(\'25.4-3\',[2.4(2.$3[a],2.$k[a])])},20:6(a){7 b=2,o=2.8;5(a!=o.p){2.$u.F(a).v(o.Q);o.t.1O(a);o.t.1J();$(2.q).P(\'20.4-3\',[2.4(2.$3[a],2.$k[a])])}},1o:6(a){5(1K a==\'1X\')a=2.$3.Z(2.$3.T(\'[x$=\'+a+\']\')[0]);2.$3.F(a).2t(2.8.12)},z:6(d,b){7 e=2,o=2.8,$a=2.$3.F(d),a=$a[0],1T=b==1Y|| b===y,18=$a.m(\'z.4-3\');b=b|| 6(){};5(!18|| ($.m(a,\'K.4-3\')&&!1T)){b();l}5(o.1l){7 g=$(\'1h\',a),1g=g.1n();g.1n(\'<1S>\'+o.1l+\'</1S>\')}7 c=6(){e.$3.T(\'.\'+o.1s).I(6(){$(2).B(o.1s);5(o.1l)$(\'1h\',2).1n(1g)});e.1m=L};7 f=$.1H({},o.1j,{18:18,1x:6(r,s){$(a.H).1n(r);c();b();5(o.K)$.m(a,\'K.4-3\',1a);$(e.q).P(\'z.4-3\',[e.4(e.$3[d],e.$k[d])]);o.1j.1x&&o.1j.1x(r,s)}});5(2.1m){2.1m.2r();c()}$a.v(o.1s);1u(6(){e.1m=$.2q(f)},0)},18:6(a,b){2.$3.F(a).1r(\'K.4-3\').m(\'z.4-3\',b)},15:6(){7 o=2.8;$(2.q).1d(\'.4-3\').B(o.1f).1r(\'4-3\');2.$3.I(6(){7 b=$.m(2,\'x.4-3\');5(b)2.x=b;7 c=$(2).1d(\'.4-3\');$.I([\'x\',\'z\',\'K\'],6(i,a){c.1r(a+\'.4-3\')})});2.$u.17(2.$k).I(6(){5($.m(2,\'15.4-3\'))$(2).19();D $(2).B([o.w,o.1t,o.Q,o.U,o.M].2p(\' \'))})}})})(21);',62,185,'||this|tabs|ui|if|function|var|options||||||||||||panels|return|data|||selected|element|||disabled|lis|addClass|selectedClass|href|false|load||removeClass|length|else|li|eq|cookie|hash|each|hasClass|cache|null|hideClass|show|browser|triggerHandler|disabledClass|showFx|unselect|filter|panelClass|replace|attr|fx|hide|index||tabify|event|css|msie|destroy|id|add|url|remove|true|bind|baseFx|unbind|panel|navClass|label|span|map|ajaxOptions|blur|spinner|xhr|html|select|display|arguments|removeData|loadingClass|unselectClass|setTimeout|panelTemplate|location|success|stop|tabId|click|block|showTab|hideTab|opacity|baseDuration|duration|extend|inArray|sort|typeof|div|toShowId|prototype|push|Array|tabTemplate|idPrefix|em|bypassCache|grep|insertBefore|appendTo|string|undefined|_|disable|jQuery|title|switchTab|style|enable|animate|test|constructor|for|unload|window|call|concat|unique|nav|slice|parseInt|scrollTo|500|opera|new|insertAfter|apply|fn|join|ajax|abort|has|trigger|safari|tab|instance|8230|z0|child|Za|Loading|first|indexOf|parentNode|identifier|fragment|Mismatching|find|Tabs|UI|inline|throw|visible|parents|siblings|getData|height|overflow|setData|normal|Function|width|min|loading'.split('|'),0,{}))
...\ No newline at end of file ...\ No newline at end of file
1 /*
2 * Tabs 3 - New Wave Tabs
3 *
4 * Copyright (c) 2007 Klaus Hartl (stilbuero.de)
5 * Dual licensed under the MIT (MIT-LICENSE.txt)
6 * and GPL (GPL-LICENSE.txt) licenses.
7 *
8 * http://docs.jquery.com/UI/Tabs
9 */
10 eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(6($){$.4=$.4||{};$.2o.3=6(){7 b=1K 1q[0]==\'1X\'&&1q[0];7 c=b&&1P.1N.2g.2c(1q,1)||1q;l b==\'C\'?$.m(2[0],\'4-3\').$3.C:2.I(6(){5(b){7 a=$.m(2,\'4-3\');a[b].2n(a,c)}D 2l $.4.3(2,c[0]||{})})};$.4.3=6(e,f){7 d=2;2.q=e;2.8=$.1H({p:0,S:f.p===L,12:\'1A\',t:[],G:L,1l:\'2B&#2x;\',K:y,1R:\'4-3-\',1j:{},X:L,1Q:\'<E><a x="#{x}"><1h>#{1g}</1h></a></E>\',1v:\'<1L></1L>\',1f:\'4-3-2f\',w:\'4-3-p\',1t:\'4-3-S\',Q:\'4-3-t\',U:\'4-3-1e\',M:\'4-3-Y\',1s:\'4-3-2Y\'},f);5(f.p===L)2.8.p=L;2.8.12+=\'.4-3\';2.8.G=$.G&&$.G.28==2V&&2.8.G;$(e).1b(\'2T.4-3\',6(b,c,a){5((/^p/).27(c))d.1o(a);D{d.8[c]=a;d.11()}}).1b(\'2Q.4-3\',6(a,b){l d.8[b]});$.m(e,\'4-3\',2);2.11(1a)};$.1H($.4.3.1N,{1z:6(a){l a.22&&a.22.V(/\\s/g,\'1Z\').V(/[^A-2A-2y-9\\-1Z:\\.]/g,\'\')||2.8.1R+$.m(a)},4:6(a,b){l{2w:2,8:2.8,2v:a,1e:b}},11:6(f){2.$u=$(\'E:2s(a[x])\',2.q);2.$3=2.$u.1i(6(){l $(\'a\',2)[0]});2.$k=$([]);7 e=2,o=2.8;2.$3.I(6(i,a){5(a.H&&a.H.V(\'#\',\'\'))e.$k=e.$k.17(a.H);D 5($(a).W(\'x\')!=\'#\'){$.m(a,\'x.4-3\',a.x);$.m(a,\'z.4-3\',a.x);7 b=e.1z(a);a.x=\'#\'+b;7 c=$(\'#\'+b);5(!c.C){c=$(o.1v).W(\'16\',b).v(o.U).2m(e.$k[i-1]||e.q);c.m(\'15.4-3\',1a)}e.$k=e.$k.17(c)}D o.t.1O(i+1)});5(f){$(2.q).J(o.1f)||$(2.q).v(o.1f);2.$k.I(6(){7 a=$(2);a.J(o.U)||a.v(o.U)});2.$3.I(6(i,a){5(1w.H){5(a.H==1w.H){o.p=i;5($.O.14||$.O.2k){7 b=$(1w.H),1M=b.W(\'16\');b.W(\'16\',\'\');1u(6(){b.W(\'16\',1M)},2j)}2i(0,0);l y}}D 5(o.G){7 c=2h($.G(\'4-3\'+$.m(e.q)),10);5(c&&e.$3[c]){o.p=c;l y}}D 5(e.$u.F(i).J(o.w)){o.p=i;l y}});2.$k.v(o.M);2.$u.B(o.w);5(!o.S){2.$k.F(o.p).N().B(o.M);2.$u.F(o.p).v(o.w)}7 h=!o.S&&$.m(2.$3[o.p],\'z.4-3\');5(h)2.z(o.p);o.t=$.2e(o.t.2d($.1i(2.$u.T(\'.\'+o.Q),6(n,i){l e.$u.Z(n)}))).1J();$(2b).1b(\'2a\',6(){e.$3.1d(\'.4-3\');e.$u=e.$3=e.$k=L})}29(7 i=0,E;E=2.$u[i];i++)$(E)[$.1I(i,o.t)!=-1&&!$(E).J(o.w)?\'v\':\'B\'](o.Q);5(o.K===y)2.$3.1r(\'K.4-3\');7 j,R,1c={\'2X-2W\':0,1G:1},1F=\'2U\';5(o.X&&o.X.28==1P)j=o.X[0]||1c,R=o.X[1]||1c;D j=R=o.X||1c;7 g={1p:\'\',2S:\'\',2R:\'\'};5(!$.O.14)g.1E=\'\';6 1D(b,c,a){c.26(j,j.1G||1F,6(){c.v(o.M).13(g);5($.O.14&&j.1E)c[0].24.T=\'\';5(a)1C(b,a,c)})}6 1C(b,a,c){5(R===1c)a.13(\'1p\',\'1B\');a.26(R,R.1G||1F,6(){a.B(o.M).13(g);5($.O.14&&R.1E)a[0].24.T=\'\';$(e.q).P(\'N.4-3\',[e.4(b,a[0])])})}6 23(c,a,d,b){a.v(o.w).2P().B(o.w);1D(c,d,b)}2.$3.1d(\'.4-3\').1b(o.12,6(){7 b=$(2).2O(\'E:F(0)\'),$Y=e.$k.T(\':2N\'),$N=$(2.H);5((b.J(o.w)&&!o.S)||b.J(o.Q)||$(e.q).P(\'1o.4-3\',[e.4(2,$N[0])])===y){2.1k();l y}e.8.p=e.$3.Z(2);5(o.S){5(b.J(o.w)){e.8.p=L;b.B(o.w);e.$k.1y();1D(2,$Y);2.1k();l y}D 5(!$Y.C){e.$k.1y();7 a=2;e.z(e.$3.Z(2),6(){b.v(o.w).v(o.1t);1C(a,$N)});2.1k();l y}}5(o.G)$.G(\'4-3\'+$.m(e.q),e.8.p,o.G);e.$k.1y();5($N.C){7 a=2;e.z(e.$3.Z(2),6(){23(a,b,$Y,$N)})}D 2M\'21 2K 2J: 2H 2G 2F.\';5($.O.14)2.1k();l y});5(!(/^1A/).27(o.12))2.$3.1b(\'1A.4-3\',6(){l y})},17:6(d,e,f){5(f==1Y)f=2.$3.C;7 o=2.8;7 a=$(o.1Q.V(/#\\{x\\}/,d).V(/#\\{1g\\}/,e));a.m(\'15.4-3\',1a);7 b=d.2D(\'#\')==0?d.V(\'#\',\'\'):2.1z($(\'a:2C-2z\',a)[0]);7 c=$(\'#\'+b);5(!c.C){c=$(o.1v).W(\'16\',b).v(o.U).v(o.M);c.m(\'15.4-3\',1a)}5(f>=2.$u.C){a.1W(2.q);c.1W(2.q.2E)}D{a.1V(2.$u[f]);c.1V(2.$k[f])}o.t=$.1i(o.t,6(n,i){l n>=f?++n:n});2.11();5(2.$3.C==1){a.v(o.w);c.B(o.M);7 g=$.m(2.$3[0],\'z.4-3\');5(g)2.z(f,g)}$(2.q).P(\'17.4-3\',[2.4(2.$3[f],2.$k[f])])},19:6(a){7 o=2.8,$E=2.$u.F(a).19(),$1e=2.$k.F(a).19();5($E.J(o.w)&&2.$3.C>1)2.1o(a+(a+1<2.$3.C?1:-1));o.t=$.1i($.1U(o.t,6(n,i){l n!=a}),6(n,i){l n>=a?--n:n});2.11();$(2.q).P(\'19.4-3\',[2.4($E.2I(\'a\')[0],$1e[0])])},25:6(a){7 o=2.8;5($.1I(a,o.t)==-1)l;7 b=2.$u.F(a).B(o.Q);5($.O.2u){b.13(\'1p\',\'2L-1B\');1u(6(){b.13(\'1p\',\'1B\')},0)}o.t=$.1U(o.t,6(n,i){l n!=a});$(2.q).P(\'25.4-3\',[2.4(2.$3[a],2.$k[a])])},20:6(a){7 b=2,o=2.8;5(a!=o.p){2.$u.F(a).v(o.Q);o.t.1O(a);o.t.1J();$(2.q).P(\'20.4-3\',[2.4(2.$3[a],2.$k[a])])}},1o:6(a){5(1K a==\'1X\')a=2.$3.Z(2.$3.T(\'[x$=\'+a+\']\')[0]);2.$3.F(a).2t(2.8.12)},z:6(d,b){7 e=2,o=2.8,$a=2.$3.F(d),a=$a[0],1T=b==1Y|| b===y,18=$a.m(\'z.4-3\');b=b|| 6(){};5(!18|| ($.m(a,\'K.4-3\')&&!1T)){b();l}5(o.1l){7 g=$(\'1h\',a),1g=g.1n();g.1n(\'<1S>\'+o.1l+\'</1S>\')}7 c=6(){e.$3.T(\'.\'+o.1s).I(6(){$(2).B(o.1s);5(o.1l)$(\'1h\',2).1n(1g)});e.1m=L};7 f=$.1H({},o.1j,{18:18,1x:6(r,s){$(a.H).1n(r);c();b();5(o.K)$.m(a,\'K.4-3\',1a);$(e.q).P(\'z.4-3\',[e.4(e.$3[d],e.$k[d])]);o.1j.1x&&o.1j.1x(r,s)}});5(2.1m){2.1m.2r();c()}$a.v(o.1s);1u(6(){e.1m=$.2q(f)},0)},18:6(a,b){2.$3.F(a).1r(\'K.4-3\').m(\'z.4-3\',b)},15:6(){7 o=2.8;$(2.q).1d(\'.4-3\').B(o.1f).1r(\'4-3\');2.$3.I(6(){7 b=$.m(2,\'x.4-3\');5(b)2.x=b;7 c=$(2).1d(\'.4-3\');$.I([\'x\',\'z\',\'K\'],6(i,a){c.1r(a+\'.4-3\')})});2.$u.17(2.$k).I(6(){5($.m(2,\'15.4-3\'))$(2).19();D $(2).B([o.w,o.1t,o.Q,o.U,o.M].2p(\' \'))})}})})(21);',62,185,'||this|tabs|ui|if|function|var|options||||||||||||panels|return|data|||selected|element|||disabled|lis|addClass|selectedClass|href|false|load||removeClass|length|else|li|eq|cookie|hash|each|hasClass|cache|null|hideClass|show|browser|triggerHandler|disabledClass|showFx|unselect|filter|panelClass|replace|attr|fx|hide|index||tabify|event|css|msie|destroy|id|add|url|remove|true|bind|baseFx|unbind|panel|navClass|label|span|map|ajaxOptions|blur|spinner|xhr|html|select|display|arguments|removeData|loadingClass|unselectClass|setTimeout|panelTemplate|location|success|stop|tabId|click|block|showTab|hideTab|opacity|baseDuration|duration|extend|inArray|sort|typeof|div|toShowId|prototype|push|Array|tabTemplate|idPrefix|em|bypassCache|grep|insertBefore|appendTo|string|undefined|_|disable|jQuery|title|switchTab|style|enable|animate|test|constructor|for|unload|window|call|concat|unique|nav|slice|parseInt|scrollTo|500|opera|new|insertAfter|apply|fn|join|ajax|abort|has|trigger|safari|tab|instance|8230|z0|child|Za|Loading|first|indexOf|parentNode|identifier|fragment|Mismatching|find|Tabs|UI|inline|throw|visible|parents|siblings|getData|height|overflow|setData|normal|Function|width|min|loading'.split('|'),0,{}))
...\ No newline at end of file ...\ No newline at end of file
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5 <title>PHP Simple HTML DOM Parser: FAQ</title>
6 <link href="css/default.css" rel="stylesheet" type="text/css">
7 </head>
8 <body>
9 <h1><a name="top"></a>PHP Simple HTML DOM Parser Manual</h1>
10 <div id="content">
11 <h2>FAQ</h2>
12 <ul>
13 <li><a href="manual.htm">Back</a></li>
14 <li><a href="#find">Problem with finding</a></li>
15 <li><a href="#hosting">Problem with hosting</a></li>
16 <li><a href="#proxy">Behind a proxy</a></li>
17 <li><a href="#memory_leak">Memory leak!</a></li>
18 </ul>
19 <div>
20 <a name="find"></a>
21 <h2>Problem with finding</h2>
22 <a class="top" href="#top">Top</a>
23 <div class="code"> <span class="var">Q:</span> Element not found in such case:<br>
24 $html-&gt;find('div[style=<span class="var">padding: 0px 2px;</span>] span[class=rf]');<br>
25 <br>
26 <span class="var">A:</span> If there is blank in selectors, quote it!  <br>
27 $html-&gt;find('div[style=<strong class="var">&quot;padding: 0px 2px;&quot;</strong>] span[class=rf]');</div>
28 <a name="hosting"></a>
29 <h2>Problem with hosting</h2>
30 <a class="top" href="#top">Top</a>
31 <div class="code"> <span class="var">Q:</span> On my local server everything works fine, but when I put it on my esternal server it doesn't work. <br>
32 <br>
33 <span class="var">A:</span> The "file_get_dom" function is a wrapper of "file_get_contents" function,  you must set "<strong>allow_url_fopen</strong>" as <strong>TRUE</strong> in "php.ini" to allow accessing files via HTTP or FTP. However, some hosting venders disabled PHP's "allow_url_fopen" flag for security issues... PHP provides excellent support for "curl" library to do the same job, Use curl to get the page, then call "str_get_dom" to create DOM object. <br>
34 <br>
35 Example: <br>
36  <br>
37 $curl = curl_init(); <br>
38 curl_setopt(<span class="var">$curl, CURLOPT_URL, 'http://????????'</span>);  <br>
39 curl_setopt(<span class="var">$curl, CURLOPT_RETURNTRANSFER, 1</span>);  <br>
40 curl_setopt(<span class="var">$curl, CURLOPT_CONNECTTIMEOUT, 10</span>);  <br>
41 $str = curl_exec(<span class="var">$curl</span>);  <br>
42 curl_close($curl);  <br>
43  <br>
44 $html= <strong>str_get_html</strong>($str); <br>
45 ...  </div>
46 <a name="proxy"></a>
47 <div>
48 <h2>Behind a proxy</h2>
49 <a class="top" href="#top">Top</a>
50 <div class="code"> <span class="var">Q:</span> My server is behind a Proxy and i can't use file_get_contents b/c it returns a unauthorized error.<br>
51 <br>
52 <span class="var">A:</span> Thanks for Shaggy to provide the solution: <br>
53  <br>
54 <span class="comment">// Define a context for HTTP. </span><br>
55 $context = array<br>
56 <br>
57 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="var">'http'</span> =&gt; array<br>
58 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>
59 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="var">'proxy'</span> =&gt; <span class="var">'addresseproxy:portproxy'</span>, <span class="comment">// This needs to be the server and the port of the NTLM Authentication Proxy Server. </span><br>
60 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="var"> 'request_fulluri'</span> =&gt; true, <br>
61 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ), <br>
62 ); <br>
63 <br>
64 $context = <strong>stream_context_create</strong>($context); <br>
65  <br>
66 $html= <strong>file_get_html</strong>(<span class="var">'http://www.php.net'</span>, <span class="var">false</span>, <span class="var">$context</span>); <br>
67 ...<br>
68 </div>
69 </div>
70 <a name="memory_leak"></a>
71 <h2>Memory leak!</h2>
72 <a class="top" href="#top">Top</a>
73 <div class="code"> <span class="var">Q:</span> This script is leaking memory seriously... After it finished running, it's not cleaning up dom object properly from memory.. <br>
74 <br>
75 <span class="var">A:</span> Due to php5 circular references memory leak, after creating DOM object, you must call $dom-&gt;clear() to free memory if call file_get_dom() more then once. <br>
76 <br>
77 Example: <br>
78 <br>
79 $html = file_get_html(...); <br>
80 <span class="comment">// do something... </span><br>
81 $html-&gt;clear(); <br>
82 unset($html);</div>
83 <br>
84 Author: S.C. Chen (me578022@gmail.com)<br>
85 Original idea is from Jose Solorzano's <a href="http://php-html.sourceforge.net/">HTML Parser for PHP 4</a>. <br>
86 Contributions by: Yousuke Kumakura, Vadim Voituk, Antcs<br>
87 </div>
88 </div>
89 </body>
90 </html>
91 <!--$Rev: 165 $-->
1 K 25
2 svn:wc:ra_dav:version-url
3 V 50
4 /svnroot/simplehtmldom/!svn/ver/180/trunk/testcase
5 END
6 strip_testcase.php
7 K 25
8 svn:wc:ra_dav:version-url
9 V 69
10 /svnroot/simplehtmldom/!svn/ver/169/trunk/testcase/strip_testcase.php
11 END
12 performance_test.php
13 K 25
14 svn:wc:ra_dav:version-url
15 V 71
16 /svnroot/simplehtmldom/!svn/ver/133/trunk/testcase/performance_test.php
17 END
18 mass_test.php
19 K 25
20 svn:wc:ra_dav:version-url
21 V 64
22 /svnroot/simplehtmldom/!svn/ver/174/trunk/testcase/mass_test.php
23 END
24 slick_test.php
25 K 25
26 svn:wc:ra_dav:version-url
27 V 65
28 /svnroot/simplehtmldom/!svn/ver/133/trunk/testcase/slick_test.php
29 END
30 memory_test.php
31 K 25
32 svn:wc:ra_dav:version-url
33 V 66
34 /svnroot/simplehtmldom/!svn/ver/179/trunk/testcase/memory_test.php
35 END
36 all_test.php
37 K 25
38 svn:wc:ra_dav:version-url
39 V 63
40 /svnroot/simplehtmldom/!svn/ver/175/trunk/testcase/all_test.php
41 END
42 dom_testcase.php
43 K 25
44 svn:wc:ra_dav:version-url
45 V 67
46 /svnroot/simplehtmldom/!svn/ver/180/trunk/testcase/dom_testcase.php
47 END
48 selector_testcase.php
49 K 25
50 svn:wc:ra_dav:version-url
51 V 72
52 /svnroot/simplehtmldom/!svn/ver/172/trunk/testcase/selector_testcase.php
53 END
54 jquery-1.2.3.pack.js
55 K 25
56 svn:wc:ra_dav:version-url
57 V 71
58 /svnroot/simplehtmldom/!svn/ver/106/trunk/testcase/jquery-1.2.3.pack.js
59 END
60 invalid_testcase.php
61 K 25
62 svn:wc:ra_dav:version-url
63 V 71
64 /svnroot/simplehtmldom/!svn/ver/175/trunk/testcase/invalid_testcase.php
65 END
66 element_testcase.php
67 K 25
68 svn:wc:ra_dav:version-url
69 V 71
70 /svnroot/simplehtmldom/!svn/ver/132/trunk/testcase/element_testcase.php
71 END
72 std_testcase.php
73 K 25
74 svn:wc:ra_dav:version-url
75 V 67
76 /svnroot/simplehtmldom/!svn/ver/115/trunk/testcase/std_testcase.php
77 END
78 misc_testcase.php
79 K 25
80 svn:wc:ra_dav:version-url
81 V 68
82 /svnroot/simplehtmldom/!svn/ver/133/trunk/testcase/misc_testcase.php
83 END
84 callback_testcase.php
85 K 25
86 svn:wc:ra_dav:version-url
87 V 72
88 /svnroot/simplehtmldom/!svn/ver/179/trunk/testcase/callback_testcase.php
89 END
90 slickspeed.htm
91 K 25
92 svn:wc:ra_dav:version-url
93 V 65
94 /svnroot/simplehtmldom/!svn/ver/106/trunk/testcase/slickspeed.htm
95 END
1 10
2
3 dir
4 182
5 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/testcase
6 https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
7
8
9
10 2009-03-22T19:24:59.344030Z
11 180
12 me578022
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 d0e60b4b-9046-0410-940c-b97530268c78
28
29 strip_testcase.php
30 file
31
32
33
34
35 2010-08-17T19:13:53.350286Z
36 312053ebe417d8bd82901a3788ace7cb
37 2008-10-29T19:08:25.076520Z
38 169
39 me578022
40 has-props
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 4448
62
63 performance_test.php
64 file
65
66
67
68
69 2010-08-17T19:13:53.357286Z
70 178c0c89624f4341b732545414590ff2
71 2008-07-25T12:31:14.828880Z
72 133
73 me578022
74 has-props
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95 792
96
97 mass_test.php
98 file
99
100
101
102
103 2010-08-17T19:13:53.363286Z
104 b2a94f2744f4fcb902e2f238456b3872
105 2008-12-11T19:19:39.653903Z
106 174
107 me578022
108 has-props
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129 3048
130
131 slick_test.php
132 file
133
134
135
136
137 2010-08-17T19:13:53.370287Z
138 b99dbf87b8b80c80d9f6958772a9bd2a
139 2008-07-25T12:31:14.828880Z
140 133
141 me578022
142 has-props
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163 892
164
165 memory_test.php
166 file
167
168
169
170
171 2010-08-17T19:13:53.383288Z
172 876e9e34007c44ae588488de78fbe695
173 2009-02-23T09:04:02.699587Z
174 179
175 me578022
176 has-props
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197 4719
198
199 all_test.php
200 file
201
202
203
204
205 2010-08-17T19:13:53.376287Z
206 eda1dbfb14f36ae447c9e23d41870036
207 2008-12-14T18:56:55.570844Z
208 175
209 me578022
210 has-props
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231 745
232
233 dom_testcase.php
234 file
235
236
237
238
239 2010-08-17T19:13:53.389288Z
240 d94c6f883d8f55e3009a3118886ba47c
241 2009-03-22T19:24:59.344030Z
242 180
243 me578022
244 has-props
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265 11672
266
267 selector_testcase.php
268 file
269
270
271
272
273 2010-08-17T19:13:53.395288Z
274 46a462975187f4b8804fb3162486c72d
275 2008-11-16T20:10:05.337885Z
276 172
277 me578022
278 has-props
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299 21839
300
301 reader
302 dir
303
304 html
305 dir
306
307 jquery-1.2.3.pack.js
308 file
309
310
311
312
313 2010-08-17T19:13:53.402289Z
314 f8d6a95d012b83675abe8cd1877268a0
315 2008-06-04T18:34:08.672146Z
316 106
317 me578022
318 has-props
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339 29845
340
341 invalid_testcase.php
342 file
343
344
345
346
347 2010-08-17T19:13:53.409289Z
348 674d63800eeec61271d1bed2083f9306
349 2008-12-14T18:56:55.570844Z
350 175
351 me578022
352 has-props
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373 18691
374
375 element_testcase.php
376 file
377
378
379
380
381 2010-08-17T19:13:53.415289Z
382 7a1e804c7f08595ad56252a26431e2f8
383 2008-07-24T13:55:24.521644Z
384 132
385 me578022
386 has-props
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407 8412
408
409 std_testcase.php
410 file
411
412
413
414
415 2010-08-17T19:13:53.421290Z
416 7941d3823eb3a787633d672eddfa4c98
417 2008-06-24T00:55:28.257869Z
418 115
419 me578022
420 has-props
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441 6829
442
443 misc_testcase.php
444 file
445
446
447
448
449 2010-08-17T19:13:53.427290Z
450 5072ff70e3cce8771b62b319e1be4df0
451 2008-07-25T12:31:14.828880Z
452 133
453 me578022
454 has-props
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475 1854
476
477 slickspeed.htm
478 file
479
480
481
482
483 2010-08-17T19:13:53.434290Z
484 01b4dd6f53b2b9970492704c42901b32
485 2008-06-04T18:34:08.672146Z
486 106
487 me578022
488 has-props
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509 116621
510
511 callback_testcase.php
512 file
513
514
515
516
517 2010-08-17T19:13:53.441291Z
518 c026b8c379d20ec4999bd0dcd6550a6f
519 2009-02-23T09:04:02.699587Z
520 179
521 me578022
522 has-props
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543 1845
544