FANDOM


FANDOMizedChat is a chat script created to put a more modern look to the FANDOM chat experience. The script was created in order for the chat to be in tune with the "Fandomized" elements. It makes the avatars round and removes the border radius (and spacing) from the containers. This script is currently in beta testing, so if you have any suggestions, feel free to use the talk page.

Usage

This script can be installed in the following pages:

This script also has a library that you can install at any time. Here is the code:

importArticles({
    type: 'script',
    articles: ['u:dev:FandomizedChat/library.js']
});

Configurations

These are the main configurations of the FandomizedChat script:

  • FandomizedChatConfig.i18n: Used for translating the script
  • FandomizedChatConfig.disableFandomizedChat: Determines whether the script should be disabled
  • FandomizedChatConfig.noTags: Determines whether the group tags should be hidden.
  • FandomizedChatConfig.killEmoticons: Determines whether the emoticons should be converted to text.
  • FandomizedChatConfig.disableCustomEmoticons: Determines whether personal emoticons should be disabled.
  • FandomizedChatConfig.disableEmoticonPanel: Determines whether the emoticon button should be disabled.

Installation

Add this JavaScript on your wiki:

Global Personal
w:Special:Mypage/global.js Special:Mypage/common.js
importArticles({
    type: 'script',
    articles: ['u:dev:FandomizedChat/core.js']
});
importArticles — Best Practices for installing JavaScript on FANDOM
The importArticles statement is designed to combine multiple HTTP requests into a single data transfer, allowing multiple scripts to load and execute faster. If you've been installing several different scripts, your JavaScript file has probably accumulated unnecessary import statements. Click "Expand" to learn how to efficiently batch import scripts to speed up performance and make your code look cleaner. One other approach is by using the MediaWiki:ImportJS.
If your JavaScript file has several lines of code that say importScript, importScriptPage, or importArticles, you may be able to combine them! By batch importing a collection of scripts with a single import, your JavaScript code will load faster and look cleaner. Consider the example below. On the left is an example of what your JavaScript file might currently look like. On the right is how you could improve that code.
Multiple imports — messy and slow One import — clean and efficient
importScriptPage('AjaxRC/code.js','dev');
 
importScript('MediaWiki:localScript.js');
 
importArticle({
  type: 'script',
  article: 'u:dev:FloatingToc/code.js'
});
 
importScriptPage('page1.js', 'wikiname');
 
importScriptPage('page2.js', 'wikiname');
importArticles({
    type: 'script',
    articles: [
        'u:dev:AjaxRC/code.js',
        'MediaWiki:localScript.js',
        'u:dev:FloatingToc/code.js',
        'u:wikiname:page1.js',
        'u:wikiname:page2.js'
    ]
});
Note: In this example, pay close attention to the placement of commas and other punctuation. For people who aren't familiar with programming (and even those who are!), a common mistake when writing code is to accidentally delete, forget, or misplace critical symbols like commas or quotation marks. This can cause a syntax error that breaks the code. Carefully follow the convention shown here when using importArticles.
But there's much more to importArticles than just this! For more examples and advanced usage, see the help page at Help:Including additional JavaScript and CSS.


To Do

If the objective in a to-do list has been crossed out, it has been completed.

  • Allow custom translations for the chat extensions, toggle buttons, and statuses.
  • Insert the user group tag by a chat moderator, sysop, VSTF, Helper, and Staff's username.
  • Integrate certain parts of existing extensions to the script, such as ChatHacks, ChatOptions, ChatBlockButton, GiveChatMod, TitleNotifications, ChatTimestamps, etc.
  • Add a chat send button for the convenience of console users akin to ChatSendButton.
  • Allow multiple people to be in a private message at once.
  • Create a new UI library used for this script.
  • Add a fake scrollbar on the side of the script instead of using arrows to scroll.
  • Create a preloader for the Fandom chat.
  • Modify the entire CSS for the extension. (partially complete)

Known Issues

  • The self user element is not showing up on the top of the chat rail properly.