slitaz-forge rev 284

pkgs: huge code rewriting; tested on the SliTaz 4.0 but not on the real server; for more info see README
author Aleksej Bobylev <al.bobylev@gmail.com>
date Mon Apr 16 11:34:57 2012 +0300 (2012-04-16)
parents 76cf8c9271ce
children a31436ba260a
files pkgs/Makefile pkgs/README pkgs/lib/footer.sh pkgs/lib/header.sh pkgs/pkgs.css pkgs/po/de.po pkgs/po/fr.po pkgs/po/pt_BR.po pkgs/po/ru.po pkgs/po/tazpkg-web.pot pkgs/po/zh.po pkgs/search.sh pkgs/style/images/down.png pkgs/style/images/logo.png pkgs/style/logo.png pkgs/style/slitaz.css
line diff
     1.1 --- a/pkgs/Makefile	Fri Apr 13 01:53:02 2012 +0200
     1.2 +++ b/pkgs/Makefile	Mon Apr 16 11:34:57 2012 +0300
     1.3 @@ -38,3 +38,9 @@
     1.4  	rm -f po/*.mo
     1.5  	rm -f po/*.*~
     1.6  
     1.7 +help:
     1.8 +	@echo "$$ pot          - remake pot"
     1.9 +	@echo "$$ msgmerge     - update *.po from *.pot"
    1.10 +	@echo "$$ msgfmt | all - compile *.mo"
    1.11 +	@echo "# install-msg  - compile *.mo & install to system"
    1.12 +	@echo "$$ clean        - remove *.mo"
     2.1 --- a/pkgs/README	Fri Apr 13 01:53:02 2012 +0200
     2.2 +++ b/pkgs/README	Mon Apr 16 11:34:57 2012 +0300
     2.3 @@ -10,12 +10,26 @@
     2.4  
     2.5  	* Use GET so we can copy past urls from a browser
     2.6  	* Gettextise the search engine and use PO files
     2.7 +	* auto form focus
     2.8 +	* CSS3 style effects
     2.9 +	* all css now in _standard_ slitaz.css (from website) and pkgs.css
    2.10 +	* nice URLs to share via copy them from address bar
    2.11 +	* improve debug mode
    2.12  
    2.13  TODO
    2.14  ----
    2.15  
    2.16  	* Add package page with all info and an install link
    2.17  	  (tazpkg:// or tazpkg: works in Midori
    2.18 -
    2.19 +	* implement POST method of the form submitting
    2.20 +	* implement more nice redirect, than http refresh
    2.21 +	* add hint 'You are can search for depends loop, if textfield is empty'...
    2.22 +	* add progress ticker while page is not complete
    2.23 +	* caching the footer summary
    2.24 +	* add style highlighting for the receipts
    2.25 +	* clear the file names, so our goal is URL like:
    2.26 +	  http://pkgs.slitaz.org/?package=geany
    2.27 +	  (form action="$SCRIPT_NAME" -> action="/")
    2.28 +	* standard 4.0 have /usr/lib/slitaz/httphelper (without '.sh')
    2.29  
    2.30  ================================================================================
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/pkgs/lib/footer.sh	Mon Apr 16 11:34:57 2012 +0300
     3.3 @@ -0,0 +1,20 @@
     3.4 +cat << _EOT_
     3.5 +
     3.6 +<center>
     3.7 +<i>$(eval_ngettext "\$PKGS package" "\$PKGS packages" $PKGS)
     3.8 +$(eval_ngettext "and \$FILES file in \$SLITAZ_VERSION database" "and \$FILES files in \$SLITAZ_VERSION database" $FILES)</i>
     3.9 +</center>
    3.10 +
    3.11 +<!-- End of content -->
    3.12 +</div>
    3.13 +
    3.14 +<!-- Footer -->
    3.15 +<div id="footer">$(gettext "SliTaz Packages")</div>
    3.16 +
    3.17 +<script type="text/javascript">
    3.18 +	var q=document.getElementById('query');
    3.19 +	var v=q.value; q.value=''; q.focus(); q.value=v;
    3.20 +</script>
    3.21 +</body>
    3.22 +</html>
    3.23 +_EOT_
     4.1 --- a/pkgs/pkgs.css	Fri Apr 13 01:53:02 2012 +0200
     4.2 +++ b/pkgs/pkgs.css	Mon Apr 16 11:34:57 2012 +0300
     4.3 @@ -1,6 +1,19 @@
     4.4 +
     4.5 +#s_form {
     4.6 +	margin: auto;
     4.7 +	text-align: center;
     4.8 +	padding: 20px;
     4.9 +}
    4.10 +
    4.11 +/* Be compatible with old FF and Webkit version. */
    4.12 +input[type="submit"] {
    4.13 +	-webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
    4.14 +	-moz-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
    4.15 +	box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
    4.16 +}
    4.17  
    4.18  #header {
    4.19 -	border-bottom: 8px solid #d66018;
    4.20 +	border-bottom: 8px solid #D66018;
    4.21  }
    4.22  
    4.23  #header h1 {
    4.24 @@ -11,22 +24,74 @@
    4.25  	padding: 12px 5px 0; 
    4.26  }
    4.27  
    4.28 -#network a {
    4.29 -	padding: 0 4px;
    4.30 +table, input, textarea, select {
    4.31 +	-moz-border-radius: 4px;
    4.32 +	-webkit-border-radius: 4px;
    4.33 +	border-radius: 4px;
    4.34  }
    4.35  
    4.36 -#network a:hover { color: #cfcfcf; }
    4.37 -
    4.38  input[type=text] {
    4.39 -	/*width: inherit;*/
    4.40  	width: 40%;
    4.41  }
    4.42  
    4.43 -#content {
    4.44 -	margin: 6px 40px 0px 0px;
    4.45 +#footer {
    4.46 +	background-color: #FFF;
    4.47  }
    4.48  
    4.49 -#footer {
    4.50 -	text-align: center;
    4.51 -	background-color: #fff;
    4.52 +select:focus, select:hover, input:focus, input:hover {
    4.53 +	color: #000;
    4.54 +	outline: 0 none;
    4.55 +	-webkit-box-shadow: 0 0 4px rgba(0,0,0,0.3);
    4.56 +	-moz-box-shadow: 0 0 4px rgba(0,0,0,0.3);
    4.57  }
    4.58 +
    4.59 +input, select {
    4.60 +	-webkit-transition: all 0.3s ease-in-out;
    4.61 +	-moz-transition: all 0.3s ease-in-out;
    4.62 +	-o-transition: all 0.3s ease-in-out;
    4.63 +	-ms-transition: all 0.3s ease-in-out;
    4.64 +	transition: all 0.3s ease-in-out;
    4.65 +}
    4.66 +
    4.67 +input[type="submit"], input[type="text"], textarea {
    4.68 +	color: #444;
    4.69 +	border: 1px solid #CCC;
    4.70 +	padding: 4px;
    4.71 +	margin: 4px 0px;
    4.72 +	font-size: 14px;
    4.73 +	line-height: 1.2em;
    4.74 +	background-image: -webkit-linear-gradient(#FAFAFA, #F4F4F4 40%, #E5E5E5);
    4.75 +	background-image: -moz-linear-gradient(#FAFAFA, #F4F4F4 40%, #E5E5E5);
    4.76 +	-webkit-appearance: none;
    4.77 +	-webkit-padding-end: 6px;
    4.78 +	-webkit-padding-start: 6px;
    4.79 +}
    4.80 +
    4.81 +input[type="submit"]:hover {
    4.82 +	color: #000;
    4.83 +}
    4.84 +
    4.85 +input[type="text"], textarea { background: #fefefe; border: 1px solid #ccc; }
    4.86 +/*input[type="file"] { border: 2px solid #ddd; }*/
    4.87 +/*input[type="checkbox"] { background: #fefefe; }*/
    4.88 +
    4.89 +input[type=submit], select { cursor: pointer; }
    4.90 +
    4.91 +select {
    4.92 +	background-image: url(style/images/down.png),
    4.93 +		-webkit-linear-gradient(#FAFAFA, #F4F4F4 40%, #E5E5E5);
    4.94 +	background-position: center right;
    4.95 +	background-repeat: no-repeat;
    4.96 +
    4.97 +	color: #444444;
    4.98 +	border: 1px solid #cccccc;
    4.99 +	padding: 4px 32px 4px 4px;
   4.100 +	margin: 4px 0px;
   4.101 +	font-size: 14px;
   4.102 +	line-height: 1.2em;
   4.103 +	-webkit-appearance: none;
   4.104 +}
   4.105 +
   4.106 +poption {
   4.107 +	padding: 4px 32px 4px 4px;
   4.108 +}
     5.1 --- a/pkgs/po/de.po	Fri Apr 13 01:53:02 2012 +0200
     5.2 +++ b/pkgs/po/de.po	Mon Apr 16 11:34:57 2012 +0300
     5.3 @@ -7,7 +7,7 @@
     5.4  msgstr ""
     5.5  "Project-Id-Version: Tazpkg Web\n"
     5.6  "Report-Msgid-Bugs-To: \n"
     5.7 -"POT-Creation-Date: 2012-04-11 20:27+0300\n"
     5.8 +"POT-Creation-Date: 2012-04-14 03:36+0300\n"
     5.9  "PO-Revision-Date: \n"
    5.10  "Last-Translator: Aleksej Bobylev <al.bobylev@gmail.com>\n"
    5.11  "Language-Team: \n"
    5.12 @@ -22,147 +22,147 @@
    5.13  "X-Poedit-SearchPath-0: .\n"
    5.14  "X-Poedit-SearchPath-1: lib\n"
    5.15  
    5.16 -#: search.sh:147
    5.17 +#: search.sh:142
    5.18  msgid "Package"
    5.19  msgstr "Paket"
    5.20  
    5.21 -#: search.sh:148
    5.22 +#: search.sh:143
    5.23  msgid "Description"
    5.24  msgstr "Beschreibung"
    5.25  
    5.26 -#: search.sh:149
    5.27 +#: search.sh:144
    5.28  msgid "Tags"
    5.29  msgstr ""
    5.30  
    5.31 -#: search.sh:150
    5.32 +#: search.sh:145
    5.33  msgid "Receipt"
    5.34  msgstr ""
    5.35  
    5.36 -#: search.sh:151
    5.37 +#: search.sh:146
    5.38  msgid "Depends"
    5.39  msgstr "Abhängigkeiten"
    5.40  
    5.41 -#: search.sh:152
    5.42 +#: search.sh:147
    5.43  msgid "Build depends"
    5.44  msgstr ""
    5.45  
    5.46 -#: search.sh:153
    5.47 +#: search.sh:148
    5.48  msgid "File"
    5.49  msgstr "Datei"
    5.50  
    5.51 -#: search.sh:154
    5.52 +#: search.sh:149
    5.53  msgid "File list"
    5.54  msgstr "Datei liste"
    5.55  
    5.56 -#: search.sh:155
    5.57 +#: search.sh:150
    5.58  msgid "common files"
    5.59  msgstr ""
    5.60  
    5.61 -#: search.sh:159
    5.62 +#: search.sh:154
    5.63  msgid "cooking"
    5.64  msgstr "Cooking"
    5.65  
    5.66 -#: search.sh:164
    5.67 +#: search.sh:159
    5.68  msgid "tiny"
    5.69  msgstr ""
    5.70  
    5.71 -#: search.sh:165
    5.72 +#: search.sh:160
    5.73  msgid "undigest"
    5.74  msgstr ""
    5.75  
    5.76 -#: search.sh:167
    5.77 +#: search.sh:162
    5.78  msgid "Search"
    5.79  msgstr "Suche"
    5.80  
    5.81 -#: search.sh:185
    5.82 +#: search.sh:180
    5.83  #, sh-format
    5.84  msgid "$PKGS package"
    5.85  msgid_plural "$PKGS packages"
    5.86  msgstr[0] ""
    5.87  msgstr[1] ""
    5.88  
    5.89 -#: search.sh:186
    5.90 +#: search.sh:181
    5.91  #, sh-format
    5.92  msgid "and $FILES file in $SLITAZ_VERSION database"
    5.93  msgid_plural "and $FILES files in $SLITAZ_VERSION database"
    5.94  msgstr[0] ""
    5.95  msgstr[1] ""
    5.96  
    5.97 -#: search.sh:193
    5.98 -#: lib/header.sh:29
    5.99 +#: search.sh:188 lib/header.sh:29
   5.100  msgid "SliTaz Packages"
   5.101  msgstr ""
   5.102  
   5.103 -#: search.sh:301
   5.104 +#: search.sh:296
   5.105  msgid ""
   5.106  "\tglibc-base and gcc-lib-base are implicit dependencies,\n"
   5.107  "\t<b>every</b> package is supposed to depend on them."
   5.108  msgstr ""
   5.109  
   5.110 -#: search.sh:349
   5.111 +#: search.sh:344
   5.112  #, sh-format
   5.113  msgid "No package $SEARCH"
   5.114  msgstr "Kein Paket für $SEARCH"
   5.115  
   5.116 -#: search.sh:392
   5.117 -#: search.sh:404
   5.118 +#: search.sh:397
   5.119  msgid "Search for packages"
   5.120  msgstr ""
   5.121  
   5.122 -#: search.sh:411
   5.123 +#: search.sh:405
   5.124  msgid "Depends loops"
   5.125  msgstr "Abhängigkeiten loops"
   5.126  
   5.127 -#: search.sh:426
   5.128 +#: search.sh:420
   5.129  #, sh-format
   5.130  msgid "Dependency tree for: $SEARCH"
   5.131  msgstr "Abhängigkeiten von: $SEARCH"
   5.132  
   5.133 -#: search.sh:437
   5.134 +#: search.sh:431
   5.135  #, sh-format
   5.136  msgid "Dependency tree for: $SEARCH (SUGGESTED)"
   5.137  msgstr "Abhängigkeiten von: $SEARCH (SUGGESTED)"
   5.138  
   5.139 -#: search.sh:446
   5.140 +#: search.sh:440
   5.141  #, sh-format
   5.142  msgid "Reverse dependency tree for: $SEARCH"
   5.143  msgstr "Abhängigkeit für: $SEARCH"
   5.144  
   5.145 -#: search.sh:459
   5.146 +#: search.sh:455
   5.147  msgid "Build depends loops"
   5.148  msgstr ""
   5.149  
   5.150 -#: search.sh:475
   5.151 +#: search.sh:471
   5.152  #, sh-format
   5.153  msgid "$SEARCH needs these packages to be built"
   5.154  msgstr ""
   5.155  
   5.156 -#: search.sh:483
   5.157 +#: search.sh:479
   5.158  #, sh-format
   5.159  msgid "Packages who need $SEARCH to be built"
   5.160  msgstr ""
   5.161  
   5.162 -#: search.sh:496
   5.163 +#: search.sh:494
   5.164  #, sh-format
   5.165  msgid "These packages may overload files of $SEARCH"
   5.166  msgstr ""
   5.167  
   5.168 -#: search.sh:519
   5.169 -#: search.sh:542
   5.170 -#: search.sh:559
   5.171 -#: search.sh:567
   5.172 -#: search.sh:580
   5.173 -#: search.sh:592
   5.174 -#: search.sh:604
   5.175 +#: search.sh:519 search.sh:548 search.sh:573 search.sh:581 search.sh:596
   5.176 +#: search.sh:610 search.sh:624
   5.177  #, sh-format
   5.178  msgid "Result for: $SEARCH"
   5.179  msgstr "Resultate für : $SEARCH"
   5.180  
   5.181 -#: search.sh:610
   5.182 +#: search.sh:559
   5.183 +#, sh-format
   5.184 +msgid "$filenb file"
   5.185 +msgid_plural "$filenb files"
   5.186 +msgstr[0] ""
   5.187 +msgstr[1] ""
   5.188 +
   5.189 +#: search.sh:630
   5.190  msgid "description"
   5.191  msgstr ""
   5.192  
   5.193 -#: search.sh:622
   5.194 +#: search.sh:642
   5.195  #, sh-format
   5.196  msgid "Result for: $SEARCH (package providing $vpkg)"
   5.197  msgstr "Resultate für : $SEARCH (package providing $vpkg)"
   5.198 @@ -203,4 +203,3 @@
   5.199  #: lib/header.sh:27
   5.200  msgid "Hg"
   5.201  msgstr ""
   5.202 -
     6.1 --- a/pkgs/po/fr.po	Fri Apr 13 01:53:02 2012 +0200
     6.2 +++ b/pkgs/po/fr.po	Mon Apr 16 11:34:57 2012 +0300
     6.3 @@ -7,7 +7,7 @@
     6.4  msgstr ""
     6.5  "Project-Id-Version: Tazpkg Web\n"
     6.6  "Report-Msgid-Bugs-To: \n"
     6.7 -"POT-Creation-Date: 2012-04-11 20:27+0300\n"
     6.8 +"POT-Creation-Date: 2012-04-14 03:36+0300\n"
     6.9  "PO-Revision-Date: \n"
    6.10  "Last-Translator: Christophe Lincoln <pankso@slitaz.org>\n"
    6.11  "Language-Team: \n"
    6.12 @@ -22,147 +22,147 @@
    6.13  "X-Poedit-SearchPath-0: .\n"
    6.14  "X-Poedit-SearchPath-1: lib\n"
    6.15  
    6.16 -#: search.sh:147
    6.17 +#: search.sh:142
    6.18  msgid "Package"
    6.19  msgstr "Paquet"
    6.20  
    6.21 -#: search.sh:148
    6.22 +#: search.sh:143
    6.23  msgid "Description"
    6.24  msgstr "Description"
    6.25  
    6.26 -#: search.sh:149
    6.27 +#: search.sh:144
    6.28  msgid "Tags"
    6.29  msgstr "Tags"
    6.30  
    6.31 -#: search.sh:150
    6.32 +#: search.sh:145
    6.33  msgid "Receipt"
    6.34  msgstr "Recette"
    6.35  
    6.36 -#: search.sh:151
    6.37 +#: search.sh:146
    6.38  msgid "Depends"
    6.39  msgstr "Dépendances"
    6.40  
    6.41 -#: search.sh:152
    6.42 +#: search.sh:147
    6.43  msgid "Build depends"
    6.44  msgstr "Fabrication"
    6.45  
    6.46 -#: search.sh:153
    6.47 +#: search.sh:148
    6.48  msgid "File"
    6.49  msgstr "Fichier"
    6.50  
    6.51 -#: search.sh:154
    6.52 +#: search.sh:149
    6.53  msgid "File list"
    6.54  msgstr "Liste des fichiers"
    6.55  
    6.56 -#: search.sh:155
    6.57 +#: search.sh:150
    6.58  msgid "common files"
    6.59  msgstr "Fichiers communs"
    6.60  
    6.61 -#: search.sh:159
    6.62 +#: search.sh:154
    6.63  msgid "cooking"
    6.64  msgstr ""
    6.65  
    6.66 -#: search.sh:164
    6.67 +#: search.sh:159
    6.68  msgid "tiny"
    6.69  msgstr ""
    6.70  
    6.71 -#: search.sh:165
    6.72 +#: search.sh:160
    6.73  msgid "undigest"
    6.74  msgstr ""
    6.75  
    6.76 -#: search.sh:167
    6.77 +#: search.sh:162
    6.78  msgid "Search"
    6.79  msgstr "Recherche"
    6.80  
    6.81 -#: search.sh:185
    6.82 +#: search.sh:180
    6.83  #, sh-format
    6.84  msgid "$PKGS package"
    6.85  msgid_plural "$PKGS packages"
    6.86  msgstr[0] ""
    6.87  msgstr[1] ""
    6.88  
    6.89 -#: search.sh:186
    6.90 +#: search.sh:181
    6.91  #, sh-format
    6.92  msgid "and $FILES file in $SLITAZ_VERSION database"
    6.93  msgid_plural "and $FILES files in $SLITAZ_VERSION database"
    6.94  msgstr[0] ""
    6.95  msgstr[1] ""
    6.96  
    6.97 -#: search.sh:193
    6.98 -#: lib/header.sh:29
    6.99 +#: search.sh:188 lib/header.sh:29
   6.100  msgid "SliTaz Packages"
   6.101  msgstr "SliTaz Paquets"
   6.102  
   6.103 -#: search.sh:301
   6.104 +#: search.sh:296
   6.105  msgid ""
   6.106  "\tglibc-base and gcc-lib-base are implicit dependencies,\n"
   6.107  "\t<b>every</b> package is supposed to depend on them."
   6.108  msgstr ""
   6.109  
   6.110 -#: search.sh:349
   6.111 +#: search.sh:344
   6.112  #, sh-format
   6.113  msgid "No package $SEARCH"
   6.114  msgstr "Paquet $SEARCH introuvable"
   6.115  
   6.116 -#: search.sh:392
   6.117 -#: search.sh:404
   6.118 +#: search.sh:397
   6.119  msgid "Search for packages"
   6.120  msgstr "Recherche de paquets"
   6.121  
   6.122 -#: search.sh:411
   6.123 +#: search.sh:405
   6.124  msgid "Depends loops"
   6.125  msgstr "Dépendances sans fin"
   6.126  
   6.127 -#: search.sh:426
   6.128 +#: search.sh:420
   6.129  #, sh-format
   6.130  msgid "Dependency tree for: $SEARCH"
   6.131  msgstr "Arbre des dépendances de $SEARCH"
   6.132  
   6.133 -#: search.sh:437
   6.134 +#: search.sh:431
   6.135  #, sh-format
   6.136  msgid "Dependency tree for: $SEARCH (SUGGESTED)"
   6.137  msgstr "Arbre des dépendances de $SEARCH (SUGGESTED)"
   6.138  
   6.139 -#: search.sh:446
   6.140 +#: search.sh:440
   6.141  #, sh-format
   6.142  msgid "Reverse dependency tree for: $SEARCH"
   6.143  msgstr "Arbre inversé des dépendances de $SEARCH"
   6.144  
   6.145 -#: search.sh:459
   6.146 +#: search.sh:455
   6.147  msgid "Build depends loops"
   6.148  msgstr "Fabrication sans fin"
   6.149  
   6.150 -#: search.sh:475
   6.151 +#: search.sh:471
   6.152  #, sh-format
   6.153  msgid "$SEARCH needs these packages to be built"
   6.154  msgstr "$SEARCH a besion de ces paquets pour être fabriqué"
   6.155  
   6.156 -#: search.sh:483
   6.157 +#: search.sh:479
   6.158  #, sh-format
   6.159  msgid "Packages who need $SEARCH to be built"
   6.160  msgstr "Paquets ayant besion de $SEARCH pour être fabriqués"
   6.161  
   6.162 -#: search.sh:496
   6.163 +#: search.sh:494
   6.164  #, sh-format
   6.165  msgid "These packages may overload files of $SEARCH"
   6.166  msgstr "Paquets pouvant écraser des fichiers de $SEARCH"
   6.167  
   6.168 -#: search.sh:519
   6.169 -#: search.sh:542
   6.170 -#: search.sh:559
   6.171 -#: search.sh:567
   6.172 -#: search.sh:580
   6.173 -#: search.sh:592
   6.174 -#: search.sh:604
   6.175 +#: search.sh:519 search.sh:548 search.sh:573 search.sh:581 search.sh:596
   6.176 +#: search.sh:610 search.sh:624
   6.177  #, sh-format
   6.178  msgid "Result for: $SEARCH"
   6.179  msgstr "Recherche de : $SEARCH"
   6.180  
   6.181 -#: search.sh:610
   6.182 +#: search.sh:559
   6.183 +#, sh-format
   6.184 +msgid "$filenb file"
   6.185 +msgid_plural "$filenb files"
   6.186 +msgstr[0] ""
   6.187 +msgstr[1] ""
   6.188 +
   6.189 +#: search.sh:630
   6.190  msgid "description"
   6.191  msgstr ""
   6.192  
   6.193 -#: search.sh:622
   6.194 +#: search.sh:642
   6.195  #, sh-format
   6.196  msgid "Result for: $SEARCH (package providing $vpkg)"
   6.197  msgstr "Recherche de : $SEARCH (package providing $vpkg)"
   6.198 @@ -203,4 +203,3 @@
   6.199  #: lib/header.sh:27
   6.200  msgid "Hg"
   6.201  msgstr ""
   6.202 -
     7.1 --- a/pkgs/po/pt_BR.po	Fri Apr 13 01:53:02 2012 +0200
     7.2 +++ b/pkgs/po/pt_BR.po	Mon Apr 16 11:34:57 2012 +0300
     7.3 @@ -7,7 +7,7 @@
     7.4  msgstr ""
     7.5  "Project-Id-Version: Tazpkg Web\n"
     7.6  "Report-Msgid-Bugs-To: \n"
     7.7 -"POT-Creation-Date: 2012-04-11 20:27+0300\n"
     7.8 +"POT-Creation-Date: 2012-04-14 03:36+0300\n"
     7.9  "PO-Revision-Date: \n"
    7.10  "Last-Translator: Aleksej Bobylev <al.bobylev@gmail.com>\n"
    7.11  "Language-Team: \n"
    7.12 @@ -23,147 +23,147 @@
    7.13  "X-Poedit-SearchPath-0: .\n"
    7.14  "X-Poedit-SearchPath-1: lib\n"
    7.15  
    7.16 -#: search.sh:147
    7.17 +#: search.sh:142
    7.18  msgid "Package"
    7.19  msgstr "Pacote"
    7.20  
    7.21 -#: search.sh:148
    7.22 +#: search.sh:143
    7.23  msgid "Description"
    7.24  msgstr "Descrição"
    7.25  
    7.26 -#: search.sh:149
    7.27 +#: search.sh:144
    7.28  msgid "Tags"
    7.29  msgstr ""
    7.30  
    7.31 -#: search.sh:150
    7.32 +#: search.sh:145
    7.33  msgid "Receipt"
    7.34  msgstr ""
    7.35  
    7.36 -#: search.sh:151
    7.37 +#: search.sh:146
    7.38  msgid "Depends"
    7.39  msgstr "Dependências"
    7.40  
    7.41 -#: search.sh:152
    7.42 +#: search.sh:147
    7.43  msgid "Build depends"
    7.44  msgstr ""
    7.45  
    7.46 -#: search.sh:153
    7.47 +#: search.sh:148
    7.48  msgid "File"
    7.49  msgstr "Arquivo"
    7.50  
    7.51 -#: search.sh:154
    7.52 +#: search.sh:149
    7.53  msgid "File list"
    7.54  msgstr "Arquivo lista"
    7.55  
    7.56 -#: search.sh:155
    7.57 +#: search.sh:150
    7.58  msgid "common files"
    7.59  msgstr ""
    7.60  
    7.61 -#: search.sh:159
    7.62 +#: search.sh:154
    7.63  msgid "cooking"
    7.64  msgstr ""
    7.65  
    7.66 -#: search.sh:164
    7.67 +#: search.sh:159
    7.68  msgid "tiny"
    7.69  msgstr ""
    7.70  
    7.71 -#: search.sh:165
    7.72 +#: search.sh:160
    7.73  msgid "undigest"
    7.74  msgstr ""
    7.75  
    7.76 -#: search.sh:167
    7.77 +#: search.sh:162
    7.78  msgid "Search"
    7.79  msgstr "Buscar"
    7.80  
    7.81 -#: search.sh:185
    7.82 +#: search.sh:180
    7.83  #, sh-format
    7.84  msgid "$PKGS package"
    7.85  msgid_plural "$PKGS packages"
    7.86  msgstr[0] ""
    7.87  msgstr[1] ""
    7.88  
    7.89 -#: search.sh:186
    7.90 +#: search.sh:181
    7.91  #, sh-format
    7.92  msgid "and $FILES file in $SLITAZ_VERSION database"
    7.93  msgid_plural "and $FILES files in $SLITAZ_VERSION database"
    7.94  msgstr[0] ""
    7.95  msgstr[1] ""
    7.96  
    7.97 -#: search.sh:193
    7.98 -#: lib/header.sh:29
    7.99 +#: search.sh:188 lib/header.sh:29
   7.100  msgid "SliTaz Packages"
   7.101  msgstr "SliTaz Pacotes"
   7.102  
   7.103 -#: search.sh:301
   7.104 +#: search.sh:296
   7.105  msgid ""
   7.106  "\tglibc-base and gcc-lib-base are implicit dependencies,\n"
   7.107  "\t<b>every</b> package is supposed to depend on them."
   7.108  msgstr ""
   7.109  
   7.110 -#: search.sh:349
   7.111 +#: search.sh:344
   7.112  #, sh-format
   7.113  msgid "No package $SEARCH"
   7.114  msgstr "Sem resultado: $SEARCH"
   7.115  
   7.116 -#: search.sh:392
   7.117 -#: search.sh:404
   7.118 +#: search.sh:397
   7.119  msgid "Search for packages"
   7.120  msgstr ""
   7.121  
   7.122 -#: search.sh:411
   7.123 +#: search.sh:405
   7.124  msgid "Depends loops"
   7.125  msgstr "Dependências loops"
   7.126  
   7.127 -#: search.sh:426
   7.128 +#: search.sh:420
   7.129  #, sh-format
   7.130  msgid "Dependency tree for: $SEARCH"
   7.131  msgstr "Árvore de dependências para: $SEARCH"
   7.132  
   7.133 -#: search.sh:437
   7.134 +#: search.sh:431
   7.135  #, sh-format
   7.136  msgid "Dependency tree for: $SEARCH (SUGGESTED)"
   7.137  msgstr "Árvore de dependências para: $SEARCH (SUGGESTED)"
   7.138  
   7.139 -#: search.sh:446
   7.140 +#: search.sh:440
   7.141  #, sh-format
   7.142  msgid "Reverse dependency tree for: $SEARCH"
   7.143  msgstr "Árvore de dependências reversa para: $SEARCH"
   7.144  
   7.145 -#: search.sh:459
   7.146 +#: search.sh:455
   7.147  msgid "Build depends loops"
   7.148  msgstr ""
   7.149  
   7.150 -#: search.sh:475
   7.151 +#: search.sh:471
   7.152  #, sh-format
   7.153  msgid "$SEARCH needs these packages to be built"
   7.154  msgstr ""
   7.155  
   7.156 -#: search.sh:483
   7.157 +#: search.sh:479
   7.158  #, sh-format
   7.159  msgid "Packages who need $SEARCH to be built"
   7.160  msgstr ""
   7.161  
   7.162 -#: search.sh:496
   7.163 +#: search.sh:494
   7.164  #, sh-format
   7.165  msgid "These packages may overload files of $SEARCH"
   7.166  msgstr ""
   7.167  
   7.168 -#: search.sh:519
   7.169 -#: search.sh:542
   7.170 -#: search.sh:559
   7.171 -#: search.sh:567
   7.172 -#: search.sh:580
   7.173 -#: search.sh:592
   7.174 -#: search.sh:604
   7.175 +#: search.sh:519 search.sh:548 search.sh:573 search.sh:581 search.sh:596
   7.176 +#: search.sh:610 search.sh:624
   7.177  #, sh-format
   7.178  msgid "Result for: $SEARCH"
   7.179  msgstr "Resultado para : $SEARCH"
   7.180  
   7.181 -#: search.sh:610
   7.182 +#: search.sh:559
   7.183 +#, sh-format
   7.184 +msgid "$filenb file"
   7.185 +msgid_plural "$filenb files"
   7.186 +msgstr[0] ""
   7.187 +msgstr[1] ""
   7.188 +
   7.189 +#: search.sh:630
   7.190  msgid "description"
   7.191  msgstr ""
   7.192  
   7.193 -#: search.sh:622
   7.194 +#: search.sh:642
   7.195  #, sh-format
   7.196  msgid "Result for: $SEARCH (package providing $vpkg)"
   7.197  msgstr "Resultado para : $SEARCH (package providing $vpkg)"
   7.198 @@ -204,4 +204,3 @@
   7.199  #: lib/header.sh:27
   7.200  msgid "Hg"
   7.201  msgstr ""
   7.202 -
     8.1 --- a/pkgs/po/ru.po	Fri Apr 13 01:53:02 2012 +0200
     8.2 +++ b/pkgs/po/ru.po	Mon Apr 16 11:34:57 2012 +0300
     8.3 @@ -7,8 +7,8 @@
     8.4  msgstr ""
     8.5  "Project-Id-Version: Tazpkg Web\n"
     8.6  "Report-Msgid-Bugs-To: \n"
     8.7 -"POT-Creation-Date: 2012-04-11 20:27+0300\n"
     8.8 -"PO-Revision-Date: 2012-04-11 20:36+0300\n"
     8.9 +"POT-Creation-Date: 2012-04-14 03:36+0300\n"
    8.10 +"PO-Revision-Date: 2012-04-14 03:37+0300\n"
    8.11  "Last-Translator: Aleksej Bobylev <al.bobylev@gmail.com>\n"
    8.12  "Language-Team: \n"
    8.13  "Language: Russian\n"
    8.14 @@ -22,59 +22,59 @@
    8.15  "X-Poedit-SourceCharset: utf-8\n"
    8.16  "X-Poedit-SearchPath-0: .\n"
    8.17  
    8.18 -#: search.sh:147
    8.19 +#: search.sh:142
    8.20  msgid "Package"
    8.21  msgstr "пакет"
    8.22  
    8.23 -#: search.sh:148
    8.24 +#: search.sh:143
    8.25  msgid "Description"
    8.26  msgstr "описание"
    8.27  
    8.28 -#: search.sh:149
    8.29 +#: search.sh:144
    8.30  msgid "Tags"
    8.31  msgstr "теги"
    8.32  
    8.33 -#: search.sh:150
    8.34 +#: search.sh:145
    8.35  msgid "Receipt"
    8.36  msgstr "рецепт"
    8.37  
    8.38 -#: search.sh:151
    8.39 +#: search.sh:146
    8.40  msgid "Depends"
    8.41  msgstr "зависимости"
    8.42  
    8.43 -#: search.sh:152
    8.44 +#: search.sh:147
    8.45  msgid "Build depends"
    8.46  msgstr "зависимости сборки"
    8.47  
    8.48 -#: search.sh:153
    8.49 +#: search.sh:148
    8.50  msgid "File"
    8.51  msgstr "файл"
    8.52  
    8.53 -#: search.sh:154
    8.54 +#: search.sh:149
    8.55  msgid "File list"
    8.56  msgstr "список файлов"
    8.57  
    8.58 -#: search.sh:155
    8.59 +#: search.sh:150
    8.60  msgid "common files"
    8.61  msgstr "общие файлы"
    8.62  
    8.63 -#: search.sh:159
    8.64 +#: search.sh:154
    8.65  msgid "cooking"
    8.66  msgstr "Cooking"
    8.67  
    8.68 -#: search.sh:164
    8.69 +#: search.sh:159
    8.70  msgid "tiny"
    8.71  msgstr "Tiny"
    8.72  
    8.73 -#: search.sh:165
    8.74 +#: search.sh:160
    8.75  msgid "undigest"
    8.76  msgstr "неофициальный"
    8.77  
    8.78 -#: search.sh:167
    8.79 +#: search.sh:162
    8.80  msgid "Search"
    8.81  msgstr "Искать"
    8.82  
    8.83 -#: search.sh:185
    8.84 +#: search.sh:180
    8.85  #, sh-format
    8.86  msgid "$PKGS package"
    8.87  msgid_plural "$PKGS packages"
    8.88 @@ -82,7 +82,7 @@
    8.89  msgstr[1] "$PKGS пакета"
    8.90  msgstr[2] "$PKGS пакетов"
    8.91  
    8.92 -#: search.sh:186
    8.93 +#: search.sh:181
    8.94  #, sh-format
    8.95  msgid "and $FILES file in $SLITAZ_VERSION database"
    8.96  msgid_plural "and $FILES files in $SLITAZ_VERSION database"
    8.97 @@ -90,12 +90,12 @@
    8.98  msgstr[1] "и $FILES файла в базе данных $SLITAZ_VERSION"
    8.99  msgstr[2] "и $FILES файлов в базе данных $SLITAZ_VERSION"
   8.100  
   8.101 -#: search.sh:193
   8.102 +#: search.sh:188
   8.103  #: lib/header.sh:29
   8.104  msgid "SliTaz Packages"
   8.105  msgstr "Пакеты SliTaz"
   8.106  
   8.107 -#: search.sh:301
   8.108 +#: search.sh:296
   8.109  msgid ""
   8.110  "\tglibc-base and gcc-lib-base are implicit dependencies,\n"
   8.111  "\t<b>every</b> package is supposed to depend on them."
   8.112 @@ -103,70 +103,77 @@
   8.113  "\tglibc-base и gcc-lib-base являются неявными зависимостями\n"
   8.114  "\t<b>любого</b> пакета."
   8.115  
   8.116 -#: search.sh:349
   8.117 +#: search.sh:344
   8.118  #, sh-format
   8.119  msgid "No package $SEARCH"
   8.120  msgstr "Пакет $SEARCH отсутствует"
   8.121  
   8.122 -#: search.sh:392
   8.123 -#: search.sh:404
   8.124 +#: search.sh:397
   8.125  msgid "Search for packages"
   8.126  msgstr "Поиск по пакетам"
   8.127  
   8.128 -#: search.sh:411
   8.129 +#: search.sh:405
   8.130  msgid "Depends loops"
   8.131  msgstr "Циклические зависимости"
   8.132  
   8.133 -#: search.sh:426
   8.134 +#: search.sh:420
   8.135  #, sh-format
   8.136  msgid "Dependency tree for: $SEARCH"
   8.137  msgstr "Дерево зависимостей для $SEARCH"
   8.138  
   8.139 -#: search.sh:437
   8.140 +#: search.sh:431
   8.141  #, sh-format
   8.142  msgid "Dependency tree for: $SEARCH (SUGGESTED)"
   8.143  msgstr "Дерево необязательных зависимостей для $SEARCH"
   8.144  
   8.145 -#: search.sh:446
   8.146 +#: search.sh:440
   8.147  #, sh-format
   8.148  msgid "Reverse dependency tree for: $SEARCH"
   8.149  msgstr "Обратное дерево зависимостей для $SEARCH"
   8.150  
   8.151 -#: search.sh:459
   8.152 +#: search.sh:455
   8.153  msgid "Build depends loops"
   8.154  msgstr "Циклические зависимости сборки"
   8.155  
   8.156 -#: search.sh:475
   8.157 +#: search.sh:471
   8.158  #, sh-format
   8.159  msgid "$SEARCH needs these packages to be built"
   8.160  msgstr "Следующие пакеты нужны, чтобы собрать $SEARCH"
   8.161  
   8.162 -#: search.sh:483
   8.163 +#: search.sh:479
   8.164  #, sh-format
   8.165  msgid "Packages who need $SEARCH to be built"
   8.166  msgstr "$SEARCH нужен, чтобы собрать следующие пакеты"
   8.167  
   8.168 -#: search.sh:496
   8.169 +#: search.sh:494
   8.170  #, sh-format
   8.171  msgid "These packages may overload files of $SEARCH"
   8.172  msgstr "Следующие пакеты могут заменить файлы $SEARCH"
   8.173  
   8.174  #: search.sh:519
   8.175 -#: search.sh:542
   8.176 -#: search.sh:559
   8.177 -#: search.sh:567
   8.178 -#: search.sh:580
   8.179 -#: search.sh:592
   8.180 -#: search.sh:604
   8.181 +#: search.sh:548
   8.182 +#: search.sh:573
   8.183 +#: search.sh:581
   8.184 +#: search.sh:596
   8.185 +#: search.sh:610
   8.186 +#: search.sh:624
   8.187  #, sh-format
   8.188  msgid "Result for: $SEARCH"
   8.189  msgstr "Результаты поиска $SEARCH"
   8.190  
   8.191 -#: search.sh:610
   8.192 +#: search.sh:559
   8.193 +#, sh-format
   8.194 +msgid "$filenb file"
   8.195 +msgid_plural "$filenb files"
   8.196 +msgstr[0] "$filenb файл"
   8.197 +msgstr[1] "$filenb файла"
   8.198 +msgstr[2] "$filenb файлов"
   8.199 +
   8.200 +#: search.sh:630
   8.201  msgid "description"
   8.202  msgstr "описание"
   8.203  
   8.204 -#: search.sh:622
   8.205 +#: search.sh:642
   8.206  #, sh-format
   8.207  msgid "Result for: $SEARCH (package providing $vpkg)"
   8.208  msgstr "Результаты поиска $SEARCH (пакеты, предлагающие $vpkg)"
     9.1 --- a/pkgs/po/tazpkg-web.pot	Fri Apr 13 01:53:02 2012 +0200
     9.2 +++ b/pkgs/po/tazpkg-web.pot	Mon Apr 16 11:34:57 2012 +0300
     9.3 @@ -8,7 +8,7 @@
     9.4  msgstr ""
     9.5  "Project-Id-Version: TazPkg Web\n"
     9.6  "Report-Msgid-Bugs-To: \n"
     9.7 -"POT-Creation-Date: 2012-04-13 01:11+0200\n"
     9.8 +"POT-Creation-Date: 2012-04-14 03:36+0300\n"
     9.9  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    9.10  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
    9.11  "Language-Team: LANGUAGE <LL@li.org>\n"
    9.12 @@ -18,140 +18,147 @@
    9.13  "Content-Transfer-Encoding: 8bit\n"
    9.14  "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
    9.15  
    9.16 -#: search.sh:148
    9.17 +#: search.sh:142
    9.18  msgid "Package"
    9.19  msgstr ""
    9.20  
    9.21 -#: search.sh:149
    9.22 +#: search.sh:143
    9.23  msgid "Description"
    9.24  msgstr ""
    9.25  
    9.26 -#: search.sh:150
    9.27 +#: search.sh:144
    9.28  msgid "Tags"
    9.29  msgstr ""
    9.30  
    9.31 -#: search.sh:151
    9.32 +#: search.sh:145
    9.33  msgid "Receipt"
    9.34  msgstr ""
    9.35  
    9.36 -#: search.sh:152
    9.37 +#: search.sh:146
    9.38  msgid "Depends"
    9.39  msgstr ""
    9.40  
    9.41 -#: search.sh:153
    9.42 +#: search.sh:147
    9.43  msgid "Build depends"
    9.44  msgstr ""
    9.45  
    9.46 -#: search.sh:154
    9.47 +#: search.sh:148
    9.48  msgid "File"
    9.49  msgstr ""
    9.50  
    9.51 -#: search.sh:155
    9.52 +#: search.sh:149
    9.53  msgid "File list"
    9.54  msgstr ""
    9.55  
    9.56 -#: search.sh:156
    9.57 +#: search.sh:150
    9.58  msgid "common files"
    9.59  msgstr ""
    9.60  
    9.61 -#: search.sh:160
    9.62 +#: search.sh:154
    9.63  msgid "cooking"
    9.64  msgstr ""
    9.65  
    9.66 -#: search.sh:165
    9.67 +#: search.sh:159
    9.68  msgid "tiny"
    9.69  msgstr ""
    9.70  
    9.71 -#: search.sh:166
    9.72 +#: search.sh:160
    9.73  msgid "undigest"
    9.74  msgstr ""
    9.75  
    9.76 -#: search.sh:168
    9.77 +#: search.sh:162
    9.78  msgid "Search"
    9.79  msgstr ""
    9.80  
    9.81 -#: search.sh:186
    9.82 +#: search.sh:180
    9.83  #, sh-format
    9.84  msgid "$PKGS package"
    9.85  msgid_plural "$PKGS packages"
    9.86  msgstr[0] ""
    9.87  msgstr[1] ""
    9.88  
    9.89 -#: search.sh:187
    9.90 +#: search.sh:181
    9.91  #, sh-format
    9.92  msgid "and $FILES file in $SLITAZ_VERSION database"
    9.93  msgid_plural "and $FILES files in $SLITAZ_VERSION database"
    9.94  msgstr[0] ""
    9.95  msgstr[1] ""
    9.96  
    9.97 -#: search.sh:194 lib/header.sh:29
    9.98 +#: search.sh:188 lib/header.sh:29
    9.99  msgid "SliTaz Packages"
   9.100  msgstr ""
   9.101  
   9.102 -#: search.sh:302
   9.103 +#: search.sh:296
   9.104  msgid ""
   9.105  "\tglibc-base and gcc-lib-base are implicit dependencies,\n"
   9.106  "\t<b>every</b> package is supposed to depend on them."
   9.107  msgstr ""
   9.108  
   9.109 -#: search.sh:350
   9.110 +#: search.sh:344
   9.111  #, sh-format
   9.112  msgid "No package $SEARCH"
   9.113  msgstr ""
   9.114  
   9.115 -#: search.sh:402 search.sh:407
   9.116 +#: search.sh:397
   9.117  msgid "Search for packages"
   9.118  msgstr ""
   9.119  
   9.120 -#: search.sh:413
   9.121 +#: search.sh:405
   9.122  msgid "Depends loops"
   9.123  msgstr ""
   9.124  
   9.125 -#: search.sh:428
   9.126 +#: search.sh:420
   9.127  #, sh-format
   9.128  msgid "Dependency tree for: $SEARCH"
   9.129  msgstr ""
   9.130  
   9.131 -#: search.sh:439
   9.132 +#: search.sh:431
   9.133  #, sh-format
   9.134  msgid "Dependency tree for: $SEARCH (SUGGESTED)"
   9.135  msgstr ""
   9.136  
   9.137 -#: search.sh:448
   9.138 +#: search.sh:440
   9.139  #, sh-format
   9.140  msgid "Reverse dependency tree for: $SEARCH"
   9.141  msgstr ""
   9.142  
   9.143 -#: search.sh:461
   9.144 +#: search.sh:455
   9.145  msgid "Build depends loops"
   9.146  msgstr ""
   9.147  
   9.148 -#: search.sh:477
   9.149 +#: search.sh:471
   9.150  #, sh-format
   9.151  msgid "$SEARCH needs these packages to be built"
   9.152  msgstr ""
   9.153  
   9.154 -#: search.sh:485
   9.155 +#: search.sh:479
   9.156  #, sh-format
   9.157  msgid "Packages who need $SEARCH to be built"
   9.158  msgstr ""
   9.159  
   9.160 -#: search.sh:498
   9.161 +#: search.sh:494
   9.162  #, sh-format
   9.163  msgid "These packages may overload files of $SEARCH"
   9.164  msgstr ""
   9.165  
   9.166 -#: search.sh:521 search.sh:544 search.sh:561 search.sh:569 search.sh:582
   9.167 -#: search.sh:594 search.sh:606
   9.168 +#: search.sh:519 search.sh:548 search.sh:573 search.sh:581 search.sh:596
   9.169 +#: search.sh:610 search.sh:624
   9.170  #, sh-format
   9.171  msgid "Result for: $SEARCH"
   9.172  msgstr ""
   9.173  
   9.174 -#: search.sh:612
   9.175 +#: search.sh:559
   9.176 +#, sh-format
   9.177 +msgid "$filenb file"
   9.178 +msgid_plural "$filenb files"
   9.179 +msgstr[0] ""
   9.180 +msgstr[1] ""
   9.181 +
   9.182 +#: search.sh:630
   9.183  msgid "description"
   9.184  msgstr ""
   9.185  
   9.186 -#: search.sh:624
   9.187 +#: search.sh:642
   9.188  #, sh-format
   9.189  msgid "Result for: $SEARCH (package providing $vpkg)"
   9.190  msgstr ""
    10.1 --- a/pkgs/po/zh.po	Fri Apr 13 01:53:02 2012 +0200
    10.2 +++ b/pkgs/po/zh.po	Mon Apr 16 11:34:57 2012 +0300
    10.3 @@ -7,7 +7,7 @@
    10.4  msgstr ""
    10.5  "Project-Id-Version: Tazpkg Web\n"
    10.6  "Report-Msgid-Bugs-To: \n"
    10.7 -"POT-Creation-Date: 2012-04-11 20:27+0300\n"
    10.8 +"POT-Creation-Date: 2012-04-14 03:36+0300\n"
    10.9  "PO-Revision-Date: \n"
   10.10  "Last-Translator: Aleksej Bobylev <al.bobylev@gmail.com>\n"
   10.11  "Language-Team: \n"
   10.12 @@ -22,147 +22,146 @@
   10.13  "X-Poedit-SearchPath-0: .\n"
   10.14  "X-Poedit-SearchPath-1: lib\n"
   10.15  
   10.16 -#: search.sh:147
   10.17 +#: search.sh:142
   10.18  msgid "Package"
   10.19  msgstr "软件包:"
   10.20  
   10.21 -#: search.sh:148
   10.22 +#: search.sh:143
   10.23  msgid "Description"
   10.24  msgstr "描述"
   10.25  
   10.26 -#: search.sh:149
   10.27 +#: search.sh:144
   10.28  msgid "Tags"
   10.29  msgstr "标签"
   10.30  
   10.31 -#: search.sh:150
   10.32 +#: search.sh:145
   10.33  msgid "Receipt"
   10.34  msgstr ""
   10.35  
   10.36 -#: search.sh:151
   10.37 +#: search.sh:146
   10.38  msgid "Depends"
   10.39  msgstr "依赖"
   10.40  
   10.41 -#: search.sh:152
   10.42 +#: search.sh:147
   10.43  msgid "Build depends"
   10.44  msgstr ""
   10.45  
   10.46 -#: search.sh:153
   10.47 +#: search.sh:148
   10.48  msgid "File"
   10.49  msgstr "文件"
   10.50  
   10.51 -#: search.sh:154
   10.52 +#: search.sh:149
   10.53  msgid "File list"
   10.54  msgstr "文件列表"
   10.55  
   10.56 -#: search.sh:155
   10.57 +#: search.sh:150
   10.58  msgid "common files"
   10.59  msgstr ""
   10.60  
   10.61 -#: search.sh:159
   10.62 +#: search.sh:154
   10.63  msgid "cooking"
   10.64  msgstr "开发版"
   10.65  
   10.66 -#: search.sh:164
   10.67 +#: search.sh:159
   10.68  msgid "tiny"
   10.69  msgstr ""
   10.70  
   10.71 -#: search.sh:165
   10.72 +#: search.sh:160
   10.73  msgid "undigest"
   10.74  msgstr ""
   10.75  
   10.76 -#: search.sh:167
   10.77 +#: search.sh:162
   10.78  msgid "Search"
   10.79  msgstr ""
   10.80  
   10.81 -#: search.sh:185
   10.82 +#: search.sh:180
   10.83  #, sh-format
   10.84  msgid "$PKGS package"
   10.85  msgid_plural "$PKGS packages"
   10.86  msgstr[0] ""
   10.87  msgstr[1] ""
   10.88  
   10.89 -#: search.sh:186
   10.90 +#: search.sh:181
   10.91  #, sh-format
   10.92  msgid "and $FILES file in $SLITAZ_VERSION database"
   10.93  msgid_plural "and $FILES files in $SLITAZ_VERSION database"
   10.94  msgstr[0] ""
   10.95  msgstr[1] ""
   10.96  
   10.97 -#: search.sh:193
   10.98 -#: lib/header.sh:29
   10.99 +#: search.sh:188 lib/header.sh:29
  10.100  msgid "SliTaz Packages"
  10.101  msgstr ""
  10.102  
  10.103 -#: search.sh:301
  10.104 +#: search.sh:296
  10.105  msgid ""
  10.106  "\tglibc-base and gcc-lib-base are implicit dependencies,\n"
  10.107  "\t<b>every</b> package is supposed to depend on them."
  10.108  msgstr ""
  10.109  
  10.110 -#: search.sh:349
  10.111 +#: search.sh:344
  10.112  #, sh-format
  10.113  msgid "No package $SEARCH"
  10.114  msgstr ""
  10.115  
  10.116 -#: search.sh:392
  10.117 -#: search.sh:404
  10.118 +#: search.sh:397
  10.119  msgid "Search for packages"
  10.120  msgstr ""
  10.121  
  10.122 -#: search.sh:411
  10.123 +#: search.sh:405
  10.124  msgid "Depends loops"
  10.125  msgstr "依赖 loops"
  10.126  
  10.127 -#: search.sh:426
  10.128 +#: search.sh:420
  10.129  #, sh-format
  10.130  msgid "Dependency tree for: $SEARCH"
  10.131  msgstr ""
  10.132  
  10.133 -#: search.sh:437
  10.134 +#: search.sh:431
  10.135  #, sh-format
  10.136  msgid "Dependency tree for: $SEARCH (SUGGESTED)"
  10.137  msgstr ""
  10.138  
  10.139 -#: search.sh:446
  10.140 +#: search.sh:440
  10.141  #, sh-format
  10.142  msgid "Reverse dependency tree for: $SEARCH"
  10.143  msgstr ""
  10.144  
  10.145 -#: search.sh:459
  10.146 +#: search.sh:455
  10.147  msgid "Build depends loops"
  10.148  msgstr ""
  10.149  
  10.150 -#: search.sh:475
  10.151 +#: search.sh:471
  10.152  #, sh-format
  10.153  msgid "$SEARCH needs these packages to be built"
  10.154  msgstr ""
  10.155  
  10.156 -#: search.sh:483
  10.157 +#: search.sh:479
  10.158  #, sh-format
  10.159  msgid "Packages who need $SEARCH to be built"
  10.160  msgstr ""
  10.161  
  10.162 -#: search.sh:496
  10.163 +#: search.sh:494
  10.164  #, sh-format
  10.165  msgid "These packages may overload files of $SEARCH"
  10.166  msgstr ""
  10.167  
  10.168 -#: search.sh:519
  10.169 -#: search.sh:542
  10.170 -#: search.sh:559
  10.171 -#: search.sh:567
  10.172 -#: search.sh:580
  10.173 -#: search.sh:592
  10.174 -#: search.sh:604
  10.175 +#: search.sh:519 search.sh:548 search.sh:573 search.sh:581 search.sh:596
  10.176 +#: search.sh:610 search.sh:624
  10.177  #, sh-format
  10.178  msgid "Result for: $SEARCH"
  10.179  msgstr ""
  10.180  
  10.181 -#: search.sh:610
  10.182 +#: search.sh:559
  10.183 +#, sh-format
  10.184 +msgid "$filenb file"
  10.185 +msgid_plural "$filenb files"
  10.186 +msgstr[0] ""
  10.187 +
  10.188 +#: search.sh:630
  10.189  msgid "description"
  10.190  msgstr ""
  10.191  
  10.192 -#: search.sh:622
  10.193 +#: search.sh:642
  10.194  #, sh-format
  10.195  msgid "Result for: $SEARCH (package providing $vpkg)"
  10.196  msgstr ""
  10.197 @@ -203,4 +202,3 @@
  10.198  #: lib/header.sh:27
  10.199  msgid "Hg"
  10.200  msgstr ""
  10.201 -
    11.1 --- a/pkgs/search.sh	Fri Apr 13 01:53:02 2012 +0200
    11.2 +++ b/pkgs/search.sh	Mon Apr 16 11:34:57 2012 +0300
    11.3 @@ -1,117 +1,153 @@
    11.4  #!/bin/sh
    11.5  # Tiny CGI search engine for SliTaz packages on http://pkgs.slitaz.org/
    11.6  # Christophe Lincoln <pankso@slitaz.org>
    11.7 -# Aleksej Bobylev <al.bobylev@gmail.com> - i18n
    11.8 +# Aleksej Bobylev <al.bobylev@gmail.com>
    11.9  #
   11.10 +
   11.11 +# Parse query string
   11.12  . /usr/lib/slitaz/httphelper.sh
   11.13  
   11.14 -# This can be removed when we use $(GET var) PHP a like syntaxe from
   11.15 -# httphelper.sh
   11.16 -read QUERY_STRING
   11.17 -for i in $(echo $QUERY_STRING | sed 's/&/ /g'); do
   11.18 -	i=$(httpd -d $i)
   11.19 -	eval $i
   11.20 -done
   11.21 -LANG=$lang
   11.22 -SEARCH=$query
   11.23 -SLITAZ_VERSION=$version
   11.24 -OBJECT=$object
   11.25 -DATE=$(date +%Y-%m-%d\ %H:%M:%S)
   11.26 -VERSION=cooking
   11.27 -SCRIPT_NAME="search.sh"
   11.28 +
   11.29 +# User preferred language
   11.30 +# parameter $1 have priority; without parameter $1 - browser language only
   11.31 +# if we don't support any of user languages (or only en), then return C locale
   11.32 +user_lang() {
   11.33 +	LANG="C"
   11.34 +	IFS=","
   11.35 +	for lang in $1 $HTTP_ACCEPT_LANGUAGE
   11.36 +	do
   11.37 +		lang=${lang%;*} lang=${lang# } lang=${lang%-*} lang=${lang%_*}
   11.38 +		case "$lang" in
   11.39 +			de) LANG="de_DE" ;;
   11.40 +			es) LANG="es_ES" ;;
   11.41 +			fr) LANG="fr_FR" ;;
   11.42 +			it) LANG="it_IT" ;;
   11.43 +			pt) LANG="pt_BR" ;;
   11.44 +			ru) LANG="ru_RU" ;;
   11.45 +			zh) LANG="zh_TW" ;;
   11.46 +		esac
   11.47 +		if echo "de en fr pt ru zh" | fgrep -q "$lang"; then
   11.48 +			break
   11.49 +		fi
   11.50 +	done
   11.51 +	unset IFS
   11.52 +	echo "$LANG"
   11.53 +}
   11.54 +
   11.55 +# Short 2-letter lang code from ll_CC
   11.56 +ll_lang() {
   11.57 +	ll_CC="$1"
   11.58 +	echo ${ll_CC%_*}
   11.59 +}
   11.60 +
   11.61 +# Nice URL replacer - to copy url from address bar
   11.62 +# TODO: deal with POST method of form submitting
   11.63 +nice_url() {
   11.64 +	# if user submitted a form
   11.65 +	if [ ! -z $(GET submit) ]; then
   11.66 +		OBJECT="$(GET object)"
   11.67 +		SEARCH="$(GET query)"
   11.68 +		case $OBJECT in
   11.69 +			Package)		NICE="package=$SEARCH";;
   11.70 +			Desc)			NICE="desc=$SEARCH";;
   11.71 +			Tags)			NICE="tags=$SEARCH";;
   11.72 +			Receipt)		NICE="receipt=$SEARCH";;
   11.73 +			Depends)		NICE="depends=$SEARCH";;
   11.74 +			BuildDepends)	NICE="builddepends=$SEARCH";;
   11.75 +			File)			NICE="file=$SEARCH";;
   11.76 +			File_list)		NICE="filelist=$SEARCH";;
   11.77 +			FileOverlap)	NICE="fileoverlap=$SEARCH";;
   11.78 +		esac
   11.79 +		# version, if needed
   11.80 +		version="$(GET version)"
   11.81 +		if [ ! -z "$version" -a "$version" != "cooking" ]; then
   11.82 +			NICE="${NICE}&version=${version:0:1}"
   11.83 +		fi
   11.84 +		# lang, if needed
   11.85 +		query_lang="$(GET lang)"
   11.86 +		pref_lang="$(user_lang)"
   11.87 +		browser_lang="$(ll_lang $pref_lang)"
   11.88 +		if [ ! -z "$query_lang" -a "$query_lang" != "$browser_lang" ]; then
   11.89 +			NICE="${NICE}&lang=$query_lang"
   11.90 +		fi
   11.91 +		# verbose, if needed
   11.92 +		verboseq="$(GET verbose)"
   11.93 +		if [ ! -z "$verboseq" -a "$verboseq" != "0" ]; then
   11.94 +			NICE="${NICE}&verbose=1"
   11.95 +		fi
   11.96 +		# redirect
   11.97 +		# TODO: implement HTTP 301 Redirect
   11.98 +		cat << EOT
   11.99 +Content-type: text/html
  11.100 +
  11.101 +<!DOCTYPE html>
  11.102 +<html><head><meta http-equiv="refresh" content="0;url=$SCRIPT_NAME?$NICE" />
  11.103 +<title>Redirect</title></head></html>
  11.104 +EOT
  11.105 +#		echo "Location: $SCRIPT_NAME?$NICE"
  11.106 +#		echo
  11.107 +		exit 0
  11.108 +	fi
  11.109 +}
  11.110 +
  11.111 +nice_url
  11.112 +
  11.113 +
  11.114 +
  11.115 +OBJECT="$(GET object)"
  11.116 +SEARCH="$(GET query)"
  11.117 +SLITAZ_VERSION="$(GET version)"
  11.118 +VERBOSE="$(GET verbose)"
  11.119  
  11.120  # Internal variables
  11.121 -po="de fr pt ru zh"
  11.122 +#DATE=$(date +%Y-%m-%d\ %H:%M:%S)
  11.123  
  11.124  # Internationalization
  11.125  . /usr/bin/gettext.sh
  11.126 -TEXTDOMAIN='tazpkg-web'
  11.127 -export TEXTDOMAIN
  11.128 +export TEXTDOMAIN='tazpkg-web'
  11.129  
  11.130 -if [ "$REQUEST_METHOD" = "GET" ]; then
  11.131 -	SEARCH=""
  11.132 -	VERBOSE=0
  11.133 -	for i in $(echo $REQUEST_URI | sed 's/[?&]/ /g'); do
  11.134 -		# i=$(httpd -d $i)
  11.135 -		SLITAZ_VERSION=cooking
  11.136 -		case "$(echo $i | tr [A-Z] [a-z])" in
  11.137 -		query=*|search=*)
  11.138 -			[ ${i#*=} == Search ] || SEARCH=${i#*=};;
  11.139 -		object=*)
  11.140 -			OBJECT=${i#*=};;
  11.141 -		verbose=*)
  11.142 -			VERBOSE=${i#*=};;
  11.143 -		lang=*)
  11.144 -			LANG=${i#*=};;
  11.145 -		file=*)
  11.146 -			SEARCH=${i#*=}
  11.147 -			OBJECT=File;;
  11.148 -		desc=*)
  11.149 -			SEARCH=${i#*=}
  11.150 -			OBJECT=Desc;;
  11.151 -		tags=*)
  11.152 -			SEARCH=${i#*=}
  11.153 -			OBJECT=Tags;;
  11.154 -		receipt=*)
  11.155 -			SEARCH=${i#*=}
  11.156 -			OBJECT=Receipt;;
  11.157 -		filelist=*)
  11.158 -			SEARCH=${i#*=}
  11.159 -			OBJECT=File_list;;
  11.160 -		package=*)
  11.161 -			SEARCH=${i#*=}
  11.162 -			OBJECT=Package;;
  11.163 -		depends=*)
  11.164 -			SEARCH=${i#*=}
  11.165 -			OBJECT=Depends;;
  11.166 -		builddepends=*)
  11.167 -			SEARCH=${i#*=}
  11.168 -			OBJECT=BuildDepends;;
  11.169 -		fileoverlap=*)
  11.170 -			SEARCH=${i#*=}
  11.171 -			OBJECT=FileOverlap;;
  11.172 -		version=s*|version=3*)
  11.173 -			SLITAZ_VERSION=stable;;
  11.174 -		version=[1-9]*)
  11.175 -			i=${i%%.*}
  11.176 -			SLITAZ_VERSION=${i#*=}.0;;
  11.177 -		version=u*)
  11.178 -			SLITAZ_VERSION=undigest;;
  11.179 -		esac
  11.180 -	done
  11.181 -	[ -n "$SEARCH" ] && REQUEST_METHOD="POST"
  11.182 -	[ "$SEARCH" == "." ] && SEARCH=
  11.183 -fi
  11.184 +SEARCH=""
  11.185 +VERBOSE=0
  11.186 +for i in $(echo $QUERY_STRING | sed 's/[?&]/ /g'); do
  11.187 +#	SLITAZ_VERSION=cooking
  11.188 +	case "$(echo $i | tr [A-Z] [a-z])" in
  11.189 +		query=*|search=*)		[ ${i#*=} == Search ] || SEARCH=${i#*=};;
  11.190 +		object=*)				OBJECT=${i#*=};;
  11.191 +		verbose=*)				VERBOSE=${i#*=};;
  11.192 +		lang=*)					LANG=${i#*=};;
  11.193 +		file=*)					SEARCH=${i#*=}; OBJECT=File;;
  11.194 +		desc=*)					SEARCH=${i#*=}; OBJECT=Desc;;
  11.195 +		tags=*)					SEARCH=${i#*=}; OBJECT=Tags;;
  11.196 +		receipt=*)				SEARCH=${i#*=}; OBJECT=Receipt;;
  11.197 +		filelist=*)				SEARCH=${i#*=}; OBJECT=File_list;;
  11.198 +		package=*)				SEARCH=${i#*=}; OBJECT=Package;;
  11.199 +		depends=*)				SEARCH=${i#*=}; OBJECT=Depends;;
  11.200 +		builddepends=*)			SEARCH=${i#*=}; OBJECT=BuildDepends;;
  11.201 +		fileoverlap=*)			SEARCH=${i#*=}; OBJECT=FileOverlap;;
  11.202 +		version=[1-9]*)			i=${i%%.*}; SLITAZ_VERSION=${i#*=}.0;;
  11.203 +		version=s*|version=4*)	SLITAZ_VERSION=stable;;
  11.204 +		version=u*)				SLITAZ_VERSION=undigest;;
  11.205 +		version=t*)				SLITAZ_VERSION=tiny;;
  11.206 +	esac
  11.207 +done
  11.208 +[ -z "$SLITAZ_VERSION" ] && SLITAZ_VERSION=cooking
  11.209 +#[ -n "$SEARCH" ] && REQUEST_METHOD="POST"
  11.210 +#[ "$SEARCH" == "." ] && SEARCH=
  11.211 +
  11.212  
  11.213  # Content negotiation for Gettext
  11.214 -IFS=","
  11.215 -for lang in $HTTP_ACCEPT_LANGUAGE
  11.216 -do
  11.217 -	lang=${lang%;*} lang=${lang# } lang=${lang%-*}
  11.218 -	case "$lang" in
  11.219 -		en) LANG="C" ;;
  11.220 -		de) LANG="de_DE" ;;
  11.221 -		es) LANG="es_ES" ;;
  11.222 -		fr) LANG="fr_FR" ;;
  11.223 -		it) LANG="it_IT" ;;
  11.224 -		pt) LANG="pt_BR" ;;
  11.225 -		ru) LANG="ru_RU" ;;
  11.226 -		zh) LANG="zh_TW" ;;
  11.227 -	esac
  11.228 -	if echo "$po" | fgrep -q "$lang"; then
  11.229 -		break
  11.230 -	fi
  11.231 -done
  11.232 -unset IFS
  11.233 +LANG=$(user_lang $(GET lang))
  11.234 +lang="$(ll_lang $LANG)"
  11.235  export LANG LC_ALL=$LANG
  11.236  
  11.237 +
  11.238  case "$OBJECT" in
  11.239 -	File)	 	selected_file="selected";;
  11.240 -	Desc)	 	selected_desc="selected";;
  11.241 -	Tags)	 	selected_tags="selected";;
  11.242 -	Receipt) 	selected_receipt="selected";;
  11.243 -	File_list) 	selected_file_list="selected";;
  11.244 -	Depends)	selected_depends="selected";;
  11.245 +	File)			selected_file="selected";;
  11.246 +	Desc)			selected_desc="selected";;
  11.247 +	Tags)			selected_tags="selected";;
  11.248 +	Receipt)		selected_receipt="selected";;
  11.249 +	File_list)		selected_file_list="selected";;
  11.250 +	Depends)		selected_depends="selected";;
  11.251  	BuildDepends)	selected_build_depends="selected";;
  11.252  	FileOverlap)	selected_overlap="selected";;
  11.253  esac
  11.254 @@ -131,18 +167,22 @@
  11.255  WOK=/home/slitaz/$SLITAZ_VERSION/wok
  11.256  PACKAGES_REPOSITORY=/home/slitaz/$SLITAZ_VERSION/packages
  11.257  
  11.258 -# --> header function from httphelper
  11.259 +
  11.260 +# TODO: header function from httphelper
  11.261  echo "Content-type: text/html"
  11.262  echo
  11.263  
  11.264  # Search form
  11.265 +# TODO: implement POST method
  11.266 +# ... method="post" enctype="multipart/form-data" ...
  11.267 +# TODO: add hint 'You are can search for depends loop, if textfield is empty'...
  11.268 +# add progress ticker while page is not complete
  11.269  search_form()
  11.270  {
  11.271  	cat << _EOT_
  11.272  
  11.273 -<div style="text-align: center; padding: 20px;">
  11.274 -<form method="get" action="$SCRIPT_NAME">
  11.275 -	<input type="hidden" name="lang" value="$LANG" />
  11.276 +<form id="s_form" method="get" action="$SCRIPT_NAME">
  11.277 +	<input type="hidden" name="lang" value="$lang" />
  11.278  	<select name="object">
  11.279  		<option value="Package">$(gettext "Package")</option>
  11.280  		<option $selected_desc value="Desc">$(gettext "Description")</option>
  11.281 @@ -154,7 +194,7 @@
  11.282  		<option $selected_file_list value="File_list">$(gettext "File list")</option>
  11.283  		<option $selected_overlap value="FileOverlap">$(gettext "common files")</option>
  11.284  	</select>
  11.285 -	<input type="text" name="query" size="20" value="$SEARCH" />
  11.286 +	<input type="text" name="query" id="query" size="20" value="$SEARCH" />
  11.287  	<select name="version">
  11.288  		<option value="cooking">$(gettext "cooking")</option>
  11.289  		<option $selected_stable value="stable">4.0</option>
  11.290 @@ -164,9 +204,8 @@
  11.291  		<option $selected_tiny value="tiny">$(gettext "tiny")</option>
  11.292  		<option $selected_undigest value="undigest">$(gettext "undigest")</option>
  11.293  	</select>
  11.294 -	<input type="submit" value="$(gettext 'Search')" />
  11.295 +	<input type="submit" name="submit" value="$(gettext 'Search')" />
  11.296  </form>
  11.297 -</div>
  11.298  _EOT_
  11.299  }
  11.300  
  11.301 @@ -176,32 +215,22 @@
  11.302  }
  11.303  
  11.304  # xHTML Footer.
  11.305 +# TODO: caching the summary for 5 minutes
  11.306  xhtml_footer() {
  11.307  	PKGS=$(ls $WOK/ | wc -l)
  11.308  	FILES=$(unlzma -c $PACKAGES_REPOSITORY/files.list.lzma | wc -l)
  11.309 -	cat << _EOT_
  11.310 -
  11.311 -<center>
  11.312 -<i>$(eval_ngettext "\$PKGS package" "\$PKGS packages" $PKGS)
  11.313 -$(eval_ngettext "and \$FILES file in \$SLITAZ_VERSION database" "and \$FILES files in \$SLITAZ_VERSION database" $FILES)</i>
  11.314 -</center>
  11.315 -
  11.316 -<!-- End of content -->
  11.317 -</div>
  11.318 -
  11.319 -<!-- Footer -->
  11.320 -<div id="footer">$(gettext "SliTaz Packages")</div>
  11.321 -
  11.322 -</body>
  11.323 -</html>
  11.324 -_EOT_
  11.325 +	. lib/footer.sh
  11.326  }
  11.327  
  11.328  installed_size()
  11.329  {
  11.330 -	[ $VERBOSE -gt 0 ] &&
  11.331 -	grep -A 3 "^$1\$" $PACKAGES_REPOSITORY/packages.txt | \
  11.332 -		grep installed | sed 's/.*(\(.*\) installed.*/(\1) /'
  11.333 +	if [ $VERBOSE -gt 0 ]; then
  11.334 +		inst=$(grep -A 3 "^$1\$" $PACKAGES_REPOSITORY/packages.txt | grep installed)
  11.335 +#		size=$(echo $inst | cut -d'(' -f2 | cut -d' ' -f1)
  11.336 +		echo $inst | sed 's/.*(\(.*\).*/(\1)/'
  11.337 +#		echo $size
  11.338 +#		 | sed 's/.*(\(.*\) installed.*/(\1) /'
  11.339 +	fi
  11.340  }
  11.341  
  11.342  package_entry()
  11.343 @@ -259,7 +288,7 @@
  11.344  	last="$line"
  11.345  	pkg=$1
  11.346  	shift
  11.347 -	echo $pkg ":" $@ "..."
  11.348 +	echo "<strong>$pkg </strong>: $@ ..."
  11.349  done
  11.350  }
  11.351  
  11.352 @@ -347,7 +376,6 @@
  11.353  	cat << _EOT_
  11.354  
  11.355  <h3>$(eval_gettext "No package \$SEARCH")</h3>
  11.356 -<pre>
  11.357  _EOT_
  11.358  	return 1
  11.359  }
  11.360 @@ -358,13 +386,6 @@
  11.361  	sed -e 's/&/\&amp;/g' -e 's/</\&lt;/g' -e 's/>/\&gt;/g'
  11.362  }
  11.363  
  11.364 -echonb()
  11.365 -{
  11.366 -read n
  11.367 -echo -n "$n $1"
  11.368 -[ $n -gt 1 ] && echo -n s
  11.369 -}
  11.370 -
  11.371  display_packages_and_files()
  11.372  {
  11.373  last=""
  11.374 @@ -380,125 +401,140 @@
  11.375  done
  11.376  }
  11.377  
  11.378 +xhtml_header
  11.379 +
  11.380  #
  11.381  # Handle GET requests
  11.382  #
  11.383  case " $(GET) " in
  11.384 -	*\ debug\ *)
  11.385 -		xhtml_header
  11.386 -		echo "<h2>Debug info</h2>"
  11.387 -		echo "<p>Auto detected language: LANG=$LANG (lang=$lang)</p>"
  11.388 -		echo '<pre>'
  11.389 -		httpinfo
  11.390 -		echo '</pre>'
  11.391 -		xhtml_footer 
  11.392 -		exit 0 ;;
  11.393 +	*\ debug\ *|*\ debug*)
  11.394 +		cat << EOT
  11.395 +<h2>Debug info</h2>
  11.396 +<pre>$(httpinfo)</pre>
  11.397 +<pre>LANG=$LANG;
  11.398 +OBJECT=$OBJECT;
  11.399 +SEARCH=$SEARCH;
  11.400 +SLITAZ_VERSION=$SLITAZ_VERSION;
  11.401 +WOK=$WOK;
  11.402 +</pre>
  11.403 +EOT
  11.404 +#$(xhtml_footer)
  11.405 +#EOT
  11.406 +#		exit 0
  11.407 +	;;
  11.408  esac
  11.409  
  11.410  # Display search form and result if requested.
  11.411 -if [ "$REQUEST_METHOD" != "POST" ]; then
  11.412 -	xhtml_header
  11.413 -	echo "<h2>$(gettext "Search for packages")</h2>"
  11.414 -	search_form
  11.415 -	xhtml_footer
  11.416 -else
  11.417 -	xhtml_header
  11.418 -	echo "$(gettext "Search for packages")</h2>"
  11.419 -	search_form
  11.420 -	if [ "$OBJECT" = "Depends" ]; then
  11.421 -		if [ -z "$SEARCH" ]; then
  11.422 -			cat << _EOT_
  11.423 +#xhtml_header
  11.424 +echo "<h2>$(gettext 'Search for packages')</h2>"
  11.425 +search_form
  11.426 +
  11.427 +case "$OBJECT" in
  11.428 +
  11.429 +
  11.430 +### Depends loops; [Reverse] Dependency tree [(SUGGESTED)]
  11.431 +Depends)
  11.432 +	if [ -z "$SEARCH" ]; then
  11.433 +		cat << _EOT_
  11.434  
  11.435  <h3>$(gettext "Depends loops")</h3>
  11.436  <pre>
  11.437  _EOT_
  11.438 -			for i in $WOK/*/receipt; do
  11.439 -				PACKAGE=
  11.440 -				DEPENDS=
  11.441 -				. $i
  11.442 -				echo "$PACKAGE $(echo $DEPENDS)"
  11.443 -			done | show_loops
  11.444 -			cat << _EOT_
  11.445 +		for i in $WOK/*/receipt; do
  11.446 +			PACKAGE=
  11.447 +			DEPENDS=
  11.448 +			. $i
  11.449 +			echo "$PACKAGE $(echo $DEPENDS)"
  11.450 +		done | show_loops
  11.451 +		cat << _EOT_
  11.452  </pre>
  11.453  _EOT_
  11.454 -		elif package_exist $SEARCH ; then
  11.455 -			cat << _EOT_
  11.456 +	elif package_exist $SEARCH ; then
  11.457 +		cat << _EOT_
  11.458  
  11.459  <h3>$(eval_gettext "Dependency tree for: \$SEARCH")</h3>
  11.460  <pre>
  11.461  _EOT_
  11.462 -			ALL_DEPS=""
  11.463 -			dep_scan $SEARCH ""
  11.464 -			SUGGESTED=""
  11.465 -			. $WOK/$SEARCH/receipt
  11.466 -			if [ -n "$SUGGESTED" ]; then
  11.467 -				cat << _EOT_
  11.468 +		ALL_DEPS=""
  11.469 +		dep_scan $SEARCH ""
  11.470 +		SUGGESTED=""
  11.471 +		. $WOK/$SEARCH/receipt
  11.472 +		if [ -n "$SUGGESTED" ]; then
  11.473 +			cat << _EOT_
  11.474  </pre>
  11.475  
  11.476  <h3>$(eval_gettext "Dependency tree for: \$SEARCH (SUGGESTED)")</h3>
  11.477  <pre>
  11.478  _EOT_
  11.479 -				ALL_DEPS=""
  11.480 -				dep_scan "$SUGGESTED" "    "
  11.481 -			fi
  11.482 -			cat << _EOT_
  11.483 +			ALL_DEPS=""
  11.484 +			dep_scan "$SUGGESTED" "    "
  11.485 +		fi
  11.486 +		cat << _EOT_
  11.487  </pre>
  11.488  
  11.489  <h3>$(eval_gettext "Reverse dependency tree for: \$SEARCH")</h3>
  11.490  <pre>
  11.491  _EOT_
  11.492 -			ALL_DEPS=""
  11.493 -			rdep_scan $SEARCH
  11.494 -			cat << _EOT_
  11.495 +		ALL_DEPS=""
  11.496 +		rdep_scan $SEARCH
  11.497 +		cat << _EOT_
  11.498  </pre>
  11.499  _EOT_
  11.500 -		fi
  11.501 -	elif [ "$OBJECT" = "BuildDepends" ]; then
  11.502 -		if [ -z "$SEARCH" ]; then
  11.503 -			cat << _EOT_
  11.504 +	fi
  11.505 +	;;
  11.506 +
  11.507 +
  11.508 +### Build depends loops; [Reverse] Build dependency tree
  11.509 +BuildDepends)
  11.510 +	if [ -z "$SEARCH" ]; then
  11.511 +		cat << _EOT_
  11.512  
  11.513  <h3>$(gettext "Build depends loops")</h3>
  11.514  <pre>
  11.515  _EOT_
  11.516 -			for i in $WOK/*/receipt; do
  11.517 -				PACKAGE=
  11.518 -				WANTED=
  11.519 -				BUILD_DEPENDS=
  11.520 -				. $i
  11.521 -				echo "$PACKAGE $WANTED $(echo $BUILD_DEPENDS)"
  11.522 -			done | show_loops
  11.523 -			cat << _EOT_
  11.524 +		for i in $WOK/*/receipt; do
  11.525 +			PACKAGE=
  11.526 +			WANTED=
  11.527 +			BUILD_DEPENDS=
  11.528 +			. $i
  11.529 +			echo "$PACKAGE $WANTED $(echo $BUILD_DEPENDS)"
  11.530 +		done | show_loops
  11.531 +		cat << _EOT_
  11.532  </pre>
  11.533  _EOT_
  11.534 -		elif package_exist $SEARCH ; then
  11.535 -			cat << _EOT_
  11.536 +	elif package_exist $SEARCH ; then
  11.537 +		cat << _EOT_
  11.538  
  11.539  <h3>$(eval_gettext "\$SEARCH needs these packages to be built")</h3>
  11.540  <pre>
  11.541  _EOT_
  11.542 -			ALL_DEPS=""
  11.543 -			dep_scan $SEARCH "" build
  11.544 -			cat << _EOT_
  11.545 +		ALL_DEPS=""
  11.546 +		dep_scan $SEARCH "" build
  11.547 +		cat << _EOT_
  11.548  </pre>
  11.549  
  11.550  <h3>$(eval_gettext "Packages who need \$SEARCH to be built")</h3>
  11.551  <pre>
  11.552  _EOT_
  11.553 -			ALL_DEPS=""
  11.554 -			rdep_scan $SEARCH build
  11.555 -			cat << _EOT_
  11.556 +		ALL_DEPS=""
  11.557 +		rdep_scan $SEARCH build
  11.558 +		cat << _EOT_
  11.559  </pre>
  11.560  _EOT_
  11.561 -		fi
  11.562 -	elif [ "$OBJECT" = "FileOverlap" ]; then
  11.563 -		if package_exist $SEARCH ; then
  11.564 -			cat << _EOT_
  11.565 +	fi
  11.566 +	;;
  11.567 +
  11.568 +
  11.569 +### Common files
  11.570 +FileOverlap)
  11.571 +		if [ package_exist $SEARCH ]; then
  11.572 +		cat << _EOT_
  11.573  
  11.574  <h3>$(eval_gettext "These packages may overload files of \$SEARCH")</h3>
  11.575  <pre>
  11.576  _EOT_
  11.577 -			( unlzma -c $PACKAGES_REPOSITORY/files.list.lzma | grep ^$SEARCH: ;
  11.578 -			  unlzma -c $PACKAGES_REPOSITORY/files.list.lzma | grep -v ^$SEARCH: ) | awk '
  11.579 +		( unlzma -c $PACKAGES_REPOSITORY/files.list.lzma | grep ^$SEARCH: ;
  11.580 +		  unlzma -c $PACKAGES_REPOSITORY/files.list.lzma | grep -v ^$SEARCH: ) | awk '
  11.581  BEGIN { pkg=""; last="x" }
  11.582  {
  11.583  	if ($2 == "") next
  11.584 @@ -513,8 +549,13 @@
  11.585  			cat << _EOT_
  11.586  </pre>
  11.587  _EOT_
  11.588 -		fi
  11.589 -	elif [ "$OBJECT" = "File" ]; then
  11.590 +	fi
  11.591 +	;;
  11.592 +
  11.593 +
  11.594 +### File search
  11.595 +File)
  11.596 +	if [ -n "$SEARCH" ]; then
  11.597  		cat << _EOT_
  11.598  
  11.599  <h3>$(eval_gettext "Result for: \$SEARCH")</h3>
  11.600 @@ -536,59 +577,91 @@
  11.601  			fi
  11.602  			echo "    $file"
  11.603  		done
  11.604 -	elif [ "$OBJECT" = "File_list" ]; then
  11.605 -		if package_exist $SEARCH; then
  11.606 -			cat << _EOT_
  11.607 +		cat << _EOT_
  11.608 +</pre>
  11.609 +_EOT_
  11.610 +	fi
  11.611 +	;;
  11.612 +
  11.613 +
  11.614 +### List of files
  11.615 +File_list)
  11.616 +	if package_exist $SEARCH; then
  11.617 +		cat << _EOT_
  11.618  
  11.619  <h3>$(eval_gettext "Result for: \$SEARCH")</h3>
  11.620  <pre>
  11.621  _EOT_
  11.622 -			last=""
  11.623 -			unlzma -c $PACKAGES_REPOSITORY/files.list.lzma \
  11.624 -			| grep ^$SEARCH: |  sed 's/.*: /    /' | sort
  11.625 -			cat << _EOT_
  11.626 +		last=""
  11.627 +		unlzma -c $PACKAGES_REPOSITORY/files.list.lzma \
  11.628 +		| grep ^$SEARCH: |  sed 's/.*: /    /' | sort
  11.629 +		cat << _EOT_
  11.630  </pre>
  11.631  <pre>
  11.632 -$(unlzma -c $PACKAGES_REPOSITORY/files.list.lzma | grep ^$SEARCH: | wc -l | echonb file)  \
  11.633 +_EOT_
  11.634 +		filenb=$(unlzma -c $PACKAGES_REPOSITORY/files.list.lzma | grep ^$SEARCH: | wc -l)
  11.635 +		eval_ngettext "\$filenb file" "\$filenb files" $filenb
  11.636 +		cat << _EOT_
  11.637 +  \
  11.638  $(busybox sed -n "/^$SEARCH$/{nnnpq}" $PACKAGES_REPOSITORY/packages.txt)
  11.639 +</pre>
  11.640  _EOT_
  11.641 -		fi
  11.642 -	elif [ "$OBJECT" = "Desc" ]; then
  11.643 -		if [ -f $WOK/$SEARCH/description.txt ]; then
  11.644 -			cat << _EOT_
  11.645 +	fi
  11.646 +	;;
  11.647 +
  11.648 +
  11.649 +### Package description
  11.650 +Desc)
  11.651 +	if [ -f $WOK/$SEARCH/description.txt ]; then
  11.652 +		cat << _EOT_
  11.653  
  11.654  <h3>$(eval_gettext "Result for: \$SEARCH")</h3>
  11.655  <pre>
  11.656  $(htmlize < $WOK/$SEARCH/description.txt)
  11.657  </pre>
  11.658  _EOT_
  11.659 -		else
  11.660 -			cat << _EOT_
  11.661 -
  11.662 -<h3>$(eval_gettext "Result for: \$SEARCH")</h3>
  11.663 -<pre>
  11.664 -_EOT_
  11.665 -			last=""
  11.666 -			grep -i "$SEARCH" $PACKAGES_REPOSITORY/packages.desc | \
  11.667 -			sort | while read pkg extras ; do
  11.668 -				. $WOK/$pkg/receipt
  11.669 -				package_entry
  11.670 -			done
  11.671 -		fi
  11.672 -	elif [ "$OBJECT" = "Tags" ]; then
  11.673 +	else
  11.674  		cat << _EOT_
  11.675  
  11.676  <h3>$(eval_gettext "Result for: \$SEARCH")</h3>
  11.677  <pre>
  11.678  _EOT_
  11.679  		last=""
  11.680 -		grep ^TAGS= $WOK/*/receipt |  grep -i "$SEARCH" | \
  11.681 -		sed "s|$WOK/\(.*\)/receipt:.*|\1|" | sort | while read pkg ; do
  11.682 -				. $WOK/$pkg/receipt
  11.683 -				package_entry
  11.684 -			done
  11.685 -	elif [ "$OBJECT" = "Receipt" ]; then
  11.686 -		package_exist $SEARCH && cat << _EOT_
  11.687 +		grep -i "$SEARCH" $PACKAGES_REPOSITORY/packages.desc | \
  11.688 +		sort | while read pkg extras ; do
  11.689 +			. $WOK/$pkg/receipt
  11.690 +			package_entry
  11.691 +		done
  11.692 +		cat << _EOT_
  11.693 +</pre>
  11.694 +_EOT_
  11.695 +	fi
  11.696 +	;;
  11.697 +
  11.698 +
  11.699 +### Tags
  11.700 +Tags)
  11.701 +	cat << _EOT_
  11.702 +
  11.703 +<h3>$(eval_gettext "Result for: \$SEARCH")</h3>
  11.704 +<pre>
  11.705 +_EOT_
  11.706 +	last=""
  11.707 +	grep ^TAGS= $WOK/*/receipt |  grep -i "$SEARCH" | \
  11.708 +	sed "s|$WOK/\(.*\)/receipt:.*|\1|" | sort | while read pkg ; do
  11.709 +		. $WOK/$pkg/receipt
  11.710 +		package_entry
  11.711 +	done
  11.712 +	cat << _EOT_
  11.713 +</pre>
  11.714 +_EOT_
  11.715 +	;;
  11.716 +
  11.717 +
  11.718 +### Package receipt
  11.719 +# TODO: add style highlighting
  11.720 +Receipt)
  11.721 +	package_exist $SEARCH && cat << _EOT_
  11.722  
  11.723  <h3>$(eval_gettext "Result for: \$SEARCH")</h3>
  11.724  <pre>
  11.725 @@ -599,7 +672,12 @@
  11.726    fi | htmlize)
  11.727  </pre>
  11.728  _EOT_
  11.729 -	else
  11.730 +	;;
  11.731 +
  11.732 +
  11.733 +### Package
  11.734 +Package)
  11.735 +	if package_exist $SEARCH; then
  11.736  		cat << _EOT_
  11.737  
  11.738  <h3>$(eval_gettext "Result for: \$SEARCH")</h3>
  11.739 @@ -608,7 +686,7 @@
  11.740  		for pkg in `ls $WOK/ | grep "$SEARCH"`
  11.741  		do
  11.742  			. $WOK/$pkg/receipt
  11.743 -			DESC=" <a href=\"?desc=$pkg\">$(gettext description)</a>"
  11.744 +			DESC=" <a href=\"?object=Desc&query=$pkg&lang=$lang&version=$SLITAZ_VERSION&submit=go\">$(gettext description)</a>"
  11.745  			[ -f $WOK/$pkg/description.txt ] || DESC=""
  11.746  			cat << _EOT_
  11.747  $(package_entry)$DESC
  11.748 @@ -617,7 +695,7 @@
  11.749  		equiv=$PACKAGES_REPOSITORY/packages.equiv
  11.750  		vpkgs="$(cat $equiv | cut -d= -f1 | grep $SEARCH)"
  11.751  		for vpkg in $vpkgs ; do
  11.752 -	cat << _EOT_
  11.753 +			cat << _EOT_
  11.754  </pre>
  11.755  
  11.756  <h3>$(eval_gettext "Result for: \$SEARCH (package providing \$vpkg)")</h3>
  11.757 @@ -628,11 +706,13 @@
  11.758  				package_entry
  11.759  			done
  11.760  		done
  11.761 -	fi
  11.762 -	cat << _EOT_
  11.763 +		cat << _EOT_
  11.764  </pre>
  11.765  _EOT_
  11.766 -	xhtml_footer
  11.767 -fi
  11.768 +	fi
  11.769 +	;;
  11.770 +esac
  11.771 +
  11.772 +xhtml_footer
  11.773  
  11.774  exit 0
    12.1 Binary file pkgs/style/images/down.png has changed
    13.1 Binary file pkgs/style/images/logo.png has changed
    14.1 Binary file pkgs/style/logo.png has changed
    15.1 --- a/pkgs/style/slitaz.css	Fri Apr 13 01:53:02 2012 +0200
    15.2 +++ b/pkgs/style/slitaz.css	Mon Apr 16 11:34:57 2012 +0300
    15.3 @@ -26,20 +26,12 @@
    15.4  	border: 1px solid #ddd; 
    15.5  	padding: 10px;
    15.6  }
    15.7 -table { 
    15.8 -	background-color: #f8f8f8;
    15.9 -	border: 1px solid #ddd; 
   15.10 -	width: 100%; 
   15.11 -	margin: 0px 0px 20px 0px;
   15.12 -	padding: 10px;
   15.13 -}
   15.14  
   15.15  /* Header */
   15.16  
   15.17  #header { 
   15.18  	height: 40px; 
   15.19  	background: #351a0a;
   15.20 -	color: #ffffff;
   15.21  }
   15.22  
   15.23  #header h1 {
   15.24 @@ -55,14 +47,14 @@
   15.25  	font-style: italic;
   15.26  }
   15.27  
   15.28 -#header h1 a:hover, #network a:hover { 
   15.29 +#header h1 a:hover { 
   15.30  	color: #d66018;
   15.31  }
   15.32  
   15.33  /* Logo */
   15.34  
   15.35  #logo {
   15.36 -	background: url(logo.png) no-repeat left;
   15.37 +	background: url(images/logo.png) no-repeat left;
   15.38  	position: absolute;
   15.39  	float: left;
   15.40  	left: 0px;
   15.41 @@ -79,7 +71,8 @@
   15.42  	font-size: 12px;
   15.43  }
   15.44  
   15.45 -#network a { padding: 0 6px; }
   15.46 +#network a { padding: 0 4px; }
   15.47 +#network a:hover { color: #cfcfcf; }
   15.48  
   15.49  /* Block */
   15.50  
   15.51 @@ -88,7 +81,7 @@
   15.52  	background: #d66018; 
   15.53  	padding: 26px 10% 0px;
   15.54  	text-align: center;
   15.55 -	color: #333;
   15.56 +	color: #222;
   15.57  	border-bottom: 1px solid #f5f5f5;
   15.58  }
   15.59  
   15.60 @@ -140,10 +133,10 @@
   15.61  /* Languages */
   15.62  
   15.63  #lang {
   15.64 -	position: absolute;
   15.65 -	right: 0;
   15.66  	padding: 6px;
   15.67  	font-size: 11px;
   15.68 +	position: absolute;
   15.69 +	right: 0px;
   15.70  }
   15.71  
   15.72  #lang a {
   15.73 @@ -155,6 +148,9 @@
   15.74  	text-decoration: underline;
   15.75  }
   15.76  
   15.77 +.box #lang { text-align: center; position: relative; 
   15.78 +	font-size: 13px; }	 /* for /i18n page */
   15.79 +
   15.80  /* Content */
   15.81  
   15.82  #content {
   15.83 @@ -186,14 +182,6 @@
   15.84  	margin: 10px 0px 20px 20px;
   15.85  }
   15.86  
   15.87 -#mirrors {
   15.88 -	padding: 10px;
   15.89 -	margin: 10px 0px 20px;
   15.90 -	text-align: center;
   15.91 -	background: #f1f1f1;
   15.92 -	border: 2px solid #ddd;
   15.93 -}
   15.94 -
   15.95  /* Classes */
   15.96  
   15.97  .right_box { width: 48%; float: right; }
   15.98 @@ -206,6 +194,21 @@
   15.99  	border: 1px solid #ddd;
  15.100  }
  15.101  
  15.102 +.box-dl, .box-up {
  15.103 +	margin: 20px 60px;
  15.104 +	padding: 12px 12px 12px 66px;
  15.105 +	min-height: 48px;
  15.106 +	border: 1px solid #ddd;
  15.107 +	vertical-align: middle;
  15.108 +}
  15.109 +.box-dl {
  15.110 +	background: url("/images/download.png") no-repeat 12px 12px #efefef;
  15.111 +}
  15.112 +.box-up {
  15.113 +	background: url("/images/update.png") no-repeat 12px 12px #efefef;
  15.114 +}
  15.115 +.box-dl p { color: #456; }
  15.116 +
  15.117  .searchbox { 
  15.118  	margin: 20px 80px; 
  15.119  	padding: 12px; 
  15.120 @@ -255,8 +258,8 @@
  15.121  
  15.122  /* Round corner */
  15.123  
  15.124 -#block_nav, pre, .box, .searchbox, .button a, #twitter, .activity,
  15.125 -.activity div, #sponsor, #mirrors, table, input, textarea, select {
  15.126 +#block_nav, pre, .box, .box-dl, .box-up, .searchbox, .button a, #twitter, .activity,
  15.127 +.activity div, #sponsor {
  15.128  	-moz-border-radius: 4px;
  15.129  	-webkit-border-radius: 4px;
  15.130  	border-radius: 4px;
  15.131 @@ -264,46 +267,7 @@
  15.132  
  15.133  /* Form */
  15.134  
  15.135 -form { display: inline; }
  15.136 -input[type="submit"], input[type="text"], textarea, select {
  15.137 -	color: #444444;
  15.138 -	border: 1px solid #cccccc;
  15.139 -	padding: 4px;
  15.140 -	margin: 4px 0px;
  15.141 -	font-size: 14px;
  15.142 -	line-height: 1.2em;
  15.143 -	background-image: -webkit-linear-gradient(#FAFAFA, #F4F4F4 40%, #E5E5E5);
  15.144 -	background-image: -moz-linear-gradient(#FAFAFA, #F4F4F4 40%, #E5E5E5);
  15.145 -	-webkit-appearance: none;
  15.146 -	-webkit-padding-end: 6px;
  15.147 -	-webkit-padding-start: 6px;
  15.148 -}
  15.149 -
  15.150 -input[type="text"], textarea { background: #fefefe; border: 2px solid #ccc; 
  15.151 -	width: 460px; }
  15.152 -/*input[type="file"] { border: 2px solid #ddd; }*/
  15.153 -/*input[type="checkbox"] { background: #fefefe; }*/
  15.154 -
  15.155 -/* Be compatible with old FF and Webkit version. */
  15.156 -input[type="submit"] {
  15.157 -	-webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
  15.158 -	-moz-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
  15.159 -	box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
  15.160 -}
  15.161 -
  15.162 -input[type="submit"]:hover { 
  15.163 -	cursor: pointer;
  15.164 -	color: black;
  15.165 -}
  15.166 -
  15.167 -select { 
  15.168 -	background-image: url(images/down.png), 
  15.169 -		-webkit-linear-gradient(#FAFAFA, #F4F4F4 40%, #E5E5E5);
  15.170 -	background-position: center right;
  15.171 -	background-repeat: no-repeat;
  15.172 -}
  15.173 -
  15.174 -.searchbox input[type=submit] {
  15.175 +input[type=submit] {
  15.176  	border: 1px solid #b64b22;
  15.177  	background-color: #b64b22;
  15.178  	color: white;
  15.179 @@ -320,9 +284,9 @@
  15.180  	border-bottom-right-radius: 4px;
  15.181  }
  15.182  
  15.183 -.searchbox input[type=submit]:hover { background-color: #a3431f; }
  15.184 +input[type=submit]:hover { background-color: #a3431f; }
  15.185  
  15.186 -.searchbox input[type=text] {
  15.187 +input[type=text] {
  15.188  	border: 1px solid #333333;
  15.189  	padding: 4px;
  15.190  	height: 17px;
  15.191 @@ -353,3 +317,57 @@
  15.192  	/* content: "2007-2012"; */
  15.193  	content: "2012";
  15.194  }
  15.195 +
  15.196 +p, li {
  15.197 +	-moz-hyphens: auto;
  15.198 +	-webkit-hyphens: auto;
  15.199 +	hyphens: auto;
  15.200 +}
  15.201 +
  15.202 +
  15.203 +/* --- SEARCH --- */
  15.204 +
  15.205 +input.gsc-search-button {
  15.206 +	border: 1px solid #b64b22;
  15.207 +	background-color: #b64b22;
  15.208 +	color: white;
  15.209 +	font-weight: bold;
  15.210 +	cursor: pointer;
  15.211 +	padding: 2px 10px;
  15.212 +	font-size: 14px;
  15.213 +	margin-left: -4px;
  15.214 +	-webkit-border-top-right-radius: 4px;
  15.215 +	-webkit-border-bottom-right-radius: 4px;
  15.216 +	-moz-border-radius-topright: 4px;
  15.217 +	-moz-border-radius-bottomright: 4px;
  15.218 +	border-top-right-radius: 4px;
  15.219 +	border-bottom-right-radius: 4px;
  15.220 +}
  15.221 +
  15.222 +.gs-webResult.gs-result a.gs-title:link,
  15.223 +.gs-webResult.gs-result a.gs-title:link b {
  15.224 +	color: #103a5e;
  15.225 +}
  15.226 +
  15.227 +#cse {
  15.228 +	margin-bottom: 120px;
  15.229 +	width:100%;
  15.230 +}
  15.231 +
  15.232 +
  15.233 +/* --- GALLERY --- */
  15.234 +
  15.235 +#gallery div {
  15.236 +	width: 496px;
  15.237 +	border: none;
  15.238 +	border-radius: 12px;
  15.239 +	padding-bottom: 8px;
  15.240 +	margin: 12px auto;
  15.241 +	webkit-box-shadow: 0 0 6px rgba(0,0,0,0.5);
  15.242 +	-moz-box-shadow: 0 0 6px rgba(0,0,0,0.5);
  15.243 +	box-shadow: 0 0 6px rgba(0,0,0,0.5);
  15.244 +}
  15.245 +#gallery img {
  15.246 +	width: 480px;
  15.247 +	margin: 8px;
  15.248 +}