Hello community,
here is the log from the commit of package yast2-add-on
checked in at Fri Jul 11 16:14:06 CEST 2008.
--------
--- yast2-add-on/yast2-add-on.changes 2008-06-17 15:07:04.000000000 +0200
+++ /mounts/work_src_done/STABLE/yast2-add-on/yast2-add-on.changes 2008-07-10 10:40:51.000000000 +0200
@@ -1,0 +2,7 @@
+Fri Jun 27 18:11:27 CEST 2008 - locilka@suse.cz
+
+- Implemented Add-Ons overview (FATE #303588).
+- Implemented deinstallation of Add-On (FATE #300654).
+- 2.17.1
+
+-------------------------------------------------------------------
Old:
----
yast2-add-on-2.17.0.tar.bz2
New:
----
yast2-add-on-2.17.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-add-on.spec ++++++
--- /var/tmp/diff_new_pack.P10759/_old 2008-07-11 12:33:19.000000000 +0200
+++ /var/tmp/diff_new_pack.P10759/_new 2008-07-11 12:33:19.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-add-on (Version 2.17.0)
+# spec file for package yast2-add-on (Version 2.17.1)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -12,12 +12,12 @@
Name: yast2-add-on
-Version: 2.17.0
+Version: 2.17.1
Release: 1
License: GPL v2 or later
Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-add-on-2.17.0.tar.bz2
+Source0: yast2-add-on-2.17.1.tar.bz2
Prefix: /usr
Requires: autoyast2-installation
# WorkflowManager module
@@ -35,6 +35,8 @@
Provides: yast2-installation:/usr/share/YaST2/clients/add-on.ycp
# SCR::RegisterNewAgents, bugzilla #245508
Conflicts: yast2-core < 2.15.4
+# Fixed Pkg::GetPackages(`available) to ignore installed packages
+Conflicts: yast2-pkg-bindings < 2.17.2
BuildArch: noarch
Summary: YaST2 - Add-On media installation code
@@ -49,7 +51,7 @@
Lukas Ocilka
%prep
-%setup -n yast2-add-on-2.17.0
+%setup -n yast2-add-on-2.17.1
%build
%{prefix}/bin/y2tool y2autoconf
@@ -87,6 +89,10 @@
/usr/share/YaST2/schema/autoyast/rnc/add-on.rnc
%doc %{prefix}/share/doc/packages/yast2-add-on
%changelog
+* Fri Jun 27 2008 locilka@suse.cz
+- Implemented Add-Ons overview (FATE #303588).
+- Implemented deinstallation of Add-On (FATE #300654).
+- 2.17.1
* Tue Jun 17 2008 lslezak@suse.cz
- use Pkg::SourceSaveAll() instead of Pkg::SourceFinishAll()
(bnc#395738)
++++++ yast2-add-on-2.17.0.tar.bz2 -> yast2-add-on-2.17.1.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-add-on-2.17.0/add-on.pot new/yast2-add-on-2.17.1/add-on.pot
--- old/yast2-add-on-2.17.0/add-on.pot 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-add-on-2.17.1/add-on.pot 2007-11-19 16:43:35.000000000 +0100
@@ -0,0 +1,433 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR SuSE Linux Products GmbH, Nuernberg
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR , YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-11-19 16:43+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. radio button
+#: src/add-on-workflow.ycp:96
+msgid "&Scan Using SLP..."
+msgstr ""
+
+#. radio button
+#: src/add-on-workflow.ycp:98
+msgid "&FTP..."
+msgstr ""
+
+#. radio button
+#: src/add-on-workflow.ycp:100
+msgid "&HTTP..."
+msgstr ""
+
+#. radio button
+#: src/add-on-workflow.ycp:102
+msgid "HTT&PS..."
+msgstr ""
+
+#. radio button
+#: src/add-on-workflow.ycp:104
+msgid "&SMB/CIFS"
+msgstr ""
+
+#. radio button
+#: src/add-on-workflow.ycp:106
+msgid "&NFS..."
+msgstr ""
+
+#. radio button
+#: src/add-on-workflow.ycp:108 src/add-on-workflow.ycp:125
+msgid "&CD..."
+msgstr ""
+
+#. radio button
+#: src/add-on-workflow.ycp:110 src/add-on-workflow.ycp:127
+msgid "&DVD..."
+msgstr ""
+
+#. radio button
+#: src/add-on-workflow.ycp:112 src/add-on-workflow.ycp:129
+msgid "&Local Directory..."
+msgstr ""
+
+#. radio button
+#: src/add-on-workflow.ycp:114 src/add-on-workflow.ycp:131
+msgid "Specify &URL..."
+msgstr ""
+
+#. dialog caption
+#: src/add-on-workflow.ycp:140 src/add-on.ycp:56
+msgid "Add-On Product Media"
+msgstr ""
+
+#. help
+#: src/add-on-workflow.ycp:142
+msgid ""
+"<p><big><b>Software Repository</b></big><br>\n"
+"Add-on products can be installed from CD, over a\n"
+"network, or from the hard disk.</p>\n"
+msgstr ""
+
+#. help, continued
+#: src/add-on-workflow.ycp:148
+msgid ""
+"<p>\n"
+"To install add-on product from <b>CD</b>,\n"
+"have the product CD set or the DVD available.</p>"
+msgstr ""
+
+#. help, continued
+#: src/add-on-workflow.ycp:153
+msgid ""
+"<p>\n"
+"The product CDs can be copied to the hard disk.\n"
+"Insert the path where the first\n"
+"CD is located, for example, /data1/<b>CD1</b>.\n"
+"Only the base path is required if all CDs are copied\n"
+"into one directory.</p>\n"
+msgstr ""
+
+#. help, continued
+#: src/add-on-workflow.ycp:162
+msgid ""
+"<p>\n"
+"Network installation requires a working network connection.\n"
+"Specify the directory where the packages from\n"
+"the first CD are located, such as /data1/CD1.</p>\n"
+msgstr ""
+
+#. yes-no popup
+#. if (Stage::initial())
+#. {
+#. if (Popup::ConfirmAbort (`painless))
+#. break;
+#. }
+#. else
+#. {
+#. yes-no popup
+#: src/add-on-workflow.ycp:238 src/add-on-workflow.ycp:498
+#: src/add-on-workflow.ycp:787
+msgid "Really abort add-on product installation?"
+msgstr ""
+
+#. popup error message, %1 is the package name
+#: src/add-on-workflow.ycp:279
+#, ycp-format
+msgid ""
+"Cannot search for SLP installation sources\n"
+"without having %1 package installed"
+msgstr ""
+
+#: src/add-on-workflow.ycp:310
+msgid "Insert the add-on product CD"
+msgstr ""
+
+#: src/add-on-workflow.ycp:311
+msgid "Insert the add-on product DVD"
+msgstr ""
+
+#. error report
+#: src/add-on-workflow.ycp:397
+msgid "No software repository found on medium."
+msgstr ""
+
+#. busy message
+#: src/add-on-workflow.ycp:414
+msgid "Initializing new source..."
+msgstr ""
+
+#. error report
+#: src/add-on-workflow.ycp:442 src/add-on-workflow.ycp:545
+msgid "Failed to initialize the software repository."
+msgstr ""
+
+#. placeholder for unknown directory
+#. place holder for unknown URL
+#. placeholder for unknown path
+#. placeholder for unknown URL
+#. placeholder for unknown path
+#. summary item, %1 is product name, %2 media URL, %3 directory on media
+#: src/add-on-workflow.ycp:460 src/add-on-workflow.ycp:465
+#: src/add-on-workflow.ycp:959 src/add-on-workflow.ycp:965
+#: src/add-on_proposal.ycp:32 src/add-on_proposal.ycp:36
+msgid "Unknown"
+msgstr ""
+
+#: src/add-on-workflow.ycp:463
+#, ycp-format
+msgid "URL: %1, Directory: %2"
+msgstr ""
+
+#. dialog caption
+#: src/add-on-workflow.ycp:469
+msgid "Software Repository Selection"
+msgstr ""
+
+#. help text
+#: src/add-on-workflow.ycp:471
+msgid ""
+"<p><big><b>Software Repository Selection</b></big><br>\n"
+"There were multiple repositories found on the selected medium.\n"
+"Select the repository to use.</p>\n"
+msgstr ""
+
+#: src/add-on-workflow.ycp:478
+msgid "Repositories &Found"
+msgstr ""
+
+#. popup message
+#: src/add-on-workflow.ycp:514
+msgid "Select a repository."
+msgstr ""
+
+#. table cell
+#: src/add-on-workflow.ycp:615
+msgid "No product found in the repository"
+msgstr ""
+
+#. error pop-up
+#: src/add-on-workflow.ycp:685 src/add-on-workflow.ycp:842
+msgid ""
+"The product on the media is already installed\n"
+"or selected for installation."
+msgstr ""
+
+#. message popup
+#: src/add-on-workflow.ycp:703
+msgid "Dependencies of the add-on product cannot be fulfilled."
+msgstr ""
+
+#. dialog caption
+#: src/add-on-workflow.ycp:760
+msgid "Product Selection"
+msgstr ""
+
+#. multi selection list
+#: src/add-on-workflow.ycp:764
+msgid "Available Products"
+msgstr ""
+
+#. help text
+#: src/add-on-workflow.ycp:768
+msgid ""
+"<p><b><big>Product Selection</big></b><br>\n"
+"There were multiple products found in the repository. Select the products\n"
+"to install.</p>\n"
+msgstr ""
+
+#. message popup
+#: src/add-on-workflow.ycp:829
+msgid "Dependencies of the selected add-on products cannot be fulfilled."
+msgstr ""
+
+#. main screen heading
+#. feedback heading
+#. TRANSLATORS: dialog caption
+#: src/add-on-workflow.ycp:946 src/add-on.ycp:120
+#: src/inst_language_add-on.ycp:114 src/inst_language_add-on.ycp:163
+msgid "Add-On Product Installation"
+msgstr ""
+
+#. Help for add-on products
+#: src/add-on-workflow.ycp:949
+msgid ""
+"<p><big><b>Add-On Product Installation</b></big></br>\n"
+"Here see all add-on products that are selected for installation.\n"
+"To add a new product, click <b>Add</b>. To remove an already added one,\n"
+"select it and click <b>Delete</b>.</p>"
+msgstr ""
+
+#. table cell, %1 is URL, %2 is directory name
+#: src/add-on-workflow.ycp:963
+#, ycp-format
+msgid "%1, Directory: %2"
+msgstr ""
+
+#. table header
+#: src/add-on-workflow.ycp:978
+msgid "Product"
+msgstr ""
+
+#. table header
+#: src/add-on-workflow.ycp:980
+msgid "Media"
+msgstr ""
+
+#. message report
+#: src/add-on-workflow.ycp:1078
+msgid "Select a product to delete."
+msgstr ""
+
+#. TRANSLATORS: commandline help
+#: src/add-on.ycp:33
+msgid ""
+"\n"
+"Add-On Module Help\n"
+"------------------\n"
+"\n"
+"To add a new Add-On product via command-line, use this syntax:\n"
+" /sbin/yast2 add-on URL\n"
+"URL is the path to the Add-On source.\n"
+"\n"
+"Examples of URL:\n"
+"http://server.name/directory/Lang-AddOn-10.2-i386/\n"
+"ftp://server.name/directory/Lang-AddOn-10.2-i386/\n"
+"nfs://server.name/directory/SDK1-SLE-i386/\n"
+"disk://dev/sda5/directory/Product/CD1/\n"
+"cd://\n"
+"dvd://\n"
+msgstr ""
+
+#. busy message (dialog)
+#. TRANSLATORS: dialog content - a very simple label
+#: src/add-on.ycp:58 src/inst_language_add-on.ycp:116
+msgid "Initializing..."
+msgstr ""
+
+#. help
+#. TRANSLATORS: help text
+#: src/add-on.ycp:60 src/inst_language_add-on.ycp:118
+msgid "<p>Initializing add-on products...</p>"
+msgstr ""
+
+#: src/add-on.ycp:123
+msgid "Reading packages available on the installation sources..."
+msgstr ""
+
+#: src/add-on_auto.ycp:59
+#, ycp-format
+msgid "<li>Media: %1, Path: %2, Product: %3</li>\n"
+msgstr ""
+
+#. error report
+#: src/add-on_auto.ycp:162
+msgid "Failed to add add-on product."
+msgstr ""
+
+#. summary string
+#: src/add-on_proposal.ycp:41
+msgid "No add-on product selected for installation"
+msgstr ""
+
+#. this is a heading
+#: src/add-on_proposal.ycp:69
+msgid "Add-On Products"
+msgstr ""
+
+#. this is a menu entry
+#: src/add-on_proposal.ycp:71
+msgid "Add-On &Products"
+msgstr ""
+
+#. TRANSLATORS: popup message
+#: src/inst_language_add-on.ycp:77
+msgid "Installation of the Language Extension has been finished."
+msgstr ""
+
+#. TRANSLATORS:: multi-selection box
+#: src/inst_language_add-on.ycp:170
+msgid "&Select Language Extensions to Be Installed"
+msgstr ""
+
+#. TRANSLATORS: help text
+#: src/inst_language_add-on.ycp:177
+msgid "<p>Select language extensions to be installed and click <b>Accept</b>.</p>"
+msgstr ""
+
+#. TRANSLATORS: popup question
+#: src/inst_language_add-on.ycp:194
+msgid "Are you sure you want to abort the add-on product installation?"
+msgstr ""
+
+#: src/inst_language_add-on.ycp:203
+msgid ""
+"There are no selected languages to be installed.\n"
+"Are you sure you want to abort the installation?"
+msgstr ""
+
+#. TRANSLATORS: multiselection box item, %1 stands for 'ar', 'mk', 'zh_TW'
+#. it used only as a fallback
+#: src/inst_language_add-on.ycp:251
+#, ycp-format
+msgid "Language %1"
+msgstr ""
+
+#. TRANSLATORS: pop-up headline
+#: src/misc.ycp:65
+msgid "Warning: Not enough memory!"
+msgstr ""
+
+#. TRANSLATORS: pop-up question
+#: src/misc.ycp:67
+msgid ""
+"Your system does not seem to have enough memory to use add-on products\n"
+"during installation. You can enable add-on products later when the\n"
+"system is running.\n"
+"\n"
+"Do you want to skip using add-on products?"
+msgstr ""
+
+#. TRANSLATORS: error message - the module does not provide command line interface
+#: src/vendor.ycp:29
+msgid "There is no user interface available for this module."
+msgstr ""
+
+#. VENDOR: main screen heading
+#: src/vendor.ycp:92
+msgid "Vendor Driver CD"
+msgstr ""
+
+#. VENDOR: cant mount /dev/cdrom popup
+#: src/vendor.ycp:108
+msgid "Please insert the vendor CD-ROM"
+msgstr ""
+
+#. VENDOR: vendor cd contains wrong data
+#: src/vendor.ycp:157 src/vendor.ycp:171 src/vendor.ycp:219
+msgid ""
+"Could not find driver data on the CD-ROM.\n"
+"Aborting now."
+msgstr ""
+
+#. VENDOR: vendor cd doesn't contain data for current system and linux version
+#: src/vendor.ycp:194
+msgid ""
+"The CD-ROM data does not match the running Linux system.\n"
+"Aborting now.\n"
+msgstr ""
+
+#. VENDOR: dialog heading
+#: src/vendor.ycp:256
+msgid "Installing driver..."
+msgstr ""
+
+#. VENDOR: popup if installation of driver failed
+#: src/vendor.ycp:265
+msgid ""
+"The installation failed.\n"
+"Contact the address on the CD-ROM.\n"
+msgstr ""
+
+#. VENDOR: message box with number of drivers installed
+#: src/vendor.ycp:277
+#, ycp-format
+msgid "Installed %1 drivers from CD"
+msgstr ""
+
+#. VENDOR: message box with error text
+#: src/vendor.ycp:282
+msgid ""
+"No driver data found on the CD-ROM.\n"
+"Aborting now."
+msgstr ""
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-add-on-2.17.0/configure new/yast2-add-on-2.17.1/configure
--- old/yast2-add-on-2.17.0/configure 2008-06-17 15:02:55.000000000 +0200
+++ new/yast2-add-on-2.17.1/configure 2008-07-10 10:41:26.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for yast2-add-on 2.17.0.
+# Generated by GNU Autoconf 2.61 for yast2-add-on 2.17.1.
#
# Report bugs to http://bugs.opensuse.org/.
#
@@ -574,8 +574,8 @@
# Identity of this package.
PACKAGE_NAME='yast2-add-on'
PACKAGE_TARNAME='yast2-add-on'
-PACKAGE_VERSION='2.17.0'
-PACKAGE_STRING='yast2-add-on 2.17.0'
+PACKAGE_VERSION='2.17.1'
+PACKAGE_STRING='yast2-add-on 2.17.1'
PACKAGE_BUGREPORT='http://bugs.opensuse.org/'
ac_unique_file="RPMNAME"
@@ -1197,7 +1197,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures yast2-add-on 2.17.0 to adapt to many kinds of systems.
+\`configure' configures yast2-add-on 2.17.1 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1268,7 +1268,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of yast2-add-on 2.17.0:";;
+ short | recursive ) echo "Configuration of yast2-add-on 2.17.1:";;
esac
cat <<\_ACEOF
@@ -1346,7 +1346,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-yast2-add-on configure 2.17.0
+yast2-add-on configure 2.17.1
generated by GNU Autoconf 2.61
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1360,7 +1360,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by yast2-add-on $as_me 2.17.0, which was
+It was created by yast2-add-on $as_me 2.17.1, which was
generated by GNU Autoconf 2.61. Invocation command line was
$ $0 $@
@@ -2181,7 +2181,7 @@
# Define the identity of the package.
PACKAGE='yast2-add-on'
- VERSION='2.17.0'
+ VERSION='2.17.1'
cat >>confdefs.h <<_ACEOF
@@ -2409,7 +2409,7 @@
-VERSION="2.17.0"
+VERSION="2.17.1"
RPMNAME="yast2-add-on"
MAINTAINER="Lukas Ocilka "
@@ -3304,7 +3304,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by yast2-add-on $as_me 2.17.0, which was
+This file was extended by yast2-add-on $as_me 2.17.1, which was
generated by GNU Autoconf 2.61. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -3347,7 +3347,7 @@
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-yast2-add-on config.status 2.17.0
+yast2-add-on config.status 2.17.1
configured by $0, generated by GNU Autoconf 2.61,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-add-on-2.17.0/configure.in new/yast2-add-on-2.17.1/configure.in
--- old/yast2-add-on-2.17.0/configure.in 2008-06-17 15:02:50.000000000 +0200
+++ new/yast2-add-on-2.17.1/configure.in 2008-07-10 10:41:23.000000000 +0200
@@ -1,9 +1,9 @@
dnl configure.in for yast2-add-on
dnl
-dnl -- This file is generated by y2autoconf 2.16.7 - DO NOT EDIT! --
+dnl -- This file is generated by y2autoconf 2.17.0 - DO NOT EDIT! --
dnl (edit configure.in.in instead)
-AC_INIT(yast2-add-on, 2.17.0, http://bugs.opensuse.org/, yast2-add-on)
+AC_INIT(yast2-add-on, 2.17.1, http://bugs.opensuse.org/, yast2-add-on)
dnl Check for presence of file 'RPMNAME'
AC_CONFIG_SRCDIR([RPMNAME])
@@ -18,7 +18,7 @@
AM_INIT_AUTOMAKE(tar-ustar -Wno-portability)
dnl Important YaST2 variables
-VERSION="2.17.0"
+VERSION="2.17.1"
RPMNAME="yast2-add-on"
MAINTAINER="Lukas Ocilka "
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-add-on-2.17.0/src/add-on-workflow.ycp new/yast2-add-on-2.17.1/src/add-on-workflow.ycp
--- old/yast2-add-on-2.17.0/src/add-on-workflow.ycp 2008-06-17 09:08:10.000000000 +0200
+++ new/yast2-add-on-2.17.1/src/add-on-workflow.ycp 2008-07-10 10:33:17.000000000 +0200
@@ -1021,5 +1021,342 @@
return ret;
}
+// AddOnsOverviewDialog -->
+
+void CreateAddOnsOverviewDialog () {
+ y2milestone ("Creating OverviewDialog");
+
+ Wizard::SetContents (
+ // TRANSLATORS: dialog caption
+ _("Installed Add-On Products"),
+ `VBox (
+ `Table (
+ `id ("list_of_addons"),
+ `opt (`notify, `immediate),
+ `header (
+ // TRANSLATORS: table header item
+ _("Add-On Product"),
+ // TRANSLATORS: table header item
+ _("URL")
+ ),
+ []
+ ),
+ `VSquash(
+ `MinHeight (3,
+ `RichText (`id ("product_details"), "")
+ )
+ ),
+ `HBox (
+ `PushButton (`id (`add), Label::AddButton()),
+ `HSpacing (1),
+ `PushButton (`id (`delete), Label::DeleteButton()),
+ `HStretch(),
+ // TRANSLATORS: push button
+ `PushButton (`id (`packager), _("Run &Package Manager..."))
+ )
+ ),
+ // TRANSLATORS: dialog help adp/1
+ _("<p>Here you can see all add-on products installed on your system.</p>") +
+ // TRANSLATORS: dialog help adp/2
+ _("<p>Use <b>Add</b> button to use a new add-on product or <b>Delete</b> to remove an add-on in use.</p>"),
+ false,
+ true
+ );
+
+ Wizard::SetAbortButton (`abort, Label::CancelButton());
+ Wizard::SetNextButton (`next, Label::OKButton());
+}
+
+map product_infos = $[];
+
+map ReturnCurrentlySelectedProductInfo () {
+ if (! UI::WidgetExists (`id ("list_of_addons"))) {
+ y2error ("No such widget: %1", "list_of_addons");
+ return nil;
+ }
+
+ string item_id = (string) UI::QueryWidget (`id ("list_of_addons"), `CurrentItem);
+
+ // no items
+ if (item_id == nil) {
+ return nil;
+ }
+
+ if (! regexpmatch (item_id, "product_")) {
+ y2error ("Wrong product ID '%1'", item_id);
+ return nil;
+ }
+
+ item_id = substring (item_id, 8);
+
+ return product_infos[item_id]:$[];
+}
+
+void AdjustInfoWidget () {
+ map pi = ReturnCurrentlySelectedProductInfo();
+ if (pi == nil || pi == $[]) {
+ UI::ChangeWidget (`id ("product_details"), `Value, "");
+ return;
+ }
+
+ string rt_description = sformat (
+ "<p>%1
+%2
+%3</p>",
+ sformat (
+ _("<b>Vendor:</b> %1<br>"),
+ pi["product","vendor"]:_("Unknown vendor")
+ ),
+ sformat (
+ _("<b>Repository URL:</b> %1<br>"),
+ pi["repository","url"]:_("Unknown repository URL")
+ ),
+ (pi["repository","url"]:"" != pi["repository","alias"]:"" ?
+ sformat (_("<b>Repository Alias:</b> %1<br>"), pi["repository","alias"]:"")
+ :
+ ""
+ )
+ );
+
+ UI::ChangeWidget (`id ("product_details"), `Value, rt_description);
+}
+
+void RedrawAddOnsOverviewTable () {
+ list