mirror of
https://github.com/MrUnknownDE/VRCX.git
synced 2026-05-04 13:56:07 +02:00
add auto change status description
This commit is contained in:
@@ -546,7 +546,9 @@
|
|||||||
"auto_invite_request_accept_tooltip": "Automatically accept invite requests from favorite friends",
|
"auto_invite_request_accept_tooltip": "Automatically accept invite requests from favorite friends",
|
||||||
"auto_invite_request_accept_off": "Off",
|
"auto_invite_request_accept_off": "Off",
|
||||||
"auto_invite_request_accept_favs": "All Favorites",
|
"auto_invite_request_accept_favs": "All Favorites",
|
||||||
"auto_invite_request_accept_selected_favs": "VRCX Favorites"
|
"auto_invite_request_accept_selected_favs": "VRCX Favorites",
|
||||||
|
"change_status_description": "Override status description",
|
||||||
|
"status_description_placeholder": "Status description (max 32 characters)"
|
||||||
},
|
},
|
||||||
"legal_notice": {
|
"legal_notice": {
|
||||||
"header": "Legal Notice",
|
"header": "Legal Notice",
|
||||||
|
|||||||
@@ -35,6 +35,10 @@ export const useGeneralSettingsStore = defineStore('GeneralSettings', () => {
|
|||||||
const autoStateChangeCompanyStatus = ref('busy');
|
const autoStateChangeCompanyStatus = ref('busy');
|
||||||
const autoStateChangeInstanceTypes = ref([]);
|
const autoStateChangeInstanceTypes = ref([]);
|
||||||
const autoStateChangeNoFriends = ref(false);
|
const autoStateChangeNoFriends = ref(false);
|
||||||
|
const autoStateChangeAloneDescEnabled = ref(false);
|
||||||
|
const autoStateChangeAloneDesc = ref('');
|
||||||
|
const autoStateChangeCompanyDescEnabled = ref(false);
|
||||||
|
const autoStateChangeCompanyDesc = ref('');
|
||||||
const autoAcceptInviteRequests = ref('Off');
|
const autoAcceptInviteRequests = ref('Off');
|
||||||
|
|
||||||
async function initGeneralSettings() {
|
async function initGeneralSettings() {
|
||||||
@@ -56,6 +60,10 @@ export const useGeneralSettingsStore = defineStore('GeneralSettings', () => {
|
|||||||
autoStateChangeCompanyStatusConfig,
|
autoStateChangeCompanyStatusConfig,
|
||||||
autoStateChangeInstanceTypesStrConfig,
|
autoStateChangeInstanceTypesStrConfig,
|
||||||
autoStateChangeNoFriendsConfig,
|
autoStateChangeNoFriendsConfig,
|
||||||
|
autoStateChangeAloneDescEnabledConfig,
|
||||||
|
autoStateChangeAloneDescConfig,
|
||||||
|
autoStateChangeCompanyDescEnabledConfig,
|
||||||
|
autoStateChangeCompanyDescConfig,
|
||||||
autoAcceptInviteRequestsConfig
|
autoAcceptInviteRequestsConfig
|
||||||
] = await Promise.all([
|
] = await Promise.all([
|
||||||
configRepository.getBool('VRCX_StartAtWindowsStartup', false),
|
configRepository.getBool('VRCX_StartAtWindowsStartup', false),
|
||||||
@@ -84,6 +92,16 @@ export const useGeneralSettingsStore = defineStore('GeneralSettings', () => {
|
|||||||
'[]'
|
'[]'
|
||||||
),
|
),
|
||||||
configRepository.getBool('VRCX_autoStateChangeNoFriends', false),
|
configRepository.getBool('VRCX_autoStateChangeNoFriends', false),
|
||||||
|
configRepository.getBool(
|
||||||
|
'VRCX_autoStateChangeAloneDescEnabled',
|
||||||
|
false
|
||||||
|
),
|
||||||
|
configRepository.getString('VRCX_autoStateChangeAloneDesc', ''),
|
||||||
|
configRepository.getBool(
|
||||||
|
'VRCX_autoStateChangeCompanyDescEnabled',
|
||||||
|
false
|
||||||
|
),
|
||||||
|
configRepository.getString('VRCX_autoStateChangeCompanyDesc', ''),
|
||||||
configRepository.getString('VRCX_autoAcceptInviteRequests', 'Off')
|
configRepository.getString('VRCX_autoAcceptInviteRequests', 'Off')
|
||||||
]);
|
]);
|
||||||
|
|
||||||
@@ -122,6 +140,12 @@ export const useGeneralSettingsStore = defineStore('GeneralSettings', () => {
|
|||||||
autoStateChangeInstanceTypesStrConfig
|
autoStateChangeInstanceTypesStrConfig
|
||||||
);
|
);
|
||||||
autoStateChangeNoFriends.value = autoStateChangeNoFriendsConfig;
|
autoStateChangeNoFriends.value = autoStateChangeNoFriendsConfig;
|
||||||
|
autoStateChangeAloneDescEnabled.value =
|
||||||
|
autoStateChangeAloneDescEnabledConfig;
|
||||||
|
autoStateChangeAloneDesc.value = autoStateChangeAloneDescConfig;
|
||||||
|
autoStateChangeCompanyDescEnabled.value =
|
||||||
|
autoStateChangeCompanyDescEnabledConfig;
|
||||||
|
autoStateChangeCompanyDesc.value = autoStateChangeCompanyDescConfig;
|
||||||
autoAcceptInviteRequests.value = autoAcceptInviteRequestsConfig;
|
autoAcceptInviteRequests.value = autoAcceptInviteRequestsConfig;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -262,6 +286,42 @@ export const useGeneralSettingsStore = defineStore('GeneralSettings', () => {
|
|||||||
autoStateChangeNoFriends.value
|
autoStateChangeNoFriends.value
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
function setAutoStateChangeAloneDescEnabled() {
|
||||||
|
autoStateChangeAloneDescEnabled.value =
|
||||||
|
!autoStateChangeAloneDescEnabled.value;
|
||||||
|
configRepository.setBool(
|
||||||
|
'VRCX_autoStateChangeAloneDescEnabled',
|
||||||
|
autoStateChangeAloneDescEnabled.value
|
||||||
|
);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @param {string} value
|
||||||
|
*/
|
||||||
|
function setAutoStateChangeAloneDesc(value) {
|
||||||
|
autoStateChangeAloneDesc.value = value;
|
||||||
|
configRepository.setString(
|
||||||
|
'VRCX_autoStateChangeAloneDesc',
|
||||||
|
autoStateChangeAloneDesc.value
|
||||||
|
);
|
||||||
|
}
|
||||||
|
function setAutoStateChangeCompanyDescEnabled() {
|
||||||
|
autoStateChangeCompanyDescEnabled.value =
|
||||||
|
!autoStateChangeCompanyDescEnabled.value;
|
||||||
|
configRepository.setBool(
|
||||||
|
'VRCX_autoStateChangeCompanyDescEnabled',
|
||||||
|
autoStateChangeCompanyDescEnabled.value
|
||||||
|
);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @param {string} value
|
||||||
|
*/
|
||||||
|
function setAutoStateChangeCompanyDesc(value) {
|
||||||
|
autoStateChangeCompanyDesc.value = value;
|
||||||
|
configRepository.setString(
|
||||||
|
'VRCX_autoStateChangeCompanyDesc',
|
||||||
|
autoStateChangeCompanyDesc.value
|
||||||
|
);
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* @param {string} value
|
* @param {string} value
|
||||||
*/
|
*/
|
||||||
@@ -334,6 +394,10 @@ export const useGeneralSettingsStore = defineStore('GeneralSettings', () => {
|
|||||||
autoStateChangeCompanyStatus,
|
autoStateChangeCompanyStatus,
|
||||||
autoStateChangeInstanceTypes,
|
autoStateChangeInstanceTypes,
|
||||||
autoStateChangeNoFriends,
|
autoStateChangeNoFriends,
|
||||||
|
autoStateChangeAloneDescEnabled,
|
||||||
|
autoStateChangeAloneDesc,
|
||||||
|
autoStateChangeCompanyDescEnabled,
|
||||||
|
autoStateChangeCompanyDesc,
|
||||||
autoAcceptInviteRequests,
|
autoAcceptInviteRequests,
|
||||||
|
|
||||||
setIsStartAtWindowsStartup,
|
setIsStartAtWindowsStartup,
|
||||||
@@ -352,6 +416,10 @@ export const useGeneralSettingsStore = defineStore('GeneralSettings', () => {
|
|||||||
setAutoStateChangeCompanyStatus,
|
setAutoStateChangeCompanyStatus,
|
||||||
setAutoStateChangeInstanceTypes,
|
setAutoStateChangeInstanceTypes,
|
||||||
setAutoStateChangeNoFriends,
|
setAutoStateChangeNoFriends,
|
||||||
|
setAutoStateChangeAloneDescEnabled,
|
||||||
|
setAutoStateChangeAloneDesc,
|
||||||
|
setAutoStateChangeCompanyDescEnabled,
|
||||||
|
setAutoStateChangeCompanyDesc,
|
||||||
setAutoAcceptInviteRequests,
|
setAutoAcceptInviteRequests,
|
||||||
promptProxySettings
|
promptProxySettings
|
||||||
};
|
};
|
||||||
|
|||||||
+26
-15
@@ -1628,22 +1628,33 @@ export const useUserStore = defineStore('User', () => {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
userRequest
|
const params = { status: newStatus };
|
||||||
.saveCurrentUser({
|
if (
|
||||||
status: newStatus
|
withCompany &&
|
||||||
})
|
generalSettingsStore.autoStateChangeCompanyDescEnabled
|
||||||
.then(() => {
|
) {
|
||||||
const text = `Status automatically changed to ${newStatus}`;
|
params.statusDescription =
|
||||||
if (AppDebug.errorNoty) {
|
generalSettingsStore.autoStateChangeCompanyDesc;
|
||||||
AppDebug.errorNoty.close();
|
} else if (
|
||||||
}
|
!withCompany &&
|
||||||
AppDebug.errorNoty = new Noty({
|
generalSettingsStore.autoStateChangeAloneDescEnabled
|
||||||
type: 'info',
|
) {
|
||||||
text
|
params.statusDescription =
|
||||||
});
|
generalSettingsStore.autoStateChangeAloneDesc;
|
||||||
AppDebug.errorNoty.show();
|
}
|
||||||
console.log(text);
|
|
||||||
|
userRequest.saveCurrentUser(params).then(() => {
|
||||||
|
const text = `Status automatically changed to ${newStatus}`;
|
||||||
|
if (AppDebug.errorNoty) {
|
||||||
|
AppDebug.errorNoty.close();
|
||||||
|
}
|
||||||
|
AppDebug.errorNoty = new Noty({
|
||||||
|
type: 'info',
|
||||||
|
text
|
||||||
});
|
});
|
||||||
|
AppDebug.errorNoty.show();
|
||||||
|
console.log(text);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function addCustomTag(data) {
|
function addCustomTag(data) {
|
||||||
|
|||||||
@@ -36,6 +36,22 @@
|
|||||||
</SelectItem>
|
</SelectItem>
|
||||||
</SelectContent>
|
</SelectContent>
|
||||||
</Select>
|
</Select>
|
||||||
|
|
||||||
|
<SimpleSwitch
|
||||||
|
style="margin-top: 8px"
|
||||||
|
:label="t('view.settings.general.automation.change_status_description')"
|
||||||
|
:value="autoStateChangeAloneDescEnabled"
|
||||||
|
:disabled="!autoStateChangeEnabled"
|
||||||
|
@change="setAutoStateChangeAloneDescEnabled" />
|
||||||
|
<Input
|
||||||
|
v-if="autoStateChangeAloneDescEnabled"
|
||||||
|
:model-value="autoStateChangeAloneDesc"
|
||||||
|
:disabled="!autoStateChangeEnabled"
|
||||||
|
:maxlength="32"
|
||||||
|
:placeholder="t('view.settings.general.automation.status_description_placeholder')"
|
||||||
|
style="margin-top: 8px"
|
||||||
|
size="sm"
|
||||||
|
@update:modelValue="setAutoStateChangeAloneDesc" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
@@ -62,6 +78,22 @@
|
|||||||
</SelectItem>
|
</SelectItem>
|
||||||
</SelectContent>
|
</SelectContent>
|
||||||
</Select>
|
</Select>
|
||||||
|
|
||||||
|
<SimpleSwitch
|
||||||
|
style="margin-top: 8px"
|
||||||
|
:label="t('view.settings.general.automation.change_status_description')"
|
||||||
|
:value="autoStateChangeCompanyDescEnabled"
|
||||||
|
:disabled="!autoStateChangeEnabled"
|
||||||
|
@change="setAutoStateChangeCompanyDescEnabled" />
|
||||||
|
<Input
|
||||||
|
v-if="autoStateChangeCompanyDescEnabled"
|
||||||
|
:model-value="autoStateChangeCompanyDesc"
|
||||||
|
:disabled="!autoStateChangeEnabled"
|
||||||
|
:maxlength="32"
|
||||||
|
:placeholder="t('view.settings.general.automation.status_description_placeholder')"
|
||||||
|
style="margin-top: 8px"
|
||||||
|
size="sm"
|
||||||
|
@update:modelValue="setAutoStateChangeCompanyDesc" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
@@ -147,6 +179,7 @@
|
|||||||
import { RadioGroup, RadioGroupItem } from '@/components/ui/radio-group';
|
import { RadioGroup, RadioGroupItem } from '@/components/ui/radio-group';
|
||||||
import { ToggleGroup, ToggleGroupItem } from '@/components/ui/toggle-group';
|
import { ToggleGroup, ToggleGroupItem } from '@/components/ui/toggle-group';
|
||||||
import { Info } from 'lucide-vue-next';
|
import { Info } from 'lucide-vue-next';
|
||||||
|
import { Input } from '@/components/ui/input';
|
||||||
import { computed } from 'vue';
|
import { computed } from 'vue';
|
||||||
import { storeToRefs } from 'pinia';
|
import { storeToRefs } from 'pinia';
|
||||||
import { useI18n } from 'vue-i18n';
|
import { useI18n } from 'vue-i18n';
|
||||||
@@ -172,6 +205,10 @@
|
|||||||
autoStateChangeCompanyStatus,
|
autoStateChangeCompanyStatus,
|
||||||
autoStateChangeInstanceTypes,
|
autoStateChangeInstanceTypes,
|
||||||
autoStateChangeNoFriends,
|
autoStateChangeNoFriends,
|
||||||
|
autoStateChangeAloneDescEnabled,
|
||||||
|
autoStateChangeAloneDesc,
|
||||||
|
autoStateChangeCompanyDescEnabled,
|
||||||
|
autoStateChangeCompanyDesc,
|
||||||
autoAcceptInviteRequests
|
autoAcceptInviteRequests
|
||||||
} = storeToRefs(generalSettingsStore);
|
} = storeToRefs(generalSettingsStore);
|
||||||
|
|
||||||
@@ -181,6 +218,10 @@
|
|||||||
setAutoStateChangeCompanyStatus,
|
setAutoStateChangeCompanyStatus,
|
||||||
setAutoStateChangeInstanceTypes,
|
setAutoStateChangeInstanceTypes,
|
||||||
setAutoStateChangeNoFriends,
|
setAutoStateChangeNoFriends,
|
||||||
|
setAutoStateChangeAloneDescEnabled,
|
||||||
|
setAutoStateChangeAloneDesc,
|
||||||
|
setAutoStateChangeCompanyDescEnabled,
|
||||||
|
setAutoStateChangeCompanyDesc,
|
||||||
setAutoAcceptInviteRequests
|
setAutoAcceptInviteRequests
|
||||||
} = generalSettingsStore;
|
} = generalSettingsStore;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user