Revision | b94616fe0acacda5ee20bf58efe40d78534dd8a0 (tree) |
---|---|
Time | 2009-03-28 11:08:54 |
Author | henoheno <henoheno> |
Commiter | henoheno |
Japanese => English
@@ -1,6 +1,6 @@ | ||
1 | 1 | <?php |
2 | 2 | // PukiWiki - Yet another WikiWikiWeb clone |
3 | -// $Id: link.php,v 1.18 2007/10/07 13:08:50 henoheno Exp $ | |
3 | +// $Id: link.php,v 1.19 2009/03/28 02:08:54 henoheno Exp $ | |
4 | 4 | // Copyright (C) 2003-2007 PukiWiki Developers Team |
5 | 5 | // License: GPL v2 or (at your option) any later version |
6 | 6 | // |
@@ -29,7 +29,7 @@ | ||
29 | 29 | // ------------------------------------------------------------ |
30 | 30 | |
31 | 31 | |
32 | -// データベースから関連ページを得る | |
32 | +// Get related-pages from DB | |
33 | 33 | function links_get_related_db($page) |
34 | 34 | { |
35 | 35 | $ref_name = CACHE_DIR . encode($page) . '.ref'; |
@@ -44,7 +44,7 @@ function links_get_related_db($page) | ||
44 | 44 | return $times; |
45 | 45 | } |
46 | 46 | |
47 | -//ページの関連を更新する | |
47 | +// Update link-relationships between pages | |
48 | 48 | function links_update($page) |
49 | 49 | { |
50 | 50 | if (PKWK_READONLY) return; // Do nothing |
@@ -62,15 +62,15 @@ function links_update($page) | ||
62 | 62 | if (isset($lines[0])) |
63 | 63 | $rel_old = explode("\t", rtrim($lines[0])); |
64 | 64 | } |
65 | - $rel_new = array(); // 参照先 | |
66 | - $rel_auto = array(); // オートリンクしている参照先 | |
65 | + $rel_new = array(); // Reference to | |
66 | + $rel_auto = array(); // by AutoLink | |
67 | 67 | $links = links_get_objects($page, TRUE); |
68 | 68 | foreach ($links as $_obj) { |
69 | 69 | if (! isset($_obj->type) || $_obj->type != 'pagename' || |
70 | 70 | $_obj->name === $page || $_obj->name == '') |
71 | 71 | continue; |
72 | 72 | |
73 | - if (is_a($_obj, 'Link_autolink')) { // 行儀が悪い | |
73 | + if (is_a($_obj, 'Link_autolink')) { // Not cool though | |
74 | 74 | $rel_auto[] = $_obj->name; |
75 | 75 | } else if (is_a($_obj, 'Link_autoalias')) { |
76 | 76 | $_alias = get_autoaliases($_obj->name); |
@@ -83,15 +83,15 @@ function links_update($page) | ||
83 | 83 | } |
84 | 84 | $rel_new = array_unique($rel_new); |
85 | 85 | |
86 | - // autolinkしか向いていないページ | |
86 | + // All pages "Referenced to" only by AutoLink | |
87 | 87 | $rel_auto = array_diff(array_unique($rel_auto), $rel_new); |
88 | 88 | |
89 | - // 全ての参照先ページ | |
89 | + // All pages "Referenced to" | |
90 | 90 | $rel_new = array_merge($rel_new, $rel_auto); |
91 | 91 | |
92 | - // .rel:$pageが参照しているページの一覧 | |
92 | + // .rel: Pages referred from the $page | |
93 | 93 | if ($time) { |
94 | - // ページが存在している | |
94 | + // Page exists | |
95 | 95 | if (! empty($rel_new)) { |
96 | 96 | $fp = fopen($rel_file, 'w') |
97 | 97 | or die_message('cannot write ' . htmlspecialchars($rel_file)); |
@@ -100,17 +100,17 @@ function links_update($page) | ||
100 | 100 | } |
101 | 101 | } |
102 | 102 | |
103 | - // .ref:$_pageを参照しているページの一覧 | |
103 | + // .ref: Pages refer to the $page | |
104 | 104 | links_add($page, array_diff($rel_new, $rel_old), $rel_auto); |
105 | 105 | links_delete($page, array_diff($rel_old, $rel_new)); |
106 | 106 | |
107 | 107 | global $WikiName, $autolink, $nowikiname, $search_non_list; |
108 | 108 | |
109 | - // $pageが新規作成されたページで、AutoLinkの対象となり得る場合 | |
109 | + // $page seems newly created, and matches with AutoLink | |
110 | 110 | if ($time && ! $rel_file_exist && $autolink |
111 | 111 | && (preg_match("/^$WikiName$/", $page) ? $nowikiname : strlen($page) >= $autolink)) |
112 | 112 | { |
113 | - // $pageを参照していそうなページを一斉更新する(おい) | |
113 | + // Update all, because they __MAY__ refer the $page [HEAVY] | |
114 | 114 | $search_non_list = 1; |
115 | 115 | $pages = do_search($page, 'AND', TRUE); |
116 | 116 | foreach ($pages as $_page) { |
@@ -120,14 +120,15 @@ function links_update($page) | ||
120 | 120 | } |
121 | 121 | $ref_file = CACHE_DIR . encode($page) . '.ref'; |
122 | 122 | |
123 | - // $pageが削除されたときに、 | |
123 | + // If the $page had been removed | |
124 | 124 | if (! $time && file_exists($ref_file)) { |
125 | 125 | foreach (file($ref_file) as $line) { |
126 | 126 | list($ref_page, $ref_auto) = explode("\t", rtrim($line)); |
127 | 127 | |
128 | - // $pageをAutoLinkでしか参照していないページを一斉更新する(おいおい) | |
129 | - if ($ref_auto) | |
128 | + // Update pages they refer the $page by AutoLink only [HEAVY] | |
129 | + if ($ref_auto) { | |
130 | 130 | links_delete($ref_page, array($page)); |
131 | + } | |
131 | 132 | } |
132 | 133 | } |
133 | 134 | } |
@@ -145,11 +146,11 @@ function links_init() | ||
145 | 146 | foreach (get_existfiles(CACHE_DIR, '.rel') as $cache) |
146 | 147 | unlink($cache); |
147 | 148 | |
148 | - $ref = array(); // 参照元 | |
149 | + $ref = array(); // Reference from | |
149 | 150 | foreach (get_existpages() as $page) { |
150 | 151 | if (is_cantedit($page)) continue; |
151 | 152 | |
152 | - $rel = array(); // 参照先 | |
153 | + $rel = array(); // Reference to | |
153 | 154 | $links = links_get_objects($page); |
154 | 155 | foreach ($links as $_obj) { |
155 | 156 | if (! isset($_obj->type) || $_obj->type != 'pagename' || |