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