Last active
April 12, 2019 07:44
-
-
Save mzvast/ef8a5f1168a31bf9a6d9199e2f6dbd31 to your computer and use it in GitHub Desktop.
iCafe Helper 简洁版
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ==UserScript== | |
// @name iCafe Helper 简洁版 | |
// @namespace http://tampermonkey.net/ | |
// @version 1.1 | |
// @description 一键复制iCafe单信息,形成iCode提测邮件icode信息 | |
// @author mzvast@gmail.com | |
// @match http://newicafe.baidu.com/* | |
// @grant none | |
// ==/UserScript== | |
(function() { | |
'use strict'; | |
// Your code here... | |
const makeCommitMsg = (issueId, fullTitle) => { | |
let scope = ''; | |
let title = fullTitle.replace(/\s/g,''); | |
if (title.indexOf('【') !== -1 && fullTitle.indexOf('】') !== -1) { | |
const matchedScope = fullTitle | |
.match(/【(.*?)】/g) | |
.map(t => t.match(/【(.*)】/)[1]); | |
scope = `:(${matchedScope.join(',')})`; | |
title = title.match(/【.*】(.*)/)[0]; | |
} | |
return `${issueId}${title}`; | |
}; | |
const copyText = text => { | |
const el = document.createElement('textarea'); | |
el.value = text; | |
document.body.appendChild(el); | |
el.select(); | |
document.execCommand('copy'); | |
document.body.removeChild(el); | |
console.log('copied:', text); | |
}; | |
document.addEventListener( | |
'click', | |
e => { | |
// console.log(e.target); | |
if (e.target) { | |
if (e.target.matches('.titleValue.showIssueView.value')) { | |
// console.log('.titleValue.showIssueView.value'); | |
const fullTitle = e.target.getAttribute('title'); | |
const issueId = e.target.getAttribute('data-issueid'); | |
const result = makeCommitMsg(issueId, fullTitle); | |
copyText(result); | |
} else if (e.target.matches('a.taskLink.titleLink')) { | |
// console.log('a.taskLink.titleLink'); | |
const fullTitle = e.target.text; | |
const issueId = e.target | |
.getAttribute('href') | |
.match(/issue\/(.*)\/show/)[1]; | |
const result = makeCommitMsg(issueId, fullTitle); | |
copyText(result); | |
} | |
} | |
}, | |
true | |
); | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment