Skip to content

Commit 5156c54

Browse files
committed
Merge branch 'master' of https://github.com/logicaldoc/community
2 parents 4b2d843 + 4e47b8e commit 5156c54

File tree

28 files changed

+375
-250
lines changed

28 files changed

+375
-250
lines changed

logicaldoc-cmis/src/main/java/com/logicaldoc/cmis/CmisPlugin.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ public class CmisPlugin extends LogicalDOCPlugin {
2525
public void install() throws PluginException {
2626
super.install();
2727

28-
addServlet(SERVLET_NAME, CmisServlet.class.getName(), "/service/cmis/*", 4);
28+
addServlet(SERVLET_NAME, CmisServlet.class, "/service/cmis/*", 4);
2929

3030
File dest = new File(getPluginPath());
3131
dest = dest.getParentFile().getParentFile();

logicaldoc-core/src/main/java/com/logicaldoc/core/CorePlugin.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ public void install() throws PluginException {
6767
}
6868

6969
try {
70-
addServlet("DashletContent", DashletContent.class.getName(), "/data/dashletcontent");
70+
addServlet("DashletContent", DashletContent.class, "/data/dashletcontent");
7171
} catch (Exception e) {
7272
log.error(e.getMessage(), e);
7373
}

logicaldoc-core/src/main/java/com/logicaldoc/core/util/UserUtil.java

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public class UserUtil {
4444
/**
4545
* A transparent 1x1 PNG
4646
*/
47-
private static final String TRANSPARENT_IMAGE = "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";
47+
private static final String TRANSPARENT_IMAGE = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";
4848

4949
private static final Logger log = LoggerFactory.getLogger(UserUtil.class);
5050

@@ -119,22 +119,29 @@ public static File getUsersDir() {
119119
*
120120
* @param user The user to elaborate
121121
* @param avatarImageFile The file containing the avatar image
122+
* @param avatarImageFile The image type(eg png, svg)
122123
*/
123-
public static void saveAvatar(User user, File avatarImageFile) {
124+
public static void saveAvatar(User user, File avatarImageFile, String imageType) {
124125
UserDAO userDao = Context.get(UserDAO.class);
125126
TenantDAO tenantDao = Context.get(TenantDAO.class);
126127

127128
File tmpAvatarImage = null;
128129
try {
129130
userDao.initialize(user);
130-
String tenantName = tenantDao.getTenantName(user.getTenantId());
131-
int size = Context.get().getProperties().getInt(tenantName + ".gui.avatar.size", 128);
131+
if ("svg".equalsIgnoreCase(imageType)) {
132+
// In case of SVG we save the image as is
133+
user.setAvatar("data:image/svg+xml;base64," + ImageUtil.encodeImage(avatarImageFile));
134+
} else {
135+
// In case of raster image we crop and resize
136+
String tenantName = tenantDao.getTenantName(user.getTenantId());
137+
int size = Context.get().getProperties().getInt(tenantName + ".gui.avatar.size", 128);
138+
tmpAvatarImage = FileUtil.createTempFile(AVATAR, ".png");
139+
BufferedImage avatar = ImageIO.read(avatarImageFile);
140+
avatar = ImageUtil.cropCenterSquare(avatar, size);
141+
ImageIO.write(avatar, "png", tmpAvatarImage);
142+
user.setAvatar("data:image/png;base64," + ImageUtil.encodeImage(tmpAvatarImage));
143+
}
132144

133-
tmpAvatarImage = FileUtil.createTempFile(AVATAR, ".png");
134-
BufferedImage avatar = ImageIO.read(avatarImageFile);
135-
avatar = ImageUtil.cropCenterSquare(avatar, size);
136-
ImageIO.write(avatar, "png", tmpAvatarImage);
137-
user.setAvatar(ImageUtil.encodeImage(tmpAvatarImage));
138145
userDao.store(user);
139146
} catch (Exception t) {
140147
log.warn(ERROR_GENERATING_DEFAULT_THE_AVATAR_FOR_USER, user, t);
@@ -163,7 +170,7 @@ public static void generateDefaultAvatar(User user) {
163170

164171
BufferedImage avatar = UserUtil.generateDefaultAvatarImage(user, size);
165172
ImageIO.write(avatar, "png", tmpAvatarImage);
166-
user.setAvatar(ImageUtil.encodeImage(tmpAvatarImage));
173+
user.setAvatar("data:image/png;base64," + ImageUtil.encodeImage(tmpAvatarImage));
167174

168175
if (user.getType() != UserType.SYSTEM) {
169176
userDao.store(user);

logicaldoc-dropbox/src/main/java/com/logicaldoc/dropbox/DropboxPlugin.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ public class DropboxPlugin extends LogicalDOCPlugin {
1515
public void install() throws PluginException {
1616
super.install();
1717

18-
addServlet("DropboxService", DropboxServiceImpl.class.getName(), "/frontend/dropbox");
19-
addServlet("DropboxData", DropboxDataServlet.class.getName(), "/data/dropbox.xml");
18+
addServlet("DropboxService", DropboxServiceImpl.class, "/frontend/dropbox");
19+
addServlet("DropboxData", DropboxDataServlet.class, "/data/dropbox.xml");
2020

2121
setRestartRequired();
2222
}

logicaldoc-gui/src/main/java/com/logicaldoc/gui/common/client/beans/GUIBranding.java

Lines changed: 54 additions & 93 deletions
Large diffs are not rendered by default.

logicaldoc-gui/src/main/java/com/logicaldoc/gui/common/client/util/ItemFactory.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1359,19 +1359,19 @@ public static Img newBrandImg(String name, GUIInfo info) {
13591359
Img img = null;
13601360

13611361
if (name.equals("logo.png"))
1362-
img = new Img(info.getBranding().getLogoSrc());
1362+
img = new Img(info.getBranding().getLogo());
13631363
else if (name.equals("logo_head.png"))
1364-
img = new Img(info.getBranding().getLogoHeadSrc());
1364+
img = new Img(info.getBranding().getLogoHead());
13651365
else if (name.equals("logo_oem.png"))
1366-
img = new Img(info.getBranding().getLogoOemSrc());
1366+
img = new Img(info.getBranding().getLogoOem());
13671367
else if (name.equals("logo_head_oem.png"))
1368-
img = new Img(info.getBranding().getLogoHeadOemSrc());
1368+
img = new Img(info.getBranding().getLogoHeadOem());
13691369
else if (name.equals("banner.png"))
1370-
img = new Img(info.getBranding().getBannerSrc());
1370+
img = new Img(info.getBranding().getBanner());
13711371
else if (name.equals("favicon.png"))
1372-
img = new Img(info.getBranding().getFaviconSrc());
1372+
img = new Img(info.getBranding().getFavicon());
13731373
else if (name.equals("logo_menu.png"))
1374-
img = new Img(info.getBranding().getLogoMenuSrc());
1374+
img = new Img(info.getBranding().getLogoMenu());
13751375
return img;
13761376
}
13771377

logicaldoc-gui/src/main/java/com/logicaldoc/gui/common/client/util/WindowUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ public static void setFavicon(GUIInfo info) {
103103
link.setId("favicon");
104104
link.setAttribute("rel", "shortcut icon");
105105
link.setAttribute("type", "image/png");
106-
link.setAttribute("href", info.getBranding().getFaviconSrc());
106+
link.setAttribute("href", info.getBranding().getFavicon());
107107

108108
DOM.appendChild(parent, link);
109109
} catch (Exception t) {

logicaldoc-gui/src/main/java/com/logicaldoc/gui/common/client/widgets/UserAvatar.java

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,7 @@ public void onSuccess(Void arg) {
7979

8080
MenuItem update = new MenuItem();
8181
update.setTitle(I18N.message("update"));
82-
update.addClickHandler(event -> {
83-
Uploader uploader = new Uploader(userId);
84-
uploader.show();
85-
});
82+
update.addClickHandler(click -> new Uploader(userId).show());
8683

8784
Menu contextMenu = new Menu();
8885
contextMenu.setItems(reset, update);
@@ -110,7 +107,7 @@ public Uploader(long userId) {
110107
setAutoSize(true);
111108

112109
saveButton = new IButton(I18N.message("save"));
113-
saveButton.addClickHandler(event -> onSave());
110+
saveButton.addClickHandler(click -> onSave());
114111

115112
Label hint = new Label(I18N.message("avatarhint", Session.get().getConfig(GUI_AVATAR_SIZE),
116113
Session.get().getConfig(GUI_AVATAR_SIZE)));
@@ -175,7 +172,7 @@ public void onSuccess(Void result) {
175172
public boolean equals(Object other) {
176173
return super.equals(other);
177174
}
178-
175+
179176
@Override
180177
public int hashCode() {
181178
return super.hashCode();
@@ -186,7 +183,7 @@ public int hashCode() {
186183
public boolean equals(Object other) {
187184
return super.equals(other);
188185
}
189-
186+
190187
@Override
191188
public int hashCode() {
192189
return super.hashCode();

logicaldoc-gui/src/main/java/com/logicaldoc/gui/frontend/client/ai/AIService.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import com.google.gwt.user.client.rpc.ServiceDefTarget;
99
import com.logicaldoc.gui.common.client.LDRpcRequestBuilder;
1010
import com.logicaldoc.gui.common.client.ServerException;
11+
import com.logicaldoc.gui.common.client.beans.GUIParameter;
1112
import com.logicaldoc.gui.frontend.client.ai.model.GUIModel;
1213
import com.logicaldoc.gui.frontend.client.ai.model.GUIQueryResult;
1314
import com.logicaldoc.gui.frontend.client.ai.sampler.GUISampler;
@@ -145,6 +146,18 @@ public interface AIService extends RemoteService {
145146
*/
146147
public GUIModel cloneModel(long modelId, String newName) throws ServerException;
147148

149+
/**
150+
* Loads the statistics from of the AI
151+
*
152+
* @param modelId Optional indentifier of the model
153+
* @param tenantId Optional indentifier of the tenant
154+
*
155+
* @return all the stats
156+
*
157+
* @throws ServerException an error happened in the server application
158+
*/
159+
public List<GUIParameter> getStats(Long modelId, Long tenantId) throws ServerException;
160+
148161
public static class Instance {
149162
private static AIServiceAsync inst;
150163

logicaldoc-gui/src/main/java/com/logicaldoc/gui/frontend/client/ai/AIServiceAsync.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import java.util.List;
44

55
import com.google.gwt.user.client.rpc.AsyncCallback;
6+
import com.logicaldoc.gui.common.client.beans.GUIParameter;
67
import com.logicaldoc.gui.frontend.client.ai.model.GUIModel;
78
import com.logicaldoc.gui.frontend.client.ai.model.GUIQueryResult;
89
import com.logicaldoc.gui.frontend.client.ai.sampler.GUISampler;
@@ -32,4 +33,6 @@ public interface AIServiceAsync {
3233
void importModel(String modelName, AsyncCallback<GUIModel> callback);
3334

3435
void cloneModel(long modelId, String newName, AsyncCallback<GUIModel> callback);
36+
37+
void getStats(Long modelId, Long tenantId, AsyncCallback<List<GUIParameter>> callaback);
3538
}

0 commit comments

Comments
 (0)