'shortcut' => 'sp',
'options' => array(),
'doc' => '
-Lists all packages which match the search paramteres (first param
+Lists all packages which match the search paramteres (first param
is package name, second package info)',
),
'list-all' => array(
function doRemoteInfo($command, $options, $params)
{
-/*
- return false; // coming soon
-
- var_dump($params[0]);
- $r = new PEAR_Remote($this->config);
- $info = $r->call('package.info', $params[0]);
- if (PEAR::isError($info)) {
- return $this->raiseError($info);
+ if (sizeof($params) != 1) {
+ return $this->raiseError("$command expects one param: the remote package name");
}
-
- var_dump($info);
-*/
$r = new PEAR_Remote($this->config);
$available = $r->call('package.listAll', true);
if (PEAR::isError($available)) {
$reg = new PEAR_Registry($this->config->get('php_dir'));
$installed = $reg->packageInfo($info['name']);
- $info['installed'] = $installed['version'];
-
+ $info['installed'] = $installed['version'] ? $installed['version'] : '- no -';
+
$this->ui->outputData($info, $command);
-
- return true; // coming soon
}
// }}}
'border' => true,
'headline' => array('Package', 'Latest', 'Local'),
);
-
+
foreach ($available as $name => $info) {
$installed = $reg->packageInfo($name);
$desc = $info['summary'];
if (isset($params[$name]))
$desc .= "\n\n".$info['description'];
-
+
$data['data'][$info['category']][] = array(
- $name,
- $info['stable'],
+ $name,
+ $info['stable'],
$installed['version'],
$desc,
);
if ((!isset($params[0]) || empty($params[0]))
&& (!isset($params[1]) || empty($params[1])))
{
- return $this->raiseError('no valid search string suppliedy<');
+ return $this->raiseError('no valid search string supplied');
};
-
+
$r = new PEAR_Remote($this->config);
$reg = new PEAR_Registry($this->config->get('php_dir'));
$available = $r->call('package.listAll', true);
'border' => true,
'headline' => array('Package', 'Latest', 'Local'),
);
-
+
foreach ($available as $name => $info) {
$found = (!empty($params[0]) && stristr($name, $params[0]) !== false);
if (!$found && !(isset($params[1]) && !empty($params[1])
&& (stristr($info['summary'], $params[1]) !== false
|| stristr($info['description'], $params[1]) !== false)))
- {
+ {
continue;
};
-
+
$installed = $reg->packageInfo($name);
$desc = $info['summary'];
if (isset($params[$name]))
$desc .= "\n\n".$info['description'];
-
+
$data['data'][$info['category']][] = array(
- $name,
- $info['stable'],
+ $name,
+ $info['stable'],
$installed['version'],
$desc,
);
case 'remote-info':
$data = array(
'caption' => 'Package details:',
- 'border' => false,
+ 'border' => true,
'data' => array(
- array("Latest", $data['stable']),
+ array("Latest", $data['stable']),
array("Installed", $data['installed']),
- array("Package", $data['name']),
- array("License", $data['license']),
- array("Category", $data['category']),
- array("Summary", $data['summary']),
+ array("Package", $data['name']),
+ array("License", $data['license']),
+ array("Category", $data['category']),
+ array("Summary", $data['summary']),
array("Description", $data['description']),
),
);
$opts = array(0 => array('wrap' => 25),
1 => array('wrap' => 55)
);
- } else {
+ } elseif ($count == 3) {
$opts = array(0 => array('wrap' => 20),
1 => array('wrap' => 20),
2 => array('wrap' => 40)