Skip to content

Instantly share code, notes, and snippets.

View eojji's full-sized avatar

Huysep Kim eojji

View GitHub Profile
@eojji
eojji / getGroupRoleByUserEmail.gs
Created June 27, 2018 02:05
getGroupRoleByUserEmail. Request Team Drive - 2 https://m.cafe.naver.com/eojji/312
function getGroupRoleByUserEmail_(email) {
var gfolderCopyGroupEmail = PropertiesService.getScriptProperties().getProperty('gfolderCopyGroupEmail');
try {
var group = GroupsApp.getGroupByEmail(gfolderCopyGroupEmail);
return group.getRole(email);
} catch(e) {
console.warn('Error %s, %s, GroupsApp.group.getRole()', e.name, e.message);
}
}
@eojji
eojji / driveInsertByEmail.gs
Created June 27, 2018 07:05
driveInsertByEmail.gs Request Team Drive - 3 https://m.cafe.naver.com/eojji/313
function drivePermissionsInsertByEmail_(email, id) {
// https://developers.google.com/drive/v2/reference/permissions
var value = email;
var type = 'user';
var role = 'organizer';
var resource = {
'value': value,
'type': type,
'role': role
};
@eojji
eojji / pacProcessForm.gs
Created July 3, 2018 04:47
Pick and Copy Sheet, Query Exact: /folders. G folder copy https://cafe.naver.com/eojji/320
function pacProcessForm_(url, pickAndCopyFolder) {
var appMessage = {};
appMessage.message = 'Pick and Copy data';
var thisName = 'PaC Process Form';
appMessage.title = thisName;
appMessage.url = url;
var id;
var rtn = url.match(/[-\w]{25,}/);
@eojji
eojji / driveListFilesAppMakerClient.gs
Created July 9, 2018 06:58
drive ListFiles AppMaker. drive 05 - Google App Maker. https://cafe.naver.com/eojji/331
/**
* https://developers.google.com/appmaker/tutorials/call-scripts/
* @param {widget} widget - Button widget.
* @param {event}
*/
function onListFilesClick(widget, event) {
var widgets = widget.parent.descendants;
var from = widgets.TextBoxFromFolder.value;
var to = widgets.TextBoxToFolder.value;
@eojji
eojji / onListFilesClick.gs
Created July 10, 2018 04:40
Main page, Custom Properties - App Maker, https://cafe.naver.com/eojji/332
/**
* https://developers.google.com/appmaker/tutorials/call-scripts/
* @param {widget} widget - Button widget.
* @param {event}
*/
function onListFilesClick(widget, event) {
var widgets = widget.parent.descendants;
var from = widgets.TextBoxFromFolder.value;
var to = widgets.TextBoxToFolder.value;
@eojji
eojji / ListFilesScript.js
Created July 11, 2018 01:12
google.script.run.getLinkFolderSpreadSheet(); drive 07 - Google App Maker https://cafe.naver.com/eojji/333
/**
* https://developers.google.com/appmaker/tutorials/call-scripts/
* @param {widget} widget - Button widget.
* @param {event}
*/
function onListFilesClick(widget, event) {
var widgets = widget.parent.descendants;
var from = widgets.TextBoxFromFolder.value;
var to = widgets.TextBoxToFolder.value;
@eojji
eojji / Process Main Client.js
Created July 16, 2018 02:28
Process Main, drive 10 - Google App Maker. https://cafe.naver.com/eojji/337
function onMainPageAttach(page) {
google.script.run.withSuccessHandler( function(resp) {
page.descendants.ToFolderLink.text = resp.title;
page.descendants.ToFolderLink.href = resp.link;
}).getLinkToFolderByProperty();
}
/**
* @param {widget} widget - Button widget.
* @param {event}
@eojji
eojji / SearchPageScript.js
Created July 27, 2018 08:47
Search for Files and Team Drives, drive 15 - Google App Maker https://cafe.naver.com/eojji/349
function onDropdownAttach(widget) {
var props = app.currentPage.properties;
google.script.run.withSuccessHandler( function(list) {
if(list && list.length > 1) {
var listLength = list.length;
for(var i = 0; i < listLength; i++) {
var drive = list[i];
if (drive.id == props.TeamDriveId) {
widget.value = drive.id;
}
@eojji
eojji / Delete duplicate rows.js
Created August 28, 2018 07:33
Find duplicate rows in the spreadsheet with the eq function and delete them. https://cafe.naver.com/eojji/365
function myFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var value;
var i = 0;
var thisRow = 2;
do {
value = sheet.getRange(thisRow, 1).getValue();
if (value) {
thisRow++;
@eojji
eojji / isOpenSharedFileByProp.js
Created August 29, 2018 08:01
Spreadsheet files were shared to G folder copy group members. https://cafe.naver.com/eojji/176
function isOpenSharedFileByProp_() {
var domain = Session.getEffectiveUser().getEmail().split('@')[1];
var myDomain = ['gfolder.net', 'eojji.net', 'eojji.kr', 'eojji.com'];
if (myDomain.indexOf(domain) > -1) {
console.log('True My Domain: %s', domain);
return true;
} else {
console.log('False My Domain: %s', domain);
}
var ss, ssIdsharedGfolderCopy;