Commit fbe58c8f authored by Dele Olajide's avatar Dele Olajide

Merge pull request #507 from guusdk/OF-1037

OF-1037: Split Bookmarks from ClientControl.
parents baf37844 8bcfe069
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Bookmarks Plugin Changelog</title>
<style type="text/css">
BODY {
font-size : 100%;
}
BODY, TD, TH {
font-family : tahoma, verdana, arial, helvetica, sans-serif;
font-size : 0.8em;
}
H2 {
font-size : 10pt;
font-weight : bold;
padding-left : 1em;
}
A:hover {
text-decoration : none;
}
H1 {
font-family : tahoma, arial, helvetica, sans-serif;
font-size : 1.4em;
font-weight: bold;
border-bottom : 1px #ccc solid;
padding-bottom : 2px;
}
TT {
font-family : courier new;
font-weight : bold;
color : #060;
}
PRE {
font-family : courier new;
font-size : 100%;
}
</style>
</head>
<body>
<h1>
Bookmarks Plugin Changelog
</h1>
<p><b>1.0.0</b> -- January 11, 2016</p>
<ul>
<li>Functionality splitted off from the ClientControl plugin.</li>
</ul>
</body>
</html>
<?xml version="1.0" encoding="UTF-8"?>
<plugin>
<!-- Main plugin class -->
<class>org.igniterealtime.openfire.plugin.BookmarksPlugin</class>
<!-- Plugin meta-data -->
<name>Bookmarks</name>
<description>Allows clients to store URL and group chat bookmarks (XEP-0048)</description>
<author>Ignite Realtime</author>
<version>1.0.0</version>
<date>1/11/2015</date>
<minServerVersion>4.0.0</minServerVersion>
<!-- Keep the 'clientcontrol' database key for backwards compatibility. Client control itself does not have any database. -->
<databaseKey>clientcontrol</databaseKey>
<databaseVersion>0</databaseVersion>
<!-- UI extension -->
<adminconsole>
<tab id="tab-server">
<sidebar id="bookmarks" name="${admin.sidebar.bookmarks.name}" description="${admin.sidebar.bookmarks.description}">
<item id="groupchat-bookmarks" name="${admin.item.groupchat-bookmarks.name}"
url="groupchat-bookmarks.jsp"
description="${admin.item.groupchat-bookmarks.description}"/>
<item id="url-bookmarks" name="${admin.item.url-bookmarks.name}"
url="url-bookmarks.jsp"
description="${admin.item.url-bookmarks.description}"/>
</sidebar>
</tab>
</adminconsole>
</plugin>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Bookmarks Plugin Readme</title>
<style type="text/css">
BODY {
font-size : 100%;
}
BODY, TD, TH {
font-family : tahoma, verdana, arial, helvetica, sans-serif;
font-size : 0.8em;
}
H2 {
font-size : 10pt;
font-weight : bold;
}
A:hover {
text-decoration : none;
}
H1 {
font-family : tahoma, arial, helvetica, sans-serif;
font-size : 1.4em;
font-weight: bold;
border-bottom : 1px #ccc solid;
padding-bottom : 2px;
}
TT {
font-family : courier new;
font-weight : bold;
color : #060;
}
PRE {
font-family : courier new;
font-size : 100%;
}
#datatable TH {
color : #fff;
background-color : #2A448C;
text-align : left;
}
#datatable TD {
background-color : #FAF6EF;
}
#datatable .name {
background-color : #DCE2F5;
}
</style>
</head>
<body>
<h1>
Bookmarks Plugin Readme
</h1>
<h2>Overview</h2>
<p>
The bookmarks plugin allows to manage groupchat and URL bookmarks.
</p>
<h2>Installation</h2>
<p>
Copy bookmark.jar into the plugins directory of your Openfire installation.
The plugin will then be automatically deployed. To upgrade to a new version,
copy the new bookmark.jar file over the existing file.
</p>
<h2>Upgrading from ClientControl</h2>
<p>
The functionality provided by the Bookmarks plugin was past of the
ClientControl plugin (up to and including version 1.3.1 of ClientControl).
If you are upgrading from ClientControl, all bookmarks will continue
to be available. It is however recommended to avoid using the Bookmarks
plugin in combination with the ClientControl plugin version 1.3.1 or
earlier.
</p>
<h2>Upgrading from Enterprise</h2>
<p>
If you are upgrading from the Enterprise plugin, and wish to keep your old
bookmarks, you will need to manually run some database scripts to
perform the migration. Note, if you don't care about your previous
bookmarks, you don't have to worry about these steps.
</p>
<p>
First, you will need to shut down your Openfire server and remove the
enterprise plugin. To do this, perform the following steps:
<ol>
<li>Shut down your Openfire server</li>
<li>Remove the <b>enterprise.jar</b> file and the <b>enterprise</b> directory from the plugins directory in your Openfire install root</li>
<li>Install this plugin, <b>clientControl.jar</b> by copying it into the plugins directory.</li>
<li>At this point, you will need to start up Openfire and let it extract and install the <b>clientControl</b> plugin. You can watch for this to occur by looking under the Plugins tab in the Openfire admin console. Once it appears in the list, continue to the next step.</li>
<li>Shut the server back down again.</li>
<li>Go into your plugins/clientControl/database directory. There you will see
some scripts prefixed with <b>import_</b>. Log into your database, switch
to the Openfire's database as you configured during setup (you can find
this information in conf/openfire.xml if you don't remember it), and run
the script that matches the database you are using. Note that the embedded
database is hsqldb and you can use the script in bin/extra from the Openfire
install root (bin/extra/embedded-db-viewer.sh or
bin/extra/embedded-db-viewer.bat, depending on whether you are using Windows)
to access your embedded database.</li>
<li>Once the script has completed, you can start Openfire back up and all of your settings should be the way they were when you were running the Enterprise plugin.</li>
</ol>
</p>
</body>
</html>
-- $Revision$ -- $Revision$
-- $Date$ -- $Date$
INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0); INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0);
CREATE TABLE ofBookmark ( CREATE TABLE ofBookmark (
bookmarkID INTEGER NOT NULL, bookmarkID INTEGER NOT NULL,
bookmarkType VARCHAR(50) NOT NULL, bookmarkType VARCHAR(50) NOT NULL,
bookmarkName VARCHAR(255) NOT NULL, bookmarkName VARCHAR(255) NOT NULL,
bookmarkValue VARCHAR(1024) NOT NULL, bookmarkValue VARCHAR(1024) NOT NULL,
isGlobal INTEGER NOT NULL, isGlobal INTEGER NOT NULL,
CONSTRAINT ofBookmark_pk PRIMARY KEY (bookmarkID) CONSTRAINT ofBookmark_pk PRIMARY KEY (bookmarkID)
); );
CREATE TABLE ofBookmarkPerm ( CREATE TABLE ofBookmarkPerm (
bookmarkID INTEGER NOT NULL, bookmarkID INTEGER NOT NULL,
bookmarkType INTEGER NOT NULL, bookmarkType INTEGER NOT NULL,
name VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL,
CONSTRAINT ofBookmarkPerm_pk PRIMARY KEY(bookmarkID, name, bookmarkType) CONSTRAINT ofBookmarkPerm_pk PRIMARY KEY(bookmarkID, name, bookmarkType)
); );
CREATE TABLE ofBookmarkProp ( CREATE TABLE ofBookmarkProp (
bookmarkID INTEGER NOT NULL, bookmarkID INTEGER NOT NULL,
name VARCHAR(100) NOT NULL, name VARCHAR(100) NOT NULL,
propValue LONG VARCHAR NOT NULL, propValue LONG VARCHAR NOT NULL,
CONSTRAINT ofBookmarkProp_pk PRIMARY KEY (bookmarkID, name) CONSTRAINT ofBookmarkProp_pk PRIMARY KEY (bookmarkID, name)
); );
// $Revision$ // $Revision$
// $Date$ // $Date$
INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0); INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0);
CREATE TABLE ofBookmark ( CREATE TABLE ofBookmark (
bookmarkID BIGINT NOT NULL, bookmarkID BIGINT NOT NULL,
bookmarkType VARCHAR(50) NOT NULL, bookmarkType VARCHAR(50) NOT NULL,
bookmarkName VARCHAR(255) NOT NULL, bookmarkName VARCHAR(255) NOT NULL,
bookmarkValue VARCHAR(1024) NOT NULL, bookmarkValue VARCHAR(1024) NOT NULL,
isGlobal INT NOT NULL, isGlobal INT NOT NULL,
CONSTRAINT ofBookmark_pk PRIMARY KEY (bookmarkID) CONSTRAINT ofBookmark_pk PRIMARY KEY (bookmarkID)
); );
CREATE TABLE ofBookmarkPerm ( CREATE TABLE ofBookmarkPerm (
bookmarkID BIGINT NOT NULL, bookmarkID BIGINT NOT NULL,
bookmarkType INTEGER NOT NULL, bookmarkType INTEGER NOT NULL,
name VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL,
CONSTRAINT ofBookmarkPerm_pk PRIMARY KEY(bookmarkID, name, bookmarkType) CONSTRAINT ofBookmarkPerm_pk PRIMARY KEY(bookmarkID, name, bookmarkType)
); );
CREATE TABLE ofBookmarkProp ( CREATE TABLE ofBookmarkProp (
bookmarkID BIGINT NOT NULL, bookmarkID BIGINT NOT NULL,
name VARCHAR(100) NOT NULL, name VARCHAR(100) NOT NULL,
propValue LONGVARCHAR NOT NULL, propValue LONGVARCHAR NOT NULL,
CONSTRAINT ofBookmarkProp_pk PRIMARY KEY (bookmarkID, name) CONSTRAINT ofBookmarkProp_pk PRIMARY KEY (bookmarkID, name)
); );
# $Revision$ # $Revision$
# $Date$ # $Date$
INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0); INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0);
CREATE TABLE ofBookmark ( CREATE TABLE ofBookmark (
bookmarkID BIGINT NOT NULL, bookmarkID BIGINT NOT NULL,
bookmarkType VARCHAR(50) NOT NULL, bookmarkType VARCHAR(50) NOT NULL,
bookmarkName VARCHAR(255) NOT NULL, bookmarkName VARCHAR(255) NOT NULL,
bookmarkValue VARCHAR(255) NOT NULL, bookmarkValue VARCHAR(255) NOT NULL,
isGlobal INT NOT NULL, isGlobal INT NOT NULL,
PRIMARY KEY (bookmarkID) PRIMARY KEY (bookmarkID)
); );
CREATE TABLE ofBookmarkPerm ( CREATE TABLE ofBookmarkPerm (
bookmarkID BIGINT NOT NULL, bookmarkID BIGINT NOT NULL,
bookmarkType TINYINT NOT NULL, bookmarkType TINYINT NOT NULL,
name VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL,
PRIMARY KEY(bookmarkID, name, bookmarkType) PRIMARY KEY(bookmarkID, name, bookmarkType)
); );
CREATE TABLE ofBookmarkProp ( CREATE TABLE ofBookmarkProp (
bookmarkID BIGINT NOT NULL, bookmarkID BIGINT NOT NULL,
name VARCHAR(100) NOT NULL, name VARCHAR(100) NOT NULL,
propValue TEXT NOT NULL, propValue TEXT NOT NULL,
PRIMARY KEY (bookmarkID, name) PRIMARY KEY (bookmarkID, name)
); );
-- $Revision$ -- $Revision$
-- $Date$ -- $Date$
INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0); INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0);
CREATE TABLE ofBookmark ( CREATE TABLE ofBookmark (
bookmarkID INTEGER NOT NULL, bookmarkID INTEGER NOT NULL,
bookmarkType VARCHAR2(50) NOT NULL, bookmarkType VARCHAR2(50) NOT NULL,
bookmarkName VARCHAR2(255) NOT NULL, bookmarkName VARCHAR2(255) NOT NULL,
bookmarkValue VARCHAR2(1024) NOT NULL, bookmarkValue VARCHAR2(1024) NOT NULL,
isGlobal INT NOT NULL, isGlobal INT NOT NULL,
CONSTRAINT ofBookmark_pk PRIMARY KEY (bookmarkID) CONSTRAINT ofBookmark_pk PRIMARY KEY (bookmarkID)
); );
CREATE TABLE ofBookmarkPerm ( CREATE TABLE ofBookmarkPerm (
bookmarkID INTEGER NOT NULL, bookmarkID INTEGER NOT NULL,
bookmarkType NUMBER(2) NOT NULL, bookmarkType NUMBER(2) NOT NULL,
name VARCHAR2(255) NOT NULL, name VARCHAR2(255) NOT NULL,
CONSTRAINT ofBookmarkPerm_pk PRIMARY KEY(bookmarkID, name, bookmarkType) CONSTRAINT ofBookmarkPerm_pk PRIMARY KEY(bookmarkID, name, bookmarkType)
); );
CREATE TABLE ofBookmarkProp ( CREATE TABLE ofBookmarkProp (
bookmarkID INTEGER NOT NULL, bookmarkID INTEGER NOT NULL,
name VARCHAR2(100) NOT NULL, name VARCHAR2(100) NOT NULL,
propValue LONG NOT NULL, propValue LONG NOT NULL,
CONSTRAINT ofBookmarkProp_pk PRIMARY KEY (bookmarkID, name) CONSTRAINT ofBookmarkProp_pk PRIMARY KEY (bookmarkID, name)
); );
-- $Revision$ -- $Revision$
-- $Date$ -- $Date$
INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0); INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0);
CREATE TABLE ofBookmark ( CREATE TABLE ofBookmark (
bookmarkID INTEGER NOT NULL, bookmarkID INTEGER NOT NULL,
bookmarkType VARCHAR(50) NOT NULL, bookmarkType VARCHAR(50) NOT NULL,
bookmarkName VARCHAR(255) NOT NULL, bookmarkName VARCHAR(255) NOT NULL,
bookmarkValue VARCHAR(1024) NOT NULL, bookmarkValue VARCHAR(1024) NOT NULL,
isGlobal INTEGER NOT NULL, isGlobal INTEGER NOT NULL,
CONSTRAINT ofBookmark_pk PRIMARY KEY (bookmarkID) CONSTRAINT ofBookmark_pk PRIMARY KEY (bookmarkID)
); );
CREATE TABLE ofBookmarkPerm ( CREATE TABLE ofBookmarkPerm (
bookmarkID INTEGER NOT NULL, bookmarkID INTEGER NOT NULL,
bookmarkType SMALLINT NOT NULL, bookmarkType SMALLINT NOT NULL,
name VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL,
CONSTRAINT ofBookmarkPerm_pk PRIMARY KEY(bookmarkID, name, bookmarkType) CONSTRAINT ofBookmarkPerm_pk PRIMARY KEY(bookmarkID, name, bookmarkType)
); );
CREATE TABLE ofBookmarkProp ( CREATE TABLE ofBookmarkProp (
bookmarkID INTEGER NOT NULL, bookmarkID INTEGER NOT NULL,
name VARCHAR(100) NOT NULL, name VARCHAR(100) NOT NULL,
propValue TEXT NOT NULL, propValue TEXT NOT NULL,
CONSTRAINT ofBookmarkProp_pk PRIMARY KEY (bookmarkID, name) CONSTRAINT ofBookmarkProp_pk PRIMARY KEY (bookmarkID, name)
); );
/* $Revision$ */ /* $Revision$ */
/* $Date$ */ /* $Date$ */
INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0); INSERT INTO ofVersion (name, version) VALUES ('clientcontrol', 0);
CREATE TABLE ofBookmark ( CREATE TABLE ofBookmark (
bookmarkID BIGINT NOT NULL, bookmarkID BIGINT NOT NULL,
bookmarkType VARCHAR(50) NOT NULL, bookmarkType VARCHAR(50) NOT NULL,
bookmarkName NVARCHAR(255) NOT NULL, bookmarkName NVARCHAR(255) NOT NULL,
bookmarkValue NVARCHAR(1024) NOT NULL, bookmarkValue NVARCHAR(1024) NOT NULL,
isGlobal INT NOT NULL, isGlobal INT NOT NULL,
CONSTRAINT ofBookmark_pk PRIMARY KEY (bookmarkID) CONSTRAINT ofBookmark_pk PRIMARY KEY (bookmarkID)
); );
CREATE TABLE ofBookmarkPerm ( CREATE TABLE ofBookmarkPerm (
bookmarkID BIGINT NOT NULL, bookmarkID BIGINT NOT NULL,
bookmarkType TINYINT NOT NULL, bookmarkType TINYINT NOT NULL,
name NVARCHAR(255) NOT NULL, name NVARCHAR(255) NOT NULL,
CONSTRAINT ofBookmarkPerm_pk PRIMARY KEY(bookmarkID, name, bookmarkType) CONSTRAINT ofBookmarkPerm_pk PRIMARY KEY(bookmarkID, name, bookmarkType)
); );
CREATE TABLE ofBookmarkProp ( CREATE TABLE ofBookmarkProp (
bookmarkID BIGINT NOT NULL, bookmarkID BIGINT NOT NULL,
name NVARCHAR(100) NOT NULL, name NVARCHAR(100) NOT NULL,
propValue NTEXT NOT NULL, propValue NTEXT NOT NULL,
CONSTRAINT ofBookmarkProp_pk PRIMARY KEY (bookmarkID, name) CONSTRAINT ofBookmarkProp_pk PRIMARY KEY (bookmarkID, name)
); );
TRUNCATE TABLE ofBookmark; TRUNCATE TABLE ofBookmark;
INSERT INTO ofBookmark INSERT INTO ofBookmark
(bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal) (bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal)
SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal
FROM entBookmark; FROM entBookmark;
TRUNCATE TABLE ofBookmarkPerm; TRUNCATE TABLE ofBookmarkPerm;
INSERT INTO ofBookmarkPerm INSERT INTO ofBookmarkPerm
(bookmarkID, bookmarkType, name) (bookmarkID, bookmarkType, name)
SELECT bookmarkID, bookmarkType, name SELECT bookmarkID, bookmarkType, name
FROM entBookmarkPerm; FROM entBookmarkPerm;
TRUNCATE TABLE ofBookmarkProp; TRUNCATE TABLE ofBookmarkProp;
INSERT INTO ofBookmarkProp INSERT INTO ofBookmarkProp
(bookmarkID, name, propValue) (bookmarkID, name, propValue)
SELECT bookmarkID, name, propValue SELECT bookmarkID, name, propValue
FROM entBookmarkProp; FROM entBookmarkProp;
\ No newline at end of file
TRUNCATE TABLE ofBookmark; TRUNCATE TABLE ofBookmark;
INSERT INTO ofBookmark INSERT INTO ofBookmark
(bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal) (bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal)
SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal
FROM entBookmark; FROM entBookmark;
TRUNCATE TABLE ofBookmarkPerm; TRUNCATE TABLE ofBookmarkPerm;
INSERT INTO ofBookmarkPerm INSERT INTO ofBookmarkPerm
(bookmarkID, bookmarkType, name) (bookmarkID, bookmarkType, name)
SELECT bookmarkID, bookmarkType, name SELECT bookmarkID, bookmarkType, name
FROM entBookmarkPerm; FROM entBookmarkPerm;
TRUNCATE TABLE ofBookmarkProp; TRUNCATE TABLE ofBookmarkProp;
INSERT INTO ofBookmarkProp INSERT INTO ofBookmarkProp
(bookmarkID, name, propValue) (bookmarkID, name, propValue)
SELECT bookmarkID, name, propValue SELECT bookmarkID, name, propValue
FROM entBookmarkProp; FROM entBookmarkProp;
\ No newline at end of file
TRUNCATE TABLE ofBookmark; TRUNCATE TABLE ofBookmark;
INSERT INTO ofBookmark INSERT INTO ofBookmark
(bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal) (bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal)
SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal
FROM entBookmark; FROM entBookmark;
TRUNCATE TABLE ofBookmarkPerm; TRUNCATE TABLE ofBookmarkPerm;
INSERT INTO ofBookmarkPerm INSERT INTO ofBookmarkPerm
(bookmarkID, bookmarkType, name) (bookmarkID, bookmarkType, name)
SELECT bookmarkID, bookmarkType, name SELECT bookmarkID, bookmarkType, name
FROM entBookmarkPerm; FROM entBookmarkPerm;
TRUNCATE TABLE ofBookmarkProp; TRUNCATE TABLE ofBookmarkProp;
INSERT INTO ofBookmarkProp INSERT INTO ofBookmarkProp
(bookmarkID, name, propValue) (bookmarkID, name, propValue)
SELECT bookmarkID, name, propValue SELECT bookmarkID, name, propValue
FROM entBookmarkProp; FROM entBookmarkProp;
\ No newline at end of file
TRUNCATE TABLE ofBookmark; TRUNCATE TABLE ofBookmark;
INSERT INTO ofBookmark INSERT INTO ofBookmark
(bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal) (bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal)
SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal
FROM entBookmark; FROM entBookmark;
TRUNCATE TABLE ofBookmarkPerm; TRUNCATE TABLE ofBookmarkPerm;
INSERT INTO ofBookmarkPerm INSERT INTO ofBookmarkPerm
(bookmarkID, bookmarkType, name) (bookmarkID, bookmarkType, name)
SELECT bookmarkID, bookmarkType, name SELECT bookmarkID, bookmarkType, name
FROM entBookmarkPerm; FROM entBookmarkPerm;
TRUNCATE TABLE ofBookmarkProp; TRUNCATE TABLE ofBookmarkProp;
INSERT INTO ofBookmarkProp INSERT INTO ofBookmarkProp
(bookmarkID, name, propValue) (bookmarkID, name, propValue)
SELECT bookmarkID, name, propValue SELECT bookmarkID, name, propValue
FROM entBookmarkProp; FROM entBookmarkProp;
commit; commit;
TRUNCATE TABLE ofBookmark; TRUNCATE TABLE ofBookmark;
INSERT INTO ofBookmark INSERT INTO ofBookmark
(bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal) (bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal)
SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal
FROM entBookmark; FROM entBookmark;
TRUNCATE TABLE ofBookmarkPerm; TRUNCATE TABLE ofBookmarkPerm;
INSERT INTO ofBookmarkPerm INSERT INTO ofBookmarkPerm
(bookmarkID, bookmarkType, name) (bookmarkID, bookmarkType, name)
SELECT bookmarkID, bookmarkType, name SELECT bookmarkID, bookmarkType, name
FROM entBookmarkPerm; FROM entBookmarkPerm;
TRUNCATE TABLE ofBookmarkProp; TRUNCATE TABLE ofBookmarkProp;
INSERT INTO ofBookmarkProp INSERT INTO ofBookmarkProp
(bookmarkID, name, propValue) (bookmarkID, name, propValue)
SELECT bookmarkID, name, propValue SELECT bookmarkID, name, propValue
FROM entBookmarkProp; FROM entBookmarkProp;
\ No newline at end of file
TRUNCATE TABLE ofBookmark; TRUNCATE TABLE ofBookmark;
INSERT INTO ofBookmark INSERT INTO ofBookmark
(bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal) (bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal)
SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal SELECT bookmarkID, bookmarkType, bookmarkName, bookmarkValue, isGlobal
FROM entBookmark; FROM entBookmark;
TRUNCATE TABLE ofBookmarkPerm; TRUNCATE TABLE ofBookmarkPerm;
INSERT INTO ofBookmarkPerm INSERT INTO ofBookmarkPerm
(bookmarkID, bookmarkType, name) (bookmarkID, bookmarkType, name)
SELECT bookmarkID, bookmarkType, name SELECT bookmarkID, bookmarkType, name
FROM entBookmarkPerm; FROM entBookmarkPerm;
TRUNCATE TABLE ofBookmarkProp; TRUNCATE TABLE ofBookmarkProp;
INSERT INTO ofBookmarkProp INSERT INTO ofBookmarkProp
(bookmarkID, name, propValue) (bookmarkID, name, propValue)
SELECT bookmarkID, name, propValue SELECT bookmarkID, name, propValue
FROM entBookmarkProp; FROM entBookmarkProp;
\ No newline at end of file
##
## Bookmarks Plugin Resource Bundle - Czech locale (cs_CZ)
##
## For a full changelog, refer to the English bundle, bookmarks_i18n.properties.
plugin.name=Bookmarks
plugin.description=Bookmarks for Openfire.
users = U\u017eivatel\u00e9
groups = Skupiny
options = Volby
cancel = Zru\u0161it
create = Vytvo\u0159it
admin.sidebar.bookmarks.name=Bookmarks
admin.sidebar.bookmarks.description=Manage Bookmarks
admin.item.groupchat-bookmarks.name=Z\u00e1lo\u017eky skupinov\u00e9ho chatu
admin.item.groupchat-bookmarks.description=Klikn\u011bte pro spr\u00e1vu z\u00e1lo\u017eek skupinov\u00e9ho chatu pro u\u017eivatele.
admin.item.url-bookmarks.name=URL z\u00e1lo\u017eky
admin.item.url-bookmarks.description=Klikn\u011bte pro spr\u00e1vu URL z\u00e1lo\u017eek pro u\u017eivatele.
group.chat.bookmark.title = Z\u00e1lo\u017eky skupinov\u00e9ho chatu
group.chat.bookmark.description = Vytvo\u0159it z\u00e1lo\u017eky pro n\u00ed\u017ee uveden\u00e9 m\u00edstnosti skupinov\u00e9ho chatu. Ka\u017ed\u00e1 z\u00e1lo\u017eka m\u016f\u017ee b\u00fdt p\u0159i\u0159azena jednotliv\u00fdm osob\u00e1m nebo skupin\u00e1m (nebo v\u0161em u\u017eivatel\u016fm).
group.chat.bookmark.created = Z\u00e1lo\u017eka skupinov\u00e9ho chatu byla vytvo\u0159ena.
group.chat.bookmark.removed = Z\u00e1lo\u017eka skupinov\u00e9ho chatu odstran\u011bna.
group.chat.bookmark.name = Jm\u00e9no skupinov\u00e9ho chatu
group.chat.bookmark.address = Adresa skupinov\u00e9ho chatu
group.chat.bookmark.autojoin = Auto-p\u0159ihl\u00e1\u0161en\u00ed
group.chat.bookmark.nameasnick = Name as a nick
group.chat.bookmark.users = u\u017eivatel(\u00e9)
group.chat.bookmark.groups = skupina(-y)
group.chat.bookmark.none = Nam\u00e1te zat\u00edm \u017e\u00e1dn\u00e9 z\u00e1lo\u017eky skupinov\u00e9ho chatu. Klikn\u011bte na 'p\u0159idat z\u00e1lo\u017eku skupinov\u00e9ho chatu' pro p\u0159id\u00e1n\u00ed nov\u00e9 m\u00edstnosti skupinov\u00e9ho chatu.
group.chat.bookmark.add = P\u0159idat z\u00e1lo\u017eku skupinov\u00e9ho chatu
bookmark.edit = Upravit z\u00e1lo\u017eku
bookmark.create = Vytvo\u0159it z\u00e1lo\u017eku
bookmark.created = Byla vytvo\u0159ena nov\u00e1 z\u00e1lo\u017eka.
bookmark.url.name = N\u00e1zev URL
bookmark.url.name.description = nap\u0159. N\u00e1\u0161 Intern\u00ed Web
bookmark.url = URL
bookmark.url.manager.title = Spr\u00e1vce URL z\u00e1lo\u017eek
bookmark.url.manager.description = Povoluje vytv\u00e1\u0159en\u00ed URL z\u00e1lo\u017eek v IM klientech u\u017eivatel\u016f. URL z\u00e1lo\u017eky dovoluj\u00ed \
rychl\u00fd p\u0159\u00edstup k \u010dasto pou\u017e\u00edvan\u00fdm odkaz\u016fm, p\u0159\u00edmo z jejich klient\u016f.
bookmark.url.success = URL z\u00e1lo\u017eka byla vytvo\u0159ena.
bookmark.url.deleted = URL z\u00e1lo\u017eka smaz\u00e1na.
bookmark.url.users = U\u017eivatel\u00e9
bookmark.url.groups = Skupiny
bookmark.url.rss = RSS
bookmark.url.options = Volby
bookmark.url.no.bookmarks = Nam\u00e1te zat\u00edm \u017e\u00e1dn\u00e9 URL z\u00e1lo\u017eky. Klikn\u011bte na 'p\u0159idat URL z\u00e1lo\u017eku' pro p\u0159id\u00e1n\u00ed nov\u00e9 URL z\u00e1lo\u017eky.
bookmark.url.add = P\u0159idat URL z\u00e1lo\u017eku
bookmark.create.rss.feed = RSS zdroj:
bookmark.create.all.users = V\u0161ichni u\u017eivatel\u00e9
bookmark.url.error = Pros\u00edm zadejte url, kter\u00e1 se m\u00e1 pou\u017e\u00edt.
bookmark.browse.users = Proch\u00e1zet u\u017eivatele
bookmark.browse.groups = Proch\u00e1zet skupiny
bookmark.users.groups.error = Mus\u00edte zadat u\u017eivatele a/nebo skupiny pro vytvo\u0159en\u00ed platn\u00e9 z\u00e1lo\u017eky.
bookmark.save.changes = Ulo\u017eit zm\u011bny
bookmark.urlName.error = Pros\u00edm zadejte n\u00e1zev url.
bookmark.groupchat.name.error = Pros\u00edm zadejte jm\u00e9no skupinov\u00e9ho chatu.
bookmark.groupchat.address.error = Pros\u00edm zadejte platnou adresu m\u00edstnosti skupinov\u00e9ho chatu.
bookmark.url.create.description = Vytvo\u0159te novou URL z\u00e1lo\u017eku pou\u017eit\u00edm spodn\u00edho formul\u00e1\u0159e.
bookmark.groupchat.create.description = Vytvo\u0159te novou z\u00e1lo\u017eku m\u00edstnosti skupinov\u00e9ho chatu pou\u017eit\u00edm spodn\u00edho formul\u00e1\u0159e.
bookmark.url.edit.description = Upravte URL z\u00e1lo\u017eku pou\u017eit\u00edm spodn\u00edho formul\u00e1\u0159e.
bookmark.groupchat.edit.description = Upravte z\u00e1lo\u017eku m\u00edstnosti skupinov\u00e9ho chatu pou\u017eit\u00edm spodn\u00edho formul\u00e1\u0159e.
bookmark.delete.confirm = Smazat tuto z\u00e1lo\u017eku?
bookmark.delete.confirm.prompt = Jste si jisti, \u017ee chcete odstranit tuto z\u00e1lo\u017eku?
bookmark.delete.url.urlname = N\u00e1zev URL:
bookmark.delete.url.url = URL:
bookmark.delete.url.users = U\u017eivatel\u00e9:
bookmark.delete.url.groups = Skupiny:
bookmark.delete.url.submit = Smazat
bookmark.delete.url.cancel = Zru\u0161it
bookmark.delete.chat.groupname = N\u00e1zev skupinov\u00e9ho chatu:
bookmark.delete.chat.address = Adresa skupinov\u00e9ho chatu:
bookmark.delete.chat.users = U\u017eivatel\u00e9:
bookmark.delete.chat.groups = Skupiny:
bookmark.delete.chat.autojoin = Auto-p\u0159ihl\u00e1\u0161en\u00ed:
bookmark.delete.chat.submit = Smazat
bookmark.delete.chat.cancel = Zru\u0161it
##
## Bookmarks Plugin Resource Bundle - Spanish locale (es)
##
## For a full changelog, refer to the English bundle, bookmarks_i18n.properties.
plugin.name=Bookmarks
plugin.description=Bookmarks for Openfire.
users = Usuarios
groups = Grupos
options = Opciones
cancel = Cancelar
create = Crear
admin.sidebar.bookmarks.name=Bookmarks
admin.sidebar.bookmarks.description=Manage Bookmarks
admin.item.groupchat-bookmarks.name=Salas de Conferencias Favoritas
admin.item.groupchat-bookmarks.description=Haga clic para administrar salas de conferencias favoritas para los usuarios.
admin.item.url-bookmarks.name=URL Favoritos
admin.item.url-bookmarks.description=Haga clic para administrar URL favoritos para los usuarios.
group.chat.bookmark.title = Salas de Conferencias Favoritas
group.chat.bookmark.description = Agrega salas de conferencias como favoritos. Cada favorito puede ser asignado a individuos particulares o grupos (o todos los usuarios).
group.chat.bookmark.created = Sala de Conferencia Favorita ha sido creada.
group.chat.bookmark.removed = Group chat bookmark removed.
group.chat.bookmark.name = Nombre de Sala de Conferencia
group.chat.bookmark.address = Direcci\u00f3n de Sala de Conferencia
group.chat.bookmark.autojoin = Ingresar-Autom\u00e1ticamente
group.chat.bookmark.users = usuario(s)
group.chat.bookmark.groups = grupo(s)
group.chat.bookmark.none = Actualmente no tiene salas de conferencias favoritas. Haga clic en 'Agregar Sala de Conferencia Favorita' para agregar una nueva sala de conferencia.
group.chat.bookmark.add = Agregar Sala de Conferencia Favorita
bookmark.edit = Editar Favoritos
bookmark.create = Crear Favorito
bookmark.created = Un nuevo favorito ha sido creado.
bookmark.url.name = Nombre del URL
bookmark.url.name.description = eg. Nuestro Sitio web Interno
bookmark.url = URL
bookmark.url.manager.title = Administrador de Favoritos de URLs
bookmark.url.manager.description = Permite a usuarios crear URLs Favoritos en sus clientes. Los URLs Favoritos \
permiten tener un acceso r\u00e1pido a enlaces frecuentemente usados desde los clientes.
bookmark.url.success = Un nuevo URL Favorito ha sido creado.
bookmark.url.deleted = Favorito borrado.
bookmark.url.users = Usuarios
bookmark.url.groups = Grupos
bookmark.url.rss = RSS
bookmark.url.options = Opciones
bookmark.url.no.bookmarks = Actualmente no tiene URLs favoritos. Haga clic en 'Agregar URL Favorito' para agregar un nuevo URL favorito.
bookmark.url.add = Agregar URL Favorito
bookmark.create.rss.feed = Importaci\u00f3n RSS:
bookmark.create.all.users = Todos los Usuarios
bookmark.url.error = Especifique el url a utilizar.
bookmark.browse.users = Consultar Usuarios
bookmark.browse.groups = Consultar Grupos
bookmark.users.groups.error = Debe especificar usuarios y/o grupos para crear una direcci\u00f3n favorita v\u00e1lida.
bookmark.save.changes = Salvar Cambios
bookmark.urlName.error = Especifique el nombre del url.
bookmark.groupchat.name.error = Especifique el nombre de la conferencia.
bookmark.groupchat.address.error = Especifique una direcci\u00f3n v\u00e1lida de la sala de conferencia.
bookmark.url.create.description = Crea un nuevo URL favorito utilizando el siguiente formulario.
bookmark.groupchat.create.description = Crea una nueva sala de conferencia favorita utilizando el siguiente formulario.
bookmark.url.edit.description = Editar URL favorito utilizando el siguiente formulario.
bookmark.groupchat.edit.description = Editar sala de conferencia favorita utilizando el siguiente formulario.
bookmark.delete.confirm = \u00bfBorrar esta direcci\u00f3n favorita?
bookmark.delete.confirm.prompt = \u00bfEst\u00e1 seguro que desea eliminar esta direcci\u00f3n favorita?
bookmark.delete.url.urlname = Nombre del URL:
bookmark.delete.url.url = URL:
bookmark.delete.url.users = Usuarios:
bookmark.delete.url.groups = Grupos:
bookmark.delete.url.submit = Borrar
bookmark.delete.url.cancel = Cancelar
bookmark.delete.chat.groupname = Nombre de la Conferencia:
bookmark.delete.chat.address = Direcci\u00f3n de la Sala de Conferencia:
bookmark.delete.chat.users = Usuarios:
bookmark.delete.chat.groups = Grupos:
bookmark.delete.chat.autojoin = Ingresar-Autom\u00e1ticamente:
bookmark.delete.chat.submit = Borrar
bookmark.delete.chat.cancel = Cancelar
##
## Bookmarks Plugin Resource Bundle - French locale (fr)
##
## For a full changelog, refer to the English bundle, bookmarks_i18n.properties.
plugin.name=Bookmarks
plugin.description=Bookmarks for Openfire.
users=Utilisateurs
groups=Groupes
options=Options
cancel=Annuler
create=Cr\u00e9er
admin.sidebar.bookmarks.description=Manage Bookmarks
admin.sidebar.bookmarks.name=Bookmarks
admin.item.groupchat-bookmarks.description=Cliquez pour administrer les signets "group chat" des utilisateurs
admin.item.groupchat-bookmarks.name=Signets Group Chat
admin.item.url-bookmarks.description=Cliquez pour administrer les signets URL des utilisateurs
admin.item.url-bookmarks.name=Signets URL
group.chat.bookmark.add=Ajouter un Signet "Group Chat"
group.chat.bookmark.address=Adresse "Group Chat"
group.chat.bookmark.autojoin=Auto-Join
group.chat.bookmark.created=Le signet "Group Chat" a \u00e9t\u00e9 cr\u00e9e.
group.chat.bookmark.description=Cr\u00e9er des signets pour les salons ci-dessous. Chaque signet peut \u00eatre assign\u00e9 \u00e0 un individu ou groupe (ou a tous les utilisateurs).
group.chat.bookmark.groups=groupe(s)
group.chat.bookmark.name=Nom du "Group Chat"
group.chat.bookmark.none=Vous n'avez aucun signet "Group Chat". Cliquez sur 'Ajouter un signet Group Chat' pour en ajouter un.
group.chat.bookmark.removed=Signet effac\u00e9
group.chat.bookmark.title=Signets Group Chat
group.chat.bookmark.users=utilisateur(s)
bookmark.browse.groups=Parcourir les Groupes
bookmark.browse.users=Parcourir la liste des Utilisateurs
bookmark.create=Cr\u00e9er un Signet
bookmark.create.all.users=Tous les Utilisateurs
bookmark.create.rss.feed=Flux RSS:
bookmark.created=Un nouveau signet a \u00e9t\u00e9 cr\u00e9e.
bookmark.delete.chat.address=Adresse "Group Chat"
bookmark.delete.chat.autojoin=Auto-Join:
bookmark.delete.chat.cancel=Annuler
bookmark.delete.chat.groupname=Nom du "Group Chat":
bookmark.delete.chat.groups=Groupes:
bookmark.delete.chat.submit=Effacer
bookmark.delete.chat.users=Utilisateurs:
bookmark.delete.confirm=Effacer ce Signet?
bookmark.delete.confirm.prompt=Etes-vous sur de bien vouloir effacer ce signet?
bookmark.delete.url.cancel=Annuler
bookmark.delete.url.groups=Groupes:
bookmark.delete.url.submit=Effacer
bookmark.delete.url.url=URL:
bookmark.delete.url.urlname=Nom de l'URL:
bookmark.delete.url.users=Utilisateurs:
bookmark.edit=Editer le Signet
bookmark.groupchat.address.error=Veuillez entrer une adresse de salon valide.
bookmark.groupchat.create.description=Cr\u00e9er un nouveau signet de salon en utilisant le formulaire ci-dessous.
bookmark.groupchat.edit.description=Editer un signet de salon en utilisant le formulaire ci-dessous.
bookmark.groupchat.name.error=Veuillez entrer le nom du "Group Chat".
bookmark.save.changes=Enregistrer les Modifications
bookmark.url=URL
bookmark.url.add=Ajouter le signet d'URL
bookmark.url.create.description=Cr\u00e9er un nouveau signet d'URL en utilisant le formulaire ci-dessous
bookmark.url.deleted=Signet d'URL effac\u00e9.
bookmark.url.edit.description=Editer le signet d'URL en utilisant le formulaire ci-dessous.
bookmark.url.error=Veuillez entrer l'adresse url a utiliser.
bookmark.url.groups=Groupes
bookmark.url.manager.description=Permet la cr\u00e9ation de signet d'URL dans le client IM de l'utilisateur. Les signets d'URL ci-dessous permettent l'acc\u00e8s rapide aux adresses frequemment consult\u00e9es, directement depuis le client de l'utilisateur.
bookmark.url.manager.title=Administration des Signets d'URL
bookmark.url.name=Nom
bookmark.url.name.description=ex: Notre Intranet
bookmark.url.no.bookmarks=Vous n'avez aucun signet d'URL pour l'instant. Cliquez sur 'Ajouter un signet d'URL' pour en ajouter un.
bookmark.url.options=Options
bookmark.url.rss=RSS
bookmark.url.success=Un signet d'URL a \u00e9t\u00e9 cr\u00e9e.
bookmark.url.users=Utilisateurs
bookmark.urlName.error=Veuillez sp\u00e9cifier le nom de l'URL.
bookmark.users.groups.error=Veuillez s\u00e9lectionner les utilisateurs et/ou les groupes pour cr\u00e9er un signet valide.
##
## Bookmarks Plugin Resource Bundle - Brazilian Portuguese locale (pt_BR)
##
## For a full changelog, refer to the English bundle, bookmarks_i18n.properties.
plugin.name=Bookmarks
plugin.description=Bookmarks for Openfire.
users = Usu\u00e1rios
groups = Grupos
options = Op\u00e7\u00f5es
cancel = Cancelar
create = Criar
admin.sidebar.bookmarks.name=Bookmarks
admin.sidebar.bookmarks.description=Manage Bookmarks
admin.item.groupchat-bookmarks.name=Marcadores de Salas de Bate-Papo
admin.item.groupchat-bookmarks.description=Clique para gerenciar marcadores de salas de bate-papo dos usu\u00e1rios.
admin.item.url-bookmarks.name=Marcadores de URL
admin.item.url-bookmarks.description=Clique para gerenciar marcadores de URL para usu\u00e1rios.
group.chat.bookmark.title = Marcadores de Salas de Bate-Papo
group.chat.bookmark.description = Criar marcadores para salas de bate-papo. Cada marcador pode ser atribu\u00eddo \
a indiv\u00edduos em particular ou a grupos (ou a todos usu\u00e1rios).
group.chat.bookmark.created = Marcador de sala de bate-papo criado com sucesso.
group.chat.bookmark.removed = Marcador de sala de bate-papo removido com sucesso.
group.chat.bookmark.name = Nome de Sala de Bate-Papo
group.chat.bookmark.address = Endere\u00e7o de Sala de Bate-Papo
group.chat.bookmark.autojoin = Auto-Ingressar
group.chat.bookmark.users = usu\u00e1rio(s)
group.chat.bookmark.groups = sala(s)
group.chat.bookmark.none = Atualmente, voc\u00ea n\u00e3o tem nenhum marcador de sala de bate-papo. clique em \
'adicionar marcador de sala de bate-papo' para adicionar nova sala de grupo de bate-papo.
group.chat.bookmark.add = Adicionar Marcador de Sala de Bate-Papo
bookmark.edit = Editar Marcador
bookmark.create = Criar Marcador
bookmark.created = Um novo marcador foi criado.
bookmark.url.name = Nome da URL
bookmark.url.name.description = ex. Nosso Website Interno
bookmark.url = URL
bookmark.url.manager.title = Gerenciador de Marcadores de URL
bookmark.url.manager.description = Permite a cria\u00e7\u00e3o de Marcadores de URL no cliente de IM dos usu\u00e1rios. Marcadores de URL permitem acesso r\u00e1pido para links utilizados com freq�\u00eancia, diretamente do cliente deles.
bookmark.url.success = Um marcador de URL foi criado com sucesso.
bookmark.url.deleted = Marcador de URL exclu\u00eddo com sucesso.
bookmark.url.users = Usu\u00e1rios
bookmark.url.groups = Grupos
bookmark.url.rss = RSS
bookmark.url.options = Op\u00e7\u00f5es
bookmark.url.no.bookmarks = Atualmente, voc\u00ea n\u00e3o tem nenhum Marcador de URL. Clique em 'Adicionar Marcador de URL' para incluir um.
bookmark.url.add = Adicionar Marcador de URL
bookmark.create.rss.feed = RSS Feed:
bookmark.create.all.users = Todos usu\u00e1rios
bookmark.url.error = Por favor, especifique uma URL a ser utilizada.
bookmark.browse.users = Listar Usu\u00e1rios
bookmark.browse.groups = Listar Grupos
bookmark.users.groups.error = Voc\u00ea deve especificar usu\u00e1rios e/ou grupos para criar um marcador v\u00e1lido.
bookmark.save.changes = Salvar Altera\u00e7\u00f5es
bookmark.urlName.error = Por favor, especifique o nome da URL.
bookmark.groupchat.name.error = Por favor, especifique o nome da sala de bate-papo.
bookmark.groupchat.address.error = Por favor, especifique um endere\u00e7o v\u00e1lido da sala de bate-papo.
bookmark.url.create.description = Crie um novo marcador de URL utilizando o formul\u00e1rio abaixo.
bookmark.groupchat.create.description = Crie uma nova sala de bate-papo utilizando o formul\u00e1rio abaixo.
bookmark.url.edit.description = Edite marcador de URL utilizando o formul\u00e1rio abaixo.
bookmark.groupchat.edit.description = Edite marcador de sala de bate-papo utilizando o formul\u00e1rio abaixo.
bookmark.delete.confirm = Excluir Este Marcador?
bookmark.delete.confirm.prompt = Voc\u00ea tem certeza que deseja excluir este Marcador?
bookmark.delete.url.urlname = Nome da URL:
bookmark.delete.url.url = URL:
bookmark.delete.url.users = Usu\u00e1rios:
bookmark.delete.url.groups = Grupos:
bookmark.delete.url.submit = Apagar
bookmark.delete.url.cancel = Cancelar
bookmark.delete.chat.groupname = Nome da Sala de Bate-Papo:
bookmark.delete.chat.address = Endere\u00e7o da Sala de Bate-Papo:
bookmark.delete.chat.users = Usu\u00e1rios:
bookmark.delete.chat.groups = Grupos:
bookmark.delete.chat.autojoin = Auto-Ingressar:
bookmark.delete.chat.submit = Apagar
bookmark.delete.chat.cancel = Cancelar
##
## Bookmarks Plugin Resource Bundle - Simplified Chinese locale (zh_CN)
##
## For a full changelog, refer to the English bundle, bookmarks_i18n.properties.
# Enterprise
plugin.name=Bookmarks
plugin.description=Bookmarks for Openfire.
users = \u7528\u6237
groups = \u7ec4
options = \u9009\u9879
cancel = \u53d6\u6d88
create = \u5efa\u7acb
admin.sidebar.bookmarks.name=Bookmarks
admin.sidebar.bookmarks.description=Manage Bookmarks
admin.item.groupchat-bookmarks.name=\u5206\u7ec4\u804a\u5929\u4e66\u7b7e
admin.item.groupchat-bookmarks.description=\u5355\u51fb\u7ba1\u7406\u7528\u6237\u7684\u5206\u7ec4\u804a\u5929\u4e66\u7b7e
admin.item.url-bookmarks.name=URL\u4e66\u7b7e
admin.item.url-bookmarks.description=\u5355\u51fb\u7ba1\u7406\u7528\u6237URL\u4e66\u7b7e
group.chat.bookmark.title = \u7ec4\u5bf9\u8bdd\u4e66\u7b7e
group.chat.bookmark.description = \u5efa\u7acb\u5206\u7ec4\u5bf9\u8bdd\u623f\u95f4\u4e66\u7b7e\u3002\u6bcf\u4e2a\u4e66\u7b7e\u53ef\u4ee5\u5206\u914d\u7ed9\u7279\u522b\u7684\u4e2a\u4eba\u6216\u7ec4\uff08\u6216\u6240\u6709\u7684\u7528\u6237\uff09
group.chat.bookmark.created = \u5206\u7ec4\u5bf9\u8bdd\u4e66\u7b7e\u88ab\u5efa\u7acb
group.chat.bookmark.removed = \u5206\u7ec4\u5bf9\u8bdd\u4e66\u7b7e\u88ab\u5220\u9664
group.chat.bookmark.name = \u5206\u7ec4\u5bf9\u8bdd\u540d\u5b57
group.chat.bookmark.address = \u5206\u7ec4\u5bf9\u8bdd\u5730\u5740
group.chat.bookmark.autojoin = \u81ea\u52a8\u52a0\u5165
group.chat.bookmark.users = \u7528\u6237
group.chat.bookmark.groups = \u7ec4
group.chat.bookmark.none = \u60a8\u73b0\u5728\u6ca1\u6709\u4efb\u4f55\u5206\u7ec4\u5bf9\u8bdd\u4e66\u7b7e\u3002\u5355\u51fb\u201c\u589e\u52a0\u5206\u7ec4\u5bf9\u8bdd\u4e66\u7b7e\u201d\u7528\u4e8e\u589e\u52a0\u65b0\u7684\u5206\u7ec4\u5bf9\u8bdd\u623f\u95f4\u3002
group.chat.bookmark.add = \u589e\u52a0\u5206\u7ec4\u5bf9\u8bdd\u4e66\u7b7e
bookmark.edit = \u7f16\u8f91\u4e66\u7b7e
bookmark.create = \u65b0\u5efa\u4e66\u7b7e
bookmark.created = \u4e00\u4e2a\u65b0\u7684\u4e66\u7b7e\u88ab\u5efa\u7acb
bookmark.url.name = URL\u540d\u5b57
bookmark.url.name.description = \u4f8b\u5982\uff1a\u6211\u4eec\u7684\u4e92\u8054\u7f51\u7ad9\u70b9
bookmark.url = URL
bookmark.url.manager.title = URL\u4e66\u7b7e\u7ba1\u7406
bookmark.url.manager.description = \u5141\u8bb8\u5728\u7528\u6237\u7684\u5ba2\u6237\u7aefURL\u4e66\u7b7e\u3002URL\u4e66\u7b7e\u5141\u8bb8\u76f4\u63a5\u4ece\u4ed6\u4eec\u7684\u5ba2\u6237\u7aef\u5feb\u901f\u7684\u8fdb\u5165\u5230\u9891\u7e41\u4f7f\u7528\u7684\u94fe\u63a5
bookmark.url.success = \u4e00\u4e2aURL\u4e66\u7b7e\u88ab\u5efa\u7acb
bookmark.url.deleted = URL\u4e66\u7b7e\u5220\u9664
bookmark.url.users = \u7528\u6237
bookmark.url.groups = \u7ec4
bookmark.url.rss = RSS
bookmark.url.options = \u53ef\u9009\u9879
bookmark.url.no.bookmarks = \u60a8\u5f53\u524d\u6ca1\u6709\u4efb\u4f55URL\u4e66\u7b7e\u3002\u5355\u51fb\u201c\u589e\u52a0URL\u4e66\u7b7e\u201d\u7528\u4e8e\u589e\u52a0\u4e00\u4e2a\u65b0\u7684URL\u4e66\u7b7e
bookmark.url.add = \u589e\u52a0URL\u4e66\u7b7e
bookmark.create.rss.feed = RSS\u53cd\u9988:
bookmark.create.all.users = \u6240\u6709\u7528\u6237
bookmark.url.error = \u8bf7\u6307\u5b9a\u4e00\u4e2aurl\u4f7f\u7528
bookmark.browse.users = \u6d4f\u89c8\u7528\u6237
bookmark.browse.groups = \u6d4f\u89c8\u5206\u7ec4
bookmark.users.groups.error = \u60a8\u5fc5\u987b\u6307\u5b9a\u7528\u6237\u4e0e\u7ec4\u7528\u4e8e\u521b\u5efa\u4e00\u4e2a\u6709\u6548\u7684\u4e66\u7b7e
bookmark.save.changes = \u4fdd\u5b58\u8bbe\u7f6e
bookmark.urlName.error = \u8bf7\u6307\u5b9aURL\u7684\u540d\u5b57
bookmark.groupchat.name.error = \u8bf7\u6307\u5b9a\u5206\u7ec4\u5bf9\u8bdd\u7684\u540d\u5b57
bookmark.groupchat.address.error = \u8bf7\u6307\u5b9a\u4e00\u4e2a\u6709\u6548\u7684\u5206\u7ec4\u5bf9\u8bdd\u623f\u95f4\u5730\u5740
bookmark.url.create.description = \u4f7f\u7528\u4e0b\u9762\u7684\u8868\u5355\u65b0\u5efa\u4e00\u4e2a\u65b0\u7684URL\u4e66\u7b7e
bookmark.groupchat.create.description = \u4f7f\u7528\u4e0b\u9762\u7684\u8868\u5355\u65b0\u5efa\u4e00\u4e2a\u65b0\u7684\u5206\u7ec4\u5bf9\u8bdd\u623f\u95f4\u4e66\u7b7e
bookmark.url.edit.description = \u4f7f\u7528\u4e0b\u9762\u7684\u8868\u5355\u7f16\u8f91URL\u4e66\u7b7e
bookmark.groupchat.edit.description = \u4f7f\u7528\u4e0b\u9762\u7684\u8868\u5355\u7f16\u8f91\u5206\u7ec4\u5bf9\u8bdd\u623f\u95f4\u4e66\u7b7e
bookmark.delete.confirm = \u5220\u9664\u8fd9\u4e2a\u4e66\u7b7e?
bookmark.delete.confirm.prompt = \u60a8\u662f\u5426\u786e\u5b9a\u5220\u9664\u8fd9\u4e2a\u4e66\u7b7e?
bookmark.delete.url.urlname = URL\u540d\u5b57:
bookmark.delete.url.url = URL:
bookmark.delete.url.users = \u7528\u6237:
bookmark.delete.url.groups = \u7ec4:
bookmark.delete.url.submit = \u5220\u9664
bookmark.delete.url.cancel = \u53d6\u6d88
bookmark.delete.chat.groupname = \u5206\u7ec4\u804a\u5929\u540d\u79f0:
bookmark.delete.chat.address = \u5206\u7ec4\u804a\u5929\u5730\u5740:
bookmark.delete.chat.users = \u7528\u6237:
bookmark.delete.chat.groups = \u7ec4:
bookmark.delete.chat.autojoin = \u81ea\u52a8\u52a0\u5165:
bookmark.delete.chat.submit = \u5220\u9664
bookmark.delete.chat.cancel = \u53d6\u6d88
##
## Bookmarks Plugin Resource Bundle
##
## Additional locales can be specified by creating a new resource file in this
## directory using the following conventions:
##
## bookmarks_i18n "_" language "_" country ".properties"
## bookmarks_i18n "_" language ".properties"
##
## e.g.
## bookmarks_i18n_en.properties <- English resources
## bookmarks_i18n_en_US.properties <- American US resources
## bookmarks_i18n_de.properties <- German resources
## bookmarks_i18n_ja.properties <- Japanese resources
##
## Please note that the two digit language code should be lower case, and the
## two digit country code should be in uppercase. Often, it is not necessary to
## specify the country code.
##
## A full list of language codes can be found at
## http://www-old.ics.uci.edu/pub/ietf/http/related/iso639.txt
## and a full list of country codes can be found at
## http://www.chemie.fu-berlin.de/diverse/doc/ISO_3166.html
##
## In property strings that are parameterized, single quotes can be used to
## quote the "{" (curly brace) if necessary. A real single quote is represented by ''.
plugin.name=Bookmarks
plugin.description=Bookmarks for Openfire.
users = Users
groups = Groups
options = Options
cancel = Cancel
create = Create
admin.sidebar.bookmarks.name=Bookmarks
admin.sidebar.bookmarks.description=Manage Bookmarks
admin.item.groupchat-bookmarks.name=Group Chat Bookmarks
admin.item.groupchat-bookmarks.description=Click to manage group chat bookmarks for users.
admin.item.url-bookmarks.name=URL Bookmarks
admin.item.url-bookmarks.description=Click to manage URL bookmarks for users.
group.chat.bookmark.title = Group Chat Bookmarks
group.chat.bookmark.description = Create bookmarks for group chat rooms below. Each bookmark can be assigned to particular individuals or groups (or all users).
group.chat.bookmark.created = Group chat bookmark has been created.
group.chat.bookmark.removed = Group chat bookmark removed.
group.chat.bookmark.name = Group Chat Name
group.chat.bookmark.address = Group Chat Address
group.chat.bookmark.autojoin = Auto-Join
group.chat.bookmark.nameasnick = Name as a nick
group.chat.bookmark.users = user(s)
group.chat.bookmark.groups = group(s)
group.chat.bookmark.none = You do not currently have any group chat bookmarks. Click the 'add group chat bookmark' to add a new group chat room.
group.chat.bookmark.add = Add Group Chat Bookmark
bookmark.edit = Edit Bookmark
bookmark.create = Create Bookmark
bookmark.created = A new bookmark has been created.
bookmark.url.name = URL Name
bookmark.url.name.description = eg. Our Internal Website
bookmark.url = URL
bookmark.url.manager.title = URL Bookmark Manager
bookmark.url.manager.description = Allows creation of URL Bookmarks in a users IM client. URL Bookmarks allow \
for quick access to frequently used links, directly from their client.
bookmark.url.success = A URL Bookmark has been created.
bookmark.url.deleted = URL Bookmark deleted.
bookmark.url.users = Users
bookmark.url.groups = Groups
bookmark.url.rss = RSS
bookmark.url.options = Options
bookmark.url.no.bookmarks = You do not currently have any URL Bookmarks. Click the 'add url bookmark' to add a new url bookmark.
bookmark.url.add = Add URL Bookmark
bookmark.create.rss.feed = RSS Feed:
bookmark.create.all.users = All Users
bookmark.url.error = Please specify a url to use.
bookmark.browse.users = Browse Users
bookmark.browse.groups = Browse Groups
bookmark.users.groups.error = You must specify users and/or groups to create a valid bookmark.
bookmark.save.changes = Save Changes
bookmark.urlName.error = Please specify the name of the url.
bookmark.groupchat.name.error = Please specify the group chat name.
bookmark.groupchat.address.error = Please specify a valid address of the group chat room.
bookmark.url.create.description = Create a new URL bookmark using the form below.
bookmark.groupchat.create.description = Create a new group chat room bookmark using the form below.
bookmark.url.edit.description = Edit URL bookmark using the form below.
bookmark.groupchat.edit.description = Edit group chat room bookmark using the form below.
bookmark.delete.confirm = Delete this bookmark?
bookmark.delete.confirm.prompt = Are you sure you want to remove this bookmark?
bookmark.delete.url.urlname = URL Name:
bookmark.delete.url.url = URL:
bookmark.delete.url.users = Users:
bookmark.delete.url.groups = Groups:
bookmark.delete.url.submit = Delete
bookmark.delete.url.cancel = Cancel
bookmark.delete.chat.groupname = Group Chat Name:
bookmark.delete.chat.address = Group Chat Address:
bookmark.delete.chat.users = Users:
bookmark.delete.chat.groups = Groups:
bookmark.delete.chat.autojoin = Auto-Join:
bookmark.delete.chat.nameasnick = Name as a nick:
bookmark.delete.chat.submit = Delete
bookmark.delete.chat.cancel = Cancel
\ No newline at end of file
package org.igniterealtime.openfire.plugin;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.jivesoftware.openfire.container.Plugin;
import org.jivesoftware.openfire.container.PluginManager;
import org.jivesoftware.openfire.plugin.spark.BookmarkInterceptor;
import org.jivesoftware.util.JiveGlobals;
import org.jivesoftware.util.Version;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.*;
import java.util.jar.JarFile;
import java.util.zip.ZipEntry;
/**
* A plugin that implements XEP-0048 "Bookmarks".
*
* @author Guus der Kinderen, guus.der.kinderen@gmail.com
* @see <a href="http://xmpp.org/extensions/xep-0048.html">XEP-0048 Bookmarks</a>
*/
public class BookmarksPlugin implements Plugin
{
private final static Logger Log = LoggerFactory.getLogger( BookmarksPlugin.class );
private BookmarkInterceptor bookmarkInterceptor;
public void initializePlugin( PluginManager manager, File pluginDirectory )
{
System.out.println( "Starting Bookmarks Plugin" );
boolean foundIncompatiblePlugin = false;
try
{
// Check if we Enterprise is installed and stop loading this plugin if found
if ( checkForEnterprisePlugin() )
{
System.out.println( "Enterprise plugin found. Stopping Bookmarks Plugin." );
foundIncompatiblePlugin = true;
}
// Check if we ClientControl (version <= 1.3.1) is installed and stop loading this plugin if found
if ( checkForIncompatibleClientControlPlugin() )
{
System.out.println( "ClientControl plugin v1.3.1 or earlier found. Stopping Bookmarks Plugin." );
foundIncompatiblePlugin = true;
}
}
catch ( Exception ex )
{
Log.warn( "An exception occurred while determining if there are incompatible plugins. Assuming everything is OK.", ex );
}
if ( foundIncompatiblePlugin )
{
throw new IllegalStateException( "This plugin cannot run next to the Enterprise plugin (any version) or the ClientControl plugin v1.3.1 or earlier." );
}
// Create and start the bookmark interceptor, which adds server-managed bookmarks when
// a user requests their bookmark list.
bookmarkInterceptor = new BookmarkInterceptor();
bookmarkInterceptor.start();
}
public void destroyPlugin()
{
if ( bookmarkInterceptor != null )
{
bookmarkInterceptor.stop();
bookmarkInterceptor = null;
}
}
/**
* Checks if there's a plugin named "enterprise" in the Openfire plugin directory.
*
* @return true if the enterprise plugin is found, otherwise false.
*/
private static boolean checkForEnterprisePlugin() throws IOException
{
return getPluginJar( "enterprise" ) != null;
}
/**
* Checks if there's a plugin named "clientControl" in the Openfire plugin directory of which the version is equal
* to or earlier than 1.3.1.
*
* @return true if the clientControl plugin (<= 1.3.1) is found, otherwise false.
*/
private static boolean checkForIncompatibleClientControlPlugin() throws IOException, DocumentException
{
final JarFile jar = getPluginJar( "clientControl" );
if ( jar == null )
{
return false;
}
final ZipEntry pluginXml = jar.getEntry( "plugin.xml" );
if ( pluginXml == null )
{
// Odd - not a plugin?
Log.warn( "Found a clientControl.jar file that does not appear to include a plugin.xml.", jar.getName() );
return false;
}
final File tempFile = File.createTempFile( "plugin-xml", "xml" );
try ( final InputStream is = jar.getInputStream( pluginXml );
final FileOutputStream os = new FileOutputStream( tempFile ) )
{
while ( is.available() > 0 )
{
os.write( is.read() );
}
final SAXReader saxReader = new SAXReader();
saxReader.setEncoding( "UTF-8" );
final Document pluginXML = saxReader.read( tempFile );
Element element = (Element) pluginXML.selectSingleNode( "/plugin/version" );
if ( element != null )
{
final Version version = new Version( element.getTextTrim() );
return !version.isNewerThan( new Version( "1.3.1" ) );
}
}
return false;
}
/**
* Returns the plugin JAR for the plugin of the provided name.
*
* @param pluginName the name of the plugin (cannot be null or empty).
* @return The plugin JAR file, or null when not found.
*/
private static JarFile getPluginJar( final String pluginName ) throws IOException
{
File pluginDir = new File( JiveGlobals.getHomeDirectory(), "plugins" );
File[] jars = pluginDir.listFiles( new FileFilter()
{
public boolean accept( File pathname )
{
return pathname.getName().equalsIgnoreCase( pluginName + ".jar" );
}
} );
final File jar;
if ( jars.length > 0 )
{
return new JarFile( jars[ 0 ] );
}
else
{
return null;
}
}
}
/** /**
* Copyright (C) 1999-2008 Jive Software. All rights reserved. * Copyright (C) 1999-2008 Jive Software. All rights reserved.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.jivesoftware.openfire.plugin.spark; package org.jivesoftware.openfire.plugin.spark;
import java.sql.Connection; import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import org.jivesoftware.database.DbConnectionManager; import org.jivesoftware.database.DbConnectionManager;
import org.jivesoftware.util.NotFoundException; import org.jivesoftware.util.NotFoundException;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
/** /**
* Manages global bookmarks. Bookmarks are defined by * Manages global bookmarks. Bookmarks are defined by
* <a href="http://www.jabber.org/jeps/jep-0048.html">JEP-0048</a>. Users can define and * <a href="http://www.jabber.org/jeps/jep-0048.html">JEP-0048</a>. Users can define and
* manage their own bookmarks. Global bookmarks add to a user's own bookmarks and are * manage their own bookmarks. Global bookmarks add to a user's own bookmarks and are
* defined by system administrators to apply to all users, groups, or sets of users. * defined by system administrators to apply to all users, groups, or sets of users.
* *
* @see Bookmark * @see Bookmark
* @author Derek DeMoro * @author Derek DeMoro
*/ */
public class BookmarkManager { public class BookmarkManager {
private static final Logger Log = LoggerFactory.getLogger(BookmarkManager.class); private static final Logger Log = LoggerFactory.getLogger(BookmarkManager.class);
private static final String DELETE_BOOKMARK = "DELETE FROM ofBookmark where bookmarkID=?"; private static final String DELETE_BOOKMARK = "DELETE FROM ofBookmark where bookmarkID=?";
private static final String SELECT_BOOKMARKS = "SELECT bookmarkID from ofBookmark"; private static final String SELECT_BOOKMARKS = "SELECT bookmarkID from ofBookmark";
/** /**
* Returns the specified bookmark. * Returns the specified bookmark.
* *
* @param bookmarkID the ID of the bookmark. * @param bookmarkID the ID of the bookmark.
* @return the bookmark. * @return the bookmark.
* @throws NotFoundException if the bookmark could not be found or loaded. * @throws NotFoundException if the bookmark could not be found or loaded.
*/ */
public Bookmark getBookmark(long bookmarkID) throws NotFoundException { public Bookmark getBookmark(long bookmarkID) throws NotFoundException {
// TODO add caching // TODO add caching
return new Bookmark(bookmarkID); return new Bookmark(bookmarkID);
} }
/** /**
* Returns all bookmarks. * Returns all bookmarks.
* *
* @return the collection of bookmarks. * @return the collection of bookmarks.
*/ */
public static Collection<Bookmark> getBookmarks() { public static Collection<Bookmark> getBookmarks() {
// TODO: add caching. // TODO: add caching.
List<Bookmark> bookmarks = new ArrayList<Bookmark>(); List<Bookmark> bookmarks = new ArrayList<Bookmark>();
Connection con = null; Connection con = null;
PreparedStatement pstmt = null; PreparedStatement pstmt = null;
ResultSet rs = null; ResultSet rs = null;
try { try {
con = DbConnectionManager.getConnection(); con = DbConnectionManager.getConnection();
pstmt = con.prepareStatement(SELECT_BOOKMARKS); pstmt = con.prepareStatement(SELECT_BOOKMARKS);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
while (rs.next()) { while (rs.next()) {
long bookmarkID = rs.getLong(1); long bookmarkID = rs.getLong(1);
try { try {
Bookmark bookmark = new Bookmark(bookmarkID); Bookmark bookmark = new Bookmark(bookmarkID);
bookmarks.add(bookmark); bookmarks.add(bookmark);
} }
catch (NotFoundException nfe) { catch (NotFoundException nfe) {
Log.error(nfe.getMessage(), nfe); Log.error(nfe.getMessage(), nfe);
} }
} }
} }
catch (SQLException e) { catch (SQLException e) {
Log.error(e.getMessage(), e); Log.error(e.getMessage(), e);
} }
finally { finally {
DbConnectionManager.closeConnection(rs, pstmt, con); DbConnectionManager.closeConnection(rs, pstmt, con);
} }
return bookmarks; return bookmarks;
} }
/** /**
* Deletes a bookmark with the specified bookmark ID. * Deletes a bookmark with the specified bookmark ID.
* *
* @param bookmarkID the ID of the bookmark to remove from the database. * @param bookmarkID the ID of the bookmark to remove from the database.
*/ */
public static void deleteBookmark(long bookmarkID) { public static void deleteBookmark(long bookmarkID) {
Connection con = null; Connection con = null;
PreparedStatement pstmt = null; PreparedStatement pstmt = null;
try { try {
con = DbConnectionManager.getConnection(); con = DbConnectionManager.getConnection();
pstmt = con.prepareStatement(DELETE_BOOKMARK); pstmt = con.prepareStatement(DELETE_BOOKMARK);
pstmt.setLong(1, bookmarkID); pstmt.setLong(1, bookmarkID);
pstmt.execute(); pstmt.execute();
} }
catch (SQLException e) { catch (SQLException e) {
Log.error(e.getMessage(), e); Log.error(e.getMessage(), e);
} }
finally { finally {
DbConnectionManager.closeConnection(pstmt, con); DbConnectionManager.closeConnection(pstmt, con);
} }
} }
} }
<%@ page import="org.jivesoftware.openfire.plugin.spark.Bookmark" %> <%@ page import="org.jivesoftware.openfire.plugin.spark.Bookmark" %>
<%@ page import="org.jivesoftware.openfire.plugin.spark.SparkUtil" %>
<%@ page import="org.jivesoftware.util.Log" %> <%@ page import="org.jivesoftware.util.Log" %>
<%@ page import="org.jivesoftware.util.ParamUtils" %> <%@ page import="org.jivesoftware.util.ParamUtils" %>
<%@ page import="org.jivesoftware.openfire.XMPPServer" %>
<%@ page import="org.jivesoftware.openfire.muc.MUCRoom" %>
<%@ page import="org.jivesoftware.openfire.muc.MultiUserChatService" %>
<%@ page import="java.util.ArrayList" %> <%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.Collection" %> <%@ page import="java.util.Collection" %>
<%@ page import="java.util.HashMap" %> <%@ page import="java.util.HashMap" %>
...@@ -68,21 +64,21 @@ ...@@ -68,21 +64,21 @@
} }
if (submit && createURLBookmark) { if (submit && createURLBookmark) {
if (!SparkUtil.hasLength(url)) { if (url == null || url.trim().isEmpty()) {
errors.put("url", LocaleUtils.getLocalizedString("bookmark.url.error", "clientcontrol")); errors.put("url", LocaleUtils.getLocalizedString("bookmark.url.error", "bookmarks"));
} }
if (!SparkUtil.hasLength(urlName)) { if (urlName == null || urlName.trim().isEmpty()) {
errors.put("urlName", LocaleUtils.getLocalizedString("bookmark.urlName.error", "clientcontrol")); errors.put("urlName", LocaleUtils.getLocalizedString("bookmark.urlName.error", "bookmarks"));
} }
} }
else if (submit && createGroupchat) { else if (submit && createGroupchat) {
if (!SparkUtil.hasLength(groupchatName)) { if (groupchatName == null ||groupchatName.trim().isEmpty()) {
errors.put("groupchatName", LocaleUtils.getLocalizedString("bookmark.groupchat.name.error", "clientcontrol")); errors.put("groupchatName", LocaleUtils.getLocalizedString("bookmark.groupchat.name.error", "bookmarks"));
} }
if (!SparkUtil.hasLength(groupchatJID) || !groupchatJID.contains("@")) { if (groupchatJID == null || !groupchatJID.contains("@")) {
errors.put("groupchatJID", LocaleUtils.getLocalizedString("bookmark.groupchat.address.error", "clientcontrol")); errors.put("groupchatJID", LocaleUtils.getLocalizedString("bookmark.groupchat.address.error", "bookmarks"));
} }
} }
...@@ -208,27 +204,22 @@ ...@@ -208,27 +204,22 @@
} }
} }
String description = LocaleUtils.getLocalizedString("bookmark.url.create.description", "clientcontrol"); String description = LocaleUtils.getLocalizedString("bookmark.url.create.description", "bookmarks");
if (groupchatType) { if (groupchatType) {
description = LocaleUtils.getLocalizedString("bookmark.groupchat.create.description", "clientcontrol"); description = LocaleUtils.getLocalizedString("bookmark.groupchat.create.description", "bookmarks");
if(edit){ if(edit){
description = LocaleUtils.getLocalizedString("bookmark.groupchat.edit.description", "clientcontrol"); description = LocaleUtils.getLocalizedString("bookmark.groupchat.edit.description", "bookmarks");
} }
} }
else if(edit){ else if(edit){
description = LocaleUtils.getLocalizedString("bookmark.url.edit.description", "clientcontrol"); description = LocaleUtils.getLocalizedString("bookmark.url.edit.description", "bookmarks");
} }
%> %>
<html> <html>
<head> <head>
<title><%= editBookmark != null ? LocaleUtils.getLocalizedString("bookmark.edit", "clientcontrol") : LocaleUtils.getLocalizedString("bookmark.create", "clientcontrol")%></title> <title><%= editBookmark != null ? LocaleUtils.getLocalizedString("bookmark.edit", "bookmarks") : LocaleUtils.getLocalizedString("bookmark.create", "bookmarks")%></title>
<link rel="stylesheet" type="text/css" href="/style/global.css">
<meta name="pageID" content="<%= groupchatType ? "groupchat-bookmarks" : "url-bookmarks"%>"/> <meta name="pageID" content="<%= groupchatType ? "groupchat-bookmarks" : "url-bookmarks"%>"/>
<script src="/js/prototype.js" type="text/javascript"></script>
<script src="/js/scriptaculous.js" type="text/javascript"></script>
<script type="text/javascript"> <script type="text/javascript">
function toggleAllElement(ele, users, groups) { function toggleAllElement(ele, users, groups) {
users.disabled = ele.checked; users.disabled = ele.checked;
...@@ -251,9 +242,6 @@ ...@@ -251,9 +242,6 @@
border-style: dotted; border-style: dotted;
} }
</style> </style>
<style type="text/css">
@import "style/style.css";
</style>
</head> </head>
<body> <body>
...@@ -314,7 +302,7 @@ ...@@ -314,7 +302,7 @@
<tr><td><b><fmt:message key="bookmark.create.rss.feed" /></b></td><td><input type="checkbox" name="rss" <%= isRSS ? "checked" : "" %>/></td></tr> <tr><td><b><fmt:message key="bookmark.create.rss.feed" /></b></td><td><input type="checkbox" name="rss" <%= isRSS ? "checked" : "" %>/></td></tr>
<tr><td></td><td><input type="submit" name="createURLBookmark" <tr><td></td><td><input type="submit" name="createURLBookmark"
value="<%= editBookmark != null ? LocaleUtils.getLocalizedString("bookmark.save.changes", "clientcontrol") : LocaleUtils.getLocalizedString("create", "clientcontrol") %>"/> value="<%= editBookmark != null ? LocaleUtils.getLocalizedString("bookmark.save.changes", "bookmarks") : LocaleUtils.getLocalizedString("create", "bookmarks") %>"/>
&nbsp;<input type="button" value="<fmt:message key="cancel" />" &nbsp;<input type="button" value="<fmt:message key="cancel" />"
onclick="window.location.href='url-bookmarks.jsp'; return false;"> onclick="window.location.href='url-bookmarks.jsp'; return false;">
</td> </td>
...@@ -380,7 +368,7 @@ else { %> ...@@ -380,7 +368,7 @@ else { %>
<tr> <tr>
<td></td> <td></td>
<td><input type="submit" name="createGroupchatBookmark" value="<%= editBookmark != null ? LocaleUtils.getLocalizedString("bookmark.save.changes", "clientcontrol") : LocaleUtils.getLocalizedString("create", "clientcontrol") %>"/>&nbsp; <td><input type="submit" name="createGroupchatBookmark" value="<%= editBookmark != null ? LocaleUtils.getLocalizedString("bookmark.save.changes", "bookmarks") : LocaleUtils.getLocalizedString("create", "bookmarks") %>"/>&nbsp;
<input type="button" value="Cancel" onclick="window.location.href='groupchat-bookmarks.jsp'; return false;"> <input type="button" value="Cancel" onclick="window.location.href='groupchat-bookmarks.jsp'; return false;">
</td> </td>
</tr> </tr>
......
<%@ page import="org.jivesoftware.openfire.plugin.spark.Bookmark" %> <%@ page import="org.jivesoftware.openfire.plugin.spark.Bookmark" %>
<%@ page import="org.jivesoftware.openfire.plugin.spark.BookmarkManager" %> <%@ page import="org.jivesoftware.openfire.plugin.spark.BookmarkManager" %>
<%@ page import="org.jivesoftware.openfire.plugin.spark.SparkUtil" %>
<%@ page import="java.util.Collection" %> <%@ page import="java.util.Collection" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
...@@ -15,24 +14,13 @@ ...@@ -15,24 +14,13 @@
<html> <html>
<head> <head>
<title><fmt:message key="bookmark.url.manager.title" /></title> <title><fmt:message key="bookmark.url.manager.title" /></title>
<link rel="stylesheet" type="text/css" href="/style/global.css">
<meta name="pageID" content="url-bookmarks"/> <meta name="pageID" content="url-bookmarks"/>
<script src="/js/prototype.js" type="text/javascript"></script>
<script src="/js/scriptaculous.js" type="text/javascript"></script>
<style type="text/css"> <style type="text/css">
.small-label {
font-size: 11px;
font-weight: bold;
}
.div-border { .div-border {
border: 1px solid #CCCCCC; border: 1px solid #CCCCCC;
-moz-border-radius: 3px; -moz-border-radius: 3px;
} }
</style> </style>
<style type="text/css">
@import "style/style.css";
</style>
</head> </head>
<body> <body>
...@@ -138,7 +126,7 @@ ...@@ -138,7 +126,7 @@
returnStr = returnStr.substring(0, returnStr.length() - 1); returnStr = returnStr.substring(0, returnStr.length() - 1);
} }
if (!SparkUtil.hasLength(returnStr)) { if (returnStr.trim().isEmpty()) {
returnStr = "&nbsp;"; returnStr = "&nbsp;";
} }
return returnStr; return returnStr;
......
...@@ -43,6 +43,11 @@ ...@@ -43,6 +43,11 @@
<h1> <h1>
Client Control Plugin Changelog Client Control Plugin Changelog
</h1> </h1>
<p><b>2.0.0</b> -- January 11, 2016</p>
<ul>
<li>No longer supports Bookmarks functionality (this functionality has been moved to the new Bookmarks Plugin).</li>
</ul>
<p><b>1.3.1</b> -- Nov 18, 2015</p> <p><b>1.3.1</b> -- Nov 18, 2015</p>
<ul> <ul>
<li>[<a href='http://www.igniterealtime.org/issues/browse/OF-953'>OF-953</a>] - Updated JSP libraries.</li> <li>[<a href='http://www.igniterealtime.org/issues/browse/OF-953'>OF-953</a>] - Updated JSP libraries.</li>
......
...@@ -8,11 +8,9 @@ ...@@ -8,11 +8,9 @@
<name>Client Control</name> <name>Client Control</name>
<description>Controls clients allowed to connect and available features</description> <description>Controls clients allowed to connect and available features</description>
<author>Jive Software</author> <author>Jive Software</author>
<version>1.3.1</version> <version>2.0.0</version>
<date>11/05/2015</date> <date>1/11/2015</date>
<minServerVersion>4.0.0</minServerVersion> <minServerVersion>4.0.0</minServerVersion>
<databaseKey>clientcontrol</databaseKey>
<databaseVersion>0</databaseVersion>
<!-- UI extension --> <!-- UI extension -->
<adminconsole> <adminconsole>
...@@ -24,12 +22,6 @@ ...@@ -24,12 +22,6 @@
<item id="client-version" name="${admin.item.client-version.name}" <item id="client-version" name="${admin.item.client-version.name}"
url="permitted-clients.jsp" url="permitted-clients.jsp"
description="${admin.item.client-version.description}"/> description="${admin.item.client-version.description}"/>
<item id="groupchat-bookmarks" name="${admin.item.groupchat-bookmarks.name}"
url="groupchat-bookmarks.jsp"
description="${admin.item.groupchat-bookmarks.description}"/>
<item id="url-bookmarks" name="${admin.item.url-bookmarks.name}"
url="url-bookmarks.jsp"
description="${admin.item.url-bookmarks.description}"/>
<item id="spark-version" name="${admin.item.spark-version.name}" <item id="spark-version" name="${admin.item.spark-version.name}"
url="spark-form.jsp" url="spark-form.jsp"
description="${admin.item.spark-version.description}"/> description="${admin.item.spark-version.description}"/>
......
...@@ -58,7 +58,7 @@ Client Control Plugin Readme ...@@ -58,7 +58,7 @@ Client Control Plugin Readme
<p> <p>
The client control plugin allows to specify which XMPP clients are allowed to connect to the server; which The client control plugin allows to specify which XMPP clients are allowed to connect to the server; which
client features are enabled; manage groupchat and URL bookmarks and control which Spark version should be client features are enabled and control which Spark version should be
used by clients. used by clients.
</p> </p>
...@@ -79,36 +79,5 @@ copy the new clientControl.jar file over the existing file. ...@@ -79,36 +79,5 @@ copy the new clientControl.jar file over the existing file.
this new plugin. this new plugin.
</i></p> </i></p>
<h2>Upgrading from Enterprise</h2>
<p>
If you are upgrading from the Enterprise plugin, and wish to keep your old
bookmarks, you will need to manually run some database scripts to
perform the migration. Note, if you don't care about your previous
bookmarks, you don't have to worry about these steps.
</p>
<p>
First, you will need to shut down your Openfire server and remove the
enterprise plugin. To do this, perform the following steps:
<ol>
<li>Shut down your Openfire server</li>
<li>Remove the <b>enterprise.jar</b> file and the <b>enterprise</b> directory from the plugins directory in your Openfire install root</li>
<li>Install this plugin, <b>clientControl.jar</b> by copying it into the plugins directory.</li>
<li>At this point, you will need to start up Openfire and let it extract and install the <b>clientControl</b> plugin. You can watch for this to occur by looking under the Plugins tab in the Openfire admin console. Once it appears in the list, continue to the next step.</li>
<li>Shut the server back down again.</li>
<li>Go into your plugins/clientControl/database directory. There you will see
some scripts prefixed with <b>import_</b>. Log into your database, switch
to the Openfire's database as you configured during setup (you can find
this information in conf/openfire.xml if you don't remember it), and run
the script that matches the database you are using. Note that the embedded
database is hsqldb and you can use the script in bin/extra from the Openfire
install root (bin/extra/embedded-db-viewer.sh or
bin/extra/embedded-db-viewer.bat, depending on whether you are using Windows)
to access your embedded database.</li>
<li>Once the script has completed, you can start Openfire back up and all of your settings should be the way they were when you were running the Enterprise plugin.</li>
</ol>
</p>
</body> </body>
</html> </html>
...@@ -47,10 +47,6 @@ admin.item.client-features.description=Click to enable and disable client featur ...@@ -47,10 +47,6 @@ admin.item.client-features.description=Click to enable and disable client featur
admin.item.client-version.name=Permitted Clients admin.item.client-version.name=Permitted Clients
admin.item.client-version.description=Click to configure which client applications can connect to \ admin.item.client-version.description=Click to configure which client applications can connect to \
your server. your server.
admin.item.groupchat-bookmarks.name=Group Chat Bookmarks
admin.item.groupchat-bookmarks.description=Click to manage group chat bookmarks for users.
admin.item.url-bookmarks.name=URL Bookmarks
admin.item.url-bookmarks.description=Click to manage URL bookmarks for users.
admin.item.spark-version.name=Spark Version admin.item.spark-version.name=Spark Version
admin.item.spark-version.description=Click to set the Spark client version for each platform. admin.item.spark-version.description=Click to set the Spark client version for each platform.
admin.item.spark-download.name=Download Spark admin.item.spark-download.name=Download Spark
...@@ -129,76 +125,3 @@ spark.download.emailtemplate.template.part2 = Once you've performed the initial ...@@ -129,76 +125,3 @@ spark.download.emailtemplate.template.part2 = Once you've performed the initial
the client will automatically notify you when updates are available. the client will automatically notify you when updates are available.
spark.download.emailtemplate.template.part3 = When the client starts, enter your username and password along with the server name <b>{0}</b>. spark.download.emailtemplate.template.part3 = When the client starts, enter your username and password along with the server name <b>{0}</b>.
spark.download.emailtemplate.template.part4 = Please contact me for your username and password. spark.download.emailtemplate.template.part4 = Please contact me for your username and password.
# Enterprise Bookmarks
users = Users
groups = Groups
options = Options
cancel = Cancel
create = Create
group.chat.bookmark.title = Group Chat Bookmarks
group.chat.bookmark.description = Create bookmarks for group chat rooms below. Each bookmark can be assigned to particular individuals or groups (or all users).
group.chat.bookmark.created = Group chat bookmark has been created.
group.chat.bookmark.removed = Group chat bookmark removed.
group.chat.bookmark.name = Group Chat Name
group.chat.bookmark.address = Group Chat Address
group.chat.bookmark.autojoin = Auto-Join
group.chat.bookmark.nameasnick = Name as a nick
group.chat.bookmark.users = user(s)
group.chat.bookmark.groups = group(s)
group.chat.bookmark.none = You do not currently have any group chat bookmarks. Click the 'add group chat bookmark' to add a new group chat room.
group.chat.bookmark.add = Add Group Chat Bookmark
bookmark.edit = Edit Bookmark
bookmark.create = Create Bookmark
bookmark.created = A new bookmark has been created.
bookmark.url.name = URL Name
bookmark.url.name.description = eg. Our Internal Website
bookmark.url = URL
bookmark.url.manager.title = URL Bookmark Manager
bookmark.url.manager.description = Allows creation of URL Bookmarks in a users IM client. URL Bookmarks allow \
for quick access to frequently used links, directly from their client.
bookmark.url.success = A URL Bookmark has been created.
bookmark.url.deleted = URL Bookmark deleted.
bookmark.url.users = Users
bookmark.url.groups = Groups
bookmark.url.rss = RSS
bookmark.url.options = Options
bookmark.url.no.bookmarks = You do not currently have any URL Bookmarks. Click the 'add url bookmark' to add a new url bookmark.
bookmark.url.add = Add URL Bookmark
bookmark.create.rss.feed = RSS Feed:
bookmark.create.all.users = All Users
bookmark.url.error = Please specify a url to use.
bookmark.browse.users = Browse Users
bookmark.browse.groups = Browse Groups
bookmark.users.groups.error = You must specify users and/or groups to create a valid bookmark.
bookmark.save.changes = Save Changes
bookmark.urlName.error = Please specify the name of the url.
bookmark.groupchat.name.error = Please specify the group chat name.
bookmark.groupchat.address.error = Please specify a valid address of the group chat room.
bookmark.url.create.description = Create a new URL bookmark using the form below.
bookmark.groupchat.create.description = Create a new group chat room bookmark using the form below.
bookmark.url.edit.description = Edit URL bookmark using the form below.
bookmark.groupchat.edit.description = Edit group chat room bookmark using the form below.
bookmark.delete.confirm = Delete this bookmark?
bookmark.delete.confirm.prompt = Are you sure you want to remove this bookmark?
bookmark.delete.url.urlname = URL Name:
bookmark.delete.url.url = URL:
bookmark.delete.url.users = Users:
bookmark.delete.url.groups = Groups:
bookmark.delete.url.submit = Delete
bookmark.delete.url.cancel = Cancel
bookmark.delete.chat.groupname = Group Chat Name:
bookmark.delete.chat.address = Group Chat Address:
bookmark.delete.chat.users = Users:
bookmark.delete.chat.groups = Groups:
bookmark.delete.chat.autojoin = Auto-Join:
bookmark.delete.chat.nameasnick = Name as a nick:
bookmark.delete.chat.submit = Delete
bookmark.delete.chat.cancel = Cancel
\ No newline at end of file
...@@ -29,10 +29,6 @@ admin.item.client-features.description=Klikn\u011bte pro povolen\u00ed nebo zak\ ...@@ -29,10 +29,6 @@ admin.item.client-features.description=Klikn\u011bte pro povolen\u00ed nebo zak\
admin.item.client-version.name=Povolen\u00ed klienti admin.item.client-version.name=Povolen\u00ed klienti
admin.item.client-version.description=Klikn\u011bte pro konfiguraci, kter\u00e9 klientsk\u00e9 aplikace se mohou p\u0159ipojit \ admin.item.client-version.description=Klikn\u011bte pro konfiguraci, kter\u00e9 klientsk\u00e9 aplikace se mohou p\u0159ipojit \
k va\u0161emu serveru. k va\u0161emu serveru.
admin.item.groupchat-bookmarks.name=Z\u00e1lo\u017eky skupinov\u00e9ho chatu
admin.item.groupchat-bookmarks.description=Klikn\u011bte pro spr\u00e1vu z\u00e1lo\u017eek skupinov\u00e9ho chatu pro u\u017eivatele.
admin.item.url-bookmarks.name=URL z\u00e1lo\u017eky
admin.item.url-bookmarks.description=Klikn\u011bte pro spr\u00e1vu URL z\u00e1lo\u017eek pro u\u017eivatele.
admin.item.spark-version.name=Verze Sparku admin.item.spark-version.name=Verze Sparku
admin.item.spark-version.description=Klikn\u011bte pro nastaven\u00ed verze klienta Spark pro jednotliv\u00e9 platformy. admin.item.spark-version.description=Klikn\u011bte pro nastaven\u00ed verze klienta Spark pro jednotliv\u00e9 platformy.
admin.item.spark-download.name=Sta\u017een\u00ed Sparku admin.item.spark-download.name=Sta\u017een\u00ed Sparku
...@@ -209,131 +205,3 @@ stat.packet_count.units = Pakety za minutu ...@@ -209,131 +205,3 @@ stat.packet_count.units = Pakety za minutu
stat.conversation.name = Konverzace stat.conversation.name = Konverzace
stat.conversation.desc = Konverzace mezi u\u017eivateli. stat.conversation.desc = Konverzace mezi u\u017eivateli.
stat.conversation.units = Konverzace stat.conversation.units = Konverzace
# Enterprise Bookmarks
users = U\u017eivatel\u00e9
groups = Skupiny
options = Volby
cancel = Zru\u0161it
create = Vytvo\u0159it
group.chat.bookmark.title = Z\u00e1lo\u017eky skupinov\u00e9ho chatu
group.chat.bookmark.description = Vytvo\u0159it z\u00e1lo\u017eky pro n\u00ed\u017ee uveden\u00e9 m\u00edstnosti skupinov\u00e9ho chatu. Ka\u017ed\u00e1 z\u00e1lo\u017eka m\u016f\u017ee b\u00fdt p\u0159i\u0159azena jednotliv\u00fdm osob\u00e1m nebo skupin\u00e1m (nebo v\u0161em u\u017eivatel\u016fm).
group.chat.bookmark.created = Z\u00e1lo\u017eka skupinov\u00e9ho chatu byla vytvo\u0159ena.
group.chat.bookmark.removed = Z\u00e1lo\u017eka skupinov\u00e9ho chatu odstran\u011bna.
group.chat.bookmark.name = Jm\u00e9no skupinov\u00e9ho chatu
group.chat.bookmark.address = Adresa skupinov\u00e9ho chatu
group.chat.bookmark.autojoin = Auto-p\u0159ihl\u00e1\u0161en\u00ed
group.chat.bookmark.users = u\u017eivatel(\u00e9)
group.chat.bookmark.groups = skupina(-y)
group.chat.bookmark.none = Nam\u00e1te zat\u00edm \u017e\u00e1dn\u00e9 z\u00e1lo\u017eky skupinov\u00e9ho chatu. Klikn\u011bte na 'p\u0159idat z\u00e1lo\u017eku skupinov\u00e9ho chatu' pro p\u0159id\u00e1n\u00ed nov\u00e9 m\u00edstnosti skupinov\u00e9ho chatu.
group.chat.bookmark.add = P\u0159idat z\u00e1lo\u017eku skupinov\u00e9ho chatu
bookmark.edit = Upravit z\u00e1lo\u017eku
bookmark.create = Vytvo\u0159it z\u00e1lo\u017eku
bookmark.created = Byla vytvo\u0159ena nov\u00e1 z\u00e1lo\u017eka.
bookmark.url.name = N\u00e1zev URL
bookmark.url.name.description = nap\u0159. N\u00e1\u0161 Intern\u00ed Web
bookmark.url = URL
bookmark.url.manager.title = Spr\u00e1vce URL z\u00e1lo\u017eek
bookmark.url.manager.description = Povoluje vytv\u00e1\u0159en\u00ed URL z\u00e1lo\u017eek v IM klientech u\u017eivatel\u016f. URL z\u00e1lo\u017eky dovoluj\u00ed \
rychl\u00fd p\u0159\u00edstup k \u010dasto pou\u017e\u00edvan\u00fdm odkaz\u016fm, p\u0159\u00edmo z jejich klient\u016f.
bookmark.url.success = URL z\u00e1lo\u017eka byla vytvo\u0159ena.
bookmark.url.deleted = URL z\u00e1lo\u017eka smaz\u00e1na.
bookmark.url.users = U\u017eivatel\u00e9
bookmark.url.groups = Skupiny
bookmark.url.rss = RSS
bookmark.url.options = Volby
bookmark.url.no.bookmarks = Nam\u00e1te zat\u00edm \u017e\u00e1dn\u00e9 URL z\u00e1lo\u017eky. Klikn\u011bte na 'p\u0159idat URL z\u00e1lo\u017eku' pro p\u0159id\u00e1n\u00ed nov\u00e9 URL z\u00e1lo\u017eky.
bookmark.url.add = P\u0159idat URL z\u00e1lo\u017eku
bookmark.create.rss.feed = RSS zdroj:
bookmark.create.all.users = V\u0161ichni u\u017eivatel\u00e9
bookmark.url.error = Pros\u00edm zadejte url, kter\u00e1 se m\u00e1 pou\u017e\u00edt.
bookmark.browse.users = Proch\u00e1zet u\u017eivatele
bookmark.browse.groups = Proch\u00e1zet skupiny
bookmark.users.groups.error = Mus\u00edte zadat u\u017eivatele a/nebo skupiny pro vytvo\u0159en\u00ed platn\u00e9 z\u00e1lo\u017eky.
bookmark.save.changes = Ulo\u017eit zm\u011bny
bookmark.urlName.error = Pros\u00edm zadejte n\u00e1zev url.
bookmark.groupchat.name.error = Pros\u00edm zadejte jm\u00e9no skupinov\u00e9ho chatu.
bookmark.groupchat.address.error = Pros\u00edm zadejte platnou adresu m\u00edstnosti skupinov\u00e9ho chatu.
bookmark.url.create.description = Vytvo\u0159te novou URL z\u00e1lo\u017eku pou\u017eit\u00edm spodn\u00edho formul\u00e1\u0159e.
bookmark.groupchat.create.description = Vytvo\u0159te novou z\u00e1lo\u017eku m\u00edstnosti skupinov\u00e9ho chatu pou\u017eit\u00edm spodn\u00edho formul\u00e1\u0159e.
bookmark.url.edit.description = Upravte URL z\u00e1lo\u017eku pou\u017eit\u00edm spodn\u00edho formul\u00e1\u0159e.
bookmark.groupchat.edit.description = Upravte z\u00e1lo\u017eku m\u00edstnosti skupinov\u00e9ho chatu pou\u017eit\u00edm spodn\u00edho formul\u00e1\u0159e.
bookmark.delete.confirm = Smazat tuto z\u00e1lo\u017eku?
bookmark.delete.confirm.prompt = Jste si jisti, \u017ee chcete odstranit tuto z\u00e1lo\u017eku?
bookmark.delete.url.urlname = N\u00e1zev URL:
bookmark.delete.url.url = URL:
bookmark.delete.url.users = U\u017eivatel\u00e9:
bookmark.delete.url.groups = Skupiny:
bookmark.delete.url.submit = Smazat
bookmark.delete.url.cancel = Zru\u0161it
bookmark.delete.chat.groupname = N\u00e1zev skupinov\u00e9ho chatu:
bookmark.delete.chat.address = Adresa skupinov\u00e9ho chatu:
bookmark.delete.chat.users = U\u017eivatel\u00e9:
bookmark.delete.chat.groups = Skupiny:
bookmark.delete.chat.autojoin = Auto-p\u0159ihl\u00e1\u0161en\u00ed:
bookmark.delete.chat.submit = Smazat
bookmark.delete.chat.cancel = Zru\u0161it
# Dashboard
dashboard.title = Openfire Dashboard
dashboard.description = Zobrazen\u00ed sou\u010dasn\u00e9 aktivity ve Openfire.
dashboard.directions = Klikn\u011bte na spodn\u00ed grafy pro zobrazen\u00ed zv\u011bt\u0161eniny.
dashboard.snapshot.enlarge = Zv\u011bt\u0161it graf
dashboard.snapshot.shrink = Zmen\u0161it graf
dashboard.timespan = \u010casov\u00e9 rozp\u011bt\u00ed:
dashboard.timespan.lasthour = 1 hodina
dashboard.timespan.last24hours = 24 hodin
dashboard.timespan.last7days = 7 dn\u00ed
dashboard.spotlights.high = Vysok\u00e9:
dashboard.spotlights.low = N\u00edzk\u00e9:
dashboard.spotlights.packetactivity = Paket\u016f za minutu
dashboard.spotlights.activeconversations = Aktivn\u00ed konverzace
dashboard.spotlights.currentusers = Sou\u010dasn\u00ed u\u017eivatel\u00e9
dashboard.quickstats = Rychl\u00e9 statistiky
dashboard.quickstats.high = Vysok\u00e9
dashboard.quickstats.low = N\u00edzk\u00e9
dashboard.currentconversations = Sou\u010dasn\u00e9 konverzace
dashboard.currentconversations.details = zobrazit detaily
dashboard.currentconversations.users = U\u017eivatel\u00e9
dashboard.currentconversations.lastactivity = Posledn\u00ed aktivita
dashboard.currentconversations.messagecount = Zpr\u00e1vy
dashboard.currentconversations.none = \u017d\u00e1dn\u00e9 aktivn\u00ed konverzace.
# All Reports
allreports.title = V\u0161echny zpr\u00e1vy
allreports.daterange = Rozsah datum\u016f
allreports.daterange.preset = P\u0159ednastaveno
allreports.daterange.preset.last60minutes = Posledn\u00edch 60 minut
allreports.daterange.preset.last24hours = Posledn\u00edch 24 hodin
allreports.daterange.preset.thisweek = Tento t\u00fdden
allreports.daterange.preset.last7days = Posledn\u00edch 7 dn\u00ed
allreports.daterange.preset.lastweek = Posledn\u00ed t\u00fdden
allreports.daterange.preset.thismonth = Tento m\u011bs\u00edc
allreports.daterange.preset.lastmonth = Posledn\u00edch m\u011bs\u00edc
allreports.daterange.preset.last3months = Posledn\u00ed 3 m\u011bs\u00edce
allreports.daterange.specific = Specifick\u00e9
allreports.daterange.specific.startdate = Po\u010d\u00e1tek:
allreports.daterange.specific.enddate = konec:
allreports.daterange.startdate.error = Pros\u00edm zadejte po\u010d\u00e1te\u010dn\u00ed datum ve form\u00e1tu mm/dd/yy.
allreports.daterange.enddate.error = Pros\u00edm zadejte datum p\u0159ed z\u00edt\u0159kem ve form\u00e1tu mm/dd/yy.
allreports.selectreport = Vybrat zpr\u00e1vy
allreports.download.allreports = St\u00e1hnout v\u0161echny zpr\u00e1vy
allreports.download.allreports.pdf = PDF
allreports.download.allreports.pdf.format = Form\u00e1t PDF
allreports.download.singlereport = St\u00e1hnout tuto zpr\u00e1vu:
allreports.download.singlereport.pdf = PDF
allreports.reportinformation = Informace o zpr\u00e1v\u011b
...@@ -213,150 +213,3 @@ stat.packet_count.units = Paquetes por Minuto ...@@ -213,150 +213,3 @@ stat.packet_count.units = Paquetes por Minuto
stat.conversation.name = Conversaciones stat.conversation.name = Conversaciones
stat.conversation.desc = Conversaciones entre usuarios. stat.conversation.desc = Conversaciones entre usuarios.
stat.conversation.units = Conversaciones stat.conversation.units = Conversaciones
# Enterprise Bookmarks
users = Usuarios
groups = Grupos
options = Opciones
cancel = Cancelar
create = Crear
group.chat.bookmark.title = Salas de Conferencias Favoritas
group.chat.bookmark.description = Agrega salas de conferencias como favoritos. Cada favorito puede ser asignado a individuos particulares o grupos (o todos los usuarios).
group.chat.bookmark.created = Sala de Conferencia Favorita ha sido creada.
group.chat.bookmark.removed = Group chat bookmark removed.
group.chat.bookmark.name = Nombre de Sala de Conferencia
group.chat.bookmark.address = Direcci\u00f3n de Sala de Conferencia
group.chat.bookmark.autojoin = Ingresar-Autom\u00e1ticamente
group.chat.bookmark.users = usuario(s)
group.chat.bookmark.groups = grupo(s)
group.chat.bookmark.none = Actualmente no tiene salas de conferencias favoritas. Haga clic en 'Agregar Sala de Conferencia Favorita' para agregar una nueva sala de conferencia.
group.chat.bookmark.add = Agregar Sala de Conferencia Favorita
bookmark.edit = Editar Favoritos
bookmark.create = Crear Favorito
bookmark.created = Un nuevo favorito ha sido creado.
bookmark.url.name = Nombre del URL
bookmark.url.name.description = eg. Nuestro Sitio web Interno
bookmark.url = URL
bookmark.url.manager.title = Administrador de Favoritos de URLs
bookmark.url.manager.description = Permite a usuarios crear URLs Favoritos en sus clientes. Los URLs Favoritos \
permiten tener un acceso r\u00e1pido a enlaces frecuentemente usados desde los clientes.
bookmark.url.success = Un nuevo URL Favorito ha sido creado.
bookmark.url.deleted = Favorito borrado.
bookmark.url.users = Usuarios
bookmark.url.groups = Grupos
bookmark.url.rss = RSS
bookmark.url.options = Opciones
bookmark.url.no.bookmarks = Actualmente no tiene URLs favoritos. Haga clic en 'Agregar URL Favorito' para agregar un nuevo URL favorito.
bookmark.url.add = Agregar URL Favorito
bookmark.create.rss.feed = Importaci\u00f3n RSS:
bookmark.create.all.users = Todos los Usuarios
bookmark.url.error = Especifique el url a utilizar.
bookmark.browse.users = Consultar Usuarios
bookmark.browse.groups = Consultar Grupos
bookmark.users.groups.error = Debe especificar usuarios y/o grupos para crear una direcci\u00f3n favorita v\u00e1lida.
bookmark.save.changes = Salvar Cambios
bookmark.urlName.error = Especifique el nombre del url.
bookmark.groupchat.name.error = Especifique el nombre de la conferencia.
bookmark.groupchat.address.error = Especifique una direcci\u00f3n v\u00e1lida de la sala de conferencia.
bookmark.url.create.description = Crea un nuevo URL favorito utilizando el siguiente formulario.
bookmark.groupchat.create.description = Crea una nueva sala de conferencia favorita utilizando el siguiente formulario.
bookmark.url.edit.description = Editar URL favorito utilizando el siguiente formulario.
bookmark.groupchat.edit.description = Editar sala de conferencia favorita utilizando el siguiente formulario.
bookmark.delete.confirm = \u00bfBorrar esta direcci\u00f3n favorita?
bookmark.delete.confirm.prompt = \u00bfEst\u00e1 seguro que desea eliminar esta direcci\u00f3n favorita?
bookmark.delete.url.urlname = Nombre del URL:
bookmark.delete.url.url = URL:
bookmark.delete.url.users = Usuarios:
bookmark.delete.url.groups = Grupos:
bookmark.delete.url.submit = Borrar
bookmark.delete.url.cancel = Cancelar
bookmark.delete.chat.groupname = Nombre de la Conferencia:
bookmark.delete.chat.address = Direcci\u00f3n de la Sala de Conferencia:
bookmark.delete.chat.users = Usuarios:
bookmark.delete.chat.groups = Grupos:
bookmark.delete.chat.autojoin = Ingresar-Autom\u00e1ticamente:
bookmark.delete.chat.submit = Borrar
bookmark.delete.chat.cancel = Cancelar
# Dashboard
dashboard.title = Consola de Openfire
dashboard.description = Una foto de la actividad actual en Openfire.
dashboard.directions = Haga clic en los gr\u00e1ficos para obtener una ampliaci\u00f3n.
dashboard.snapshot.enlarge = Agrandar Gr\u00e1fico
dashboard.snapshot.shrink = Encoger Gr\u00e1fico
dashboard.timespan = Per\u00edodo:
dashboard.timespan.lasthour = 1 Hora
dashboard.timespan.last24hours = 24 Horas
dashboard.timespan.last7days = 7 D\u00edas
dashboard.spotlights.high = M\u00e1x:
dashboard.spotlights.low = M\u00edn:
dashboard.spotlights.packetactivity = Paquetes Por Minuto
dashboard.spotlights.activeconversations = Conversaciones Vigentes
dashboard.spotlights.currentusers = Usuarios Actuales
dashboard.quickstats = Estad\u00edsticas R\u00e1pidas
dashboard.quickstats.high = M\u00e1x
dashboard.quickstats.low = M\u00edn
dashboard.currentconversations = Conversaciones Vigentes
dashboard.currentconversations.details = ver detalles
dashboard.currentconversations.users = Usuarios
dashboard.currentconversations.lastactivity = \u00daltima Actividad
dashboard.currentconversations.messagecount = Mensajes
dashboard.currentconversations.none = No hay conversaciones vigentes.
# All Reports
allreports.title = Todos los Reportes
allreports.daterange = Rango de Fechas
allreports.daterange.preset = Programadas
allreports.daterange.preset.last60minutes = \u00daltimos 60 minutos
allreports.daterange.preset.last24hours = \u00daltimas 24 horas
allreports.daterange.preset.thisweek = Esta semana
allreports.daterange.preset.last7days = \u00daltimos 7 d\u00edas
allreports.daterange.preset.lastweek = Semana pasada
allreports.daterange.preset.thismonth = Este mes
allreports.daterange.preset.lastmonth = Mes pasado
allreports.daterange.preset.last3months = \u00daltimos 3 meses
allreports.daterange.specific = Espec\u00edfico
allreports.daterange.specific.startdate = Inicio:
allreports.daterange.specific.enddate = Fin:
allreports.daterange.startdate.error = Ingrese una fecha de inicio en el formato mm/dd/yy.
allreports.daterange.enddate.error = Ingrese una fecha de fin en el formato mm/dd/yy.
allreports.selectreport = Seleccione Reporte
allreports.download.allreports = Descargar Todos los Reportes
allreports.download.allreports.pdf = PDF
allreports.download.allreports.pdf.format = Formato PDF
allreports.download.singlereport = Descargar este reporte:
allreports.download.singlereport.pdf = PDF
allreports.reportinformation = Informaci\u00f3n del Reporte
muc.conversation.joined={0} ({1}) ha ingresado al cuarto
muc.conversation.joined.anonymous={0} (anonimo) ha ingresado al cuarto
muc.conversation.left={0} ({1}) se ha ido del cuarto
muc.conversation.left.anonymous={0} (anonimo) se ha ido del cuarto
license.display.members=Miembros del Cluster
dashboard.group_conversation=Conversacion de Grupo
archive.settings.group_chats=Archivar charlas de grupos
archive.search.group_conversation=Charla de Grupo: {0}
archive.group_conversation={0}Conversacion de Grupo{1}
archive.group_conversation.close=Cerrar
archive.group_conversation.participants=Participantes
archive.group_conversation.participants.empty=No se han encontrado participantes.
archive.group_conversation.participants.participant=Usuarios
archive.group_conversation.participants.title=Participantes de la charla de Grupo
admin.item.sparkweb.description=Haga clic para comenzar SparkWeb
admin.item.sparkweb.name=SparkWeb
admin.item.webclient=Cliente Web
archive.settings.certain_rooms=S\u00f3lo archivar conversaciones de los siguientes cuartos (separar con coma)
archive.settings.one_to_one=Archivar charlas uno-a-uno
...@@ -13,8 +13,6 @@ admin.item.client-features.description=Cliquez pour activer ou d\u00e9sactiver l ...@@ -13,8 +13,6 @@ admin.item.client-features.description=Cliquez pour activer ou d\u00e9sactiver l
admin.item.client-features.name=Dispositifs Client admin.item.client-features.name=Dispositifs Client
admin.item.client-version.description=Cliquez pour configurer quelles applications client pourront se connecter a votre serveur. admin.item.client-version.description=Cliquez pour configurer quelles applications client pourront se connecter a votre serveur.
admin.item.client-version.name=Clients Authoris\u00e9s admin.item.client-version.name=Clients Authoris\u00e9s
admin.item.groupchat-bookmarks.description=Cliquez pour administrer les signets "group chat" des utilisateurs
admin.item.groupchat-bookmarks.name=Signets Group Chat
admin.item.license.description=Cliquez pour voir votre license. admin.item.license.description=Cliquez pour voir votre license.
admin.item.license.name=License admin.item.license.name=License
admin.item.spark-download.description=T\u00e9l\u00e9charger Spark. admin.item.spark-download.description=T\u00e9l\u00e9charger Spark.
...@@ -26,8 +24,6 @@ admin.item.stats-dashboard.description=Voir le r\u00e9sum\u00e9 des statistiques ...@@ -26,8 +24,6 @@ admin.item.stats-dashboard.description=Voir le r\u00e9sum\u00e9 des statistiques
admin.item.stats-dashboard.name=Tableau de Bord admin.item.stats-dashboard.name=Tableau de Bord
admin.item.stats-reporter.description=Voir les rapports d\u00e9taill\u00e9s des statistiques serveur. admin.item.stats-reporter.description=Voir les rapports d\u00e9taill\u00e9s des statistiques serveur.
admin.item.stats-reporter.name=Rapports admin.item.stats-reporter.name=Rapports
admin.item.url-bookmarks.description=Cliquez pour administrer les signets URL des utilisateurs
admin.item.url-bookmarks.name=Signets URL
admin.sidebar.archiving.description=Param\u00e8tres d'Archivage Openfire Entreprise admin.sidebar.archiving.description=Param\u00e8tres d'Archivage Openfire Entreprise
admin.sidebar.archiving.name=Archivage admin.sidebar.archiving.name=Archivage
admin.sidebar.client.description=Administrer les Modules Client et les Deploiements Spark admin.sidebar.client.description=Administrer les Modules Client et les Deploiements Spark
...@@ -118,52 +114,6 @@ archive.settings.rebuild.success=Le re-indexage est en cours. ...@@ -118,52 +114,6 @@ archive.settings.rebuild.success=Le re-indexage est en cours.
archive.settings.success=Les param\u00e8tres d'archivage ont \u00e9t\u00e9 enregistr\u00e9s. archive.settings.success=Les param\u00e8tres d'archivage ont \u00e9t\u00e9 enregistr\u00e9s.
archive.settings.title=Param\u00e8tres d'Archivage archive.settings.title=Param\u00e8tres d'Archivage
archive.settings.update.settings=Param\u00e8tres de Mise \u00e0 jour archive.settings.update.settings=Param\u00e8tres de Mise \u00e0 jour
bookmark.browse.groups=Parcourir les Groupes
bookmark.browse.users=Parcourir la liste des Utilisateurs
bookmark.create=Cr\u00e9er un Signet
bookmark.create.all.users=Tous les Utilisateurs
bookmark.create.rss.feed=Flux RSS:
bookmark.created=Un nouveau signet a \u00e9t\u00e9 cr\u00e9e.
bookmark.delete.chat.address=Adresse "Group Chat"
bookmark.delete.chat.autojoin=Auto-Join:
bookmark.delete.chat.cancel=Annuler
bookmark.delete.chat.groupname=Nom du "Group Chat":
bookmark.delete.chat.groups=Groupes:
bookmark.delete.chat.submit=Effacer
bookmark.delete.chat.users=Utilisateurs:
bookmark.delete.confirm=Effacer ce Signet?
bookmark.delete.confirm.prompt=Etes-vous sur de bien vouloir effacer ce signet?
bookmark.delete.url.cancel=Annuler
bookmark.delete.url.groups=Groupes:
bookmark.delete.url.submit=Effacer
bookmark.delete.url.url=URL:
bookmark.delete.url.urlname=Nom de l'URL:
bookmark.delete.url.users=Utilisateurs:
bookmark.edit=Editer le Signet
bookmark.groupchat.address.error=Veuillez entrer une adresse de salon valide.
bookmark.groupchat.create.description=Cr\u00e9er un nouveau signet de salon en utilisant le formulaire ci-dessous.
bookmark.groupchat.edit.description=Editer un signet de salon en utilisant le formulaire ci-dessous.
bookmark.groupchat.name.error=Veuillez entrer le nom du "Group Chat".
bookmark.save.changes=Enregistrer les Modifications
bookmark.url=URL
bookmark.url.add=Ajouter le signet d'URL
bookmark.url.create.description=Cr\u00e9er un nouveau signet d'URL en utilisant le formulaire ci-dessous
bookmark.url.deleted=Signet d'URL effac\u00e9.
bookmark.url.edit.description=Editer le signet d'URL en utilisant le formulaire ci-dessous.
bookmark.url.error=Veuillez entrer l'adresse url a utiliser.
bookmark.url.groups=Groupes
bookmark.url.manager.description=Permet la cr\u00e9ation de signet d'URL dans le client IM de l'utilisateur. Les signets d'URL ci-dessous permettent l'acc\u00e8s rapide aux adresses frequemment consult\u00e9es, directement depuis le client de l'utilisateur.
bookmark.url.manager.title=Administration des Signets d'URL
bookmark.url.name=Nom
bookmark.url.name.description=ex: Notre Intranet
bookmark.url.no.bookmarks=Vous n'avez aucun signet d'URL pour l'instant. Cliquez sur 'Ajouter un signet d'URL' pour en ajouter un.
bookmark.url.options=Options
bookmark.url.rss=RSS
bookmark.url.success=Un signet d'URL a \u00e9t\u00e9 cr\u00e9e.
bookmark.url.users=Utilisateurs
bookmark.urlName.error=Veuillez sp\u00e9cifier le nom de l'URL.
bookmark.users.groups.error=Veuillez s\u00e9lectionner les utilisateurs et/ou les groupes pour cr\u00e9er un signet valide.
cancel=Annuler
client.feature=Module client.feature=Module
client.features.broadcasting=Diffusion client.features.broadcasting=Diffusion
client.features.broadcasting.description=Permet d'envoyer un message a certains groupes ou tout un roster. client.features.broadcasting.description=Permet d'envoyer un message a certains groupes ou tout un roster.
...@@ -176,12 +126,10 @@ client.features.groupchat.description=Permet d'entrer dans les Salons "Group Cha ...@@ -176,12 +126,10 @@ client.features.groupchat.description=Permet d'entrer dans les Salons "Group Cha
client.features.info=Utiliser le formulaire ci-dessous pour activer ou d\u00e9sactiver des modules client. NB: Certaines restrictions client ne s'appliquent seulement au client Spark. client.features.info=Utiliser le formulaire ci-dessous pour activer ou d\u00e9sactiver des modules client. NB: Certaines restrictions client ne s'appliquent seulement au client Spark.
client.features.save.settings=Enregistrer les Param\u00e8tres client.features.save.settings=Enregistrer les Param\u00e8tres
client.features.spark.only=(Seulement applicable \u00e0 Spark) client.features.spark.only=(Seulement applicable \u00e0 Spark)
# Enteprise Spark Manager
client.features.title=Modules Client client.features.title=Modules Client
client.features.update.features=Les permissions de module ont \u00e9t\u00e9 mise \u00e0 jour: client.features.update.features=Les permissions de module ont \u00e9t\u00e9 mise \u00e0 jour:
client.features.vcard=Avatar/VCard client.features.vcard=Avatar/VCard
client.features.vcard.description=Permet aux utilisateurs de changer leur profils et avatars. client.features.vcard.description=Permet aux utilisateurs de changer leur profils et avatars.
create=Cr\u00e9er
dashboard.currentconversations=Conversations en cours dashboard.currentconversations=Conversations en cours
dashboard.currentconversations.details=Voir les d\u00e9tails dashboard.currentconversations.details=Voir les d\u00e9tails
dashboard.currentconversations.lastactivity=Derni\u00e8re activit\u00e9 dashboard.currentconversations.lastactivity=Derni\u00e8re activit\u00e9
...@@ -204,24 +152,9 @@ dashboard.timespan=Periode: ...@@ -204,24 +152,9 @@ dashboard.timespan=Periode:
dashboard.timespan.last24hours=24 heures dashboard.timespan.last24hours=24 heures
dashboard.timespan.last7days=7 jours dashboard.timespan.last7days=7 jours
dashboard.timespan.lasthour=1 Heure dashboard.timespan.lasthour=1 Heure
# Dashboard
dashboard.title=Tableau de Bord Openfire dashboard.title=Tableau de Bord Openfire
error.exception=Exception: error.exception=Exception:
group.chat.bookmark.add=Ajouter un Signet "Group Chat"
group.chat.bookmark.address=Adresse "Group Chat"
group.chat.bookmark.autojoin=Auto-Join
group.chat.bookmark.created=Le signet "Group Chat" a \u00e9t\u00e9 cr\u00e9e.
group.chat.bookmark.description=Cr\u00e9er des signets pour les salons ci-dessous. Chaque signet peut \u00eatre assign\u00e9 \u00e0 un individu ou groupe (ou a tous les utilisateurs).
group.chat.bookmark.groups=groupe(s)
group.chat.bookmark.name=Nom du "Group Chat"
group.chat.bookmark.none=Vous n'avez aucun signet "Group Chat". Cliquez sur 'Ajouter un signet Group Chat' pour en ajouter un.
group.chat.bookmark.removed=Signet effac\u00e9
group.chat.bookmark.title=Signets Group Chat
group.chat.bookmark.users=utilisateur(s)
groups=Groupes
# Enterprise
login.title=Console d'Administration login.title=Console d'Administration
options=Options
permitted.client.add=Ajouter permitted.client.add=Ajouter
permitted.client.add.other.client=Ajouter un autre Client permitted.client.add.other.client=Ajouter un autre Client
permitted.client.all.clients=Tous les Clients permitted.client.all.clients=Tous les Clients
...@@ -281,6 +214,3 @@ stat.sessions.units=Connexions Client ...@@ -281,6 +214,3 @@ stat.sessions.units=Connexions Client
stat.server_sessions.desc=No nombre de connexion Serveur \u00e0 Serveur stat.server_sessions.desc=No nombre de connexion Serveur \u00e0 Serveur
stat.server_sessions.name=Connexions Serveur \u00e0 Serveur stat.server_sessions.name=Connexions Serveur \u00e0 Serveur
stat.server_sessions.units=Conexions S2S stat.server_sessions.units=Conexions S2S
# Enterprise Bookmarks
users=Utilisateurs
...@@ -240,135 +240,3 @@ stat.packet_count.units = Pacotes por Minuto ...@@ -240,135 +240,3 @@ stat.packet_count.units = Pacotes por Minuto
stat.conversation.name = Conversas stat.conversation.name = Conversas
stat.conversation.desc = Conversas entre usu\u00e1rios. stat.conversation.desc = Conversas entre usu\u00e1rios.
stat.conversation.units = Conversas stat.conversation.units = Conversas
# Enterprise Bookmarks
users = Usu\u00e1rios
groups = Grupos
options = Op\u00e7\u00f5es
cancel = Cancelar
create = Criar
group.chat.bookmark.title = Marcadores de Salas de Bate-Papo
group.chat.bookmark.description = Criar marcadores para salas de bate-papo. Cada marcador pode ser atribu\u00eddo \
a indiv\u00edduos em particular ou a grupos (ou a todos usu\u00e1rios).
group.chat.bookmark.created = Marcador de sala de bate-papo criado com sucesso.
group.chat.bookmark.removed = Marcador de sala de bate-papo removido com sucesso.
group.chat.bookmark.name = Nome de Sala de Bate-Papo
group.chat.bookmark.address = Endere\u00e7o de Sala de Bate-Papo
group.chat.bookmark.autojoin = Auto-Ingressar
group.chat.bookmark.users = usu\u00e1rio(s)
group.chat.bookmark.groups = sala(s)
group.chat.bookmark.none = Atualmente, voc\u00ea n\u00e3o tem nenhum marcador de sala de bate-papo. clique em \
'adicionar marcador de sala de bate-papo' para adicionar nova sala de grupo de bate-papo.
group.chat.bookmark.add = Adicionar Marcador de Sala de Bate-Papo
bookmark.edit = Editar Marcador
bookmark.create = Criar Marcador
bookmark.created = Um novo marcador foi criado.
bookmark.url.name = Nome da URL
bookmark.url.name.description = ex. Nosso Website Interno
bookmark.url = URL
bookmark.url.manager.title = Gerenciador de Marcadores de URL
bookmark.url.manager.description = Permite a cria\u00e7\u00e3o de Marcadores de URL no cliente de IM dos usu\u00e1rios. Marcadores de URL permitem acesso r\u00e1pido para links utilizados com freq�\u00eancia, diretamente do cliente deles.
bookmark.url.success = Um marcador de URL foi criado com sucesso.
bookmark.url.deleted = Marcador de URL exclu\u00eddo com sucesso.
bookmark.url.users = Usu\u00e1rios
bookmark.url.groups = Grupos
bookmark.url.rss = RSS
bookmark.url.options = Op\u00e7\u00f5es
bookmark.url.no.bookmarks = Atualmente, voc\u00ea n\u00e3o tem nenhum Marcador de URL. Clique em 'Adicionar Marcador de URL' para incluir um.
bookmark.url.add = Adicionar Marcador de URL
bookmark.create.rss.feed = RSS Feed:
bookmark.create.all.users = Todos usu\u00e1rios
bookmark.url.error = Por favor, especifique uma URL a ser utilizada.
bookmark.browse.users = Listar Usu\u00e1rios
bookmark.browse.groups = Listar Grupos
bookmark.users.groups.error = Voc\u00ea deve especificar usu\u00e1rios e/ou grupos para criar um marcador v\u00e1lido.
bookmark.save.changes = Salvar Altera\u00e7\u00f5es
bookmark.urlName.error = Por favor, especifique o nome da URL.
bookmark.groupchat.name.error = Por favor, especifique o nome da sala de bate-papo.
bookmark.groupchat.address.error = Por favor, especifique um endere\u00e7o v\u00e1lido da sala de bate-papo.
bookmark.url.create.description = Crie um novo marcador de URL utilizando o formul\u00e1rio abaixo.
bookmark.groupchat.create.description = Crie uma nova sala de bate-papo utilizando o formul\u00e1rio abaixo.
bookmark.url.edit.description = Edite marcador de URL utilizando o formul\u00e1rio abaixo.
bookmark.groupchat.edit.description = Edite marcador de sala de bate-papo utilizando o formul\u00e1rio abaixo.
bookmark.delete.confirm = Excluir Este Marcador?
bookmark.delete.confirm.prompt = Voc\u00ea tem certeza que deseja excluir este Marcador?
bookmark.delete.url.urlname = Nome da URL:
bookmark.delete.url.url = URL:
bookmark.delete.url.users = Usu\u00e1rios:
bookmark.delete.url.groups = Grupos:
bookmark.delete.url.submit = Apagar
bookmark.delete.url.cancel = Cancelar
bookmark.delete.chat.groupname = Nome da Sala de Bate-Papo:
bookmark.delete.chat.address = Endere\u00e7o da Sala de Bate-Papo:
bookmark.delete.chat.users = Usu\u00e1rios:
bookmark.delete.chat.groups = Grupos:
bookmark.delete.chat.autojoin = Auto-Ingressar:
bookmark.delete.chat.submit = Apagar
bookmark.delete.chat.cancel = Cancelar
# Dashboard
dashboard.title = Painel do Openfire
dashboard.description = Um resumo da atividade atual do Openfire.
dashboard.directions = Clique nos gr\u00e1ficos para ampli\u00e1-los.
dashboard.snapshot.enlarge = Aumentar Gr\u00e1fico
dashboard.snapshot.shrink = Diminuir Gr\u00e1fico
dashboard.timespan = Intervalo:
dashboard.timespan.lasthour = 1 Hora
dashboard.timespan.last24hours = 24 Horas
dashboard.timespan.last7days = 7 Dias
dashboard.spotlights.high = Alto:
dashboard.spotlights.low = Baixo:
dashboard.spotlights.packetactivity = Pacotes por Minuto
dashboard.spotlights.activeconversations = Conversas Ativas
dashboard.spotlights.currentusers = Usu\u00e1rios Atuais
dashboard.quickstats = Status R\u00e1pidos
dashboard.quickstats.high = Alto
dashboard.quickstats.low = Baixo
dashboard.currentconversations = Conversas Atuais
dashboard.currentconversations.details = Ver detalhes
dashboard.currentconversations.users = Usu\u00e1rios
dashboard.currentconversations.lastactivity = \u00daltima Atividade
dashboard.currentconversations.messagecount = Mensagens
dashboard.currentconversations.none = Nenhuma conversa ativa.
# All Reports
allreports.title = Todos os Relat\u00f3rios
allreports.daterange = Intervalo de datas
allreports.daterange.preset = Pr\u00e9-ajustado
allreports.daterange.preset.last60minutes = \u00faltimos 60 minutos
allreports.daterange.preset.last24hours = \u00daltimas 24 horas
allreports.daterange.preset.thisweek = Esta Semana
allreports.daterange.preset.last7days = \u00daltimos 7 dias
allreports.daterange.preset.lastweek = \u00daltima semana
allreports.daterange.preset.thismonth = Este m\u00eas
allreports.daterange.preset.lastmonth = \u00daltimo m\u00eas
allreports.daterange.preset.last3months = \u00daltimos 3 meses
allreports.daterange.specific = Espec\u00edfico
allreports.daterange.specific.startdate = In\u00edcio:
allreports.daterange.specific.enddate = Fim:
allreports.daterange.startdate.error = Por favor, insira uma data de in\u00edcio no formato mm/dd/aa.
allreports.daterange.enddate.error = Por favor, insira uma data de fim antes de amanh\u00e3 no formato mm/dd/aa.
allreports.selectreport = Selecionar Relat\u00f3rio
allreports.download.allreports = Fazer Download de Todos Relat\u00f3rios
allreports.download.allreports.pdf = PDF
allreports.download.allreports.pdf.format = Formato PDF
allreports.download.singlereport = Fazer download deste relat\u00f3rio:
allreports.download.singlereport.pdf = PDF
allreports.reportinformation = Informa\u00e7\u00f5es do Relat\u00f3rios
global.pages=P\u00e1ginas
global.showing=Mostrando
permitted.client.website=
test = Test
...@@ -219,129 +219,3 @@ stat.packet_count.units = \u6bcf\u5206\u949f\u6570\u636e\u5305 ...@@ -219,129 +219,3 @@ stat.packet_count.units = \u6bcf\u5206\u949f\u6570\u636e\u5305
stat.conversation.name = \u5bf9\u8bdd stat.conversation.name = \u5bf9\u8bdd
stat.conversation.desc = \u7528\u6237\u95f4\u7684\u5bf9\u8bdd stat.conversation.desc = \u7528\u6237\u95f4\u7684\u5bf9\u8bdd
stat.conversation.units = \u5bf9\u8bdd stat.conversation.units = \u5bf9\u8bdd
# Enterprise Bookmarks
users = \u7528\u6237
groups = \u7ec4
options = \u9009\u9879
cancel = \u53d6\u6d88
create = \u5efa\u7acb
group.chat.bookmark.title = \u7ec4\u5bf9\u8bdd\u4e66\u7b7e
group.chat.bookmark.description = \u5efa\u7acb\u5206\u7ec4\u5bf9\u8bdd\u623f\u95f4\u4e66\u7b7e\u3002\u6bcf\u4e2a\u4e66\u7b7e\u53ef\u4ee5\u5206\u914d\u7ed9\u7279\u522b\u7684\u4e2a\u4eba\u6216\u7ec4\uff08\u6216\u6240\u6709\u7684\u7528\u6237\uff09
group.chat.bookmark.created = \u5206\u7ec4\u5bf9\u8bdd\u4e66\u7b7e\u88ab\u5efa\u7acb
group.chat.bookmark.removed = \u5206\u7ec4\u5bf9\u8bdd\u4e66\u7b7e\u88ab\u5220\u9664
group.chat.bookmark.name = \u5206\u7ec4\u5bf9\u8bdd\u540d\u5b57
group.chat.bookmark.address = \u5206\u7ec4\u5bf9\u8bdd\u5730\u5740
group.chat.bookmark.autojoin = \u81ea\u52a8\u52a0\u5165
group.chat.bookmark.users = \u7528\u6237
group.chat.bookmark.groups = \u7ec4
group.chat.bookmark.none = \u60a8\u73b0\u5728\u6ca1\u6709\u4efb\u4f55\u5206\u7ec4\u5bf9\u8bdd\u4e66\u7b7e\u3002\u5355\u51fb\u201c\u589e\u52a0\u5206\u7ec4\u5bf9\u8bdd\u4e66\u7b7e\u201d\u7528\u4e8e\u589e\u52a0\u65b0\u7684\u5206\u7ec4\u5bf9\u8bdd\u623f\u95f4\u3002
group.chat.bookmark.add = \u589e\u52a0\u5206\u7ec4\u5bf9\u8bdd\u4e66\u7b7e
bookmark.edit = \u7f16\u8f91\u4e66\u7b7e
bookmark.create = \u65b0\u5efa\u4e66\u7b7e
bookmark.created = \u4e00\u4e2a\u65b0\u7684\u4e66\u7b7e\u88ab\u5efa\u7acb
bookmark.url.name = URL\u540d\u5b57
bookmark.url.name.description = \u4f8b\u5982\uff1a\u6211\u4eec\u7684\u4e92\u8054\u7f51\u7ad9\u70b9
bookmark.url = URL
bookmark.url.manager.title = URL\u4e66\u7b7e\u7ba1\u7406
bookmark.url.manager.description = \u5141\u8bb8\u5728\u7528\u6237\u7684\u5ba2\u6237\u7aefURL\u4e66\u7b7e\u3002URL\u4e66\u7b7e\u5141\u8bb8\u76f4\u63a5\u4ece\u4ed6\u4eec\u7684\u5ba2\u6237\u7aef\u5feb\u901f\u7684\u8fdb\u5165\u5230\u9891\u7e41\u4f7f\u7528\u7684\u94fe\u63a5
bookmark.url.success = \u4e00\u4e2aURL\u4e66\u7b7e\u88ab\u5efa\u7acb
bookmark.url.deleted = URL\u4e66\u7b7e\u5220\u9664
bookmark.url.users = \u7528\u6237
bookmark.url.groups = \u7ec4
bookmark.url.rss = RSS
bookmark.url.options = \u53ef\u9009\u9879
bookmark.url.no.bookmarks = \u60a8\u5f53\u524d\u6ca1\u6709\u4efb\u4f55URL\u4e66\u7b7e\u3002\u5355\u51fb\u201c\u589e\u52a0URL\u4e66\u7b7e\u201d\u7528\u4e8e\u589e\u52a0\u4e00\u4e2a\u65b0\u7684URL\u4e66\u7b7e
bookmark.url.add = \u589e\u52a0URL\u4e66\u7b7e
bookmark.create.rss.feed = RSS\u53cd\u9988:
bookmark.create.all.users = \u6240\u6709\u7528\u6237
bookmark.url.error = \u8bf7\u6307\u5b9a\u4e00\u4e2aurl\u4f7f\u7528
bookmark.browse.users = \u6d4f\u89c8\u7528\u6237
bookmark.browse.groups = \u6d4f\u89c8\u5206\u7ec4
bookmark.users.groups.error = \u60a8\u5fc5\u987b\u6307\u5b9a\u7528\u6237\u4e0e\u7ec4\u7528\u4e8e\u521b\u5efa\u4e00\u4e2a\u6709\u6548\u7684\u4e66\u7b7e
bookmark.save.changes = \u4fdd\u5b58\u8bbe\u7f6e
bookmark.urlName.error = \u8bf7\u6307\u5b9aURL\u7684\u540d\u5b57
bookmark.groupchat.name.error = \u8bf7\u6307\u5b9a\u5206\u7ec4\u5bf9\u8bdd\u7684\u540d\u5b57
bookmark.groupchat.address.error = \u8bf7\u6307\u5b9a\u4e00\u4e2a\u6709\u6548\u7684\u5206\u7ec4\u5bf9\u8bdd\u623f\u95f4\u5730\u5740
bookmark.url.create.description = \u4f7f\u7528\u4e0b\u9762\u7684\u8868\u5355\u65b0\u5efa\u4e00\u4e2a\u65b0\u7684URL\u4e66\u7b7e
bookmark.groupchat.create.description = \u4f7f\u7528\u4e0b\u9762\u7684\u8868\u5355\u65b0\u5efa\u4e00\u4e2a\u65b0\u7684\u5206\u7ec4\u5bf9\u8bdd\u623f\u95f4\u4e66\u7b7e
bookmark.url.edit.description = \u4f7f\u7528\u4e0b\u9762\u7684\u8868\u5355\u7f16\u8f91URL\u4e66\u7b7e
bookmark.groupchat.edit.description = \u4f7f\u7528\u4e0b\u9762\u7684\u8868\u5355\u7f16\u8f91\u5206\u7ec4\u5bf9\u8bdd\u623f\u95f4\u4e66\u7b7e
bookmark.delete.confirm = \u5220\u9664\u8fd9\u4e2a\u4e66\u7b7e?
bookmark.delete.confirm.prompt = \u60a8\u662f\u5426\u786e\u5b9a\u5220\u9664\u8fd9\u4e2a\u4e66\u7b7e?
bookmark.delete.url.urlname = URL\u540d\u5b57:
bookmark.delete.url.url = URL:
bookmark.delete.url.users = \u7528\u6237:
bookmark.delete.url.groups = \u7ec4:
bookmark.delete.url.submit = \u5220\u9664
bookmark.delete.url.cancel = \u53d6\u6d88
bookmark.delete.chat.groupname = \u5206\u7ec4\u804a\u5929\u540d\u79f0:
bookmark.delete.chat.address = \u5206\u7ec4\u804a\u5929\u5730\u5740:
bookmark.delete.chat.users = \u7528\u6237:
bookmark.delete.chat.groups = \u7ec4:
bookmark.delete.chat.autojoin = \u81ea\u52a8\u52a0\u5165:
bookmark.delete.chat.submit = \u5220\u9664
bookmark.delete.chat.cancel = \u53d6\u6d88
# Dashboard
dashboard.title = Openfire\u4eea\u8868\u76d8
dashboard.description = \u5728Openfire\u4e2d\u5f53\u524d\u6d3b\u52a8\u7684\u5feb\u7167.
dashboard.directions = \u5355\u51fb\u4e0b\u9762\u7684\u56fe\u8868\u770b\u4e00\u4e2a\u653e\u5927\u7684\u56fe\u8c61
dashboard.snapshot.enlarge = \u653e\u5927\u56fe\u50cf
dashboard.snapshot.shrink = \u7f29\u5c0f\u56fe\u50cf
dashboard.timespan = \u65f6\u95f4\u95f4\u9694:
dashboard.timespan.lasthour = 1\u5c0f\u65f6
dashboard.timespan.last24hours = 24\u5c0f\u65f6
dashboard.timespan.last7days = 7\u5929
dashboard.spotlights.high = \u9ad8:
dashboard.spotlights.low = \u4f4e:
dashboard.spotlights.packetactivity = \u6bcf\u5206\u949f\u7684\u6570\u636e\u5305
dashboard.spotlights.activeconversations = \u6d3b\u52a8\u7684\u4f1a\u8bdd
dashboard.spotlights.currentusers = \u5f53\u524d\u7528\u6237
dashboard.quickstats = \u5feb\u901f\u72b6\u6001
dashboard.quickstats.high = \u9ad8
dashboard.quickstats.low = \u4f4e
dashboard.currentconversations = \u5f53\u524d\u7684\u4f1a\u8bdd
dashboard.currentconversations.details = \u67e5\u770b\u8be6\u7ec6\u8d44\u6599
dashboard.currentconversations.users = \u7528\u6237
dashboard.currentconversations.lastactivity = \u6700\u65b0\u7684\u6d3b\u52a8
dashboard.currentconversations.messagecount = \u4fe1\u606f
dashboard.currentconversations.none = \u975e\u6d3b\u52a8\u7684\u4f1a\u8bdd
# All Reports
allreports.title = \u6240\u6709\u7684\u62a5\u544a
allreports.daterange = \u65e5\u671f\u8303\u56f4
allreports.daterange.preset = \u4e8b\u5148\u8c03\u6574
allreports.daterange.preset.last60minutes = \u6700\u65b060\u5206\u949f
allreports.daterange.preset.last24hours = \u6700\u65b024\u5c0f\u65f6
allreports.daterange.preset.thisweek = \u672c\u5468
allreports.daterange.preset.last7days = \u6700\u8fd17\u5929
allreports.daterange.preset.lastweek = \u4e0a\u5468
allreports.daterange.preset.thismonth = \u672c\u6708
allreports.daterange.preset.lastmonth = \u4e0a\u4e2a\u6708
allreports.daterange.preset.last3months = \u6700\u8fd13\u4e2a\u6708
allreports.daterange.specific = \u7279\u522b\u6307\u5b9a
allreports.daterange.specific.startdate = \u5f00\u59cb:
allreports.daterange.specific.enddate = \u7ed3\u675f:
allreports.daterange.startdate.error = \u8bf7\u7528mm/dd/yy\u683c\u5f0f\u8f93\u5165\u4e00\u4e2a\u5f00\u59cb\u65e5\u671f
allreports.daterange.enddate.error = \u8bf7\u7528mm/dd/yy\u683c\u5f0f\u8f93\u5165\u4e00\u4e2a\u7ed3\u675f\u65e5\u671f
allreports.selectreport = \u9009\u62e9\u62a5\u544a
allreports.download.allreports = \u4e0b\u8f7d\u6240\u6709\u7684\u62a5\u544a
allreports.download.allreports.pdf = PDF
allreports.download.allreports.pdf.format = PDF\u683c\u5f0f
allreports.download.singlereport = \u4e0b\u8f7d\u8fd9\u4efd\u62a5\u544a:
allreports.download.singlereport.pdf = PDF
allreports.reportinformation = \u62a5\u544a\u4fe1\u606f
...@@ -19,7 +19,6 @@ package org.jivesoftware.openfire.plugin; ...@@ -19,7 +19,6 @@ package org.jivesoftware.openfire.plugin;
import org.jivesoftware.openfire.container.Plugin; import org.jivesoftware.openfire.container.Plugin;
import org.jivesoftware.openfire.container.PluginManager; import org.jivesoftware.openfire.container.PluginManager;
import org.jivesoftware.openfire.plugin.spark.SparkManager; import org.jivesoftware.openfire.plugin.spark.SparkManager;
import org.jivesoftware.openfire.plugin.spark.BookmarkInterceptor;
import org.jivesoftware.openfire.plugin.spark.TaskEngine; import org.jivesoftware.openfire.plugin.spark.TaskEngine;
import org.jivesoftware.openfire.plugin.spark.manager.SparkVersionManager; import org.jivesoftware.openfire.plugin.spark.manager.SparkVersionManager;
import org.jivesoftware.openfire.plugin.spark.manager.FileTransferFilterManager; import org.jivesoftware.openfire.plugin.spark.manager.FileTransferFilterManager;
...@@ -36,7 +35,6 @@ import java.io.FileFilter; ...@@ -36,7 +35,6 @@ import java.io.FileFilter;
public class ClientControlPlugin implements Plugin { public class ClientControlPlugin implements Plugin {
private SparkManager sparkManager; private SparkManager sparkManager;
private BookmarkInterceptor bookmarkInterceptor;
private SparkVersionManager sparkVersionManager; private SparkVersionManager sparkVersionManager;
private FileTransferFilterManager fileTransferFilterManager; private FileTransferFilterManager fileTransferFilterManager;
private TaskEngine taskEngine; private TaskEngine taskEngine;
...@@ -69,10 +67,7 @@ public class ClientControlPlugin implements Plugin { ...@@ -69,10 +67,7 @@ public class ClientControlPlugin implements Plugin {
taskEngine = TaskEngine.getInstance(); taskEngine = TaskEngine.getInstance();
sparkManager = new SparkManager(taskEngine); sparkManager = new SparkManager(taskEngine);
sparkManager.start(); sparkManager.start();
// Create and start the bookmark interceptor, which adds server-managed bookmarks when
// a user requests their bookmark list.
bookmarkInterceptor = new BookmarkInterceptor();
bookmarkInterceptor.start();
// Create and start the Spark version manager // Create and start the Spark version manager
sparkVersionManager = new SparkVersionManager(); sparkVersionManager = new SparkVersionManager();
sparkVersionManager.start(); sparkVersionManager.start();
...@@ -93,11 +88,6 @@ public class ClientControlPlugin implements Plugin { ...@@ -93,11 +88,6 @@ public class ClientControlPlugin implements Plugin {
sparkManager = null; sparkManager = null;
} }
if (bookmarkInterceptor != null) {
bookmarkInterceptor.stop();
bookmarkInterceptor = null;
}
if (sparkVersionManager != null) { if (sparkVersionManager != null) {
sparkVersionManager.shutdown(); sparkVersionManager.shutdown();
sparkVersionManager = null; sparkVersionManager = null;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment