🏠 Home 

Camamba Chat Settings

creates a settings - object with getter and setter - property for every in-chat settings and with a save and restore method

สคริปต์นี้ไม่ควรถูกติดตั้งโดยตรง มันเป็นคลังสำหรับสคริปต์อื่น ๆ เพื่อบรรจุด้วยคำสั่งเมทา // @require https://update.greasyfork.org/scripts/423662/935734/Camamba%20Chat%20Settings.js

// ==UserScript==
// @name            Camamba Chat Settings Library
// @namespace       dannysaurus.camamba
// @version         0.1
// @description     getter and setter for inChat settings
// @license         MIT License
// @include         https://www.camamba.com/chat/
// @include         https://www.de.camamba.com/chat/
// ==/UserScript==
/* jslint esversion: 9 */
/* global me, camData, rooms, blockList, friendList, friendRequests, adminMessages, jsLang, byId, myRooms, knownUsers, activeRoom, selectedUser */
const settings = (() => {
const propertyNames =  [
"chatColor",
"chatFont",
"chatFontSize",
"inputFontSize",
"settingsCamAspect",
"chatTimeStamps",
"chatTurtle",
"noAudioProcessing",
"settingsUseMyFont",
"settingsNoImages",
"enableChatSounds",
"camDenyNoReal",
"camDenyNoFriend",
"camDenyNoCam",
"camAcceptAny",
"camAcceptFriends",
"camAcceptReal",
"convoDenyAll",
"convoDenyNoReal",
"convoAcceptFriends",
"convoAcceptReal"
];
return {
get chatColor() {
return localStorage.chatColor;
},
set chatColor(value) {
localStorage.chatColor = value;
},
get chatFont() {
return localStorage.chatFont;
},
set chatFont(value) {
localStorage.chatFont = value;
},
get chatFontSize() {
return (1 + localStorage.chatFontSize / 10)+"em";
},
set chatFontSize(value) {
localStorage.chatFontSize = (Number.parseFloat(value) - 1) * 10;
},
get inputFontSize() {
return (1 + localStorage.inputFontSize / 20)+"em";
},
set inputFontSize(value) {
localStorage.inputFontSize = (Number.parseFloat(value) - 1) * 20;
},
get settingsCamAspect() {
return localStorage.settingsCamAspect;
},
set settingsCamAspect(value) {
localStorage.settingsCamAspect = value;
},
get chatTimeStamps() {
return !!parseInt(localStorage.chatTimeStamps);
},
set chatTimeStamps(value) {
localStorage.chatTimeStamps = value ? 1 : 0;
},
get chatTurtle() {
return !!parseInt(localStorage.chatTurtle);
},
set chatTurtle(value) {
localStorage.chatTurtle = value ? 1 : 0;
},
get noAudioProcessing() {
return !!parseInt(localStorage.noAudioProcessing);
},
set noAudioProcessing(value) {
localStorage.noAudioProcessing = value ? 1 : 0;
},
get settingsUseMyFont() {
return !!parseInt(localStorage.settingsUseMyFont);
},
set settingsUseMyFont(value) {
localStorage.settingsUseMyFont = value ? 1 : 0;
},
get settingsNoImages() {
return !!parseInt(localStorage.settingsNoImages);
},
set settingsNoImages(value) {
localStorage.settingsNoImages = value ? 1 : 0;
},
get enableChatSounds() {
return !!parseInt(localStorage.enableChatSounds);
},
set enableChatSounds(value) {
localStorage.enableChatSounds = value ? 1 : 0;
},
get camDenyNoReal() {
return !!parseInt(localStorage.camDenyNoReal);
},
set camDenyNoReal(value) {
localStorage.camDenyNoReal = value ? 1 : 0;
},
get camDenyNoFriend() {
return !!parseInt(localStorage.camDenyNoFriend);
},
set camDenyNoFriend(value) {
localStorage.camDenyNoFriend = value ? 1 : 0;
},
get camDenyNoCam() {
return !!parseInt(localStorage.camDenyNoCam);
},
set camDenyNoCam(value) {
localStorage.camDenyNoCam = value ? 1 : 0;
},
get camAcceptAny() {
return !!parseInt(localStorage.camAcceptAny);
},
set camAcceptAny(value) {
localStorage.camAcceptAny = value ? 1 : 0;
},
get camAcceptFriends() {
return !!parseInt(localStorage.camAcceptFriends);
},
set camAcceptFriends(value) {
localStorage.camAcceptFriends = value ? 1 : 0;
},
get camAcceptReal() {
return !!parseInt(localStorage.camAcceptReal);
},
set camAcceptReal(value) {
localStorage.camAcceptReal = value ? 1 : 0;
},
get convoDenyAll() {
return !!parseInt(localStorage.convoDenyAll);
},
set convoDenyAll(value) {
localStorage.convoDenyAll = value ? 1 : 0;
},
get convoDenyNoReal() {
return !!parseInt(localStorage.convoDenyNoReal);
},
set convoDenyNoReal(value) {
localStorage.convoDenyNoReal = value ? 1 : 0;
},
get convoAcceptFriends() {
return !!parseInt(localStorage.convoAcceptFriends);
},
set convoAcceptFriends(value) {
localStorage.convoAcceptFriends = value ? 1 : 0;
},
get convoAcceptReal() {
return !!parseInt(localStorage.convoAcceptReal);
},
set convoAcceptReal(value) {
localStorage.convoAcceptReal = value ? 1 : 0;
},
save: () => {
return Object.fromEntries(propertyNames.map(p => ({ [p]:localStorage[p] })));
},
restore: (saveObj) => {
for (let p of propertyNames) {
localStorage[p] = saveObj[p];
}
}
};
})();