Author: toad
Date: 2008-04-18 23:35:21 +0000 (Fri, 18 Apr 2008)
New Revision: 19404

Modified:
   trunk/freenet/src/freenet/clients/http/QueueToadlet.java
   trunk/freenet/src/freenet/clients/http/bookmark/BookmarkItem.java
   trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties
   trunk/freenet/src/freenet/node/Announcer.java
   trunk/freenet/src/freenet/node/DarknetPeerNode.java
   trunk/freenet/src/freenet/node/IPDetectorPluginManager.java
   trunk/freenet/src/freenet/node/Node.java
   trunk/freenet/src/freenet/node/NodeClientCore.java
   trunk/freenet/src/freenet/node/NodeIPDetector.java
   trunk/freenet/src/freenet/node/updater/NodeUpdateManager.java
   trunk/freenet/src/freenet/node/updater/UpdateOverMandatoryManager.java
   trunk/freenet/src/freenet/node/useralerts/AbstractUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/BuildOldAgeUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/ClockProblemDetectedUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/ExtOldAgeUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/IPUndetectedUserAlert.java
   
trunk/freenet/src/freenet/node/useralerts/InvalidAddressOverrideUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/MeaningfulNodeNameUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/N2NTMUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/NotEnoughNiceLevelsUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/OpennetUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/PeerManagerUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/ProxyUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/RevocationKeyFoundUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/SimpleHTMLUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/SimpleUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/TimeSkewDetectedUserAlert.java
   
trunk/freenet/src/freenet/node/useralerts/UpdatedVersionAvailableUserAlert.java
   trunk/freenet/src/freenet/node/useralerts/UserAlert.java
   trunk/freenet/src/freenet/node/useralerts/UserAlertManager.java
   trunk/freenet/src/freenet/pluginmanager/PluginManager.java
Log:
Add getShortText() to UserAlert ... commented out at the moment as I need to 
make some largish changes to IPDetectorPluginManager and PeerManagerUserAlert.

Modified: trunk/freenet/src/freenet/clients/http/QueueToadlet.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/QueueToadlet.java    2008-04-18 
22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/clients/http/QueueToadlet.java    2008-04-18 
23:35:21 UTC (rev 19404)
@@ -1213,7 +1213,7 @@
                                        new String[] { "link", "/link", 
"origlink", "/origlink", "filename", "size" },
                                        new String[] { "<a 
href=\"/queue/"+uri.toACIIString()+"\">", "</a>", "<a 
href=\"/"+uri.toACIIString()+"\">", "</a>", name, SizeUtil.formatSize(size) } );
                        UserAlert alert = 
