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.sparkimpl.settings.local.LocalPreferences;
|
||||
import org.jivesoftware.sparkimpl.settings.local.SettingsManager;
|
||||
import org.jivesoftware.sparkimpl.profile.VCardManager;
|
||||
|
||||
import javax.swing.Icon;
|
||||
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.spark.SparkManager;
|
||||
import org.jivesoftware.spark.plugin.Plugin;
|
||||
import org.jivesoftware.spark.util.URLFileSystem;
|
||||
import org.jivesoftware.spark.util.log.Log;
|
||||
import org.jivesoftware.sparkimpl.settings.local.LocalPreferences;
|
||||
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.io.File;
|
||||
import java.net.URL;
|
||||
import java.net.URLDecoder;
|
||||
import java.util.Enumeration;
|
||||
@ -29,7 +24,11 @@ import java.util.Locale;
|
||||
import java.util.jar.JarEntry;
|
||||
import java.util.jar.JarFile;
|
||||
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.
|
||||
@ -51,6 +50,11 @@ public class LanguagePlugin implements Plugin {
|
||||
|
||||
// Load files
|
||||
URL sparkJar = getClass().getClassLoader().getResource("spark.jar");
|
||||
if (sparkJar == null) {
|
||||
// Do not initialize
|
||||
return;
|
||||
}
|
||||
|
||||
String url = URLDecoder.decode(sparkJar.getPath());
|
||||
|
||||
try {
|
||||
|
||||
@ -573,6 +573,25 @@ public class VCardManager {
|
||||
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.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user