source: trunk/www/localized/fr/ports.php @ 108736

Last change on this file since 108736 was 100018, checked in by ryandesign@…, 8 years ago

remove use of deprecated POSIX regex (ereg*) functions in favor of PCRE regex (preg*) functions (#22281)

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 6.7 KB
Line 
1<?
2    $DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];
3    include_once("$DOCUMENT_ROOT/fr/includes/common.inc");
4    include_once("$DOCUMENT_ROOT/includes/db.inc");
5    include_once("$DOCUMENT_ROOT/includes/email.inc");
6        print_header('Ports Disponibles', 'utf-8');
7    $by = isset($_GET['by']) ? $_GET['by'] : '';
8    $substr = isset($_GET['substr']) ? $_GET['substr'] : '';
9?>
10        <center>
11        <h1>Portfiles DarwinPorts</h1>
12        </center>
13
14        <p>
15        Ce formulaire vous permet de rechercher un logiciel particulier dans l'index de DarwinPorts.<br />
16        <i>Dernière mise à jour de l'index : </i>
17        <?
18                $sql = "SELECT UNIX_TIMESTAMP(activity_time) FROM darwinports.log ORDER BY UNIX_TIMESTAMP(activity_time) DESC";
19                $result = mysql_query($sql);
20                if($result && $row = mysql_fetch_row($result)) {
21                                echo date("d-M-Y H:i:s", $row[0]);
22                }
23        ?>
24        </p>
25       
26        <form action="<?= $PHP_SELF; ?>">
27        <table>
28                <tr>
29                        <th>Rechercher par :</th>
30                        <td>
31                                <select name="by">
32                                <option value="name"<? if ($by == "name") { echo " selected=\"selected\""; } ?>>Nom du logiciel</option>
33                                <option value="desc"<? if ($by == "desc") { echo " selected=\"selected\""; } ?>>Description</option>
34                                <option value="cat"<? if ($by == "cat") { echo " selected=\"selected\""; } ?>>Catégorie</option>
35                                <option value="maintainer"<? if ($by == "maintainer") { echo " selected=\"selected\""; } ?>>Mainteneur</option>
36                                </select>
37                        </td>
38                        <td><input type="text" name="substr" size="40" /></td>
39                        <td><input type="submit" name="Search" value="Rechercher" /></td>
40                </tr>
41                <tr><td colspan="4"><hr size="1" noshade="noshade" /></td></tr>
42                <tr>
43<?
44                $result = mysql_query("SELECT count(*) from darwinports.portfiles");
45                if ($result) {
46                        $row = mysql_fetch_array($result);
47                        $count = $row[0];
48                } else {
49                        $count = 0;
50                }
51?>
52                        <td colspan="4" align="left"><a href="<?= $PHP_SELF; ?>?by=all">Afficher tous les logiciels (<?= $count; ?>)</a></td>
53                </tr>
54                <?
55                        if (!$by || (!$substr && $by != "all")) {
56                ?>
57                <tr><td colspan="4"><hr size="1" noshade="noshade" /></td></tr>
58                <tr><th colspan="4" align="left">Afficher par catégorie :</th></tr>
59                <?
60                                $query = "SELECT DISTINCT category FROM darwinports.categories ORDER BY category";
61                                $result = mysql_query($query);
62                                if($result) {
63                                        while( $row = mysql_fetch_assoc($result) ) {
64                ?>
65                <tr><td colspan="4"><a href="<?= $PHP_SELF; ?>?by=cat&substr=<?= $row['category']; ?>"><?= $row['category']; ?></a></td></tr>
66                <?
67                                        }
68                                }
69                        }
70                ?>
71        </table>
72        </form>
73
74<?
75        if ($by && ($substr || $by == "all")) {
76                $fields = "name, path, version, description";
77                $query = "1";
78                $tables = "darwinports.portfiles p";
79                if ($by == "name") {
80                        $query = $query . " AND p.name LIKE '%" . addslashes($substr) . "%'";
81                }
82                if ($by == "library") {
83                        $query = $query . " AND p.name='" . addslashes($substr) . "'";
84                }
85                if ($by == "desc") {
86                        $query = $query . " AND p.description LIKE '%" . addslashes($substr) . "%'";
87                }
88                if ($by == "cat") {
89                        $tables = $tables . ", darwinports.categories c";
90                        $query = $query . " AND c.portfile=p.name AND c.category='" . addslashes($substr) . "'";
91                }
92                if ($by == "variant") {
93                        $tables = $tables . ", darwinports.variants v";
94                        $query = $query . " AND v.portfile=p.name AND v.variant='" . addslashes($substr) . "'";
95                }
96                if ($by == "platform") {
97                        $tables = $tables . ", darwinports.platforms pl";
98                        $query = $query . " AND pl.portfile=p.name AND pl.platform ='" . addslashes($substr) . "'";
99                }
100                if ($by == "maintainer") {
101                        $tables = $tables . ", darwinports.maintainers m";
102                        $query = $query . " AND m.portfile=p.name AND m.maintainer LIKE '%" . addslashes($substr) . "%'";
103                }
104                $query = "SELECT DISTINCT $fields FROM $tables WHERE $query ORDER BY name";
105                $result = mysql_query($query);
106                if($result) {
107?>
108        <p>
109        <i><?= mysql_num_rows($result); ?> Portfile<? if (mysql_num_rows($result) != 1) { echo "s"; } ?> sélectionné<? if (mysql_num_rows($result) != 1) { echo "s"; } ?></i>
110        </p>
111        <dl>
112<?             
113                        while( $row = mysql_fetch_assoc($result) ) {
114?>
115        <dt><b><a href="http://www.darwinports.org/darwinports/dports/<?= $row['path']; ?>/Portfile"><?= $row['name']; ?></a></b> <?= $row['version']; ?></dt>
116        <dd>
117        <?= $row['description']; ?><br />
118        <?
119// MAINTAINERS
120                                $nquery = "SELECT maintainer FROM darwinports.maintainers WHERE portfile='" . $row['name'] . "' ORDER BY is_primary DESC, maintainer";
121                                $nresult = mysql_query($nquery);
122                                if ($nresult) {
123?>
124        <i>Maintenu par :</i>
125<?
126                                        $primary = 1;
127                                        while ( $nrow = mysql_fetch_array($nresult) ) {
128                                                if ($primary) { echo "<b>"; }
129                                                $addr = obfuscate_email($nrow[0]);
130                                                print $addr;
131                                                if ($primary) { echo "</b>"; }
132                                                $primary = 0;
133                                        }
134                                }
135
136// CATEGORIES
137                                $nquery = "SELECT category FROM darwinports.categories WHERE portfile='" . $row['name'] . "' ORDER BY is_primary DESC, category";
138                                $nresult = mysql_query($nquery);
139                                if ($nresult) {
140?>
141        <br />
142        <i>Catégorie(s) :</i>
143<?
144                                        $primary = 1;
145                                        while ( $nrow = mysql_fetch_assoc($nresult) ) {
146                                                if ($primary) { echo "<b>"; }
147                                        ?>
148                                                <a href="<?= $PHP_SELF; ?>?by=cat&substr=<?= $nrow['category']; ?>"><?= $nrow['category']; ?></a>
149                                        <?
150                                                if ($primary) { echo "</b>"; }
151                                                $primary = 0;
152                                        }
153                                }
154
155// PLATFORMS
156                                $nquery = "SELECT platform FROM darwinports.platforms WHERE portfile='" . $row['name'] . "' ORDER BY platform";
157                                $nresult = mysql_query($nquery);
158                                if ($nresult && mysql_num_rows($nresult) > 0) {
159?>
160        <br />
161        <i>Plateforme(s) :</i>
162<?
163                                        while ( $nrow = mysql_fetch_array($nresult) ) {
164                                                $platform = $nrow[0];
165                                        ?>
166                                                <a href="<?= $PHP_SELF; ?>?by=platform&substr=<?= $platform; ?>"><?= $platform; ?></a>
167                                        <?
168                                        }
169                                }
170
171// DEPENDENCIES
172                                $nquery = "SELECT library FROM darwinports.dependencies WHERE portfile='" . $row['name'] . "' ORDER BY library";
173                                $nresult = mysql_query($nquery);
174                                if ($nresult && mysql_num_rows($nresult) > 0) {
175?>
176        <br />
177        <i>Dépendance(s) :</i>
178<?
179                                        while ( $nrow = mysql_fetch_array($nresult) ) {
180                                                // lib:libpng.3:libpng -> libpng
181                                                $library = preg_replace("/^(?:[^:]*:){1,2}/", "", $nrow[0]);
182                                        ?>
183                                                <a href="<?= $PHP_SELF; ?>?by=library&substr=<?= $library; ?>"><?= $library; ?></a>
184                                        <?
185                                        }
186                                }
187/*
188// VARIANTS
189                                $nquery = "SELECT variant FROM darwinports.variants WHERE portfile='" . $row['name'] . "' ORDER BY variant";
190                                $nresult = mysql_query($nquery);
191                                if ($nresult && mysql_num_rows($nresult) > 0) {
192?>
193        <br />
194        <i>Variantes :</i>
195<?
196                                        while ( $nrow = mysql_fetch_array($nresult) ) {
197                                                $variant = $nrow[0];
198                                        ?>
199                                                <a href="<?= $PHP_SELF; ?>?by=variant&substr=<?= $variant; ?>"><?= $variant; ?></a>
200                                        <?
201                                        }
202                                }
203*/
204        ?>
205        <br />
206        </dd>
207        <br />
208<?     
209                        } 
210                } else {
211                        echo "Une erreur est survenue. (501)";
212                }
213        }
214?>
215        </dl>
216        </div>
217<?php
218  print_footer();
219?>
Note: See TracBrowser for help on using the repository browser.