NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name OkChoices // @version 3.0.0 // @namespace http://mitarashidango.net // @description A script that allows you to modify gender, orientation, relationship status and pronouns on OKCupid. // @include http://www.okcupid.com/profile* // @match http://www.okcupid.com/profile* // @updateURL https://openuserjs.org/install/mienaikage/httpmitarashidango.net/OkChoices.user.js // @updateURL https://gist.github.com/raw/1131952/okchoices.user.js // @downloadURL https://openuserjs.org/install/mienaikage/httpmitarashidango.net/OkChoices.user.js // @downloadURL https://gist.github.com/raw/1131952/okchoices.user.js // ==/UserScript== document.getElementById("profile_details").innerHTML = document.getElementById("profile_details").innerHTML.replace(/(<dl>\s+?<dt>Orientation<\/dt>\s+?<dd\s+?id="ajax_orientation">.+?<\/dd>)/gi,'<dl><dt>Pronoun(s)</dt><dd id="ajax_pronoun">(Coming soon!)</dd></dl>'+'$1'); var gen = ['Agender','Androgyne','Butch','Female-to-Male','Femme','Gender Fluid','Gender Neutral','Genderless','Genderqueer','Intersex','Male-to-Female','Neutrois','Trans Man','Trans Woman','Transgender','Transsexual','Trans*'] var or = ['Asexual','Demisexual','Grey Asexual','Heteroflexible','Homoflexible','Panromantic','Pansexual','Polysexual','Queer','Sapiosexual'] var rel = ['Handfasted','Closed group','Separated'] var type = ['Polyamorous','Polyfidelitous'] var pro = ['Test'] var tag = document.getElementById("main_column").innerHTML.match(/ <a\sclass="ilink"\shref="\/interests\?i=(.+?)">/gi); for (id = 0; id < tag.length; id++) {tag[id] = tag[id].replace(/ <a\sclass="ilink"\shref="\/interests\?i(=.+?)">/gi,'$1');} for (gid = 0; gid < gen.length; gid++) { var gmatch = new RegExp('='+gen[gid],'i'); if (gmatch.test(tag)) { console.log('Found '+gen[gid]+'!'); document.getElementById("ajax_gender").innerHTML = document.getElementById("ajax_gender").innerHTML.replace(/.*/,gen[gid]); } } for (oid = 0; oid < or.length; oid++) { var omatch = new RegExp('='+or[oid],'i'); if (omatch.test(tag)) { console.log('Found '+or[oid]+'!'); document.getElementById("ajax_orientation").innerHTML = document.getElementById("ajax_orientation").innerHTML.replace(/.*/,or[oid]); } } for (rid = 0; rid < rel.length; rid++) { var rmatch = new RegExp('='+rel[rid],'i'); if (rmatch.test(tag)) { console.log('Found '+rel[rid]+'!'); document.getElementById("ajax_status").innerHTML = document.getElementById("ajax_status").innerHTML.replace(/.*/,rel[rid]); } } for (tid = 0; tid < type.length; tid++) { var tmatch = new RegExp('='+type[tid],'i'); if (tmatch.test(tag)) { console.log('Found '+type[tid]+'!'); document.getElementById("ajax_monogamous").innerHTML = document.getElementById("ajax_monogamous").innerHTML.replace(/.*/,type[tid]); } } for (pid = 0; pid < pro.length; pid++) { var pmatch = new RegExp('='+pro[pid],'i'); if (pmatch.test(tag)) { console.log('Found '+pro[pid]+'!'); document.getElementById("ajax_pronoun").innerHTML = document.getElementById("ajax_pronoun").innerHTML.replace(/.*/,pro[pid]); } }