@@ -27,6 +27,8 @@ public abstract class AccountOwnedEntityDAO<E extends HasAccount> | |||||
public static final Order PRIORITY_ASC = Order.asc("priority"); | public static final Order PRIORITY_ASC = Order.asc("priority"); | ||||
public static final Order PRIORITY_DESC = Order.desc("priority"); | public static final Order PRIORITY_DESC = Order.desc("priority"); | ||||
public static final Order NAME_ASC = Order.asc("name"); | |||||
@Autowired private BubbleConfiguration configuration; | @Autowired private BubbleConfiguration configuration; | ||||
@Getter(lazy=true) private final Boolean hasNameField = !HasAccountNoName.class.isAssignableFrom(getFirstTypeParam(getClass())); | @Getter(lazy=true) private final Boolean hasNameField = !HasAccountNoName.class.isAssignableFrom(getFirstTypeParam(getClass())); | ||||
@@ -2,6 +2,7 @@ package bubble.dao.app; | |||||
import bubble.dao.account.AccountOwnedTemplateDAO; | import bubble.dao.account.AccountOwnedTemplateDAO; | ||||
import bubble.model.app.BubbleApp; | import bubble.model.app.BubbleApp; | ||||
import org.hibernate.criterion.Order; | |||||
import org.springframework.beans.factory.annotation.Autowired; | import org.springframework.beans.factory.annotation.Autowired; | ||||
import org.springframework.stereotype.Repository; | import org.springframework.stereotype.Repository; | ||||
@@ -13,6 +14,8 @@ public class BubbleAppDAO extends AccountOwnedTemplateDAO<BubbleApp> { | |||||
@Autowired private AppMessageDAO messageDAO; | @Autowired private AppMessageDAO messageDAO; | ||||
@Autowired private AppDataDAO dataDAO; | @Autowired private AppDataDAO dataDAO; | ||||
@Override public Order getDefaultSortOrder() { return NAME_ASC; } | |||||
@Override public void delete(String uuid) { | @Override public void delete(String uuid) { | ||||
final BubbleApp app = findByUuid(uuid); | final BubbleApp app = findByUuid(uuid); | ||||
matcherDAO.delete(matcherDAO.findByApp(app.getUuid())); | matcherDAO.delete(matcherDAO.findByApp(app.getUuid())); | ||||
@@ -47,8 +47,8 @@ | |||||
"AppMessage": [{ | "AppMessage": [{ | ||||
"locale": "en_US", | "locale": "en_US", | ||||
"messages": [ | "messages": [ | ||||
{"name": "name", "value": "Traffic Analytics"}, | |||||
{"name": "description", "value": "Traffic analytics for your Bubble. Manage block lists."}, | |||||
{"name": "name", "value": "Stoolpidgeon"}, | |||||
{"name": "description", "value": "Review recent internet traffic for your devices. Block stuff that looks off."}, | |||||
{"name": "field.ctime", "value": "When"}, | {"name": "field.ctime", "value": "When"}, | ||||
{"name": "field.requestTime", "value": "When"}, | {"name": "field.requestTime", "value": "When"}, | ||||
{"name": "field.accountName", "value": "Account"}, | {"name": "field.accountName", "value": "Account"}, | ||||
@@ -1,6 +1,6 @@ | |||||
[{ | [{ | ||||
"name": "BubbleBlock", | "name": "BubbleBlock", | ||||
"description": "Adware and Malware Blocker", | |||||
"description": "Block Adware, Malware and More", | |||||
"url": "https://bubblev.com/apps/bblock", | "url": "https://bubblev.com/apps/bblock", | ||||
"template": true, | "template": true, | ||||
"enabled": true, | "enabled": true, | ||||
@@ -46,7 +46,7 @@ | |||||
{"name": "disableList", "when": "item.enabled", "index": 20}, | {"name": "disableList", "when": "item.enabled", "index": 20}, | ||||
{"name": "manageList", "view": "manageList", "index": 30}, | {"name": "manageList", "view": "manageList", "index": 30}, | ||||
{"name": "manageRules", "view": "manageRules", "when": "item.url === ''", "index": 40}, | {"name": "manageRules", "view": "manageRules", "when": "item.url === ''", "index": 40}, | ||||
{"name": "removeList", "index": 50}, | |||||
{"name": "removeList", "index": 50, "when": "item.url !==''"}, | |||||
{ | { | ||||
"name": "createList", "scope": "app", "view": "manageList", "index": 10, | "name": "createList", "scope": "app", "view": "manageList", "index": 10, | ||||
"params": ["url"], | "params": ["url"], | ||||
@@ -56,7 +56,7 @@ | |||||
"name": "testUrl", "scope": "app", "index": 20, | "name": "testUrl", "scope": "app", "index": 20, | ||||
"params": ["testUrl", "testUrlPrimary"], | "params": ["testUrl", "testUrlPrimary"], | ||||
"button": "testUrl", | "button": "testUrl", | ||||
"successMessage": "response.decisionType" | |||||
"successMessage": "decisionType" | |||||
} | } | ||||
] | ] | ||||
}, { | }, { | ||||
@@ -131,8 +131,8 @@ | |||||
"AppMessage": [{ | "AppMessage": [{ | ||||
"locale": "en_US", | "locale": "en_US", | ||||
"messages": [ | "messages": [ | ||||
{"name": "name", "value": "Bubble Filter"}, | |||||
{"name": "description", "value": "Network Filter: Blocks adware, malware, phishing/scam sites, and much more"}, | |||||
{"name": "name", "value": "BlockParty!"}, | |||||
{"name": "description", "value": "Block adware, malware, phishing/scam sites, and much more"}, | |||||
{"name": "field.ctime", "value": "When"}, | {"name": "field.ctime", "value": "When"}, | ||||
{"name": "field.fqdn", "value": "URL"}, | {"name": "field.fqdn", "value": "URL"}, | ||||
{"name": "field.device", "value": "Device"}, | {"name": "field.device", "value": "Device"}, | ||||
@@ -167,12 +167,12 @@ | |||||
{"name": "config.action.enableList", "value": "Enable"}, | {"name": "config.action.enableList", "value": "Enable"}, | ||||
{"name": "config.action.disableList", "value": "Disable"}, | {"name": "config.action.disableList", "value": "Disable"}, | ||||
{"name": "config.action.manageList", "value": "Manage List"}, | |||||
{"name": "config.action.removeList", "value": "Remove List"}, | |||||
{"name": "config.action.createList", "value": "Add New List"}, | |||||
{"name": "config.action.manageList", "value": "Edit"}, | |||||
{"name": "config.action.removeList", "value": "Remove"}, | |||||
{"name": "config.action.createList", "value": "Add New"}, | |||||
{"name": "config.button.createList", "value": "Add"}, | {"name": "config.button.createList", "value": "Add"}, | ||||
{"name": "config.action.updateList", "value": "Update List"}, | |||||
{"name": "config.action.manageRules", "value": "Manage Rules"}, | |||||
{"name": "config.action.updateList", "value": "Update"}, | |||||
{"name": "config.action.manageRules", "value": "Rules"}, | |||||
{"name": "config.action.removeRule", "value": "Remove Rule"}, | {"name": "config.action.removeRule", "value": "Remove Rule"}, | ||||
{"name": "config.action.createRule", "value": "Add New Rule"}, | {"name": "config.action.createRule", "value": "Add New Rule"}, | ||||
{"name": "config.button.createRule", "value": "Add"}, | {"name": "config.button.createRule", "value": "Add"}, | ||||
@@ -1,6 +1,6 @@ | |||||
[{ | [{ | ||||
"name": "UserBlocker", | "name": "UserBlocker", | ||||
"description": "UserBlocker App for Bubble", | |||||
"description": "ShadowBan User Blocker", | |||||
"url": "https://bubblev.com/apps/UserBlocker", | "url": "https://bubblev.com/apps/UserBlocker", | ||||
"template": true, | "template": true, | ||||
"dataConfig": { | "dataConfig": { | ||||
@@ -22,7 +22,7 @@ | |||||
"AppMessage": [{ | "AppMessage": [{ | ||||
"locale": "en_US", | "locale": "en_US", | ||||
"messages": [ | "messages": [ | ||||
{"name": "name", "value": "User Blocker"}, | |||||
{"name": "name", "value": "ShadowBan"}, | |||||
{"name": "description", "value": "Throw the garbage to the curb!"}, | {"name": "description", "value": "Throw the garbage to the curb!"}, | ||||
{"name": "view.blocked_users", "value": "Manage Blocked Users"}, | {"name": "view.blocked_users", "value": "Manage Blocked Users"}, | ||||
{"name": "field.key", "value": "Username"}, | {"name": "field.key", "value": "Username"}, | ||||
@@ -1 +1 @@ | |||||
Subproject commit e25dbdfc8a4d6e617b17a4e5347d0cd143425576 | |||||
Subproject commit 47b7bc1d0500c5fc429acda124b0d16aa95d1f89 |