-                       new SimpleHTMLUserAlert(true, title, text, 
UserAlert.MINOR) {
+                       new SimpleHTMLUserAlert(true, title, title, text, 
UserAlert.MINOR) {
                                public void onDismiss() {
                                        
synchronized(completedRequestIdentifiers) {
                                                
completedRequestIdentifiers.remove(identifier);
@@ -1238,7 +1238,7 @@
                                        new String[] { "link", "/link", 
"filename", "size" },
                                        new String[] { "<a 
href=\"/"+uri.toACIIString()+"\">", "</a>", name, SizeUtil.formatSize(size) } );
                        UserAlert alert = 
-                       new SimpleHTMLUserAlert(true, title, text, 
UserAlert.MINOR) {
+                       new SimpleHTMLUserAlert(true, title, title, text, 
UserAlert.MINOR) {
                                public void onDismiss() {
                                        
synchronized(completedRequestIdentifiers) {
                                                
completedRequestIdentifiers.remove(identifier);
@@ -1264,7 +1264,7 @@
                                        new String[] { "link", "/link", 
"filename", "size", "files" },
                                        new String[] { "<a 
href=\"/"+uri.toACIIString()+"\">", "</a>", name, SizeUtil.formatSize(size), 
Integer.toString(files) } );
                        UserAlert alert = 
-                       new SimpleHTMLUserAlert(true, title, text, 
UserAlert.MINOR) {
+                       new SimpleHTMLUserAlert(true, title, title, text, 
UserAlert.MINOR) {
                                public void onDismiss() {
                                        
synchronized(completedRequestIdentifiers) {
                                                
completedRequestIdentifiers.remove(identifier);

Modified: trunk/freenet/src/freenet/clients/http/bookmark/BookmarkItem.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/bookmark/BookmarkItem.java   
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/clients/http/bookmark/BookmarkItem.java   
2008-04-18 23:35:21 UTC (rev 19404)
@@ -66,7 +66,7 @@
     private class BookmarkUpdatedUserAlert extends AbstractUserAlert {

         public BookmarkUpdatedUserAlert() {
-            super(true, null, null, null, UserAlert.MINOR, false, null, true, 
null);
+            super(true, null, null, null, null, UserAlert.MINOR, false, null, 
true, null);
         }

         public String getTitle() {
@@ -105,6 +105,10 @@
         public void onDismiss() {
             disableBookmark();
         }
+
+               public String getShortText() {
+                       return l10n("bookmarkUpdatedShort", "name", name);
+               }
     }

     private synchronized void disableBookmark() {

Modified: trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties
===================================================================
--- trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties   2008-04-18 
22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties   2008-04-18 
23:35:21 UTC (rev 19404)
@@ -6,6 +6,8 @@
 Announcer.announceLoading=Freenet is currently loading the seednodes file so 
that it can attempt to announce to the rest of the network. Announcement may 
take a few minutes.
 Announcer.announceDisabledTooOldTitle=Announcement disabled (too old)
 Announcer.announceDisabledTooOld=This node appears to be too old to connect to 
the current Freenet network. We have disabled announcement, since it is not 
getting anywhere. Please update your node as soon as possible (auto-updating 
may be waiting for input or it may be disabled).
+Announcer.announceDisabledTooOldShort=The node has tried to connect to the 
network but your copy of Freenet is too old. You should upgrade.
+Announcer.announceAlertShort=The node is trying to connect to the network, it 
will be slow for a while.
 Announcer.coolingOff=For the next ${time} seconds, the node is waiting for the 
nodes that it just announced to to connect, if there are not enough nodes it 
will try a different node.
 BookmarkEditorToadlet.addBookmark=Add Bookmark
 BookmarkEditorToadlet.addCategory=Add Category
@@ -50,6 +52,7 @@
 BookmarkItem.bookmarkUpdated=The bookmarked site ${name} has been updated to 
edition ${edition}.
 BookmarkItem.bookmarkUpdatedTitle=Bookmark Updated: ${name}
 BookmarkItem.bookmarkUpdatedWithLink=The bookmarked site 
${link}${name}${/link} has been updated to edition ${edition}.
+BookmarkItem.bookmarkUpdatedShort=Bookmarked freesite updated: ${name}
 BookmarkItem.deleteBookmarkUpdateNotification=Delete notification
 BookmarkItem.unnamedBookmark=Unnamed Bookmark
 BookmarkManager.list=List of bookmarks
@@ -58,8 +61,10 @@
 BooleanOption.parseError=Unrecognized boolean: ${val} - try true or false
 BuildOldAgeUserAlert.tooOld=This node's software is older than the oldest 
version (Build #${lastgood}) allowed by the newest peers we try to connect to.  
Please update your node as soon as possible as you will not be able to connect 
to peers labeled "TOO NEW" until you do. (Freenet may leave your node in the 
dust of the past if you don't upgrade.)
 BuildOldAgeUserAlert.tooOldTitle=Build too old
+BuildOldAgeUserAlert.tooOldShort=This node is running such an old version of 
Freenet that it cannot connect to its peers any more! Please upgrade!
 ClockProblemDetectedUserAlert.title=Your computer's clock isn't on time.
 ClockProblemDetectedUserAlert.text=Freenet has detected that your computer's 
clock (time and date) isn't on time. It won't work properly until you fix it 
and restart the node.
+ClockProblemDetectedUserAlert.shortText=Your computer's clock isn't on time, 
so Freenet can't connect.
 CSSTokenizerFilter.deletedDisallowedString=Deleted disallowed string
 CSSTokenizerFilter.deletedUnmatchedChar=ignored unmatched char:
 CSSTokenizerFilter.deletedUnofficialIdent=Deleted unofficial ident
@@ -238,6 +243,7 @@
 DarknetConnectionsToadlet.versionTitle=Version
 ExtOldAgeUserAlert.extTooOld=Your freenet-ext.jar file seems to be outdated: 
we strongly advise you to update it using 
http://downloads.freenetproject.org/alpha/freenet-ext.jar.
 ExtOldAgeUserAlert.extTooOldTitle=Freenet-ext too old
+ExtOldAgeUserAlert.extTooOldShort=Your freenet-ext.jar is out of date. Please 
upgrade.
 FirstTimeWizardToadlet.homepageTitle=Freenet first time wizard!
 FirstTimeWizardToadlet.chooseNodeName=Node name required!
 FirstTimeWizardToadlet.chooseNodeNameLong=Please enter a node name in the 
field below (we recommend a nickname possibly with an email address). This is 
so that your friends (trusted peers, which you have manually added) can easily 
tell your node from their other nodes. This is not visible to strangers 
(untrusted automatically added peers). Note that any friend or stranger may 
trivially identify you from your IP address, since you are connected to them, 
but they cannot easily tell what you are requesting.
@@ -423,6 +429,7 @@
 FetchException.shortError.9=Too much recursion
 FileOffer.askUserTitle=Direct file transfer
 FileOffer.offeredFileHeader=The node ${name} has offered a file:
+FileOffer.offeredFileShort=Your friend ${node} has offered the file 
${filename}.
 FileOffer.fileLabel=File:
 FileOffer.senderLabel=Sender:
 FileOffer.commentLabel=Comment:
@@ -432,8 +439,10 @@
 FileOffer.rejectTransferButton=Reject Transfer
 FileOffer.failedReceiveHeader=The transfer of the file ${filename} from 
${node} has failed.
 FileOffer.failedReceiveTitle=Failed to receive file
+FileOffer.failedReceiveShort=The transfer of the file ${filename} from ${node} 
has failed.
 FileOffer.succeededReceiveTitle=Successfully received file
 FileOffer.succeededReceiveHeader=The transfer of the file ${filename} from 
${node} was a success.
+FileOffer.succeededReceiveShort=Successfully received ${filename} from ${node}.
 GIFFilter.invalidHeader=The file does not contain a valid GIF header.
 GIFFilter.invalidHeaderTitle=Invalid header
 GIFFilter.notGif=The file you tried to fetch is not a GIF. It might be some 
other file format, and your browser may do something dangerous with it, 
therefore we have blocked it.
@@ -471,10 +480,12 @@
 IPDetectorPluginManager.symmetric=Your internet connection appears to be 
behind a symmetric NAT or firewall. You will probably only be able to connect 
to users directly connected to the internet or behind restricted cone NATs.
 IPDetectorPluginManager.symmetricTitle=Symmetric firewall detected
 IPUndetectedUserAlert.detecting=Freenet is currently attempting to detect your 
external IP address. If this takes more than a few minutes there is something 
wrong...
+IPUndetectedUserAlert.detectingShort=Freenet is currently attempting to detect 
your external IP address.
 IPUndetectedUserAlert.detectingWithConfigLink=Freenet is currently attempting 
to detect your external IP address. If this takes more than a few minutes there 
is something wrong and you can use the Temporary IP Address Hint 
${link}configuration parameter${/link}.
 IPUndetectedUserAlert.unknownAddress=Freenet was unable to determine your 
external IP address (or the IP address of your NAT or Firewall). You can still 
exchange references with other people, however this will only work if the other 
user is not behind a NAT or Firewall. As soon as you have connected to one 
other user in this way, Freenet will be able to determine your external IP 
address. You can determine your current IP address and tell your node with the 
'Temporary IP address hint' ${link}configuration parameter${/link}.
 IPUndetectedUserAlert.unknownAddressTitle=Unknown external address
 IPUndetectedUserAlert.unknownAddressWithConfigLink=Freenet was unable to 
determine your external IP address (or the IP address of your NAT-device or 
firewall). You can still exchange references with other people, however this 
will only work if the other user is not behind a NAT-device or firewall. As 
soon as you have connected to one other user in this way, Freenet will be able 
to determine your external IP address. You can determine your current IP 
address and tell your node with the 'Temporary IP address hint' 
${link}configuration parameter${/link}.
+IPUndetectedUserAlert.unknownAddressShort=Freenet was unable to determine your 
IP address. You may have problems connecting.
 IPUndetectedUserAlert.suggestForwardPort=Also, it would be a good idea to 
forward the port ${port} (UDP) on your router to make it easy to connect to 
your node.
 IPUndetectedUserAlert.suggestForwardTwoPorts=Also, it would be a good idea to 
forward the ports ${port1} and ${port2} (UDP) on your router to make it easy to 
connect to your node.
 InsertException.longError.10=Cancelled by user
@@ -504,6 +515,7 @@
 InvalidAddressOverrideUserAlert.unknownAddress=Freenet has determined that the 
currently configured ipAddressOverride value is invalid, meaning that it does 
not match the syntax for a valid hostname, IPv4 address or IPv6 address (in the 
opinion of the current implementation of the function that checks the IPv6 
address syntax).
 InvalidAddressOverrideUserAlert.unknownAddressTitle=Invalid Address Override 
Value
 InvalidAddressOverrideUserAlert.unknownAddressWithConfigLink=Freenet has 
determined that the currently configured ipAddressOverride value is invalid, 
meaning that it does not match the syntax for a valid hostname, IPv4 address or 
IPv6 address (in the opinion of the current implementation of the function that 
checks the IPv6 address syntax). You can correct the 'IP address override' 
${link}configuration parameter${/link}.
+InvalidAddressOverrideUserAlert.unknownAddressShort=Your ipAddressOverride is 
bogus. Please fix it. 
 IntOption.parseError=The value specified can't be parsed as a 32-bit integer : 
${val}
 JPEGFilter.notJpeg=The file you tried to fetch is not a JPEG. It might be some 
other file format, and your browser may do something dangerous with it, 
therefore we have blocked it.
 JPEGFilter.tooShort=The file is too short to be a JPEG.
@@ -549,6 +561,7 @@
 LongOption.parseError=The value specified can't be parsed as a 64-bit integer 
: ${val}
 MeaningfulNodeNameUserAlert.noNodeNick=It seems that your node doesn't know 
your nickname. Putting your e-mail address or IRC nickname here is generally 
speaking a good idea and helps your friends to identify your node (note that 
only your darknet peers listed on the friends page can see your node name, it 
will not be displayed to strangers).
 MeaningfulNodeNameUserAlert.noNodeNickTitle=Your node name isn't defined.
+MeaningfulNodeNameUserAlert.noNodeNickShort=Your node name isn't defined.
 N2NTMToadlet.composingMessageLabel=Composing N2NTM to send to the following 
peers:
 N2NTMToadlet.delayed=Backed off: Sending of message possibly delayed to peer
 N2NTMToadlet.delayedTitle=Delayed
@@ -572,6 +585,7 @@
 N2NTMToadlet.tooLongTitle=Too Long
 N2NTMUserAlert.delete=Delete
 N2NTMUserAlert.header=From: ${from} (composed ${composed} | sent ${sent} | 
received ${received})
+N2NTMUserAlert.headerShort=Message from ${from}
 N2NTMUserAlert.reply=Reply
 N2NTMUserAlert.title=Node to Node Text Message ${number} from ${peername} 
(${peer})
 Node.acceptSeedConnectionsShort=Be a seednode?
@@ -584,6 +598,7 @@
 Node.bindTo=IP address to bind to
 Node.bindToLong=IP address to bind to
 Node.buggyJVM=The JVM you are using (${version}) is known to be buggy. It may 
produce OutOfMemoryError's when there is plenty of memory available. Please 
upgrade to at least Sun Java 1.4.2_13, 1.5.0_10 or 1.6 (recommended). See 
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4855795 .
+Node.buggyJVMShort=Freenet is running on Java ${version}. Please upgrade ASAP, 
this version of java has severe bugs.
 Node.buggyJVMTitle=Buggy JVM Warning
 Node.buggyJVMWithLink=The JVM you are using (${version}) is known to be 
${link}buggy${/link}. It may produce OutOfMemoryError's when there is plenty of 
memory available. Please upgrade to at least Sun Java 1.4.2_13, 1.5.0_10 or 1.6 
(recommended).
 Node.bwlimitMustBePositive=Bandwidth limit must be positive
@@ -631,8 +646,10 @@
 Node.nodeNameLong=Node nickname. This will be visible to your friends only.
 Node.notUsingSunVMTitle=Not using a Sun JVM
 Node.notUsingSunVM=You are trying to run the node under a non-Sun JVM: 
${vendor} ${version}. This is not recommended: the node may not run well. 
Please get Sun java from http://www.java.com/getjava/ if possible.
+Node.notUsingSunVMShort=Freenet is running on a non-Sun JVM, this is not 
recommended, please get the latest Sun Java. 
 Node.notUsingWrapperTitle=Not using the wrapper!
 Node.notUsingWrapper=You are running the node without the wrapper. This is not 
recommended. The node will not be able to restart itself, so auto-updating 
won't work, and if the JVM goes off into limbo, it won't get restarted either. 
Also the node can't generate stack dumps in some places so debugging will be 
marginally harder.
+Node.notUsingWrapperShort=Freenet is running without the wrapper. This is not 
recommended.
 Node.oneConnectionPerIP=Limit to one connection per address?
 Node.oneConnectionPerIPLong=Don't allow more than one connection per address? 
This will make it slightly harder for an attacker to connect more than once to 
your node as different identities, in order to dominate your routing or make 
harvesting easier. Also prevents having the same node connected on darknet and 
opennet simultaneously. 
 Node.opennetEnabled=Enable insecure mode (automatically connect to untrusted 
nodes)?
@@ -656,6 +673,7 @@
 Node.throttleLocalTrafficLong=Throttle local traffic? If enabled, even LAN and 
localhost traffic will be subject to bandwidth limiting.
 Node.tooSmallMTU=Too small MTU
 Node.tooSmallMTULong=Your connection's MTU appears to be ${mtu} bytes. Freenet 
will not function well with an MTU of less than ${minMTU} bytes: connections 
will be unreliable and possibly slow. Please fix the problem if possible.
+Node.tooSmallMTUShort=Connection problems: Your connection's MTU is too short 
for Freenet to work well. Expect problems.
 NodeClientCore.couldNotFindOrCreateDir=Could not find or create directory
 NodeClientCore.downloadAllowedDirs=Directories downloading is allowed to
 NodeClientCore.downloadAllowedDirsLong=Semicolon separated list of directories 
to which downloads are allowed. "downloads" means downloadsDir, empty means no 
downloads to disk allowed, "all" means downloads allowed from anywhere. 
WARNING! If this is set to "all" any user can download any file to anywhere on 
your computer!
@@ -673,6 +691,7 @@
 NodeClientCore.persistentTempDirLong=Name of directory to put persistent temp 
files in
 NodeClientCore.startingUpTitle=Freenet is starting up
 NodeClientCore.startingUp=Please allow Freenet a few moments to complete the 
startup process, in the meantime some things may not work and the node may be 
slower than usual.
+NodeClientCore.startingUpShort=Freenet is starting up, some things may not 
work and the node may be slow.
 NodeClientCore.tempDir=Temp files directory
 NodeClientCore.tempDirLong=Name of directory to put temporary files in
 NodeClientCore.uploadAllowedDirs=Directories uploading is allowed from
@@ -685,6 +704,7 @@
 NodeIPDectector.tempAddressHintLong=Temporary hint to what our IP might be; 
deleted after use
 NodeIPDetector.maybeSymmetric=It looks like your node may be behind a 
symmetric NAT. You may have connection problems: If you are behind a symmetric 
NAT you will probably only be able to connect to peers which are open to the 
internet.
 NodeIPDetector.maybeSymmetricTitle=Connection problems
+NodeIPDetector.maybeSymmetricShort=Connection problems: You may be behind a 
symmetric NAT.
 NodeIPDetector.unknownHostErrorInIPOverride=Unknown host: ${error}
 NodeStat.aggressiveGC=AggressiveGC modificator
 NodeStat.aggressiveGCLong=Enables the user to tweak the time in between GC and 
forced finalization. SHOULD NOT BE CHANGED unless you know what you're doing! 
-1 means: disable forced call to System.gc() and System.runFinalization()
@@ -715,15 +735,18 @@
 NodeUpdateManager.updateCatastropheTitle=Catastrophic Update Failure!
 NodeUpdateManager.updateFailed=Update Failed: ${reason}
 NodeUpdateManager.updateFailedTitle=Update Failed!
+NodeUpdateManager.updateFailedShort=Update Failed: ${reason}
 NodeUpdateManager.updateURI=Where should the node look for updates?
 NodeUpdateManager.updateURILong=Where should the node look for updates?
 NotEnoughNiceLevelsUserAlert.title=Not enough Nice levels available!
+NotEnoughNiceLevelsUserAlert.short=Not enough Nice levels available! Please 
run Freenet at a lower nice level.
 NotEnoughNiceLevelsUserAlert.content=Your node has detected that it is running 
at a high nice level. It can't perform well if they aren't enough levels 
available. Please lower the nice level you're node is running at (Look for 
PRIORITY in the run.sh file and lower its value)! Currently your node has 
${available} levels to play with whereas it would need ${required}.
 OpennetConnectionsToadlet.successTimeTitle=Last success
 OpennetConnectionsToadlet.successTime=Last time there was a successful CHK 
fetch from the node
 OpennetConnectionsToadlet.fullTitle=${counts} Strangers (Untrusted Peers) of 
${name}
 OpennetConnectionsToadlet.peersListTitle=My Opennet Peers (untrusted peers 
added by the node in promiscuous mode)
 OpennetUserAlert.warningTitle=Warning: Insecure Mode Enabled: Your node will 
connect to strangers
+OpennetUserAlert.warningShort=Insecure mode is enabled.
 OpennetUserAlert.warning=Freenet is currently running in insecure mode. It is 
easy for anyone, including Bad Guys, to find out that you are running Freenet, 
and connect to your node. Please get some connections to people you trust and 
add them to the Friends page as soon as possible, you will be much less 
vulnerable. When you have added connections to at least 10 friends (adding 
people you don't know will not improve your security), turn off insecure mode 
and your Freenet connection will become invisible to the outside world.
 PNGFilter.invalidHeader=The file you tried to fetch is not a PNG. It does not 
include a valid PNG header. It might be some other file format, and your 
browser may do something dangerous with it, therefore we have blocked it.
 PNGFilter.invalidHeaderTitle=Not a PNG - invalid header
@@ -761,6 +784,7 @@
 PeersSayKeyBlownAlert.disconnectedSayBlownLabel=These nodes told us that the 
key has been blown, but then disconnected, so we could not fetch the revocation 
certificate:
 PeersSayKeyBlownAlert.failedTransferSayBlownLabel=These nodes told us that the 
key has been blown, but then failed to transfer the revocation certificate:
 PeersSayKeyBlownAlert.titleWithCount=Auto-update key blown according to 
${count} peer(s)!
+PeersSayKeyBlownAlert.short=Some of your peers say the auto-update key is 
blown!
 PluginManager.cannotSetOnceLoaded=Cannot set the plugins list once loaded
 PluginManager.loadedOnStartup=Plugins to load on startup
 PluginManager.loadedOnStartupLong=Classpath, name and location for plugins to 
load when node starts up
@@ -769,6 +793,7 @@
 PluginManager.pluginReqNewerJVM=The plugin ${name} seems to require a later 
JVM. Please install at least Sun java 1.5, or remove the plugin.
 PluginManager.pluginReqNewerJVMTitle=Later JVM required by plugin ${name}.
 PluginManager.pluginLoadingFailedTitle=Could not load plugin!
+PluginManager.pluginLoadingFailedShort=Could not load plugin ${name}!
 PluginManager.pluginLoadingFailed=The specified plugin ${name} could not be 
loaded
 PluginManager.pluginLoadingFailedWithMessage=The specified plugin ${name} 
could not be loaded: ${message}
 PluginToadlet.addPluginTitle=Add a plugin
@@ -1055,6 +1080,7 @@
 TextModeClientInterfaceServer.telnetPortNumberLong=The TCP port the TMCI 
server should listen on
 TimeSkewDetectedUserAlert.title=Time skew detected!
 TimeSkewDetectedUserAlert.text=A time skew has been detected by the node. 
That's VERY bad. Your node won't perform correctly until it's fixed; Common 
causes are missconfigured powersafe mode, network time synchronization clients 
or buggy hardware.
+TimeSkewDetectedUserAlert.shortText=A time skew has been detected by the node. 
Freenet may break in wierd ways!
 Toadlet.yes=Yes
 Toadlet.no=No
 Toadlet.cancel=Cancel
@@ -1119,6 +1145,9 @@
 UpdatedVersionAvailableUserAlert.fetchingNewNode=Your node is currently 
downloading a new version of Freenet (node version ${nodeVersion}).
 UpdatedVersionAvailableUserAlert.finalCheck=Your node is currently doing a 
final check to verify the security of the update (${count} of ${max}, maximum 
time remaining ${time}).
 UpdatedVersionAvailableUserAlert.notLatest=It seems that your node isn't 
running the latest version of the software.
+UpdatedVersionAvailableUserAlert.shortArmed=Your node is downloading a new 
version of Freenet and will restart once it has it.
+UpdatedVersionAvailableUserAlert.shortReadyNotArmed=Your node has downloaded a 
new version of Freenet but needs permission to use the new build.
+UpdatedVersionAvailableUserAlert.shortNotReadyNotArmed=Your node is 
downloading a new version of Freenet but needs permission to use the new build.
 UpdatedVersionAvailableUserAlert.title=A new stable version of Freenet is 
available
 UpdatedVersionAvailableUserAlert.updateASAPButton=Update ASAP
 UpdatedVersionAvailableUserAlert.updateASAPQuestion=Would you like the node to 
automatically restart as soon as it has downloaded the update?

Modified: trunk/freenet/src/freenet/node/Announcer.java
===================================================================
--- trunk/freenet/src/freenet/node/Announcer.java       2008-04-18 22:36:15 UTC 
(rev 19403)
+++ trunk/freenet/src/freenet/node/Announcer.java       2008-04-18 23:35:21 UTC 
(rev 19404)
@@ -274,7 +274,7 @@
                                Logger.error(this, "Shutting down announcement 
as we are older than the current mandatory build and auto-update is disabled or 
waiting for user input.");
                                System.err.println("Shutting down announcement 
as we are older than the current mandatory build and auto-update is disabled or 
waiting for user input.");
                                if(node.clientCore != null)
-                                       node.clientCore.alerts.register(new 
SimpleUserAlert(false, l10n("announceDisabledTooOldTitle"), 
l10n("announceDisabledTooOld"), UserAlert.CRITICAL_ERROR));
+                                       node.clientCore.alerts.register(new 
SimpleUserAlert(false, l10n("announceDisabledTooOldTitle"), 
l10n("announceDisabledTooOld"), l10n("announceDisabledTooOldShort"), 
UserAlert.CRITICAL_ERROR));
                                return true;
                        }

@@ -593,6 +593,10 @@
                        return "announcer:"+hashCode();
                }

+               public String getShortText() {
+                       return l10n("announceAlertShort");
+               }
+
        }

        private String l10n(String key) {

Modified: trunk/freenet/src/freenet/node/DarknetPeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/DarknetPeerNode.java 2008-04-18 22:36:15 UTC 
(rev 19403)
+++ trunk/freenet/src/freenet/node/DarknetPeerNode.java 2008-04-18 23:35:21 UTC 
(rev 19404)
@@ -1007,6 +1007,10 @@
                                        return true;
                                }

+                               public String getShortText() {
+                                       return l10n("failedReceiveShort", new 
String[] { "filename", "node" }, new String[] { filename, getName() });
+                               }
+                               
                        };
                        node.clientCore.alerts.register(alert);
                }
@@ -1104,6 +1108,9 @@
                                public boolean userCanDismiss() {
                                        return true;
                                }
+                               public String getShortText() {
+                                       return l10n("succeededReceiveShort", 
new String[] { "filename", "node" }, new String[] { filename, getName() });
+                               }

                        };
                        node.clientCore.alerts.register(alert);
@@ -1216,6 +1223,9 @@
                                public boolean userCanDismiss() {
                                        return false; // should accept or reject
                                }
+                               public String getShortText() {
+                                       return l10n("offeredFileShort", new 
String[] { "filename", "node" }, new String[] { filename, getName() });
+                               }
                        };

                }

Modified: trunk/freenet/src/freenet/node/IPDetectorPluginManager.java
===================================================================
--- trunk/freenet/src/freenet/node/IPDetectorPluginManager.java 2008-04-18 
22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/IPDetectorPluginManager.java 2008-04-18 
23:35:21 UTC (rev 19404)
@@ -40,7 +40,7 @@
                boolean noDismiss;

                public MyUserAlert(String title, String text, boolean 
suggestPortForward, short code, boolean noDismiss) {
-                       super(false, title, text, null, code, true, 
L10n.getString("UserAlert.hide"), false, null);
+                       super(false, title, text, null, null, code, true, 
L10n.getString("UserAlert.hide"), false, null);
                        this.suggestPortForward = suggestPortForward;
                        this.noDismiss = noDismiss;
                        portsNotForwarded = new int[] { };

Modified: trunk/freenet/src/freenet/node/Node.java
===================================================================
--- trunk/freenet/src/freenet/node/Node.java    2008-04-18 22:36:15 UTC (rev 
19403)
+++ trunk/freenet/src/freenet/node/Node.java    2008-04-18 23:35:21 UTC (rev 
19404)
@@ -1767,7 +1767,7 @@

                        if(spuriousOOMs) {
                                System.err.println("Please upgrade to at least 
sun jvm 1.4.2_13, 1.5.0_10 or 1.6 (recommended). This version is buggy and may 
cause spurious OutOfMemoryErrors.");
-                               clientCore.alerts.register(new 
AbstractUserAlert(false, null, null, null, UserAlert.ERROR, true, null, false, 
null) {
+                               clientCore.alerts.register(new 
AbstractUserAlert(false, null, null, null, null, UserAlert.ERROR, true, null, 
false, null) {

                                        public HTMLNode getHTMLText() {
                                                HTMLNode n = new 
HTMLNode("div");
@@ -1790,6 +1790,10 @@
                                                // Ignore
                                        }

+                                       public String getShortText() {
+                                               return l10n("buggyJVMShort", 
"version", System.getProperty("java.version"));
+                                       }
+
                                });
                        }

@@ -1810,11 +1814,11 @@
                                }
                        }

-                       clientCore.alerts.register(new SimpleUserAlert(true, 
l10n("notUsingSunVMTitle"), l10n("notUsingSunVM", new String[] { "vendor", 
"version" }, new String[] { jvmVendor, jvmVersion }), UserAlert.WARNING));
+                       clientCore.alerts.register(new SimpleUserAlert(true, 
l10n("notUsingSunVMTitle"), l10n("notUsingSunVM", new String[] { "vendor", 
"version" }, new String[] { jvmVendor, jvmVersion }), 
l10n("notUsingSunVMShort"), UserAlert.WARNING));
                }

                if(!isUsingWrapper()) {
-                       clientCore.alerts.register(new SimpleUserAlert(true, 
l10n("notUsingWrapperTitle"), l10n("notUsingWrapper"), UserAlert.WARNING));
+                       clientCore.alerts.register(new SimpleUserAlert(true, 
l10n("notUsingWrapperTitle"), l10n("notUsingWrapper"), 
l10n("notUsingWrapperShort"), UserAlert.WARNING));
                }

        }
@@ -3266,7 +3270,7 @@

        public void onTooLowMTU(int minAdvertisedMTU, int minAcceptableMTU) {
                if(alertMTUTooSmall == null) {
-                       alertMTUTooSmall = new SimpleUserAlert(false, 
l10n("tooSmallMTU"), l10n("tooSmallMTULong", new String[] { "mtu", "minMTU" }, 
new String[] { Integer.toString(minAdvertisedMTU), 
Integer.toString(minAcceptableMTU) }), UserAlert.ERROR);
+                       alertMTUTooSmall = new SimpleUserAlert(false, 
l10n("tooSmallMTU"), l10n("tooSmallMTULong", new String[] { "mtu", "minMTU" }, 
new String[] { Integer.toString(minAdvertisedMTU), 
Integer.toString(minAcceptableMTU) }), l10n("tooSmallMTUShort"), 
UserAlert.ERROR);
                } else return;
                clientCore.alerts.register(alertMTUTooSmall);
        }

Modified: trunk/freenet/src/freenet/node/NodeClientCore.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeClientCore.java  2008-04-18 22:36:15 UTC 
(rev 19403)
+++ trunk/freenet/src/freenet/node/NodeClientCore.java  2008-04-18 23:35:21 UTC 
(rev 19404)
@@ -336,7 +336,7 @@

                // FProxy
                // FIXME this is a hack, the real way to do this is plugins
-               this.alerts.register(startingUpAlert = new 
SimpleUserAlert(true, l10n("startingUpTitle"), l10n("startingUp"), 
UserAlert.MINOR));
+               this.alerts.register(startingUpAlert = new 
SimpleUserAlert(true, l10n("startingUpTitle"), l10n("startingUp"), 
l10n("startingUpShort"), UserAlert.MINOR));
                toadletContainer = toadlets;
                toadletContainer.setCore(this);
                toadletContainer.setBucketFactory(tempBucketFactory);

Modified: trunk/freenet/src/freenet/node/NodeIPDetector.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeIPDetector.java  2008-04-18 22:36:15 UTC 
(rev 19403)
+++ trunk/freenet/src/freenet/node/NodeIPDetector.java  2008-04-18 23:35:21 UTC 
(rev 19404)
@@ -506,7 +506,7 @@
                if(ipDetectorManager != null && ipDetectorManager.isEmpty()) {
                        if(maybeSymmetricAlert == null) {
                                maybeSymmetricAlert = new SimpleUserAlert(true, 
l10n("maybeSymmetricTitle"), 
-                                               l10n("maybeSymmetric"), 
UserAlert.ERROR);
+                                               l10n("maybeSymmetric"), 
l10n("maybeSymmetricShort"), UserAlert.ERROR);
                        }
                        if(node.clientCore != null && node.clientCore.alerts != 
null)
                                
node.clientCore.alerts.register(maybeSymmetricAlert);

Modified: trunk/freenet/src/freenet/node/updater/NodeUpdateManager.java
===================================================================
--- trunk/freenet/src/freenet/node/updater/NodeUpdateManager.java       
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/updater/NodeUpdateManager.java       
2008-04-18 23:35:21 UTC (rev 19404)
@@ -558,10 +558,10 @@
                        return false;
                } catch (UpdateCatastropheException e) {
                        failUpdate(e.getMessage());
-                       node.clientCore.alerts.register(new 
SimpleUserAlert(false, l10n("updateCatastropheTitle"), e.getMessage(), 
UserAlert.CRITICAL_ERROR));
+                       node.clientCore.alerts.register(new 
SimpleUserAlert(false, l10n("updateCatastropheTitle"), e.getMessage(), 
l10n("updateCatastropheTitle"), UserAlert.CRITICAL_ERROR));
                        return false;
                } catch (UpdaterParserException e) {
-                       node.clientCore.alerts.register(new 
SimpleUserAlert(false, l10n("updateFailedTitle"), e.getMessage(), 
UserAlert.CRITICAL_ERROR));
+                       node.clientCore.alerts.register(new 
SimpleUserAlert(false, l10n("updateFailedTitle"), e.getMessage(), 
l10n("updateFailedShort", "reason", e.getMessage()), UserAlert.CRITICAL_ERROR));
                        return false;
                }

@@ -586,7 +586,7 @@
                Logger.error(this, "Update failed: "+reason);
                System.err.println("Update failed: "+reason);
                this.killUpdateAlerts();
-               node.clientCore.alerts.register(new SimpleUserAlert(true, 
l10n("updateFailedTitle"), l10n("updateFailed", "reason", reason), 
UserAlert.ERROR));
+               node.clientCore.alerts.register(new SimpleUserAlert(true, 
l10n("updateFailedTitle"), l10n("updateFailed", "reason", reason), 
l10n("updateFailedShort", "reason", reason), UserAlert.ERROR));
        }

        private String l10n(String key) {

Modified: trunk/freenet/src/freenet/node/updater/UpdateOverMandatoryManager.java
===================================================================
--- trunk/freenet/src/freenet/node/updater/UpdateOverMandatoryManager.java      
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/updater/UpdateOverMandatoryManager.java      
2008-04-18 23:35:21 UTC (rev 19404)
@@ -320,7 +320,7 @@
        class PeersSayKeyBlownAlert extends AbstractUserAlert {

                public PeersSayKeyBlownAlert() {
-                       super(false, null, null, null, 
UserAlert.CRITICAL_ERROR, true, null, false, null);
+                       super(false, null, null, null, null, 
UserAlert.CRITICAL_ERROR, true, null, false, null);
                }

                public HTMLNode getHTMLText() {
@@ -425,6 +425,10 @@
                        // Do nothing
                }

+               public String getShortText() {
+                       return l10n("short");
+               }
+
        }

        public PeerNode[][] getNodesSayBlown() {

Modified: trunk/freenet/src/freenet/node/useralerts/AbstractUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/AbstractUserAlert.java    
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/AbstractUserAlert.java    
2008-04-18 23:35:21 UTC (rev 19404)
@@ -31,6 +31,7 @@
        private final boolean userCanDismiss;
        private final String title;
        private final String text;
+       private final String shortText;
        private final HTMLNode htmlText;
        private final short priorityClass;
        protected boolean valid;
@@ -48,12 +49,14 @@
                this.dismissButtonText = null;
                this.shouldUnregisterOnDismiss = false;
                this.userIdentifier = null;
+               this.shortText = null;
        }

-       protected AbstractUserAlert(boolean userCanDismiss, String title, 
String text, HTMLNode htmlText, short priorityClass, boolean valid, String 
dismissButtonText, boolean shouldUnregisterOnDismiss, Object userIdentifier) {
+       protected AbstractUserAlert(boolean userCanDismiss, String title, 
String text, String shortText, HTMLNode htmlText, short priorityClass, boolean 
valid, String dismissButtonText, boolean shouldUnregisterOnDismiss, Object 
userIdentifier) {
                this.userCanDismiss = userCanDismiss;
                this.title = title;
                this.text = text;
+               this.shortText = shortText;
                this.htmlText = htmlText;
                this.priorityClass = priorityClass;
                this.valid = valid;
@@ -82,6 +85,10 @@
        public String getText() {
                return text;
        }
+       
+       public String getShortText() {
+               return shortText;
+       }

        /**
         * {@inheritDoc}

Modified: trunk/freenet/src/freenet/node/useralerts/BuildOldAgeUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/BuildOldAgeUserAlert.java 
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/BuildOldAgeUserAlert.java 
2008-04-18 23:35:21 UTC (rev 19404)
@@ -10,7 +10,7 @@
        public int lastGoodVersion = 0;

        public BuildOldAgeUserAlert() {
-               super(false, null, null, null, UserAlert.ERROR, true, 
L10n.getString("UserAlert.hide"), false, null);
+               super(false, null, null, null, null, UserAlert.ERROR, true, 
L10n.getString("UserAlert.hide"), false, null);
        }

        public String getTitle() {
@@ -41,5 +41,9 @@
                        return false;
                return super.isValid();
        }
+       
+       public String getShortText() {
+               return l10n("tooOldShort", "lastgood", 
Integer.toString(lastGoodVersion));
+       }

 }

Modified: 
trunk/freenet/src/freenet/node/useralerts/ClockProblemDetectedUserAlert.java
===================================================================
--- 
trunk/freenet/src/freenet/node/useralerts/ClockProblemDetectedUserAlert.java    
    2008-04-18 22:36:15 UTC (rev 19403)
+++ 
trunk/freenet/src/freenet/node/useralerts/ClockProblemDetectedUserAlert.java    
    2008-04-18 23:35:21 UTC (rev 19404)
@@ -19,7 +19,7 @@
         * 
         */
        public ClockProblemDetectedUserAlert() {
-               super(false, null, null, null, UserAlert.CRITICAL_ERROR, true, 
null, false, null);
+               super(false, null, null, null, null, UserAlert.CRITICAL_ERROR, 
true, null, false, null);
        }

        public String getTitle() {
@@ -33,6 +33,10 @@
        public String getText() {
                return l10n("text");
        }
+       
+       public String getShortText() {
+               return l10n("shortText");
+       }

        public HTMLNode getHTMLText() {
                return new HTMLNode("div", getText());

Modified: trunk/freenet/src/freenet/node/useralerts/ExtOldAgeUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/ExtOldAgeUserAlert.java   
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/ExtOldAgeUserAlert.java   
2008-04-18 23:35:21 UTC (rev 19404)
@@ -9,7 +9,7 @@
         * Creates a new alert.
         */
        public ExtOldAgeUserAlert() {
-               super(true, null, null, null, UserAlert.ERROR, true, 
L10n.getString("UserAlert.hide"), true, null);
+               super(true, null, null, null, null, UserAlert.ERROR, true, 
L10n.getString("UserAlert.hide"), true, null);
        }

        public String getTitle() {
@@ -28,4 +28,8 @@
                return new HTMLNode("div", getText());
        }

+       public String getShortText() {
+               return l10n("extTooOldShort");
+       }
+
 }

Modified: trunk/freenet/src/freenet/node/useralerts/IPUndetectedUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/IPUndetectedUserAlert.java        
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/IPUndetectedUserAlert.java        
2008-04-18 23:35:21 UTC (rev 19404)
@@ -12,7 +12,7 @@
 public class IPUndetectedUserAlert extends AbstractUserAlert {

        public IPUndetectedUserAlert(Node n) {
-               super(true, null, null, null, (short) 0, true, 
L10n.getString("UserAlert.hide"), false, null);
+               super(true, null, null, null, null, (short) 0, true, 
L10n.getString("UserAlert.hide"), false, null);
                this.node = n;
        }

@@ -92,4 +92,11 @@
                        return UserAlert.ERROR;
        }

+       public String getShortText() {
+               if(node.ipDetector.isDetecting())
+                       return l10n("detectingShort");
+               else
+                       return l10n("unknownAddressShort");
+       }
+
 }

Modified: 
trunk/freenet/src/freenet/node/useralerts/InvalidAddressOverrideUserAlert.java
===================================================================
--- 
trunk/freenet/src/freenet/node/useralerts/InvalidAddressOverrideUserAlert.java  
    2008-04-18 22:36:15 UTC (rev 19403)
+++ 
trunk/freenet/src/freenet/node/useralerts/InvalidAddressOverrideUserAlert.java  
    2008-04-18 23:35:21 UTC (rev 19404)
@@ -12,7 +12,7 @@
 public class InvalidAddressOverrideUserAlert extends AbstractUserAlert {

        public InvalidAddressOverrideUserAlert(Node n) {
-               super(false, null, null, null, (short) 0, true, null, false, 
null);
+               super(false, null, null, null, null, (short) 0, true, null, 
false, null);
                this.node = n;
        }

@@ -53,4 +53,8 @@
                return UserAlert.ERROR;
        }

+       public String getShortText() {
+               return l10n("unknownAddressShort");
+       }
+
 }

Modified: 
trunk/freenet/src/freenet/node/useralerts/MeaningfulNodeNameUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/MeaningfulNodeNameUserAlert.java  
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/MeaningfulNodeNameUserAlert.java  
2008-04-18 23:35:21 UTC (rev 19404)
@@ -13,7 +13,7 @@
        private final Node node;

        public MeaningfulNodeNameUserAlert(Node n) {
-               super(true, null, null, null, UserAlert.WARNING, true, 
L10n.getString("UserAlert.hide"), false, null);
+               super(true, null, null, null, null, UserAlert.WARNING, true, 
L10n.getString("UserAlert.hide"), false, null);
                this.node = n;
        }

@@ -28,6 +28,10 @@
        public String getText() {
                return l10n("noNodeNick");
        }
+       
+       public String getShortText() {
+               return l10n("noNodeNickShort");
+       }

        public HTMLNode getHTMLText() {
                SubConfig sc = node.config.get("node");

Modified: trunk/freenet/src/freenet/node/useralerts/N2NTMUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/N2NTMUserAlert.java       
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/N2NTMUserAlert.java       
2008-04-18 23:35:21 UTC (rev 19404)
@@ -21,7 +21,7 @@
        private long receivedTime;

        public N2NTMUserAlert(DarknetPeerNode sourcePeerNode, String source, 
String target, String message, int fileNumber, long composedTime, long  
sentTime, long receivedTime) {
-               super(true, null, null, null, UserAlert.MINOR, true, null, 
true, null);
+               super(true, null, null, null, null, UserAlert.MINOR, true, 
null, true, null);
                this.sourcePeerNode = sourcePeerNode;
                this.sourceNodename = source;
                this.messageText = message;
@@ -44,6 +44,10 @@
                        messageText;
        }

+       public String getShortText() {
+               return l10n("headerShort", "from", sourceNodename);
+       }
+       
        public HTMLNode getHTMLText() {
                HTMLNode alertNode = new HTMLNode("div");
                alertNode.addChild("p",
@@ -72,7 +76,12 @@
                return L10n.getString("N2NTMUserAlert."+key, patterns, values);
        }

+       private String l10n(String key, String pattern, String value) {
+               return L10n.getString("N2NTMUserAlert."+key, pattern, value);
+       }
+
        public void onDismiss() {
                sourcePeerNode.deleteExtraPeerDataFile(fileNumber);
        }
+
 }

Modified: 
trunk/freenet/src/freenet/node/useralerts/NotEnoughNiceLevelsUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/NotEnoughNiceLevelsUserAlert.java 
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/NotEnoughNiceLevelsUserAlert.java 
2008-04-18 23:35:21 UTC (rev 19404)
@@ -16,7 +16,7 @@
  */
 public class NotEnoughNiceLevelsUserAlert extends AbstractUserAlert {
        public NotEnoughNiceLevelsUserAlert() {
-               super(true, null, null, null, UserAlert.WARNING, true, 
L10n.getString("UserAlert.hide"), true, null);
+               super(true, null, null, null, null, UserAlert.WARNING, true, 
L10n.getString("UserAlert.hide"), true, null);
        }

        public String getTitle() {
@@ -31,6 +31,10 @@
                                String.valueOf(NativeThread.ENOUGH_NICE_LEVELS) 
                        });
        }
+       
+       public String getShortText() {
+               return L10n.getString("NotEnoughNiceLevelsUserAlert.short");
+       }

        public HTMLNode getHTMLText() {
                return new HTMLNode("div", getText());

Modified: trunk/freenet/src/freenet/node/useralerts/OpennetUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/OpennetUserAlert.java     
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/OpennetUserAlert.java     
2008-04-18 23:35:21 UTC (rev 19404)
@@ -9,7 +9,7 @@
        private final Node node;

        public OpennetUserAlert(Node node) {
-               super(true, L10n.getString("OpennetUserAlert.warningTitle"), 
L10n.getString("OpennetUserAlert.warning"), new HTMLNode("#", 
L10n.getString("OpennetUserAlert.warning")), UserAlert.WARNING, true, 
L10n.getString("UserAlert.hide"), false, null);
+               super(true, L10n.getString("OpennetUserAlert.warningTitle"), 
L10n.getString("OpennetUserAlert.warning"), 
L10n.getString("OpennetUserAlert.warningShort"), new HTMLNode("#", 
L10n.getString("OpennetUserAlert.warning")), UserAlert.WARNING, true, 
L10n.getString("UserAlert.hide"), false, null);
                this.node = node;
        }


Modified: trunk/freenet/src/freenet/node/useralerts/PeerManagerUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/PeerManagerUserAlert.java 
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/PeerManagerUserAlert.java 
2008-04-18 23:35:21 UTC (rev 19404)
@@ -52,7 +52,7 @@
        public static final long 
MAX_OLDEST_NEVER_CONNECTED_PEER_AGE_ALERT_THRESHOLD = ((long) 
2)*7*24*60*60*1000;  // 2 weeks

        public PeerManagerUserAlert(NodeStats n) {
-               super(false, null, null, null, (short) 0, true, 
L10n.getString("UserAlert.hide"), false, null);
+               super(false, null, null, null, null, (short) 0, true, 
L10n.getString("UserAlert.hide"), false, null);
                this.n = n;
        }


Modified: trunk/freenet/src/freenet/node/useralerts/ProxyUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/ProxyUserAlert.java       
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/ProxyUserAlert.java       
2008-04-18 23:35:21 UTC (rev 19404)
@@ -77,4 +77,8 @@
                return "anchor:"+Integer.toString(hashCode());
        }

+//     public String getShortText() {
+//             return alert.getShortText();
+//     }
+
 }

Modified: 
trunk/freenet/src/freenet/node/useralerts/RevocationKeyFoundUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/RevocationKeyFoundUserAlert.java  
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/RevocationKeyFoundUserAlert.java  
2008-04-18 23:35:21 UTC (rev 19404)
@@ -8,7 +8,7 @@

 public class RevocationKeyFoundUserAlert extends AbstractUserAlert {
        public RevocationKeyFoundUserAlert(String msg){
-               super(false, 
L10n.getString("RevocationKeyFoundUserAlert.title"), 
L10n.getString("RevocationKeyFoundUserAlert.text", "message", msg), new 
HTMLNode("#", L10n.getString("RevocationKeyFoundUserAlert.text", "message", 
msg)), UserAlert.CRITICAL_ERROR, true, null, false, null);
+               super(false, 
L10n.getString("RevocationKeyFoundUserAlert.title"), 
L10n.getString("RevocationKeyFoundUserAlert.text", "message", msg), 
L10n.getString("RevocationKeyFoundUserAlert.text", "message", msg), new 
HTMLNode("#", L10n.getString("RevocationKeyFoundUserAlert.text", "message", 
msg)), UserAlert.CRITICAL_ERROR, true, null, false, null);
        }

        public void isValid(boolean b){

Modified: trunk/freenet/src/freenet/node/useralerts/SimpleHTMLUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/SimpleHTMLUserAlert.java  
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/SimpleHTMLUserAlert.java  
2008-04-18 23:35:21 UTC (rev 19404)
@@ -5,8 +5,8 @@

 public class SimpleHTMLUserAlert extends AbstractUserAlert {

-       public SimpleHTMLUserAlert(boolean canDismiss, String title, HTMLNode 
content, short type) {
-               super(canDismiss, title, content.getContent(), content, type, 
true, L10n.getString("UserAlert.hide"), true, null);
+       public SimpleHTMLUserAlert(boolean canDismiss, String title, String 
shortText, HTMLNode content, short type) {
+               super(canDismiss, title, shortText, content.getContent(), 
content, type, true, L10n.getString("UserAlert.hide"), true, null);
        }

        public void isValid(boolean validity) {

Modified: trunk/freenet/src/freenet/node/useralerts/SimpleUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/SimpleUserAlert.java      
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/SimpleUserAlert.java      
2008-04-18 23:35:21 UTC (rev 19404)
@@ -8,12 +8,12 @@

 public class SimpleUserAlert extends AbstractUserAlert {

-       public SimpleUserAlert(boolean canDismiss, String title, String text, 
short type) {
-               this(canDismiss, title, text, type, null);
+       public SimpleUserAlert(boolean canDismiss, String title, String text, 
String shortText, short type) {
+               this(canDismiss, title, text, shortText, type, null);
        }

-       public SimpleUserAlert(boolean canDismiss, String title, String text, 
short type, Object userIdentifier) {
-               super(canDismiss, title, text, new HTMLNode("div", text), type, 
true, L10n.getString("UserAlert.hide"), true, userIdentifier);
+       public SimpleUserAlert(boolean canDismiss, String title, String text, 
String shortText, short type, Object userIdentifier) {
+               super(canDismiss, title, text, shortText, new HTMLNode("div", 
text), type, true, L10n.getString("UserAlert.hide"), true, userIdentifier);
        }

        public void isValid(boolean validity) {

Modified: 
trunk/freenet/src/freenet/node/useralerts/TimeSkewDetectedUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/TimeSkewDetectedUserAlert.java    
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/TimeSkewDetectedUserAlert.java    
2008-04-18 23:35:21 UTC (rev 19404)
@@ -20,7 +20,7 @@
         * 
         */
        public TimeSkewDetectedUserAlert() {
-               super(false, null, null, null, UserAlert.CRITICAL_ERROR, false, 
L10n.getString("UserAlert.hide"), false, null);
+               super(false, null, null, null, null, UserAlert.CRITICAL_ERROR, 
false, L10n.getString("UserAlert.hide"), false, null);
        }

        public String getTitle() {
@@ -34,6 +34,10 @@
        public String getText() {
                return l10n("text");
        }
+       
+       public String getShortText() {
+               return l10n("shortText");
+       }

        public HTMLNode getHTMLText() {
                return new HTMLNode("div", getText());

Modified: 
trunk/freenet/src/freenet/node/useralerts/UpdatedVersionAvailableUserAlert.java
===================================================================
--- 
trunk/freenet/src/freenet/node/useralerts/UpdatedVersionAvailableUserAlert.java 
    2008-04-18 22:36:15 UTC (rev 19403)
+++ 
trunk/freenet/src/freenet/node/useralerts/UpdatedVersionAvailableUserAlert.java 
    2008-04-18 23:35:21 UTC (rev 19404)
@@ -13,7 +13,7 @@
        private final NodeUpdateManager updater;

        public UpdatedVersionAvailableUserAlert(NodeUpdateManager updater){
-               super(false, null, null, null, (short) 0, false, 
L10n.getString("UserAlert.hide"), false, null);
+               super(false, null, null, null, null, (short) 0, false, 
L10n.getString("UserAlert.hide"), false, null);
                this.updater = updater;
        }

@@ -49,6 +49,18 @@

                return sb.toString();
        }
+       
+       public String getShortText() {
+               if(!updater.isArmed()) {
+                       if(updater.canUpdateNow()) {
+                               return l10n("shortReadyNotArmed");
+                       } else {
+                               return l10n("shortNotReadyNotArmed");
+                       }
+               } else {
+                       return l10n("shortArmed");
+               }
+       }

        private static class UpdateThingy {
                public UpdateThingy(String first, String form) {

Modified: trunk/freenet/src/freenet/node/useralerts/UserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/UserAlert.java    2008-04-18 
22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/UserAlert.java    2008-04-18 
23:35:21 UTC (rev 19404)
@@ -28,6 +28,12 @@
         */
        public HTMLNode getHTMLText();

+//     /**
+//      * *Really* concise text of alert. Should be comfortably under a line 
even when translated
+//      * into a verbose language. Will link to the full details.
+//      */
+//     public String getShortText();
+       
        /**
         * Priority class
         */

Modified: trunk/freenet/src/freenet/node/useralerts/UserAlertManager.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/UserAlertManager.java     
2008-04-18 22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/node/useralerts/UserAlertManager.java     
2008-04-18 23:35:21 UTC (rev 19404)
@@ -138,6 +138,7 @@
                        if (!alert.isValid())
                                continue;
                        HTMLNode listItem = alertsNode.addChild("li");
+                       //listItem.addChild("a", "href", 
"/alerts/#"+alert.anchor(), alert.getShortText());
                        listItem.addChild("a", "href", 
"/alerts/#"+alert.anchor(), alert.getTitle());
                        totalNumber++;
                }

Modified: trunk/freenet/src/freenet/pluginmanager/PluginManager.java
===================================================================
--- trunk/freenet/src/freenet/pluginmanager/PluginManager.java  2008-04-18 
22:36:15 UTC (rev 19403)
+++ trunk/freenet/src/freenet/pluginmanager/PluginManager.java  2008-04-18 
23:35:21 UTC (rev 19404)
@@ -158,7 +158,7 @@
                                } catch (PluginNotFoundException e) {
                                        Logger.normal(this, "Loading plugin 
failed (" + filename + ')', e);
                                        String message = e.getMessage();
-                                       core.alerts.register(new 
SimpleUserAlert(true, l10n("pluginLoadingFailedTitle"), 
l10n("pluginLoadingFailedWithMessage", new String[] { "name", "message" }, new 
String[] { filename, message }), UserAlert.ERROR, PluginManager.class));
+                                       core.alerts.register(new 
SimpleUserAlert(true, l10n("pluginLoadingFailedTitle"), 
l10n("pluginLoadingFailedWithMessage", new String[] { "name", "message" }, new 
String[] { filename, message }), l10n("pluginLoadingFailedShort", "name", 
filename), UserAlert.ERROR, PluginManager.class));
                                } catch (UnsupportedClassVersionError e) {
                                        Logger.error(this, "Could not load 
plugin " + filename + " : " + e, e);
                                        System.err.println("Could not load 
plugin " + filename + " : " + e);
@@ -167,7 +167,7 @@
                                        if (jvmVersion.startsWith("1.4.") || 
jvmVersion.equals("1.4")) {
                                                System.err.println("Plugin " + 
filename + " appears to require a later JVM");
                                                Logger.error(this, "Plugin " + 
filename + " appears to require a later JVM");
-                                               core.alerts.register(new 
SimpleUserAlert(true, l10n("pluginReqNewerJVMTitle", "name", filename), 
l10n("pluginReqNewerJVM", "name", filename), UserAlert.ERROR, 
PluginManager.class));
+                                               core.alerts.register(new 
SimpleUserAlert(true, l10n("pluginReqNewerJVMTitle", "name", filename), 
l10n("pluginReqNewerJVM", "name", filename), l10n("pluginLoadingFailedShort", 
"name", filename), UserAlert.ERROR, PluginManager.class));
                                        }
                                } finally {
                                        synchronized (startingPlugins) {


Reply via email to