Skip to content

Instantly share code, notes, and snippets.

View bastien's full-sized avatar

Bastien Vaucher bastien

  • Zendesk
  • Copenhagen, Denmark
View GitHub Profile
@bastien
bastien / .env
Created March 1, 2024 07:46
Test script that creates a help-center article with an attachment and updates its content
EMAIL={admin-email}
PASSWORD={admin-password}
SUBDOMAIN={your-subdomain}
SECTIONID={some-id}
PERMISSIONGROUPID={permssion-group-id}
FILENAME={relative-path-to-file-to-upload}
LOCALE={locale}

Keybase proof

I hereby claim:

To claim this, I am signing this object:

@bastien
bastien / gist:4155027
Created November 27, 2012 15:56
Creating a nested object from nested GET parameters
var obj = {};
var param1 = "monkey[foo][bar][test1]";
var param2 = "monkey[foo][foo][test2]";
var keys1 = param1.replace(/\]/g, '').split('[');
var keys2 = param2.replace(/\]/g, '').split('[');
var deserialize = function(obj, keys, value){
var pointer = obj;
var index = 0;
@bastien
bastien / content.rb
Created July 6, 2012 09:58
Paperclip processor to convert PDF to JPG to go around problems with the old versions of imagemagick and ghostscript available on Heroku. This file is located in [APP_ROOT]/lib/paperclip_processors/ghostscript.rb
# Model using the ghostscript processor
class Content < ActiveRecord::Base
has_attached_file :resource,
:styles => { :preview => ["725x1200>", :jpg], :thumb => ["100x140>", :jpg] },
:processors => [:ghostscript, :thumbnail],
:convert_options => { :all => '-colorspace RGB -flatten -density 300 -quality 100' },
:path => ":page_path/:class/:id/:resource_token/:style/:filename"
end
@bastien
bastien / findThreadedPages.jsx
Created June 29, 2012 11:48
Script for InDesign to detect on which pages the threaded text frames span to.
var doc = app.activeDocument;
var page = doc.pages[0];
var page_ids = [page.name];
var text_frames = page.textFrames;
for(var i=1; i<=text_frames.length; i++){
var text_frame = page.textFrames[0];
var threaded_text_frames = text_frame.parentStory.textContainers;
for(var j=1; j<= threaded_text_frames.length; j++){
var threaded_text_frame = threaded_text_frames[j-1];
if(!inArray(threaded_text_frame.parentPage.name, page_ids)){
@bastien
bastien / indesign_singlepage_replace.jsx
Created June 21, 2012 11:19
Imports a single page InDesign document into another
var doc = app.activeDocument;
var docPath = doc.fullName;
var importDoc = app.open(File('~/test_extract.indd'), false);
var pageToImport = importDoc.pages.firstItem();
importDoc.pages.add(LocationOptions.AT_END); // Documents must have at least 1 page
pageToImport.move(LocationOptions.AFTER, doc.pages.firstItem());
doc.pages.item(2).remove();
importDoc.close(SaveOptions.no);
@bastien
bastien / indd_page_extract.jsx
Created June 21, 2012 09:23
Extracting a page from an InDesign document (2 different approaches)
var doc = app.activeDocument;
if(doc.saved == true)
{
extract(2);
}
else
{
alert("Save you file.");
}
@bastien
bastien / CustomFlattenerPreset.jsx
Created December 6, 2011 11:49
Script generating custom PDF flattener export presets for InDesign
main();
function main(){
var myFlattenerPresetName = "MyCustomFlattenerPreset";
var myPDFExportPresetName = "MyPDFExport";
var tempFlattenerPreset = app.flattenerPresets.itemByName(myFlattenerPresetName);
if(tempFlattenerPreset != null){
tempFlattenerPreset.remove();
}
var flattenerlevel = FlattenerLevel.LOW;
@bastien
bastien / input.txt
Created September 6, 2011 14:23
Trying to write out files in UTF-8 that TextEdit, Pages, Word and open
Danish: æåø
Chinese: 我真累