Site Notice

hello, world

Difference between revisions of "MediaWiki:Gadget-WikiForum/theme.default.js"

From Project-EPB Commons
([InPageEdit] 没有编辑摘要)
 
([InPageEdit] 没有编辑摘要)
Line 1: Line 1:
 
/**
 
/**
  * @name WikiForum.theme.default
+
  * @function theme.default 标准的官方主题
  * @author 机智的小鱼君 <dragon-fish@qq.com>
+
  * @param {Object} ctx
  * @description Provide a front-end structured discussion page with JavaScript.
+
* @param {jQuery<Element>} ctx.fn.newThreadArea
  *             Similar to Community Feed and support wikitext.
+
  * @param {jQuery<Element>} ctx.fn.newReplyArea
 +
  * @param {Object} ctx.meta
 
  *
 
  *
  * @license MIT
+
  * @param {Function} next
* @url https://github.com/Wjghj-Project/Gadget-WikiForum
 
 
  */
 
  */
 +
mw.hook('WikiForum.theme').add(next => {
 +
  var allForumsContainer = ctx => {
 +
    return $('<div>', { class: 'wiki-forum-all-container' })
 +
  }
  
/******/ (function() { // webpackBootstrap
+
   var forumContainer = ctx => {
/*!**********************************!*\
+
     return $('<div>', { class: 'wiki-forum', 'data-forumid': ctx.forumid })
  !*** ./theme/default/default.js ***!
+
   }
  \**********************************/
 
/**
 
* @function theme 主题函数
 
* @param {Object} ctx
 
* @param {Function} next
 
*/
 
mw.hook('WikiForum.theme').add(function (next) {
 
   var forumContainer = function forumContainer(ctx) {
 
     return $('<div>', {
 
      "class": 'wiki-forum'
 
    });
 
   };
 
  
   var firstThread = function firstThread(ctx) {
+
   var firstThread = ctx => {
     return $('<div>', {
+
     return $('<div>', { class: 'forum-thread forum-first' }).append(
      "class": 'forum-thread forum-first'
+
      $('<div>', { class: 'forum-before' }).append(
    }).append($('<div>', {
+
        $('<h3>', { class: 'forum-title', text: ctx.title }),
      "class": 'forum-before'
+
        $('<div>', { class: 'forum-user' }).append(
    }).append($('<h3>', {
+
          $('<span>', { class: 'forum-user-link' }).append(
      "class": 'forum-title',
+
            $('<a>', {
      text: ctx.title
+
              text: ctx.meta.userAuthor,
    }), $('<div>', {
+
              href: mw.util.getUrl('User:' + ctx.meta.userAuthor),
      "class": 'forum-user'
+
            })
    }).append($('<span>', {
+
          )
      "class": 'forum-user-link'
+
        )
    }).append($('<a>', {
+
      ),
      text: ctx.meta.userAuthor,
+
      $('<div>', { class: 'forum-content', html: ctx.content }),
      href: mw.util.getUrl('User:' + ctx.meta.userAuthor)
+
      $('<div>', { class: 'forum-after' }).append(
    })))), $('<div>', {
+
        $('<i>', {
      "class": 'forum-content',
+
          class: 'post-date',
      html: ctx.content
+
          text: new Date(ctx.meta.timePublish).toLocaleString(),
    }), $('<div>', {
+
        })
      "class": 'forum-after'
+
      ),
    }).append($('<i>', {
+
      ctx.fn.newThreadArea
      "class": 'post-date',
+
    )
      text: new Date(ctx.meta.timePublish).toLocaleString()
+
   }
    })), ctx.fn.newThreadArea);
 
   };
 
  
   var normalThread = function normalThread(ctx) {
+
   var normalThread = ctx => {
     return $('<div>', {
+
     return $('<div>', { class: 'forum-thread' }).append(
      "class": 'forum-thread'
+
      $('<div>', { class: 'forum-before' }).append(
    }).append($('<div>', {
+
        $('<div>', { class: 'forum-user' }).append(
      "class": 'forum-before'
+
          $('<span>', { class: 'forum-user-link' }).append(
    }).append($('<div>', {
+
            $('<a>', {
      "class": 'forum-user'
+
              text: ctx.meta.userAuthor,
    }).append($('<span>', {
+
              href: mw.util.getUrl('User:' + ctx.meta.userAuthor),
      "class": 'forum-user-link'
+
            })
    }).append($('<a>', {
+
          )
      text: ctx.meta.userAuthor,
+
        )
      href: mw.util.getUrl('User:' + ctx.meta.userAuthor)
+
      ),
    })))), $('<div>', {
+
      $('<div>', { class: 'forum-content', html: ctx.content }),
      "class": 'forum-content',
+
      $('<div>', { class: 'forum-after' }).append(
      html: ctx.content
+
        $('<i>', {
    }), $('<div>', {
+
          class: 'post-date',
      "class": 'forum-after'
+
          text: new Date(ctx.meta.timePublish).toLocaleString(),
    }).append($('<i>', {
+
        }),
      "class": 'post-date',
+
        ctx.fn.newReplyArea
      text: new Date(ctx.meta.timePublish).toLocaleString()
+
      )
    }), ctx.fn.newReplyArea));
+
    )
   };
+
   }
  
   next && next({
+
   next &&
    forumContainer: forumContainer,
+
    next({
    firstThread: firstThread,
+
      allForumsContainer,
    normalThread: normalThread
+
      forumContainer,
  });
+
      // beforeForum,
});
+
      firstThread,
/******/ })()
+
      normalThread,
;
+
      // afterForum,
//# sourceMappingURL=WikiForum.theme.default.js.map
+
    })
 +
})

Revision as of 22:09, 28 December 2020

/**
 * @function theme.default 标准的官方主题
 * @param {Object} ctx
 * @param {jQuery<Element>} ctx.fn.newThreadArea
 * @param {jQuery<Element>} ctx.fn.newReplyArea
 * @param {Object} ctx.meta
 *
 * @param {Function} next
 */
mw.hook('WikiForum.theme').add(next => {
  var allForumsContainer = ctx => {
    return $('<div>', { class: 'wiki-forum-all-container' })
  }

  var forumContainer = ctx => {
    return $('<div>', { class: 'wiki-forum', 'data-forumid': ctx.forumid })
  }

  var firstThread = ctx => {
    return $('<div>', { class: 'forum-thread forum-first' }).append(
      $('<div>', { class: 'forum-before' }).append(
        $('<h3>', { class: 'forum-title', text: ctx.title }),
        $('<div>', { class: 'forum-user' }).append(
          $('<span>', { class: 'forum-user-link' }).append(
            $('<a>', {
              text: ctx.meta.userAuthor,
              href: mw.util.getUrl('User:' + ctx.meta.userAuthor),
            })
          )
        )
      ),
      $('<div>', { class: 'forum-content', html: ctx.content }),
      $('<div>', { class: 'forum-after' }).append(
        $('<i>', {
          class: 'post-date',
          text: new Date(ctx.meta.timePublish).toLocaleString(),
        })
      ),
      ctx.fn.newThreadArea
    )
  }

  var normalThread = ctx => {
    return $('<div>', { class: 'forum-thread' }).append(
      $('<div>', { class: 'forum-before' }).append(
        $('<div>', { class: 'forum-user' }).append(
          $('<span>', { class: 'forum-user-link' }).append(
            $('<a>', {
              text: ctx.meta.userAuthor,
              href: mw.util.getUrl('User:' + ctx.meta.userAuthor),
            })
          )
        )
      ),
      $('<div>', { class: 'forum-content', html: ctx.content }),
      $('<div>', { class: 'forum-after' }).append(
        $('<i>', {
          class: 'post-date',
          text: new Date(ctx.meta.timePublish).toLocaleString(),
        }),
        ctx.fn.newReplyArea
      )
    )
  }

  next &&
    next({
      allForumsContainer,
      forumContainer,
      // beforeForum,
      firstThread,
      normalThread,
      // afterForum,
    })
})