diff --git a/shine-UI/js/pages/chat-view.js b/shine-UI/js/pages/chat-view.js
index 6d9abb8..76404a1 100644
--- a/shine-UI/js/pages/chat-view.js
+++ b/shine-UI/js/pages/chat-view.js
@@ -38,7 +38,7 @@ export function render({ navigate, route }) {
if (!isContact) {
const warning = document.createElement('div');
warning.className = 'card stack';
- warning.innerHTML = '
Пользователь не в контактах. Можно отвечать, если он уже писал вам.
';
+ warning.innerHTML = 'Пользователь не в контактах. Можно писать ему сразу (MVP).
';
const btn = document.createElement('button');
btn.className = 'primary-btn';
btn.type = 'button';
diff --git a/shine-UI/js/pages/profile-view.js b/shine-UI/js/pages/profile-view.js
index 3a6c998..c51a689 100644
--- a/shine-UI/js/pages/profile-view.js
+++ b/shine-UI/js/pages/profile-view.js
@@ -1,5 +1,6 @@
import { renderHeader } from '../components/header.js?v=20260403081123';
import { profile } from '../mock-data.js?v=20260403081123';
+import { state } from '../state.js?v=20260403081123';
export const pageMeta = { id: 'profile-view', title: 'Профиль' };
@@ -40,7 +41,7 @@ export function render({ navigate }) {
${profile.name}
-
${profile.login}
+
${state.session.login || profile.login}
Телефон: ${profile.phone}
diff --git a/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/messages/Net_SendDirectMessage_Handler.java b/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/messages/Net_SendDirectMessage_Handler.java
index bb247b4..12c1bb8 100644
--- a/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/messages/Net_SendDirectMessage_Handler.java
+++ b/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/messages/Net_SendDirectMessage_Handler.java
@@ -2,8 +2,6 @@ package server.logic.ws_protocol.JSON.messages;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import server.logic.ws_protocol.JSON.ActiveConnectionsRegistry;
import server.logic.ws_protocol.JSON.ConnectionContext;
import server.logic.ws_protocol.JSON.entyties.Net_Request;
@@ -16,14 +14,11 @@ import server.logic.ws_protocol.JSON.push.WsEventSender;
import server.logic.ws_protocol.JSON.utils.NetExceptionResponseFactory;
import server.logic.ws_protocol.JSON.utils.NetIdGenerator;
import server.logic.ws_protocol.WireCodes;
-import shine.db.MsgSubType;
-import shine.db.dao.ConnectionsStateDAO;
import shine.db.dao.DirectMessagesDAO;
import shine.db.dao.PushTokensDAO;
import shine.db.entities.DirectMessageEntry;
import shine.db.entities.PushTokenEntry;
-import java.sql.Connection;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@@ -31,7 +26,6 @@ import java.util.concurrent.CompletableFuture;
import java.util.concurrent.TimeUnit;
public class Net_SendDirectMessage_Handler implements JsonMessageHandler {
- private static final Logger log = LoggerFactory.getLogger(Net_SendDirectMessage_Handler.class);
private static final ObjectMapper MAPPER = new ObjectMapper();
@Override
@@ -122,20 +116,8 @@ public class Net_SendDirectMessage_Handler implements JsonMessageHandler {
return resp;
}
- private boolean canSend(String from, String to) throws Exception {
- if (from.equalsIgnoreCase(to)) return true;
- try (Connection c = shine.db.SqliteDbController.getInstance().getConnection()) {
- List
contacts = ConnectionsStateDAO.getInstance().listOutgoingByRelTypeCanonical(c, from, MsgSubType.CONNECTION_CONTACT);
- if (contacts.stream().anyMatch(v -> v.equalsIgnoreCase(to))) {
- return true;
- }
- if (DirectMessagesDAO.getInstance().existsFromTo(to, from)) {
- return true;
- }
- return false;
- } catch (Exception e) {
- log.warn("canSend fallback false due error", e);
- return false;
- }
+ private boolean canSend(String from, String to) {
+ return from != null && !from.isBlank() && to != null && !to.isBlank();
}
}
+