Skip to content
Snippets Groups Projects
gitlab.user.js 1.23 KiB
Newer Older
jurgenhaas's avatar
jurgenhaas committed
// ==UserScript==
// @name        Toggl-Button Gitlab
jurgenhaas's avatar
jurgenhaas committed
// @namespace   https://gitlab.paragon-es.de/toggl-button
// @version     1.1
jurgenhaas's avatar
jurgenhaas committed
// @include     http*://gitlab.com/*
// @include     http*://gitlab.*/*
// @grant       GM_xmlhttpRequest
// @grant       GM_addStyle
// @grant       GM_getResourceText
// @grant       GM_getValue
// @grant       GM_setValue
// @grant       GM_info
// @grant       GM_registerMenuCommand
// @require     https://greasyfork.org/scripts/2670-toggllibrary/code/TogglLibrary.js
// @resource    togglStyle https://gitlab.paragon-es.de/toggl-button/core/raw/latest/TogglLibrary.css
jurgenhaas's avatar
jurgenhaas committed
// @description Toggle button for Gitlab
// ==/UserScript==

new TogglButtonGM('.issue-details', function (elem) {
  var description, projectIds = [],
    id = elem.querySelector('.page-title .issue-id'),
    titleElem = elem.querySelector('.issue-box .title, .issue-title'),
    projectElem = document.querySelector('.title');

  description = titleElem.textContent.trim();
  if (id !== null) {
    description = id.textContent.trim() + " " + description;
  }

  if (projectElem !== null) {
    projectIds.push(projectElem.textContent.trim());
  }

  return {
    className: 'gitlab',
    description: description,
    projectIds: projectIds
  };
});