aboutsummaryrefslogtreecommitdiff
path: root/h-source
diff options
context:
space:
mode:
Diffstat (limited to 'h-source')
-rw-r--r--h-source/Application/Controllers/DownloadController.php12
-rw-r--r--h-source/Application/Controllers/ModemsController.php129
-rw-r--r--h-source/Application/Controllers/SdcardreadersController.php2
-rw-r--r--h-source/Application/Include/hardware.php15
-rw-r--r--h-source/Application/Include/languages.php16
-rw-r--r--h-source/Application/Models/ModemsModel.php70
-rw-r--r--h-source/Application/Views/Download/index.php4
-rw-r--r--h-source/Application/Views/Hardware/left.php4
-rw-r--r--h-source/Application/Views/Modems/catalogue.php89
-rw-r--r--h-source/Config/Route.php10
-rwxr-xr-xh-source/Public/Img/Crystal/modem.pngbin0 -> 5434 bytes
-rwxr-xr-xh-source/Public/Img/Crystal/modem_22.pngbin0 -> 3744 bytes
12 files changed, 343 insertions, 8 deletions
diff --git a/h-source/Application/Controllers/DownloadController.php b/h-source/Application/Controllers/DownloadController.php
index bc433c4..8767f6b 100644
--- a/h-source/Application/Controllers/DownloadController.php
+++ b/h-source/Application/Controllers/DownloadController.php
@@ -136,7 +136,7 @@ class DownloadController extends BaseController
$xml .= "\t\t<it_works>".$row['hardware']['video_card_works']."</it_works>\n";
}
- if ($type === 'acquisition-card')
+ if ($type === 'acquisition-card' or $type === 'modem')
{
$xml .= "\t\t<it_works>".$row['hardware']['compatibility']."</it_works>\n";
}
@@ -163,8 +163,8 @@ class DownloadController extends BaseController
$xml .= "\t\t<description><![CDATA[".$row['hardware']['description']."]]></description>\n";
- $xml .= "\t\t<link>".$this->baseUrl."/".MyStrings::$reverse[$type]."/view/".$this->lang."/".$row['hardware']['id_hard']."/".encodeUrl($row['hardware']['model'])."</link>\n";
- $xml .= "\t\t<created_by>".$this->baseUrl."/".MyStrings::$reverse[$type]."/history/".$this->lang."/".$row['hardware']['id_hard']."</created_by>\n";
+ $xml .= "\t\t<link>".$this->baseUrl."/".Hardware::getControllerFromType($type)."/view/".$this->lang."/".$row['hardware']['id_hard']."/".encodeUrl($row['hardware']['model'])."</link>\n";
+ $xml .= "\t\t<created_by>".$this->baseUrl."/".Hardware::getControllerFromType($type)."/history/".$this->lang."/".$row['hardware']['id_hard']."</created_by>\n";
$xml .= "\t</device>\n";
}
@@ -256,4 +256,10 @@ class DownloadController extends BaseController
{
$this->printXml($lang, array('type'=>'sd-card-reader','-deleted'=>'no'));
}
+
+ public function modems($lang = 'en')
+ {
+ $this->printXml($lang, array('type'=>'modem','-deleted'=>'no'));
+ }
+
} \ No newline at end of file
diff --git a/h-source/Application/Controllers/ModemsController.php b/h-source/Application/Controllers/ModemsController.php
new file mode 100644
index 0000000..35d555c
--- /dev/null
+++ b/h-source/Application/Controllers/ModemsController.php
@@ -0,0 +1,129 @@
+<?php
+
+// h-source, a web software to build a community of people that want to share their hardware information.
+// Copyright (C) 2010 Antonio Gallo (h-source-copyright.txt)
+//
+// This file is part of h-source
+//
+// h-source is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// h-source is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with h-source. If not, see <http://www.gnu.org/licenses/>.
+
+if (!defined('EG')) die('Direct access not allowed!');
+
+class ModemsController extends GenericController
+{
+
+ public function __construct($model, $controller, $queryString)
+ {
+
+ $this->_topMenuClasses['hardware'] = " class='currentitem'";
+
+ $worksOptions = Modems::$select;
+ $worksField = 'compatibility';
+ $interfaceOptions = Modems::$interface;
+
+ parent::__construct($model, $controller, $queryString);
+
+ //load the model
+ $this->model('HardwareModel');
+ $this->model('RevisionsModel');
+ $this->model('ModemsModel');
+ $this->model('TalkModel');
+
+ $this->mod = $this->m['ModemsModel'];
+
+ $this->m['HardwareModel']->id_user = $this->s['registered']->status['id_user'];
+ $this->m['HardwareModel']->type = 'modem';
+
+ $this->m['HardwareModel']->setConditions($worksOptions,$worksField,$interfaceOptions);
+
+ $this->m['HardwareModel']->setFields('model,kernel,description,distribution,comm_year,compatibility,pci_id,interface,driver,other_names','sanitizeAll');
+
+ $argKeys = array(
+ 'page:forceNat' => 1,
+ 'history_page:forceNat' => 1,
+ 'vendor:sanitizeString' => 'undef',
+ 'comm_year:sanitizeString' => 'undef',
+ 'compatibility:sanitizeString' => 'undef',
+ 'interface:sanitizeString' => 'undef',
+ 'sort-by:sanitizeString' => 'undef'
+ );
+
+ $this->setArgKeys($argKeys);
+
+ $data['title'] = 'Modems';
+
+ $data['intefaceOptions'] = $interfaceOptions;
+ $data['worksOptions'] = $worksOptions;
+ $data['worksField'] = $worksField;
+ $this->append($data);
+ }
+
+ public function catalogue($lang = 'en')
+ {
+ $this->shift(1);
+
+ $whereArray = array(
+ 'type' => $this->mod->type,
+ 'vendor' => $this->viewArgs['vendor'],
+ 'comm_year' => $this->viewArgs['comm_year'],
+ 'compatibility' => $this->viewArgs['compatibility'],
+ 'interface' => $this->viewArgs['interface'],
+ );
+
+ $this->mod->setWhereQueryClause($whereArray);
+
+ parent::catalogue($lang);
+ }
+
+ public function view($lang = 'en', $id = 0, $name = null)
+ {
+ parent::view($lang, $id, $name);
+ }
+
+ public function history($lang = 'en', $id = 0)
+ {
+ parent::history($lang, $id);
+ }
+
+ public function revision($lang = 'en', $id_rev = 0)
+ {
+ parent::revision($lang, $id_rev);
+ }
+
+ public function insert($lang = 'en', $token = '')
+ {
+ parent::insert($lang, $token);
+ }
+
+ public function update($lang = 'en', $token = '')
+ {
+ parent::update($lang, $token);
+ }
+
+ public function differences($lang = 'en', $id_hard = 0, $id_rev = 0)
+ {
+ parent::differences($lang, $id_hard, $id_rev);
+ }
+
+ public function climb($lang = 'en', $id_rev = 0, $token = '')
+ {
+ parent::climb($lang, $id_rev, $token);
+ }
+
+ public function talk($lang = 'en', $id_hard = 0, $token = '')
+ {
+ parent::talk($lang, $id_hard, $token);
+ }
+
+} \ No newline at end of file
diff --git a/h-source/Application/Controllers/SdcardreadersController.php b/h-source/Application/Controllers/SdcardreadersController.php
index 6d7b719..c3f580a 100644
--- a/h-source/Application/Controllers/SdcardreadersController.php
+++ b/h-source/Application/Controllers/SdcardreadersController.php
@@ -61,7 +61,7 @@ class SdcardreadersController extends GenericController
$this->setArgKeys($argKeys);
- $data['title'] = 'Bluetooth';
+ $data['title'] = 'SD card readers';
$data['intefaceOptions'] = $interfaceOptions;
$data['worksOptions'] = $worksOptions;
diff --git a/h-source/Application/Include/hardware.php b/h-source/Application/Include/hardware.php
index 91a66be..8248316 100644
--- a/h-source/Application/Include/hardware.php
+++ b/h-source/Application/Include/hardware.php
@@ -42,8 +42,6 @@ class Hardware
return $string;
}
- public static $controllers = array('notebooks','wifi','videocards','printers','scanners','threegcards','soundcards','webcams','bluetooth','acquisitioncards','fingerprintreaders','ethernetcards','sdcardreaders'); //used by UsersController::login()
-
//classId => controller
public static $deviceClasses = array(
'0403' => 'soundcards',
@@ -69,7 +67,8 @@ class Hardware
'acquisition-card' => 'Crystal/cam_mount-22.png',
'fingerprint-reader' => 'fingerprint_icon-22.png',
'ethernet-card' => 'H2O/network-wired_22.png',
- 'sd-card-reader' => 'H2O/media-flash-sd-mmc_22.png',
+ 'sd-card-reader' => 'H2O/media-flash-sd-mmc_22.png',
+ 'modem' => 'Crystal/modem_22.png',
);
public static $typeToController = array(
@@ -86,6 +85,7 @@ class Hardware
'fingerprint-reader' => 'fingerprintreaders',
'ethernet-card' => 'ethernetcards',
'sd-card-reader' => 'sdcardreaders',
+ 'modem' => 'modems',
);
public static function getTypes()
@@ -427,4 +427,13 @@ class Sdcardreaders extends Hardware
public static $interface = "not-specified,USB,PCI,PCI-E,mini-PCI,mini-PCI-E,ExpressCard,PC-Card,Firewire,Parallel,Serial";
+}
+
+class Modems extends Hardware
+{
+
+ public static $select = 'yes,no';
+
+ public static $interface = "not-specified,USB,PCI,PCI-E,mini-PCI,mini-PCI-E,ExpressCard,PC-Card,Firewire,Parallel,Serial";
+
} \ No newline at end of file
diff --git a/h-source/Application/Include/languages.php b/h-source/Application/Include/languages.php
index a4c4254..ad67f4d 100644
--- a/h-source/Application/Include/languages.php
+++ b/h-source/Application/Include/languages.php
@@ -312,7 +312,10 @@ class Lang
/*0264*/"This issue is closed" => "Questa questione è stata chiusa",
/*0265*/"This issue is opened" => "Questa questione è aperta",
/*0266*/"does it adopt any techniques to track users?" => "adotta qualche tecnica per tracciare gli utenti?",
- /*0267*/"Actions carried out by users" => "Azioni compiute dagli utenti"
+ /*0267*/"Actions carried out by users" => "Azioni compiute dagli utenti",
+ /*0268*/"No modems found" => "Non è stato trovato alcun modem",
+ /*0269*/"Download the xml file of all the <b>modems</b> in the database" => "Scarica il file xml di tutti i <b>modem</b> presenti nel database",
+ /*0270*/"Modems and ADSL cards" => "Modem e schede ADSL",
),
'es' => array
(
@@ -1046,6 +1049,7 @@ class Lang
'fingerprintreaders' => 'fingerprint reader',
'ethernetcards' => 'ethernet card',
'sdcardreaders' => 'sd card reader',
+ 'modems' => 'modem',
),
'it' => array(
'notebooks' => 'notebook',
@@ -1061,6 +1065,7 @@ class Lang
'fingerprintreaders' => 'lettore di impronte digitali',
'ethernetcards' => 'scheda ethernet',
'sdcardreaders' => 'lettore di schede sd',
+ 'modems' => 'modem',
),
'es' => array(
'notebooks' => 'portátil',
@@ -1076,6 +1081,7 @@ class Lang
'fingerprintreaders' => 'lector de huella digital',
'ethernetcards' => 'tarjeta de ethernet',
'sdcardreaders' => 'lector de tarjetas sd',
+ 'modems' => 'modem',
),
'fr' => array(
'notebooks' => 'notebook',
@@ -1091,6 +1097,7 @@ class Lang
'fingerprintreaders' => 'lecteur d\'empreintes digitales',
'ethernetcards' => 'carte ethernet',
'sdcardreaders' => 'sd card reader',
+ 'modems' => 'modem',
),
'de' => array(
'notebooks' => 'notebook',
@@ -1106,6 +1113,7 @@ class Lang
'fingerprintreaders' => 'fingerprint reader',
'ethernetcards' => 'ethernet card',
'sdcardreaders' => 'sd card reader',
+ 'modems' => 'modem',
),
);
@@ -1124,6 +1132,7 @@ class Lang
'fingerprintreaders' => 'fingerprint readers',
'ethernetcards' => 'ethernet cards',
'sdcardreaders' => 'sd card readers',
+ 'modems' => 'modems',
),
'it' => array(
'notebooks' => 'notebook',
@@ -1139,6 +1148,7 @@ class Lang
'fingerprintreaders' => 'lettori di impronte digitali',
'ethernetcards' => 'schede ethernet',
'sdcardreaders' => 'lettori di schede sd',
+ 'modems' => 'modem',
),
'es' => array(
'notebooks' => 'portátiles',
@@ -1154,6 +1164,7 @@ class Lang
'fingerprintreaders' => 'lectores de huella digital',
'ethernetcards' => 'tarjetas de ethernet',
'sdcardreaders' => 'lectores de tarjetas sd',
+ 'modems' => 'modems',
),
'fr' => array(
'notebooks' => 'notebooks',
@@ -1169,6 +1180,7 @@ class Lang
'fingerprintreaders' => 'lecteurs d\'empreintes digitales ',
'ethernetcards' => 'cartes ethernet',
'sdcardreaders' => 'sd card readers',
+ 'modems' => 'modems',
),
'de' => array(
'notebooks' => 'notebooks',
@@ -1184,6 +1196,7 @@ class Lang
'fingerprintreaders' => 'fingerprint readers',
'ethernetcards' => 'ethernet cards',
'sdcardreaders' => 'sd card readers',
+ 'modems' => 'modems',
),
);
@@ -1238,6 +1251,7 @@ class MyStrings
'fingerprint-reader' => 'fingerprintreaders',
'ethernet-card' => 'ethernetcards',
'sd-card-reader' => 'sdcardreaders',
+ 'modem' => 'modems',
);
public static function getTypes()
diff --git a/h-source/Application/Models/ModemsModel.php b/h-source/Application/Models/ModemsModel.php
new file mode 100644
index 0000000..5417524
--- /dev/null
+++ b/h-source/Application/Models/ModemsModel.php
@@ -0,0 +1,70 @@
+<?php
+
+// h-source, a web software to build a community of people that want to share their hardware information.
+// Copyright (C) 2010 Antonio Gallo (h-source-copyright.txt)
+//
+// This file is part of h-source
+//
+// h-source is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// h-source is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with h-source. If not, see <http://www.gnu.org/licenses/>.
+
+if (!defined('EG')) die('Direct access not allowed!');
+
+class ModemsModel extends GenericModel
+{
+
+ public $type = 'modem'; //device type
+
+ public function __construct()
+ {
+
+ $this->_popupItemNames = array(
+ 'vendor' => 'vendor',
+ 'comm_year' => 'comm_year',
+ 'compatibility' => 'compatibility',
+ 'interface' => 'interface',
+ );
+
+ $this->_popupLabels = array(
+ 'vendor' => gtext("vendor"),
+ 'comm_year' => gtext("year"),
+ 'compatibility' => gtext("does it work?"),
+ 'interface' => gtext("interface"),
+ );
+
+ $this->_popupFunctions = array(
+ 'vendor' => 'betterVendor',
+ );
+
+ $this->createPopupWhere('vendor,compatibility,comm_year,interface');
+
+ $this->diffFields = array(
+ 'vendor' => gtext("vendor"),
+ 'model' => gtext('model name'),
+ 'other_names' => gtext('possible other names of the device'),
+ 'pci_id' => gtext("VendorID:ProductID code of the device"),
+ 'comm_year' => gtext('year of commercialization'),
+ 'interface' => gtext("interface"),
+ 'distribution' => gtext('GNU/Linux distribution used for the test'),
+ 'kernel' => gtext('tested with the following kernel libre'),
+ 'compatibility' => gtext("does it work with free software?"),
+ 'driver' => gtext("free driver used"),
+ 'description' => gtext('Description'),
+ );
+
+ $this->fieldsWithBreaks = array(gtext('Description'),gtext('possible other names of the device'));
+
+ parent::__construct();
+ }
+
+} \ No newline at end of file
diff --git a/h-source/Application/Views/Download/index.php b/h-source/Application/Views/Download/index.php
index 039dc5b..1275d63 100644
--- a/h-source/Application/Views/Download/index.php
+++ b/h-source/Application/Views/Download/index.php
@@ -93,6 +93,10 @@
<td><?php echo gtext("Download the xml file of all the <b>SD card readers</b> in the database");?></td>
<td><a href="<?php echo $this->baseUrl."/download/sdcardreaders/$lang";?>"><img src="<?php echo $this->baseUrl?>/Public/Img/H2O/download.png"></a></td>
</tr>
+ <tr>
+ <td><?php echo gtext("Download the xml file of all the <b>modems</b> in the database");?></td>
+ <td><a href="<?php echo $this->baseUrl."/download/modems/$lang";?>"><img src="<?php echo $this->baseUrl?>/Public/Img/H2O/download.png"></a></td>
+ </tr>
</table>
</div>
</div>
diff --git a/h-source/Application/Views/Hardware/left.php b/h-source/Application/Views/Hardware/left.php
index a0afa78..ece6e32 100644
--- a/h-source/Application/Views/Hardware/left.php
+++ b/h-source/Application/Views/Hardware/left.php
@@ -77,4 +77,8 @@
<div class="hardware_element">
<img align="middle" class="hardware_element_image" src="<?php echo $this->baseUrl;?>/Public/Img/H2O/media-flash-sd-mmc.png"><a class="hardware_element_link" href="<?php echo $this->baseUrl?>/sdcardreaders/catalogue/<?php echo $lang;?>"><?php echo gtext("SD card readers");?></a>
</div>
+
+ <div class="hardware_element">
+ <img align="middle" class="hardware_element_image" src="<?php echo $this->baseUrl;?>/Public/Img/Crystal/modem.png"><a class="hardware_element_link" href="<?php echo $this->baseUrl?>/modems/catalogue/<?php echo $lang;?>"><?php echo gtext("Modems and ADSL cards");?></a>
+ </div>
</div> \ No newline at end of file
diff --git a/h-source/Application/Views/Modems/catalogue.php b/h-source/Application/Views/Modems/catalogue.php
new file mode 100644
index 0000000..9ac0e44
--- /dev/null
+++ b/h-source/Application/Views/Modems/catalogue.php
@@ -0,0 +1,89 @@
+<?php if (!defined('EG')) die('Direct access not allowed!'); ?>
+
+<?php
+// h-source, a web software to build a community of people that want to share their hardware information.
+// Copyright (C) 2010 Antonio Gallo (h-source-copyright.txt)
+//
+// This file is part of h-source
+//
+// h-source is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// h-source is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with h-source. If not, see <http://www.gnu.org/licenses/>.
+?>
+
+ <div class="viewall_popup_menu_box_external">
+ <div class="viewall_popup_menu_box">
+ <?php echo $popup;?>
+ </div>
+ <div class="viewall_popup_menu_status">
+ <div class="viewall_popup_menu_status_item"><?php echo betterVendor($this->viewArgs['vendor'])?></div>
+ <div class="viewall_popup_menu_status_item"><?php echo $this->viewArgs['comm_year']?></div>
+ <div class="viewall_popup_menu_status_item"><?php echo $this->viewArgs['compatibility']?></div>
+ <div class="viewall_popup_menu_status_item"><?php echo $this->viewArgs['interface']?></div>
+ <div class="viewall_popup_menu_status_item"><?php echo $this->viewArgs['sort-by']?></div>
+ </div>
+ </div>
+
+ <!--if no notebooks found-->
+ <?php if (strcmp($recordNumber,0) === 0) { ?>
+ <div class="viewall_no_items_found">
+ <?php echo gtext("No modems found");?>..
+ </div>
+ <?php } ?>
+
+ <!--loop-->
+ <?php foreach ($table as $item) {?>
+ <div class="model_viewall">
+
+ <div class="notebook_model">
+ <img align="top" class="catalogue_item_icon" src="<?php echo Hardware::getIconFromType($item['hardware']['type']);?>"> <span class="span_model_name"><?php echo gtext("model");?>: <b><?php echo $item['hardware']['model'];?></b></span>
+ </div>
+
+ <?php if ( strcmp($item['hardware']['other_names'],'') !== 0 ) { ?>
+ <div class="notebook_vendor">
+ <div class="inner_label"><?php echo gtext("possible other names of the device");?>:</div>
+ <div class="inner_value"><?php echo nl2br($item['hardware']['other_names']);?></div>
+ </div>
+ <?php } ?>
+
+ <div class="notebook_vendor">
+ <div class="inner_label"><?php echo gtext("vendor");?>:</div>
+ <div class="inner_value"><?php echo betterVendor($item['hardware']['vendor']);?></div>
+ </div>
+
+ <div class="notebook_vendor">
+ <div class="inner_label"><?php echo gtext("year of commercialization");?>:</div>
+ <div class="inner_value"><b><?php echo $item['hardware']['comm_year'];?></b></div>
+ </div>
+
+ <div class="notebook_vendor">
+ <div class="inner_label"><?php echo gtext("interface");?>:</div>
+ <div class="inner_value"><b><?php echo $item['hardware']['interface'];?></b></div>
+ </div>
+
+ <div class="notebook_kernel">
+ <div class="inner_label"><?php echo gtext("does it work with free software?");?></div>
+ <div class="inner_value"><b><?php echo $item['hardware']['compatibility'];?></b></div>
+ </div>
+
+ <div class="notebook_view_link">
+ <a href="<?php echo $this->baseUrl."/".$this->controller."/view/$lang/".$item['hardware']['id_hard'].'/'.encodeUrl($item['hardware']['model']).$this->viewStatus;?>"><?php echo gtext("view the other specifications");?>..</a>
+ </div>
+
+ </div>
+ <?php } ?>
+
+ <?php if (strcmp($recordNumber,0) !== 0) { ?>
+ <div class="history_page_list">
+ <?php echo gtext("page list");?>: <?php echo $pageList;?>
+ </div>
+ <?php } ?> \ No newline at end of file
diff --git a/h-source/Config/Route.php b/h-source/Config/Route.php
index cd052b6..e02afa3 100644
--- a/h-source/Config/Route.php
+++ b/h-source/Config/Route.php
@@ -123,6 +123,7 @@ class Route
'download,fingerprintreaders',
'download,ethernetcards',
'download,sdcardreaders',
+ 'download,modems',
'history,hide',
'history,show',
'history,block',
@@ -234,6 +235,15 @@ class Route
'sdcardreaders,differences',
'sdcardreaders,climb',
'sdcardreaders,talk',
+ 'modems,catalogue',
+ 'modems,view',
+ 'modems,history',
+ 'modems,revision',
+ 'modems,insert',
+ 'modems,update',
+ 'modems,differences',
+ 'modems,climb',
+ 'modems,talk',
);
//it can be 'yes' or 'no'
diff --git a/h-source/Public/Img/Crystal/modem.png b/h-source/Public/Img/Crystal/modem.png
new file mode 100755
index 0000000..f2f9c5b
--- /dev/null
+++ b/h-source/Public/Img/Crystal/modem.png
Binary files differ
diff --git a/h-source/Public/Img/Crystal/modem_22.png b/h-source/Public/Img/Crystal/modem_22.png
new file mode 100755
index 0000000..da7e61d
--- /dev/null
+++ b/h-source/Public/Img/Crystal/modem_22.png
Binary files differ