mirror of
https://github.com/igniterealtime/Spark.git
synced 2025-12-01 12:27:58 +00:00
Updating vcard handling.
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@9212 b35dd754-fafc-0310-a699-88a17e54d16e
This commit is contained in:
@ -26,6 +26,7 @@ import org.jivesoftware.spark.util.ModelUtil;
|
|||||||
import org.jivesoftware.spark.util.log.Log;
|
import org.jivesoftware.spark.util.log.Log;
|
||||||
import org.jivesoftware.sparkimpl.settings.local.LocalPreferences;
|
import org.jivesoftware.sparkimpl.settings.local.LocalPreferences;
|
||||||
import org.jivesoftware.sparkimpl.settings.local.SettingsManager;
|
import org.jivesoftware.sparkimpl.settings.local.SettingsManager;
|
||||||
|
import org.jivesoftware.sparkimpl.profile.VCardManager;
|
||||||
|
|
||||||
import javax.swing.Icon;
|
import javax.swing.Icon;
|
||||||
import javax.swing.ImageIcon;
|
import javax.swing.ImageIcon;
|
||||||
@ -291,7 +292,7 @@ public class ContactItem extends JPanel {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return SparkManager.getVCardManager().getAvatarURL(getJID());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -11,17 +11,12 @@ package org.jivesoftware.sparkimpl.plugin.language;
|
|||||||
import org.jivesoftware.resource.Res;
|
import org.jivesoftware.resource.Res;
|
||||||
import org.jivesoftware.spark.SparkManager;
|
import org.jivesoftware.spark.SparkManager;
|
||||||
import org.jivesoftware.spark.plugin.Plugin;
|
import org.jivesoftware.spark.plugin.Plugin;
|
||||||
import org.jivesoftware.spark.util.URLFileSystem;
|
|
||||||
import org.jivesoftware.spark.util.log.Log;
|
import org.jivesoftware.spark.util.log.Log;
|
||||||
import org.jivesoftware.sparkimpl.settings.local.LocalPreferences;
|
import org.jivesoftware.sparkimpl.settings.local.LocalPreferences;
|
||||||
import org.jivesoftware.sparkimpl.settings.local.SettingsManager;
|
import org.jivesoftware.sparkimpl.settings.local.SettingsManager;
|
||||||
|
|
||||||
import javax.swing.AbstractAction;
|
|
||||||
import javax.swing.Action;
|
|
||||||
import javax.swing.JMenu;
|
|
||||||
import javax.swing.JOptionPane;
|
|
||||||
|
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.io.File;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.net.URLDecoder;
|
import java.net.URLDecoder;
|
||||||
import java.util.Enumeration;
|
import java.util.Enumeration;
|
||||||
@ -29,7 +24,11 @@ import java.util.Locale;
|
|||||||
import java.util.jar.JarEntry;
|
import java.util.jar.JarEntry;
|
||||||
import java.util.jar.JarFile;
|
import java.util.jar.JarFile;
|
||||||
import java.util.zip.ZipFile;
|
import java.util.zip.ZipFile;
|
||||||
import java.io.File;
|
|
||||||
|
import javax.swing.AbstractAction;
|
||||||
|
import javax.swing.Action;
|
||||||
|
import javax.swing.JMenu;
|
||||||
|
import javax.swing.JOptionPane;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Allows for changing of default languages within Spark.
|
* Allows for changing of default languages within Spark.
|
||||||
@ -51,6 +50,11 @@ public class LanguagePlugin implements Plugin {
|
|||||||
|
|
||||||
// Load files
|
// Load files
|
||||||
URL sparkJar = getClass().getClassLoader().getResource("spark.jar");
|
URL sparkJar = getClass().getClassLoader().getResource("spark.jar");
|
||||||
|
if (sparkJar == null) {
|
||||||
|
// Do not initialize
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
String url = URLDecoder.decode(sparkJar.getPath());
|
String url = URLDecoder.decode(sparkJar.getPath());
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|||||||
@ -573,6 +573,25 @@ public class VCardManager {
|
|||||||
this.personalVCard = vcard;
|
this.personalVCard = vcard;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public URL getAvatarURL(String jid) {
|
||||||
|
VCard vcard = getVCard(jid, true);
|
||||||
|
if (vcard != null) {
|
||||||
|
String hash = vcard.getAvatarHash();
|
||||||
|
if(!ModelUtil.hasLength(hash)){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
final File avatarFile = new File(contactsDir, hash);
|
||||||
|
try {
|
||||||
|
return avatarFile.toURL();
|
||||||
|
}
|
||||||
|
catch (MalformedURLException e) {
|
||||||
|
Log.error(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Persist vCard information out for caching.
|
* Persist vCard information out for caching.
|
||||||
*
|
*
|
||||||
|
|||||||
Reference in New Issue
Block a user