CINXE.COM
Donation for the Packaging Workgroup – Python Software Foundation
<!doctype html> <html lang="en-US"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="profile" href="https://gmpg.org/xfn/11" /> <title>Donation for the Packaging Workgroup – Python Software Foundation</title> <meta name='robots' content='max-image-preview:large' /> <link rel="alternate" type="application/rss+xml" title="Python Software Foundation » Feed" href="https://psfmember.org/feed/" /> <link rel="alternate" type="application/rss+xml" title="Python Software Foundation » Comments Feed" href="https://psfmember.org/comments/feed/" /> <script> window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/psfmember.org\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.6.2"}}; /*! This file is auto-generated */ !function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83d\udc26\u200d\u2b1b","\ud83d\udc26\u200b\u2b1b")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings); </script> <link rel='stylesheet' id='civicrm_haystacktheme_frontend-css' href='https://psfmember.org/wp-content/uploads/civicrm/persist/contribute/dyn/frontend.9a4dc8a7b6855dc13a4878153c990058.css?ver=1.0' media='all' /> <style id='wp-emoji-styles-inline-css'> img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; } </style> <link rel='stylesheet' id='wp-block-library-css' href='https://psfmember.org/wp-includes/css/dist/block-library/style.min.css?ver=6.6.2' media='all' /> <style id='wp-block-library-theme-inline-css'> .wp-block-audio :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-audio :where(figcaption){color:#ffffffa6}.wp-block-audio{margin:0 0 1em}.wp-block-code{border:1px solid #ccc;border-radius:4px;font-family:Menlo,Consolas,monaco,monospace;padding:.8em 1em}.wp-block-embed :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-embed :where(figcaption){color:#ffffffa6}.wp-block-embed{margin:0 0 1em}.blocks-gallery-caption{color:#555;font-size:13px;text-align:center}.is-dark-theme .blocks-gallery-caption{color:#ffffffa6}:root :where(.wp-block-image figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme :root :where(.wp-block-image figcaption){color:#ffffffa6}.wp-block-image{margin:0 0 1em}.wp-block-pullquote{border-bottom:4px solid;border-top:4px solid;color:currentColor;margin-bottom:1.75em}.wp-block-pullquote cite,.wp-block-pullquote footer,.wp-block-pullquote__citation{color:currentColor;font-size:.8125em;font-style:normal;text-transform:uppercase}.wp-block-quote{border-left:.25em solid;margin:0 0 1.75em;padding-left:1em}.wp-block-quote cite,.wp-block-quote footer{color:currentColor;font-size:.8125em;font-style:normal;position:relative}.wp-block-quote.has-text-align-right{border-left:none;border-right:.25em solid;padding-left:0;padding-right:1em}.wp-block-quote.has-text-align-center{border:none;padding-left:0}.wp-block-quote.is-large,.wp-block-quote.is-style-large,.wp-block-quote.is-style-plain{border:none}.wp-block-search .wp-block-search__label{font-weight:700}.wp-block-search__button{border:1px solid #ccc;padding:.375em .625em}:where(.wp-block-group.has-background){padding:1.25em 2.375em}.wp-block-separator.has-css-opacity{opacity:.4}.wp-block-separator{border:none;border-bottom:2px solid;margin-left:auto;margin-right:auto}.wp-block-separator.has-alpha-channel-opacity{opacity:1}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){width:100px}.wp-block-separator.has-background:not(.is-style-dots){border-bottom:none;height:1px}.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots){height:2px}.wp-block-table{margin:0 0 1em}.wp-block-table td,.wp-block-table th{word-break:normal}.wp-block-table :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table :where(figcaption){color:#ffffffa6}.wp-block-video :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-video :where(figcaption){color:#ffffffa6}.wp-block-video{margin:0 0 1em}:root :where(.wp-block-template-part.has-background){margin-bottom:0;margin-top:0;padding:1.25em 2.375em} </style> <style id='classic-theme-styles-inline-css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css'> :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #FFF;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--primary: #0073a8;--wp--preset--color--secondary: #005075;--wp--preset--color--dark-gray: #111;--wp--preset--color--light-gray: #767676;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 19.5px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36.5px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-size--normal: 22px;--wp--preset--font-size--huge: 49.5px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} </style> <link rel='stylesheet' id='hide-admin-bar-based-on-user-roles-css' href='https://psfmember.org/wp-content/plugins/hide-admin-bar-based-on-user-roles/public/css/hide-admin-bar-based-on-user-roles-public.css?ver=3.9.0' media='all' /> <link rel='stylesheet' id='parent-style-css' href='https://psfmember.org/wp-content/themes/twentynineteen/style.css?ver=6.6.2' media='all' /> <link rel='stylesheet' id='twentynineteen-style-css' href='https://psfmember.org/wp-content/themes/twentynineteen-child/style.css?ver=1.0.0' media='all' /> <link rel='stylesheet' id='twentynineteen-print-style-css' href='https://psfmember.org/wp-content/themes/twentynineteen/print.css?ver=1.0.0' media='print' /> <link rel='stylesheet' id='wppb_stylesheet-css' href='https://psfmember.org/wp-content/plugins/profile-builder/assets/css/style-front-end.css?ver=3.12.4' media='all' /> <script src="https://psfmember.org/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script src="https://psfmember.org/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script> <script src="https://psfmember.org/wp-content/plugins/hide-admin-bar-based-on-user-roles/public/js/hide-admin-bar-based-on-user-roles-public.js?ver=3.9.0" id="hide-admin-bar-based-on-user-roles-js"></script> <script src="https://psfmember.org/wp-content/themes/twentynineteen/js/priority-menu.js?ver=20200129" id="twentynineteen-priority-menu-js" defer data-wp-strategy="defer"></script> <link rel="https://api.w.org/" href="https://psfmember.org/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://psfmember.org/wp-json/wp/v2/pages/5" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://psfmember.org/xmlrpc.php?rsd" /> <meta name="generator" content="WordPress 6.6.2" /> <link rel="canonical" href="https://psfmember.org/civicrm/contribute/transact/?reset=1&id=13" /> <link rel='shortlink' href='https://psfmember.org/?p=5' /> <link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://psfmember.org/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fpsfmember.org%2Fcivicrm%2F" /> <link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://psfmember.org/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fpsfmember.org%2Fcivicrm%2F&format=xml" /> <!--Customizer CSS--> <style type="text/css"> .site-logo .custom-logo-link { height: auto; } .site-logo .custom-logo-link .custom-logo { display: block; } body { font-size:0.625em; }body { font-size: 0.625em; } @media only screen and (min-width: 768px) { .site-logo .custom-logo-link { width: 190px; } } .site-info>.imprint { display: none; } .site-name { margin-right: 1rem; } #infinite-footer .blog-credits { display: none; } </style> <!--/Customizer CSS--> <!--Customizer CSS--> <style type="text/css"> .site-info>.imprint { display: none; } .site-name { margin-right: 1rem; } </style> <!--/Customizer CSS--> <!-- CiviCRM html header --><script type="text/javascript"> (function(vars) { if (window.CRM) CRM.$.extend(true, CRM, vars); else window.CRM = vars; })({"config":{"isFrontend":true,"entityRef":{"contactCreate":false},"wysisygScriptLocation":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/ckeditor4\/js\/crm.ckeditor.js","CKEditorCustomConfig":{"default":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/persist\/crm-ckeditor-default.js"}},"permissions":[],"resourceUrls":{"civicrm":"\/wp-content\/plugins\/civicrm\/civicrm","nz.co.fuzion.csvimport":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/nz.co.fuzion.csvimport","biz.jmaconsulting.grantapplications":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/biz.jmaconsulting.grantapplications","com.cividesk.apikey":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/com.cividesk.apikey","sequentialcreditnotes":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/sequentialcreditnotes","greenwich":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/greenwich","contributioncancelactions":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/contributioncancelactions","recaptcha":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/recaptcha","ckeditor4":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/ckeditor4","legacycustomsearches":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/legacycustomsearches","action-provider":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/action-provider","form-processor":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/form-processor","grantactionprovider":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/grantactionprovider","org.civicoop.civirules":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/org.civicoop.civirules","org.civicoop.emailapi":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/org.civicoop.emailapi","grantcivirule":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/civirules-for-grant","haystack":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/haystacktheme","org.civicrm.doctorwhen":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/org.civicrm.doctorwhen","org.civicrm.flexmailer":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/flexmailer","psf-grant-customization":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/psf-grant-customization","psfmembershipform":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/psfmembershipform","worldrepresentationreport":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/world-representation-report","ca.civicrm.logviewer":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/ca.civicrm.logviewer","civigrant":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/civigrant","authx":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/authx","org.civicrm.afform":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/afform\/core","org.civicrm.search_kit":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/search_kit","psfgrantsearchmodifications":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/psfgrantsearchmodifications","pendingmailing":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/ext\/pendingmailing","civi_contribute":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/civi_contribute","civi_member":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/civi_member","civi_mail":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/civi_mail","civi_report":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/civi_report","civi_case":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/civi_case","civiimport":"\/wp-content\/plugins\/civicrm\/civicrm\/ext\/civiimport"},"angular":{"modules":["crmResource"],"requires":[],"cacheCode":"qYh7Fen_US","bundleUrl":"https:\/\/psfmember.org\/wp-content\/uploads\/civicrm\/persist\/contribute\/dyn\/angular-modules.1265dcddaa1e2e682a72a3cabdca7e04.json"}}) </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/jquery/dist/jquery.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/jquery-ui/jquery-ui.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/lodash-compat/lodash.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/packages/jquery/plugins/jquery.mousewheel.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/select2/select2.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/packages/jquery/plugins/jquery.form.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/packages/jquery/plugins/jquery.timeentry.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/packages/jquery/plugins/jquery.blockUI.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/datatables/media/js/jquery.dataTables.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/jquery-validation/dist/jquery.validate.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/jquery-validation/dist/additional-methods.min.js"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/plugins/civicrm/civicrm/packages/jquery/plugins/jquery.ui.datepicker.validation.min.js"> </script> <script type="text/javascript" src="/wp-content/plugins/civicrm/civicrm/js/Common.js?r=qYh7Fen_US"> </script> <script type="text/javascript" src="/wp-content/plugins/civicrm/civicrm/js/crm.datepicker.js?r=qYh7Fen_US"> </script> <script type="text/javascript" src="/wp-content/plugins/civicrm/civicrm/js/crm.ajax.js?r=qYh7Fen_US"> </script> <script type="text/javascript" src="/wp-content/plugins/civicrm/civicrm/js/wysiwyg/crm.wysiwyg.js?r=qYh7Fen_US"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/uploads/civicrm/persist/contribute/dyn/crm-l10n.24e42b39ac184a6a7e147b7295341aaf.js"> </script> <script type="text/javascript" src="/wp-content/plugins/civicrm/civicrm/js/crm.wordpress.js?r=qYh7Fen_US"> </script> <link href="/wp-content/plugins/civicrm/civicrm/css/crm-i.css?r=qYh7Fen_US" rel="stylesheet" type="text/css"/> <link href="/wp-content/plugins/civicrm/civicrm/css/crm-i-v4-shims.css?r=qYh7Fen_US" rel="stylesheet" type="text/css"/> <link href="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/datatables/media/css/jquery.dataTables.min.css" rel="stylesheet" type="text/css"/> <link href="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/font-awesome/css/all.min.css" rel="stylesheet" type="text/css"/> <link href="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/font-awesome/css/v4-font-face.min.css" rel="stylesheet" type="text/css"/> <link href="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/jquery-ui/themes/smoothness/jquery-ui.min.css" rel="stylesheet" type="text/css"/> <link href="https://psfmember.org/wp-content/plugins/civicrm/civicrm/bower_components/select2/select2.min.css" rel="stylesheet" type="text/css"/> <link href="https://psfmember.org/wp-content/uploads/civicrm/ext/haystacktheme/theme/Haystack/wordpress.css?r=qYh7Fen_US" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="/wp-content/plugins/civicrm/civicrm/bower_components/angular/angular.min.js?r=qYh7Fen_US"> </script> <script type="text/javascript" src="https://psfmember.org/wp-content/uploads/civicrm/persist/contribute/dyn/angular-modules.b7de83b2abc9b48db8f6f5c03b274e0b.js"> </script> <script type="text/javascript" src="/wp-content/plugins/civicrm/civicrm/js/crm-angularjs-loader.js?r=qYh7Fen_US"> </script> <script type="text/javascript" src="/wp-content/plugins/civicrm/civicrm/js/noconflict.js?r=qYh7Fen_US"> </script> <link rel="icon" href="https://psfmember.org/wp-content/uploads/2022/02/cropped-psf-favicon-32x32.png" sizes="32x32" /> <link rel="icon" href="https://psfmember.org/wp-content/uploads/2022/02/cropped-psf-favicon-192x192.png" sizes="192x192" /> <link rel="apple-touch-icon" href="https://psfmember.org/wp-content/uploads/2022/02/cropped-psf-favicon-180x180.png" /> <meta name="msapplication-TileImage" content="https://psfmember.org/wp-content/uploads/2022/02/cropped-psf-favicon-270x270.png" /> <style id="wp-custom-css"> #login { width: 500px !important; } .site-title, .site-description { display: none; } .loginpress-show-love { display: none; } #post-342 .crm-title { display: none; } .site-logo .custom-logo-link:hover { box-shadow: none !important; } .page-id-367 .acf-fields > .acf-field { border-top: none; } .page-id-367 .acf-form-submit { padding-bottom: 2%; } nav#site-navigation { display: flex; justify-content: end; } nav#site-navigation .main-menu > li > a { font-family: Georgia, "Times New Roman", Times, serif; font-weight: 400; } </style> </head> <body class="page-template-default page page-id-5 wp-custom-logo wp-embed-responsive singular image-filters-enabled civicrm civicrm-contribute civicrm-contribute-transact"> <div id="page" class="site"> <a class="skip-link screen-reader-text" href="#content"> Skip to content </a> <header id="masthead" class="site-header"> <div class="site-branding-container"> <div class="site-branding"> <div class="site-logo"><a href="https://psfmember.org/" class="custom-logo-link" rel="home"><img width="317" height="71" src="https://psfmember.org/wp-content/uploads/2022/01/psf-logo-317x71-alpha.png" class="custom-logo" alt="Python Software Foundation" decoding="async" srcset="https://psfmember.org/wp-content/uploads/2022/01/psf-logo-317x71-alpha.png 317w, https://psfmember.org/wp-content/uploads/2022/01/psf-logo-317x71-alpha-300x67.png 300w" sizes="(max-width: 317px) 100vw, 317px" /></a></div> <p class="site-title"><a href="https://psfmember.org/" rel="home">Python Software Foundation</a></p> <nav id="site-navigation" class="main-navigation" aria-label="Top Menu"> <div class="menu-unauthenticated-container"><ul id="menu-unauthenticated" class="main-menu"><li id="menu-item-1187" class="menu-item menu-item-type- menu-item-object-login menu-item-1187"><a href="https://psfmember.org/wp-login.php?redirect_to=https%3A%2F%2Fpsfmember.org%2Fcivicrm%2Fcontribute%2Ftransact%2F%3Freset%3D1%26id%3D13">Login</a></li> <li id="menu-item-1188" class="menu-item menu-item-type- menu-item-object-register menu-item-1188"><a href="https://psfmember.org/wp-login.php?action=register&redirect_to=https://psfmember.org/civicrm/contribute/transact/?reset=1&id=13">Register</a></li> </ul></div> <div class="main-menu-more"> <ul class="main-menu"> <li class="menu-item menu-item-has-children"> <button class="submenu-expand main-menu-more-toggle is-empty" tabindex="-1" aria-label="More" aria-haspopup="true" aria-expanded="false"><svg class="svg-icon" width="24" height="24" aria-hidden="true" role="img" focusable="false" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path fill="currentColor" fill-rule="nonzero" d="M12 2c5.52 0 10 4.48 10 10s-4.48 10-10 10S2 17.52 2 12 6.48 2 12 2zM6 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm6 0a2 2 0 1 0 0-4 2 2 0 0 0 0 4zm6 0a2 2 0 1 0 0-4 2 2 0 0 0 0 4z"/></g></svg> </button> <ul class="sub-menu hidden-links"> <li class="mobile-parent-nav-menu-item"> <button class="menu-item-link-return"><svg class="svg-icon" width="24" height="24" aria-hidden="true" role="img" focusable="false" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg>Back </button> </li> </ul> </li> </ul> </div> </nav><!-- #site-navigation --> </div><!-- .site-branding --> </div><!-- .site-branding-container --> </header><!-- #masthead --> <div id="content" class="site-content"> <div id="primary" class="content-area"> <main id="main" class="site-main"> <article id="post-5" class="post-5 page type-page status-publish hentry entry"> <header class="entry-header"> <h1 class="entry-title">Donation for the Packaging Workgroup</h1> </header> <div class="entry-content"> <div id="crm-container" class="crm-container crm-public" lang="en" xml:lang="en"> <div class="clear"></div> <div id="crm-main-content-wrapper"> <form action="https://psfmember.org/civicrm/contribute/transact/" method="post" name="Main" id="Main" class="CRM_Contribute_Form_Contribution_Main" enctype="multipart/form-data" data-warn-changes="true"> <div><input name="qfKey" type="hidden" value="CRMContributeControllerContribution4flp1zot4fqcc0k40w0sw884osg80scgsgs8gs4k88s08ko0gk_8901" /> <input name="entryURL" type="hidden" value="https://psfmember.org/civicrm/contribute/transact/?reset=1&amp;id=13" /> <input name="hidden_processor" type="hidden" value="1" /> <input name="priceSetId" type="hidden" value="16" /> <input name="frequency_interval" type="hidden" value="1" /> <input id="selectProduct" name="selectProduct" type="hidden" value="" /> <input name="_qf_default" type="hidden" value="Main:upload" /> <input name="MAX_FILE_SIZE" type="hidden" value="83886080" /> </div> <script type="text/javascript"> // Putting these functions directly in template for historical reasons. function useAmountOther(mainPriceFieldName) { var currentFocus = CRM.$(':focus'); CRM.$('input[name=' + mainPriceFieldName + ']:radio:unchecked').each( function () { if (CRM.$(this).data('is-null-option') !== undefined) { // Triggering this click here because over in Calculate.tpl // a blur action is attached CRM.$(this).prop('checked', true).trigger('click'); } } ); // Copied from `updatePriceSetHighlight()` below which isn't available here. // @todo - consider adding this to the actions assigned in Calculate.tpl CRM.$('#priceset .price-set-row span').removeClass('highlight'); CRM.$('#priceset .price-set-row input:checked').parent().addClass('highlight'); // Return the focus we blurred earlier. currentFocus.trigger('focus'); } function clearAmountOther(otherPriceFieldName) { cj('#' + otherPriceFieldName).val('').trigger('blur'); } </script> <div class="crm-contribution-page-id-13 crm-block crm-contribution-main-form-block" data-page-id="13" data-page-template="main"> <div id="intro_text" class="crm-public-form-item crm-section intro_text-section"> <p><strong>About the Packaging Workgroup</strong></p> <p>The purpose of this working group is to support the larger efforts of聽improving and maintaining the packaging ecosystem in Python through聽fundraising and disbursement of raised funds. It largely focuses on efforts聽such as PyPI, pip,聽<a href="http://packaging.python.org/">packaging.python.org</a>, setuptools, and cross-project聽efforts.<br /> <br /> The working group is currently seeking funding for <a href="https://wiki.python.org/psf/Fundable%20Packaging%20Improvements">several聽new features and infrastructure improvements</a>聽in packaging and聽distribution tools.</p> <p>Your financial contribution to the Packaging Workgroup will be handled as a donation to the Python Software Foundation (PSF).</p> <p>Note that it is not necessary to create an account on psfmember.org to use this form.</p> </div> <div id="priceset-div"> <div id="priceset" class="crm-section price_set-section"> <div class="crm-section membership_amount-section crm-price-field-id-28"> <div class="label"></div> <div class="content membership_amount-content"> </div> <div class="clear"></div> </div> <div class="crm-section other_amount-section crm-price-field-id-29"> <div class="label"><label for="price_29"> Packaging Work Group Donation $ <span class="crm-marker" title="This field is required.">*</span> </label></div> <div class="content other_amount-content"> <input onclick="useAmountOther("price_");" autocomplete="off" price="[41,"1||"]" size="4" name="price_29" type="text" id="price_29" class="four crm-form-text required" /> </div> <div class="clear"></div> </div> <div id="pricesetTotal" class="crm-section section-pricesetTotal"> <div id="pricelabel" class="label hiddenElement"> <span id='amount_sum_label'>Total Amount</span> </div> <div class="content calc-value" style="display:none;" id="pricevalue"></div> </div> <script type="text/javascript"> var thousandMarker = ','; var separator = '.'; var symbol = '$'; // moneyFormat is part of a temporary fix. it should // not be expected to be present in future versions // see https://github.com/civicrm/civicrm-core/pull/19151 var moneyFormat = '$ 1,234.56'; var optionSep = '|'; // Recalculate the total fees based on user selection cj("#priceset [price]").each(function () { var elementType = cj(this).attr('type'); if (this.tagName == 'SELECT') { elementType = 'select-one'; } switch(elementType) { case 'checkbox': cj(this).click(function(){ calculateCheckboxLineItemValue(this); display(calculateTotalFee()); }); calculateCheckboxLineItemValue(this); break; case 'radio': cj(this).click( function(){ calculateRadioLineItemValue(this); display(calculateTotalFee()); }); calculateRadioLineItemValue(this); break; case 'text': cj(this).bind( 'keyup', function() { calculateText(this); }).bind( 'blur' , function() { calculateText(this); }); //default calculation of element. calculateText(this); break; case 'select-one': calculateSelectLineItemValue(this); cj(this).change(function() { calculateSelectLineItemValue(this); display(calculateTotalFee()); }); break; } display(calculateTotalFee()); }); /** * Calculate the value of the line item for a radio value. */ function calculateCheckboxLineItemValue(priceElement) { eval( 'var option = ' + cj(priceElement).attr('price') ) ; optionPart = option[1].split(optionSep); price = parseFloat(0); if (cj(priceElement).prop('checked')) { price = parseFloat(optionPart[0]); } cj(priceElement).data('line_raw_total', price); } /** * Calculate the value of the line item for a radio value. */ function calculateRadioLineItemValue(priceElement) { eval( 'var option = ' + cj(priceElement).attr('price') ); optionPart = option[1].split(optionSep); var lineTotal = parseFloat(optionPart[0]); cj(priceElement).data('line_raw_total', lineTotal); var radionGroupName = cj(priceElement).attr("name"); // Reset all unchecked options to having a data value of 0. cj('input[name=' + radionGroupName + ']:radio:unchecked').each( function () { cj(this).data('line_raw_total', 0); } ); } /** * Calculate the value of the line item for a select value. */ function calculateSelectLineItemValue(priceElement) { eval( 'var selectedText = ' + cj(priceElement).attr('price') ); var price = parseFloat('0'); var option = cj(priceElement).val(); if (option) { optionPart = selectedText[option].split(optionSep); price = parseFloat(optionPart[0]); } cj(priceElement).data('line_raw_total', price); } /** * Calculate the value of the line item for a text box. */ function calculateText(priceElement) { //CRM-16034 - comma acts as decimal in price set text pricing //CRM-19937 - dollar sign easy mistake to make by users. var textval = parseFloat(cj(priceElement).val().replace(thousandMarker, '').replace(symbol, '').replace(separator, '.')); if (isNaN(textval)) { textval = parseFloat(0); } eval('var option = '+ cj(priceElement).attr('price')); optionPart = option[1].split(optionSep); addprice = parseFloat(optionPart[0]); var curval = textval * addprice; cj(priceElement).data('line_raw_total', curval); display(calculateTotalFee()); } /** * Calculate the total fee for the visible priceset. */ function calculateTotalFee() { var totalFee = 0; cj("#priceset [price]").each(function () { totalFee = totalFee + cj(this).data('line_raw_total'); }); return totalFee; } /** * Display calculated amount. */ function display(totalfee) { // totalfee is monetary, round it to 2 decimal points so it can // go as a float - CRM-13491 totalfee = Math.round(totalfee*100)/100; // dev/core#1019 Use the moneyFormat assigned to the template as an interim fix // to support forms using a currency other that the site default. Also make sure to // support various currency formatting options, // temporary measure - pending // our preferred fix. // see https://github.com/civicrm/civicrm-core/pull/19151 var totalFormattedFee = CRM.formatMoney(totalfee, false, moneyFormat); cj('#pricevalue').html(totalFormattedFee); cj('#total_amount').val( totalfee ); cj('#pricevalue').data('raw-total', totalfee).trigger('change'); if (totalfee < 0) { cj('table#pricelabel').addClass('disabled'); } else { cj('table#pricelabel').removeClass('disabled'); } if (typeof skipPaymentMethod == 'function') { // Advice to anyone who, like me, feels hatred towards this if construct ... if you remove the if you // get an error on participant 2 of a event that requires approval & permits multiple registrants. skipPaymentMethod(); } } </script> </div> </div> <div class="crm-public-form-item crm-section is_recur-section"> <div class="label"> </div> <div class="content"> <input id="is_recur" name="is_recur" type="checkbox" value="1" class="crm-form-checkbox" /> <label for="is_recur">I want to contribute this amount every</label> <select aria-label="Frequency Unit" class="crm-select2 eight crm-form-select" name="frequency_unit" id="frequency_unit"> <option value="month">month</option> <option value="year">year</option> </select> <span id="recur_installments_num"> for <input size="6" maxlength="14" class="two crm-form-text" name="installments" type="text" id="installments" /> <label for="installments">installments</label> </span> <div id="recurHelp" class="description"> You can specify the number of installments, or you can leave the number of installments blank if you want to make an open-ended commitment. In either case, you can choose to cancel at any time. </div> </div> <div class="clear"></div> </div> <div class="crm-public-form-item crm-section email-5-section"> <div class="label"><label for="email-5"> Email Address <span class="crm-marker" title="This field is required.">*</span> </label></div> <div class="content"> <input size="30" maxlength="60" class="email crm-form-text required" name="email-5" type="text" id="email-5" /> </div> <div class="clear"></div> </div> <div id='onBehalfOfOrg' class="crm-public-form-item crm-section"> <div class="crm-public-form-item" id="on-behalf-block"> </div> <script type="text/javascript"> CRM.$(function($) { var orgOption = $("input:radio[name=org_option]:checked").attr('id'); var onBehalfRequired = '$onBehalfRequired'; var onbehalfof_id = $('#onbehalfof_id'); var is_for_organization = $('#is_for_organization'); selectCreateOrg(orgOption, false); if (is_for_organization.length) { showHideOnBehalfOfBlock(); is_for_organization.on('change', function() { showHideOnBehalfOfBlock(); }); } function showHideOnBehalfOfBlock() { $('#on-behalf-block').toggle(is_for_organization.is(':checked')); if (is_for_organization.is(':checked')) { $('#onBehalfOfOrg select.crm-select2').removeClass('crm-no-validate'); } else { $('#onBehalfOfOrg select.crm-select2').addClass('crm-no-validate'); } } $("input:radio[name='org_option']").click( function( ) { var orgOption = $(this).attr('id'); selectCreateOrg(orgOption, true); }); onbehalfof_id.change(function() { setLocationDetails($(this).val()); }).change(); if (onbehalfof_id.length) { setLocationDetails(onbehalfof_id.val()); } function resetValues() { // Don't trip chain-select when clearing values $('.crm-chain-select-control', "#select_org div").select2('val', ''); $('input[type=text], select, textarea', "#select_org div").not('.crm-chain-select-control, #onbehalfof_id').val('').change(); $('input[type=radio], input[type=checkbox]', "#select_org div").prop('checked', false).change(); $('#on-behalf-block input').not('input[type=checkbox], input[type=radio], #onbehalfof_id').val(''); // clear checkboxes and radio $('#on-behalf-block') .find('input[type=checkbox], input[type=radio]') .not('input[name=org_option]') .attr('checked', false); } function selectCreateOrg( orgOption, reset ) { if (orgOption == 'CIVICRM_QFID_0_org_option') { $("#onbehalfof_id").show().change(); $("input#onbehalf_organization_name").hide(); } else if (orgOption == 'CIVICRM_QFID_1_org_option') { $("input#onbehalf_organization_name").show(); $("#onbehalfof_id").hide(); reset = true; } if ( reset ) { resetValues(); } } function setLocationDetails(contactID , reset) { resetValues(); var locationUrl = '' + contactID; var submittedOnBehalfInfo = ''; var submittedCID = ""; if (submittedOnBehalfInfo) { submittedOnBehalfInfo = $.parseJSON(submittedOnBehalfInfo); if (submittedCID == contactID) { $.each(submittedOnBehalfInfo, function(key, value) { //handle checkboxes if (typeof value === 'object') { $.each(value, function(k, v) { $('#onbehalf_' + key + '_' + k).prop('checked', v); }); } else if ($('#onbehalf_' + key).length) { $('#onbehalf_' + key ).val(value); } //radio buttons else if ($("input[name='onbehalf[" + key + "]']").length) { $("input[name='onbehalf[" + key + "]']").val([value]); } }); return; } } $.ajax({ url : locationUrl, dataType : "json", success : function(data, status) { for (var ele in data) { if ($("#"+ ele).hasClass('crm-chain-select-target')) { $("#"+ ele).data('newVal', data[ele].value).off('.autofill').on('crmOptionsUpdated.autofill', function() { $(this).off('.autofill').val($(this).data('newVal')).change(); }); } else if ($('#' + ele).data('select2')) { $('#' + ele).select2('val', data[ele].value); } if (data[ele].type == 'Radio') { if (data[ele].value) { var fldName = ele.replace('onbehalf_', ''); $("input[name='onbehalf["+ fldName +"]']").filter("[value='" + data[ele].value + "']").prop('checked', true); } } else if (data[ele].type == 'CheckBox') { for (var selectedOption in data[ele].value) { var fldName = ele.replace('onbehalf_', ''); $("input[name='onbehalf["+ fldName+"]["+ selectedOption +"]']").prop('checked','checked'); } } else if (data[ele].type == 'AdvMulti-Select') { var customFld = ele.replace('onbehalf_', ''); // remove empty value if any $('#onbehalf\\['+ customFld +'\\]-f option[value=""]').remove(); $('#onbehalf\\['+ customFld +'\\]-t option[value=""]').remove(); for (var selectedOption in data[ele].value) { // remove selected values from left and selected values to right $('#onbehalf\\['+ customFld +'\\]-f option[value="' + selectedOption + '"]').remove() .appendTo('#onbehalf\\['+ customFld +'\\]-t'); $('#onbehalf_'+ customFld).val(selectedOption); } } else { // do not set defaults to file type fields if ($('#' + ele).attr('type') != 'file') { $('#' + ele ).val(data[ele].value).change(); } } } }, error : function(XMLHttpRequest, textStatus, errorThrown) { CRM.console('error', "HTTP error status: ", textStatus); } }); } }); </script> </div> <div class="crm-public-form-item crm-section cms_user-section"> </div> <div class="crm-public-form-item crm-section premium_block-section"> </div> <div class="crm-public-form-item crm-group custom_pre_profile-group"> <script type="text/javascript"> CRM.$(function($) { $('#selector tr:even').addClass('odd-row'); $('#selector tr:odd ').addClass('even-row'); }); </script> </div> <fieldset class="crm-public-form-item crm-group payment_options-group" style="display:none;"> <legend>Payment Options</legend> <div class="crm-public-form-item crm-section payment_processor-section"> <div class="label"><label>Payment Method</label></div> <div class="content"><input class="payment_processor_paypal-standard crm-form-radio" value="1" type="radio" id="CIVICRM_QFID_1_payment_processor_id" name="payment_processor_id" checked="checked" /><label for="CIVICRM_QFID_1_payment_processor_id">PayPal Website Payment Standard</label> <input class="payment_processor_paylater crm-form-radio" value="0" type="radio" id="CIVICRM_QFID_0_payment_processor_id" name="payment_processor_id" /><label for="CIVICRM_QFID_0_payment_processor_id">I will send payment by check.</label></div> <div class="clear"></div> </div> </fieldset> <div id="billing-payment-block"> <script type="text/javascript"> CRM.config.creditCardTypes = {"Visa":{"label":"Visa","name":"Visa","css_key":"visa","pattern":"4(?:[0-9]{12}|[0-9]{15})"},"MasterCard":{"label":"MasterCard","name":"MasterCard","css_key":"mastercard","pattern":"(5[1-5][0-9]{2}|2[3-6][0-9]{2}|22[3-9][0-9]|222[1-9]|27[0-1][0-9]|2720)[0-9]{12}"},"Amex":{"label":"Amex","name":"Amex","css_key":"amex","pattern":"3[47][0-9]{13}"},"Discover":{"label":"Discover","name":"Discover","css_key":"discover","pattern":"6011[0-9]{12}"}}; </script> <div id="payment_information"> </div> <script type="text/javascript" src="/wp-content/plugins/civicrm/civicrm/templates/CRM/Core/BillingBlock.js?r=qYh7Fen_US"> </script> </div> <script type="text/javascript"> /** * Show or hide payment options. * * @param bool $isHide * Should the block be hidden. */ function showHidePayment(isHide) { var payment_options = cj(".payment_options-group"); var payment_processor = cj("div.payment_processor-section"); var payment_information = cj("div#payment_information"); // I've added a hide for billing block. But, actually the issue // might be that the unselecting of the processor should cause it // to be hidden (or removed) in which case it can go from this function. var billing_block = cj("div#billing-payment-block"); if (isHide) { payment_options.hide(); payment_processor.hide(); payment_information.hide(); billing_block.hide(); // Ensure that jquery validation doesn't block submission when we don't need to fill in the billing details section cj('#billing-payment-block select.crm-select2').addClass('crm-no-validate'); // also unset selected payment methods cj('input[name="payment_processor_id"]').removeProp('checked'); } else { payment_options.show(); payment_processor.show(); payment_information.show(); billing_block.show(); cj('#billing-payment-block select.crm-select2').removeClass('crm-no-validate'); // also set selected payment methods cj('input[name="payment_processor_id"][checked=checked]').prop('checked', true); } } /** * Hides or shows billing and payment options block depending on whether payment is required. * * In general incomplete orders or $0 orders do not require a payment block. */ function skipPaymentMethod() { var isHide = false; var alwaysShowFlag = (cj("#additional_participants").val()); var alwaysHideFlag = (cj("#bypass_payment").val() == 1); var total_amount_tmp = cj('#pricevalue').data('raw-total'); // Hide billing questions if this is free if (!alwaysShowFlag && total_amount_tmp == 0){ isHide = true; } else { isHide = false; } if (alwaysHideFlag) { isHide = true; } showHidePayment(isHide); } skipPaymentMethod(); CRM.$(function($) { function buildPaymentBlock(type) { var $form = $('#billing-payment-block').closest('form'); var payment_instrument_id = $('#payment_instrument_id').val(); var currency = 'USD'; currency = currency == '' ? $('#currency').val() : currency; var dataUrl = "https://psfmember.org/civicrm/payment/form/?formName=Main&is_back_office=&billing_profile_id=billing"; if (typeof(CRM.vars) != "undefined") { if (typeof(CRM.vars.coreForm) != "undefined") { if (typeof(CRM.vars.coreForm.contact_id) != "undefined") { dataUrl = dataUrl + "&cid=" + CRM.vars.coreForm.contact_id; } if (typeof(CRM.vars.coreForm.checksum) != "undefined" ) { dataUrl = dataUrl + "&cs=" + CRM.vars.coreForm.checksum; } } } dataUrl = dataUrl + "&processor_id=" + type + "&payment_instrument_id=" + payment_instrument_id + "¤cy=" + currency; // Processors like pp-express will hide the form submit buttons, so re-show them when switching $('.crm-submit-buttons', $form).show().find('input').prop('disabled', true); CRM.loadPage(dataUrl, {target: '#billing-payment-block'}); } $('[name=payment_processor_id], #currency').on('change.paymentBlock', function() { var payment_processor_id = $('[name=payment_processor_id]:checked').val() == undefined ? $('[name=payment_processor_id]').val() : $('[name=payment_processor_id]:checked').val(); if (payment_processor_id != undefined) { buildPaymentBlock(payment_processor_id); } }); $('#payment_instrument_id').on('change.paymentBlock', function() { buildPaymentBlock(0); }); if ($('#payment_instrument_id').val()) { buildPaymentBlock(0); } $('#billing-payment-block').on('crmLoad', function() { $('.crm-submit-buttons input').prop('disabled', false); }) }); </script> <div class="crm-public-form-item crm-group custom_post_profile-group"> <script type="text/javascript"> CRM.$(function($) { $('#selector tr:even').addClass('odd-row'); $('#selector tr:odd ').addClass('even-row'); }); </script> </div> <div id="crm-submit-buttons" class="crm-submit-buttons"> <button class="crm-form-submit default validate crm-button crm-button-type-upload crm-button_qf_Main_upload" value="1" type="submit" name="_qf_Main_upload" id="_qf_Main_upload-bottom"><i aria-hidden="true" class="crm-i fa-chevron-right"></i> Review your contribution</button> </div> <div id="footer_text" class="crm-public-form-item crm-section contribution_footer_text-section"> <p><p><strong>About the PSF</strong></p> <p>The <a href="http://python.org/psf/">Python Software Foundation</a> is a non-profit organization entirely supported by its sponsor members and the public.聽 Our mission is to further the development of the Python language and its applications.</p> <p>Payments are processed by PayPal, but may be made either through your existing PayPal account or your credit card.聽 You will choose your payment method after you are transferred to the PayPal server.</p> <p><strong>How the Donation Works</strong></p> <p>If you wish to use a credit card, once on the PayPal site click the link "Don't have a PayPal account?", which will take you to a credit card form.聽 A PayPal account is <strong>not</strong> required.</p> <p>For your security, this website and the PSF do not acquire or retain any of your credit card data.聽 It is all handled by PayPal.</p> <p>Following the transaction, you will receive both a PayPal receipt and/or our formal acknowledgement of your tax-deductible (USA) donation.</p> <p>Please whitelist psfmember.org and check your spam bins if you don't receive the acknowledgement from the PSF.</p> <p>The minimum donation is $5.聽 Thank you for your donation!</p></p> </div> </div> <script type="text/javascript"> cj('input[name="soft_credit_type_id"]').on('change', function() { enableHonorType(); }); function enableHonorType() { var selectedValue = cj('input[name="soft_credit_type_id"]:checked'); if ( selectedValue.val() > 0) { cj('#honorType').show(); } else { cj('#honorType').hide(); } } cj('input[id="is_recur"]').on('change', function() { toggleRecur(); }); function toggleRecur() { var isRecur = cj('input[id="is_recur"]:checked'); var quickConfig = '1'; if (cj("#auto_renew").length && quickConfig) { showHideAutoRenew(null); } var frequencyUnit = cj('#frequency_unit'); var frequencyInerval = cj('#frequency_interval'); var installments = cj('#installments'); isDisabled = false; if (isRecur.val() > 0) { cj('#recurHelp').show(); frequencyUnit.prop('disabled', false).addClass('required'); frequencyInerval.prop('disabled', false).addClass('required'); installments.prop('disabled', false); cj('#amount_sum_label').text('Regular Amount'); } else { cj('#recurHelp').hide(); frequencyUnit.prop('disabled', true).removeClass('required'); frequencyInerval.prop('disabled', true).removeClass('required'); installments.prop('disabled', true); cj('#amount_sum_label').text('Total Amount'); } } function pcpAnonymous() { // clear nickname field if anonymous is true if (document.getElementsByName("pcp_is_anonymous")[1].checked) { document.getElementById('pcp_roll_nickname').value = ''; } if (!document.getElementsByName("pcp_display_in_roll")[0].checked) { cj('#nickID').hide(); cj('#nameID').hide(); cj('#personalNoteID').hide(); } else { if (document.getElementsByName("pcp_is_anonymous")[0].checked) { cj('#nameID').show(); cj('#nickID').show(); cj('#personalNoteID').show(); } else { cj('#nameID').show(); cj('#nickID').hide(); cj('#personalNoteID').hide(); } } } CRM.$(function($) { enableHonorType(); toggleRecur(); skipPaymentMethod(); }); CRM.$(function($) { // highlight price sets function updatePriceSetHighlight() { $('#priceset .price-set-row span').removeClass('highlight'); $('#priceset .price-set-row input:checked').parent().addClass('highlight'); } $('#priceset input[type="radio"]').change(updatePriceSetHighlight); updatePriceSetHighlight(); // Update pledge contribution amount when pledge checkboxes change $("input[name^='pledge_amount']").on('change', function() { var total = 0; $("input[name^='pledge_amount']:checked").each(function() { total += Number($(this).attr('amount')); }); $("input[name^='price_']").val(total.toFixed(2)); }); }); </script> <script type="text/javascript"> CRM.$(function($) { $("form.CRM_Contribute_Form_Contribution_Main").crmValidate(); }); </script> </form> </div> </div> </div><!-- .entry-content --> </article><!-- #post-5 --> </main><!-- #main --> </div><!-- #primary --> </div><!-- #content --> <footer id="colophon" class="site-footer"> <aside class="widget-area" aria-label="Footer"> <div class="widget-column footer-widget-1"> <section id="block-12" class="widget widget_block"> <div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex"> <div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:100%"> <div class="wp-block-group"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow"><div class="wp-widget-group__inner-blocks"><div class="logged-out wp-block-loginout"><a href="https://psfmember.org/wp-login.php">Log in</a></div></div></div></div> </div> </div> </section> </div> </aside><!-- .widget-area --> <div class="site-info"> <a class="site-name" href="https://psfmember.org/" rel="home">Python Software Foundation</a>, <a href="https://wordpress.org/" class="imprint"> Proudly powered by WordPress. </a> <nav class="footer-navigation" aria-label="Footer Menu"> <div class="menu-unauthenticated-container"><ul id="menu-unauthenticated-1" class="footer-menu"><li class="menu-item menu-item-type- menu-item-object-login menu-item-1187"><a href="https://psfmember.org/wp-login.php?redirect_to=https%3A%2F%2Fpsfmember.org%2Fcivicrm%2Fcontribute%2Ftransact%2F%3Freset%3D1%26id%3D13">Login</a></li> <li class="menu-item menu-item-type- menu-item-object-register menu-item-1188"><a href="https://psfmember.org/wp-login.php?action=register&redirect_to=https://psfmember.org/civicrm/contribute/transact/?reset=1&id=13">Register</a></li> </ul></div> </nav><!-- .footer-navigation --> </div><!-- .site-info --> </footer><!-- #colophon --> </div><!-- #page --> <script type="text/javascript"> (function() { document.getElementsByClassName('site-info')[0].innerHTML = document.getElementsByClassName('site-info')[0].innerHTML.split('</a>,\n\t\t\t\t\t\t').join('</a>'); })(); </script> <script type="text/javascript"> (function() { document.getElementsByClassName('site-info')[0].innerHTML = document.getElementsByClassName('site-info')[0].innerHTML.split('</a>,\n\t\t\t\t\t\t').join('</a>'); })(); </script> <style id='core-block-supports-inline-css'> .wp-container-core-columns-is-layout-1{flex-wrap:nowrap;} </style> <script src="https://psfmember.org/wp-content/themes/twentynineteen/js/touch-keyboard-navigation.js?ver=20230621" id="twentynineteen-touch-navigation-js" defer data-wp-strategy="defer"></script> </body> </html>