Advertisement
n128

declare.js + Style

Jul 10th, 2018
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 'use strict';
  2. exports.commands = {
  3.     declare: function (target, room, user) {
  4.         if (!target) return this.parse('/help declare');
  5.         if (!this.can('declare', null, room)) return false;
  6.         if (!this.canTalk()) return;
  7.         if (target.length > 2000) return this.errorReply("Declares should not exceed 2000 characters.");
  8.  
  9.         for (let u in room.users) {
  10.             if (Users(u).connected) Users(u).sendTo(room, `|notify|${room.title} announcement!|${target}`);
  11.         }
  12.         this.add(Chat.html = (
  13.         `|raw|<div class="declare" style="background-color: transparent ; height: auto; margin: auto; padding: 5px;">` +
  14.         `<div class="declare-header" style="border: 1px solid gray; background: green; padding: 5px; text-align: center; font-size: 11pt; font-family: trebuchet ms,Helvetica,sans-serif; color: white;">` +
  15.         `<strong>Declaración de </strong> <span class="username">${user}</span></div>` +
  16.         `<div class="declare-body" style="background: #fff; padding: 10px; margin: auto; border-right: 1px solid gray; border-bottom: 1px solid gray; border-left: 1px solid gray; border-top: none; padding-top: .8em; padding-right: .3em; line-height: 1.5;">${target}</div>` +
  17.         `</div>`));
  18.         this.modlog('DECLARE', null, target);
  19.     },
  20.     declarehelp: [`/declare [message] - Anonymously announces a message. Requires: # * & ~`],
  21.  
  22.     htmldeclare: function (target, room, user) {
  23.         if (!target) return this.parse('/help htmldeclare');
  24.         if (!this.can('gdeclare', null, room)) return false;
  25.         if (!this.canTalk()) return;
  26.         target = this.canHTML(target);
  27.         if (!target) return;
  28.  
  29.         for (let u in room.users) {
  30.             if (Users(u).connected) Users(u).sendTo(room, `|notify|${room.title} announcement!|${Chat.stripHTML(target)}`);
  31.         }
  32.         this.add(
  33.         `|raw|<div class="declare" style="background-color: transparent ; height: auto; margin: auto; padding: 5px;">` +
  34.         `<div class="declare-header" style="border: 1px solid gray; background: #4D8286; padding: 5px; text-align: center; font-size: 11pt; font-family: trebuchet ms,Helvetica,sans-serif; color: white;">` +
  35.         `<strong>Declaración de </strong> <span class="username">${user}</span></div>` +
  36.         `<div class="declare-body" style="background: white; padding: 10px; margin: auto; border-right: 1px solid gray; border-bottom: 1px solid gray; border-left: 1px solid gray; border-top: none; padding-top: .8em; padding-right: .3em; line-height: 1.5;">${target}</div>` +
  37.         `</div>`);
  38.         this.modlog(`HTMLDECLARE`, null, target);
  39.     },
  40.     htmldeclarehelp: [`/htmldeclare [message] - Anonymously announces a message using safe HTML. Requires: ~`],
  41.  
  42.     gdeclare: 'globaldeclare',
  43.     globaldeclare: function (target, room, user) {
  44.         if (!target) return this.parse('/help globaldeclare');
  45.         if (!this.can('gdeclare')) return false;
  46.         target = this.canHTML(target);
  47.         if (!target) return;
  48.  
  49.         Rooms.rooms.forEach((curRoom, id) => {
  50.             if (id !== 'global') curRoom.addRaw(
  51.         `<div class="declare" style="background-color: transparent ; height: auto; margin: auto; padding: 5px;">` +
  52.         `<div class="declare-header" style="border: 1px solid gray; background: #4D8286; padding: 5px; text-align: center; font-size: 11pt; font-family: trebuchet ms,Helvetica,sans-serif; color: white;">` +
  53.         `<strong>Declaración global de </strong> <span class="username">${user}</span></div>` +
  54.         `<div class="declare-body" style="background: white; padding: 10px; margin: auto; border-right: 1px solid gray; border-bottom: 1px solid gray; border-left: 1px solid gray; border-top: none; padding-top: .8em; padding-right: .3em; line-height: 1.5;">${target}</div>` +
  55.         `</div>`).update();
  56.         });
  57.         this.modlog(`GLOBALDECLARE`, null, target);
  58.     },
  59.     globaldeclarehelp: [`/globaldeclare [message] - Anonymously announces a message to every room on the server. Requires: ~`],
  60.  
  61.     cdeclare: 'chatdeclare',
  62.     chatdeclare: function (target, room, user) {
  63.         if (!target) return this.parse('/help chatdeclare');
  64.         if (!this.can('gdeclare')) return false;
  65.         target = this.canHTML(target);
  66.         if (!target) return;
  67.  
  68.         Rooms.rooms.forEach((curRoom, id) => {
  69.             if (id !== 'global' && curRoom.type !== 'battle') curRoom.addRaw(`<div style="padding: 5px; margin: auto; height: auto;"><div class="declare-body" style="text-align: center; font-weight: bold; background: white; padding: 10px; margin: auto; border: 1px solid gray; padding-right: .3em; line-height: 1.5;">${target}</div></div>`).update();
  70.         });
  71.         Users.users.forEach(u => {
  72.             if (u.connected) u.send(`|pm|~|${u.group}${u.name}|/raw <div style="margin: auto; height: auto;"><div class="declare-body" style="text-align: center; font-weight: bold; background: white; padding: 5px; margin: auto; border: 1px solid gray; padding-right: .3em; line-height: 1.5;">${target}</div></div>`);
  73.         });
  74.         this.modlog(`CHATDECLARE`, null, target);
  75.     },
  76.     chatdeclarehelp: [`/cdeclare [message] - Anonymously announces a message to all chatrooms on the server. Requires: ~`],
  77. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement