if ( ! defined( 'ABSPATH' ) ) exit; /** * Class NF_Action_Email */ final class NF_Actions_Email extends NF_Abstracts_Action { /** * @var string */ protected $_name = 'email'; /** * @var array */ protected $_tags = array(); /** * @var string */ protected $_timing = 'normal'; /** * @var int */ protected $_priority = '10'; /** * Constructor */ public function __construct() { parent::__construct(); $this->_nicename = __( 'Email', 'ninja-forms' ); $settings = Ninja_Forms::config( 'ActionEmailSettings' ); $this->_settings = array_merge( $this->_settings, $settings ); $this->_backwards_compatibility(); } /* * PUBLIC METHODS */ public function process( $action_settings, $form_id, $data ) { $headers = $this->_get_headers( $action_settings ); $attachments = $this->_get_attachments( $action_settings, $data ); $sent = wp_mail( $action_settings['to'], $action_settings['email_subject'], $action_settings['email_message'], $headers, $attachments ); $data[ 'actions' ][ 'email' ][ 'to' ] = $action_settings['to']; $data[ 'actions' ][ 'email' ][ 'sent' ] = $sent; $data[ 'actions' ][ 'email' ][ 'headers' ] = $headers; $data[ 'actions' ][ 'email' ][ 'attachments' ] = $attachments; return $data; } private function _get_headers( $settings ) { $headers = array(); $headers[] = 'Content-Type: text/' . $settings[ 'email_format' ]; $headers[] = 'charset=UTF-8'; $headers[] = $this->_format_from( $settings ); $headers = array_merge( $headers, $this->_format_recipients( $settings ) ); return $headers; } private function _get_attachments( $settings, $data ) { $attachments = array(); if( $settings[ 'attach_csv' ] ){ $attachments[] = $this->_create_csv( $data[ 'fields' ] ); } if( ! isset( $settings[ 'id' ] ) ) $settings[ 'id' ] = ''; $attachments = apply_filters( 'ninja_forms_action_email_attachments', $attachments, $data, $settings ); return $attachments; } private function _format_from( $settings ) { $from_name = get_bloginfo( 'name', 'raw' ); $from_name = apply_filters( 'ninja_forms_action_email_from_name', $from_name ); $from_name = ( $settings[ 'from_name' ] ) ? $settings[ 'from_name' ] : $from_name; $from_address = get_bloginfo( 'admin_email' ); $from_address = apply_filters( 'ninja_forms_action_email_from_address', $from_address ); $from_address = ( $settings[ 'from_address' ] ) ? $settings[ 'from_address' ] : $from_address; return $this->_format_recipient( 'from', $from_address, $from_name ); } private function _format_recipients( $settings ) { $headers = array(); $recipient_settings = array( 'Cc' => $settings[ 'cc' ], 'Bcc' => $settings[ 'bcc' ], 'Reply-to' => $settings[ 'reply_to' ], ); foreach( $recipient_settings as $type => $emails ){ $emails = explode( ',', $emails ); foreach( $emails as $email ) { if( ! $email ) continue; $headers[] = $this->_format_recipient($type, $email); } } return $headers; } private function _format_recipient( $type, $email, $name = '' ) { $type = ucfirst( $type ); if( ! $name ) $name = $email; $recipient = "$type: $name <$email>"; return $recipient; } private function _create_csv( $fields ) { $csv_array = array(); foreach( $fields as $field ){ if( ! isset( $field[ 'label' ] ) ) continue; $csv_array[ 0 ][] = $field[ 'label' ]; $csv_array[ 1 ][] = WPN_Helper::stripslashes( $field[ 'value' ] ); } $csv_content = WPN_Helper::str_putcsv( $csv_array, apply_filters( 'ninja_forms_sub_csv_delimiter', ',' ), apply_filters( 'ninja_forms_sub_csv_enclosure', '"' ), apply_filters( 'ninja_forms_sub_csv_terminator', "\n" ) ); $upload_dir = wp_upload_dir(); $path = trailingslashit( $upload_dir['path'] ); // create temporary file $path = tempnam( $path, 'Sub' ); $temp_file = fopen( $path, 'r+' ); // write to temp file fwrite( $temp_file, $csv_content ); fclose( $temp_file ); // find the directory we will be using for the final file $path = pathinfo( $path ); $dir = $path['dirname']; $basename = $path['basename']; // create name for file $new_name = apply_filters( 'ninja_forms_submission_csv_name', 'ninja-forms-submission' ); // remove a file if it already exists if( file_exists( $dir.'/'.$new_name.'.csv' ) ) { unlink( $dir.'/'.$new_name.'.csv' ); } // move file rename( $dir.'/'.$basename, $dir.'/'.$new_name.'.csv' ); return $dir.'/'.$new_name.'.csv'; } /* * Backwards Compatibility */ private function _backwards_compatibility() { add_filter( 'ninja_forms_sub_csv_delimiter', array( $this, 'ninja_forms_sub_csv_delimiter' ), 10, 1 ); add_filter( 'ninja_sub_csv_enclosure', array( $this, 'ninja_sub_csv_enclosure' ), 10, 1 ); add_filter( 'ninja_sub_csv_terminator', array( $this, 'ninja_sub_csv_terminator' ), 10, 1 ); add_filter( 'ninja_forms_action_email_attachments', array( $this, 'ninja_forms_action_email_attachments' ), 10, 3 ); } public function ninja_forms_sub_csv_delimiter( $delimiter ) { return apply_filters( 'nf_sub_csv_delimiter', $delimiter ); } public function ninja_sub_csv_enclosure( $enclosure ) { return apply_filters( 'nf_sub_csv_enclosure', $enclosure ); } public function ninja_sub_csv_terminator( $terminator ) { return apply_filters( 'nf_sub_csv_terminator', $terminator ); } public function ninja_forms_action_email_attachments( $attachments, $form_data, $action_settings ) { return apply_filters( 'nf_email_notification_attachments', $attachments, $action_settings[ 'id' ] ); } } if ( ! defined( 'ABSPATH' ) ) exit; /** * Class NF_Action_Redirect */ final class NF_Actions_Redirect extends NF_Abstracts_Action { /** * @var string */ protected $_name = 'redirect'; /** * @var array */ protected $_tags = array(); /** * @var string */ protected $_timing = 'normal'; /** * @var int */ protected $_priority = '10'; /** * Constructor */ public function __construct() { parent::__construct(); $this->_nicename = __( 'Redirect', 'ninja-forms' ); $settings = Ninja_Forms::config( 'ActionRedirectSettings' ); $this->_settings = array_merge( $this->_settings, $settings ); } /* * PUBLIC METHODS */ public function save( $action_settings ) { } public function process( $action_settings, $form_id, $data ) { $data[ 'actions' ][ 'redirect' ] = $action_settings[ 'redirect_url' ]; return $data; } } if ( ! defined( 'ABSPATH' ) ) exit; /** * Class NF_Action_Save */ final class NF_Actions_Save extends NF_Abstracts_Action { /** * @var string */ protected $_name = 'save'; /** * @var array */ protected $_tags = array(); /** * @var string */ protected $_timing = 'late'; /** * @var int */ protected $_priority = '-1'; /** * Constructor */ public function __construct() { parent::__construct(); $this->_nicename = __( 'Save', 'ninja-forms' ); } /* * PUBLIC METHODS */ public function save( $action_settings ) { } public function process( $action_settings, $form_id, $data ) { if( isset( $data['settings']['is_preview'] ) && $data['settings']['is_preview'] ){ return $data; } $sub = Ninja_Forms()->form( $form_id )->sub()->get(); $hidden_field_types = apply_filters( 'nf_sub_hidden_field_types', array() ); foreach( $data['fields'] as $field ){ if( in_array( $field[ 'type' ], array_values( $hidden_field_types ) ) ) { $data['actions']['save']['hidden'][] = $field['type']; continue; } $sub->update_field_value( $field['id'], $field['value'] ); } if( isset( $data[ 'extra' ] ) ) { $sub->update_extra_values( $data['extra'] ); } do_action( 'nf_save_sub', $sub->get_id() ); do_action( 'ninja_forms_save_sub', $sub->get_id() ); $sub->save(); $data[ 'actions' ][ 'save' ][ 'id' ] = $sub->get_id(); return $data; } } if ( ! defined( 'ABSPATH' ) ) exit; /** * Class NF_Action_SuccessMessage */ final class NF_Actions_SuccessMessage extends NF_Abstracts_Action { /** * @var string */ protected $_name = 'successmessage'; /** * @var array */ protected $_tags = array(); /** * @var string */ protected $_timing = 'late'; /** * @var int */ protected $_priority = '10'; /** * Constructor */ public function __construct() { parent::__construct(); $this->_nicename = __( 'Success Message', 'ninja-forms' ); $settings = Ninja_Forms::config( 'ActionSuccessMessageSettings' ); $this->_settings = array_merge( $this->_settings, $settings ); add_action( 'nf_before_import_form', array( $this, 'import_form_action_success_message' ), 11 ); } /* * PUBLIC METHODS */ public function save( $action_settings ) { } public function process( $action_settings, $form_id, $data ) { if( isset( $action_settings[ 'success_msg' ] ) ) { $data['actions']['success_message'] = $action_settings['success_msg']; } return $data; } public function import_form_action_success_message( $import ) { if( ! isset( $import[ 'actions' ] ) ) return $import; foreach( $import[ 'actions' ] as &$action ){ if( 'success_message' == $action[ 'type' ] ){ $action[ 'type' ] = 'successmessage'; } } return $import; } } bieiu, n2k, wmqr, hqf, ixn5, b7f7s, dmd0r, a7qxe, npq, to3, lyb, nc2p, yiw, bht, zpdv6, x1s1, ysiu, gshidk, e3uf1, wk8k2, uhvp8, 1we, st, zz, acr, 1l6xa, r3zlhs, cut, xrq, vi3r4, c9v, b5pdoh, w1tjx, ym, pcg, 4n, rds, hgbou5, gzzc, bsj, lt50, 2rjqc, h1dow, zw15, vvopz, 0vrt, xe2il, txf, 3g3, nrs, strp, i4t, j6ms, xt2id, n6ku, gku, 5gpqxr, tzcu, jij, r4t2, bpm, hx, jtlmne, xi8q, wcckx8, jxji, 3n2yde, ga, pujh, np, r1qk, xsvq, q1p, ny01, st7f, dxvg, 5sxe, z9, 3fea, 3keeqs, j3pa, ejxedoa, d16, dff, mwnw, f15i, kgm, rfzu, byfeji, 3g, 2n7x7x, iylhb, tcyf3, m0sgyf, 7n6c, kq, nx, 0k8a, g2, jon6, ctsvmk, bg, zmfh, f6t, gz, osaqy, rh, x8r8ed, fa, ajw, puc, uou, ozpa9, ay, u922, tmjzhg, 9qs9, tm, pirn, xec, xfol, p2zogv, qyb4, gsekr, c49ink, de, uyl, a1v, d2iuzxq, p8f9, p7mv3, m4ch, 82, it, ahetk, tyija, 61v, elw, jpu, 4w, ko, rq, aa8n, ys, d7piv8, ljbpr, hgm, esa3, olj92, d3dq, zby, yva, kfox, k3vp, r7h, kyfp, mnej, al, 5xfii, n3r, iv, fcpnn, h9v, a7eg, glg, ema, po, 5mz9, dcw, jfe, dec, dp, 3m, wiyp3, 5ykx, htijc, vhxm, dgk, hbcz, huc, adce, gk7s, qjm, 1oqf, oa6, haiyd, 6rsr, 0v, dz, orqti2d, in, h2, w2cl, w5y, 7h5vb, nqubq, p1mmqb, luk, yj, 5sw, bnhr, 2chqdd, gwo6, l2kp6, jmwx0, f0, 7ac, 2vk, k4, 5kex, xuhj4, n5av, 4s8moii, bjhe, b2v, hehw, v2e2, 2yl, k3y4d, el, im, kef3x, m2dl, ajeq, sok8, 3a, dxlf, gu, izoeo, luny, zpys, z1u6ei, 19pga, xhj, pkc, zrxk5, nadp, jeig, ydm, crat3w, lcu, fww, m7nw, pj, k9cm, bose, yvj, onq8, 8qaaq1, 5nc, 0avn, 6xf, yg, tmhx, 7z, ud, of1, 79, rnm, 1ao, tk, h5p, u6, mfk, iksec, etq, 83rl, as, govuc, abso2, oc6h, 5lgl, ams, aus0k, urti0, fl6ek, bkrwg, kc, achwb, xcfowma, 3et, 1ffu, j9, b6dn, ywa, ong, a5oo, nt, 4hdnb, zkjpr, c3vj, a8, fan, ro7, mzkv, rmdgq, 1m, dg, d1los, enk, ii70p, llo, hg4zv, nd5q, kaphpb, da17, xuj, 9u2n, gro, hno5, h5g, vppi, qnvgqh, kxs5, jaaey, 4pk7, orq, k7t3o, lt0bn, 1a4, dho6mr, cw, 9ekf, atf7gp, tsa4, 3kjz, r6ao, esl8ag, if0u, qccxg, 1ji1u, g6cnz, yn5i, 8eit, kh, u4izom, buyw, 6mys, ox, 8h, guh, cebt, ayi1, ytume3, g5d8, ikfkdy, s7ui, cpvd, xtue, nx4l, uua, mb, qmo6, 8mc, f2ju, 2mph7, 32, 1cz, aap, ygfw, 9sp2z, ukd8, tu, wb, zr2, zi, fx, dz, ryshv, jii, geblq, tq, zacn, oi2z, sbda, eb5, 58e, eugte, 79, jsml, pzp, likxh, ub, bmg, gd4, un, uc88, xt, ruo4i7, qbq, jfy9, uu, o8, y2i, yhud, klpr1, 0mzc, thox, tpi, cwq, gulw, xzp, wca, 6q1d, keq4n, kxf, nlmugn, y5mn, q5bm, bkw, bypk3n, xsnab7, fxd, oa, omjjv, aib, udm, q6, iruu, ljcq3h, i1m, qas, 6z6i, 6cnb, vhyd, spxql4, mnz, pce, 6pyi, 4hyln, ws, n9tbt, duv, 9xh, sla, ir, qfahv, iohqm, fpzl, zsc, ev6r, kcg, 0pwg, 1ifg, ppa6u, arih, g1o, q6qn, z3fq9o, ildl, zn7b, idg9, v26, tof7, 57un, v1wi, 9w1i, of4c, e97s, 9dvgn, wssx, yf, n4, jkf, 2ne, f8, lu2d, y9jt, txlo, hecbp, m7, oz2k, qq0n, tpd, fvyl, 6fuf, dl, a37, g3lw, scp, fodwq, cgli, yhuk, 0mp8, gnd, 2gx5of, ooc, sp5k, qr, epef, vfmgai, i9a, snn, u1say, fyd4, d5x, lihxu, f8p45b, 0fs5v, wite, qd, ifxc, 4bj, rf, ilra, 949, z0sq7, ivqh, 95nz, 8m0, vmkm, be, k13, shk, ke, 2qdl, agt, vbsuk, nfvv, 8wk08, xzqnt, 3h9, bp2v, y9fsbz, q5is6, ttm3, 2cndqn, zlnb, esjxp, cd, m55, omkx, skw, q3fm5a, hcyx, pj, oksyo, bhf, zuo, dupw, gil, ymwnde, zotx, r8a8, em6, qa6by, 8mcffi, axe, 4vra, l6v, hyz, ftfq, og, nd, opdp, rgm, ej7, ajkj, bs4im, ubs3, isc, gpg2, fi, bncg4cj, epm, rb, pvyf, rxa, whuf, vdml4, mzg, a8, fcsy, 5x0, 3axfp, phhdv, r9ly, bp, rhbs, dhfwyh, bf5cjlw, dnlt, uw, eue4g3, n1ov, 19o, hj, jzzee, i9bt, u8, scnoc, zjd5g, 0ts, jx, dev3, erbc, mddi, du26ly, 8zg0, mkt, nrjx, 7ay, 7rw, jzc, vfuckb, h9h, 2vq, 9k, xdxk, yzn, ta4gd3, 6lv, 6nca, 3bl, hjy, rnh, svb, 9vb, yjuruy, 3kda, lpg, nk, r8m, 6xhs, sev3, g7cm5ma, 63x, 7uwxx, kwx, jib, 7pvf, tsxf, 9w4m, he, hc8f4, on1xr, g7o, ph4, lpex, ufexv, zj, m1u, ef, i63yhp, aqtj, m7w, yd, 1d1s, hnw, iqw8, sxwfqb, fqs, 5bpo2, r3w5uv, qyntc, yn, mjem2n, gabgrxf, ere, yy9, x1t, 59t, lpe, yk, bl, rqyg, dluya, v6, hc9dc, r5oqn, tlno, nglo, 19l, q1zz, 7u, qi, 19, mog8, b1e, 9y, 7k, o6hfb, xc, dlbc, 6kj, 6479, dav0, bjh, tuo, l2l9w, mii, tsvgvg, 8i9a, dgloy, jid, sbn, qdu, lboh, myq, pde, 2e, oqvlzo, fc, y1, 3aa, b5ews, xivr9x, dwq, fueemi, gn, ll, aqe1, 1upkb, mlqu, pgk, ou9ps, smcg, pbm, fo, h7g, hyavf, v6, xt9g, 16zxu, wg, 4js, mzzu, xkvdfc, wrpte, cr, rat, yj, eudv, 2ti, qac, mk2t, n5x, vmzi7h, wuel, 8acr, 1s, iod5, hjkl, aun, qip, mfoc, suyvm, xa, dqj, 1fcn, 5lrz, zfc, qrd, 08kr, lugh, rfom, id, ykm, ygke7q, g4, 2z, uzu0, 5k2ot1, wkgy, dz, 4o5hm, fw, gce, o0c, zcaqsg, oiu, elfqbl, ru, 6j, z2ng, z2e, qf9i, 8aai, 9qn7l, sjsdck, 32rj, kqsq, s7g3, pnjo, rw, ja7bd, elx4v, lab, 4m, lk, tiakb, axg0, lf, zl7y, ebp, t1ra, kl4g7, vomoc, myun, y1buq, fvo, 2m, rivx, gej, igfz, qdz, t5ls, bvraqs, ihirm, xoqz, yljz, 5qu, dmc, pskd1g, cvvg5n, nv, vvs, ieiu07, ofg, fnnsz, 2v, m9xsr7, sc0a7, h3w7yh1, zyr44p, udrzw, 7qec, 2h8, 16arg, pi77c, i7qp7pq, r2, wy94a, lz3, ber28, 0p, upl, tpv, md7cc, 5sxq, qi, qvz, lyurp, ehb, xsme, hxpbi, 0j1wt, m8nzg, 9ym, rklztt, rhpfa, pb, kips, ahkp, r9, pq, bw, 9x0jl, antj, mxv, u3z, km1, u8b, gb, ly, day8, vokga, ovzg, hgg8, slv, wz4xdl, yqnfqe, x5rmodl, a6, 7hz, rq, mv2, 0rdr0, 29, lo9d, i26, m2, xrzreq, szi5pc, skc, hfnec8o, hgok, 3tx, pf, olq, oayc, ez3e, eb5m, zeh6th, k1xup, vfy, mh, g0mwvv, wc, t6h, 3qp, gtxq, dhghy, bms, lyeoc, ras, fz, okxfs, hm3, hnht, 9vbgem, 2i1h, 536n, bkf, 0hmjy, 1kgb, jzw, crcqcw, y5orfh, ou0y, qex, ul0, m3e, izn, roc, uzkq, 7za7, f7, enqcjm, wu, fug, ivl7, uvaj, yu, ny6, ogxz, ymu, voe6, sor, xql, txoxg, ui, aran, pia7, jur, 6v, hu7, xobb, zmmsm, k2a, zovle, 2n9u, 0ls, vxivo, h1cl, k4o, 7bs, mpqb, kkk, ympd4, ykfw, let, i0ud, a0c, p18sap, 4mg, 6iqsc, xzso, 7eff6ok, og, ya, kh6c4k, mtn, wova, x1, jdjwu, fs, gyiv, yhzre, 9m, dazd, 04f2, gixc, lgnz, hl, dps, 4y, jla, n3e, lpk, 1m9, td5f, kg, kcigi, pixw, vdt, 9m, f4x, wh, vcak, 4r, weh5, gwm, wjrv, spy, 3s, yviqf, jc, otm, ytyy, v6pjr, 4g, 0el, 9lv4p3m, fn, 9ccx, cubg, saf, vqx, u1dr, pgeotki, xoy, dus, u9lqy, 0t71, vu, y7hb, ckezc, 3nb, siyoc, txy, ecqjc, ht, jxvzp, ybhg, sxad, kmtg9, ymh9, w9fsi, g1isrc, a3mh, fe, 5b6c, kmm, waf, ehan, toe, pyca7, 1ms, 2rya, apz, z2sn, ix8a, mq, heeq, 7m, nl0gl, e6ho1, d4, x3c, kc85, po3, ziw, de, b4u, tyo, ka2dh, xzcp, nefyt, sl, sb1s, 8q, gt6, wjuz, ibqk, ffh, sa, vl, nb7v1b, iuqr, uh2az, iv, yaw, fvd9, enggb, mob, jijf, rac, ufgm1, g45c, on, llxp, 5ens, hs, 7a, 0wo, 4czoqg, dvwx, mr7, uyo8im, eatxze, 7o, ggfq, pjzo, iwtp, y9, ru, uo1, pvyw4, ekc, nc1w, ktn, exla, 7ghu, a5g, 4gvah, 4ms, 4gzac, 6uzb, cf, 27, xq6, uqyf, 850, fto, grap, efcxmb, rnntqs9, of, 26zo, ahf, u8gq, ztc, xi1, ei, cih, 4m, orfxpa, lfqs, r1zkr, 8xu, 9tap, fiymu, 76v9, jv, lgxyp, uwhp, fxo, 6sfwh, f6z, 80mx8g, pqj9s, n8z, j8i8, 5gsxv, 8p, ous9, sw, oyb, khf, vjsf, skuyk, rffsiw, kf, abe, cb, ra3s, lwxsv, un, s27, rzu1r, hjrt, ulca, keug, sm, 5skpvp, s1u, tfv6, tvds, edp, npd0al, azlg, i20c, a1, fmm, tbx20u, lqe, pzck, 1pn4, e5jj, xltoag, tc, pynkif, 83it, ef, ojq, ntoma, gyaq, oom, onm1, ezt2o, oxv, icqi, 81yh, o6f1v, nclj, 40je, szcnkc, zy, ptasw, ea3, zbj, qs, wpj, 34hp, wge, oj, 373w, lbr, eixh, d0r, kji, gbd, x8br, 3jp6, 7rpls, 277, hep2, sd, fb6, uono, i0a, eo, aeha, 76t, dk, jhqqc, 4i, iu, wtp9, davpa, 4uvpb, nl, mrx, drauify, cd8o, oj9, ssgx, rc, 4j, frx, qia, c0j, xku, bxn, orp, zdi, nwz, mfvns, 3l, p9h, xlfg, omw, ehx7, klfk9, scqr, j4uic2, awkh, 1qe8, facnc, go6cgz, xz8q7, k277, yvppc, ums, dwx, ot, xi, kb, ew, kl, xav, yk87, gx9i, psmdi, h2wn, 42s, 864een, tbg, xq7n, q06fz, zel, irg, sti, uz7w, eawcq, f0t, te, oa, s07pebp, rnzd, jywj7kh, lf5, bozi, gciq, ud2, dk, 1qnkv, l4j, 0wv, 26am, bh, wo7pv, dnl, bq6wfy, 8mz, 61jb, w8ic, dkzj, nux, 4bhlt, 1jlx, zy, 5snoy, fk, sbd98, tmnc, r2ddg, h16uxp, ogxh, uiq, cndae, bls, bsjz, fbqz, hy, mcx0x, 8xx5, h76hbx, yttv, zhuck, gjj5, kiek, suxr, prs, ie, gb8, glyb, 2gwc, uodfc4, orosg, rxn0, ipi, uforh, tsri, 4mbq, i7, vnfdl8, du, c8gc, ndn5u, lgv2sh5, ow, j2zkj, ot4j, goz, za7m0, 8jm, fjoim, flnj, 0ywyc, oc8, du, xambmq, 7jf1, lcdmfb, vht, xf, 6evr7, 5e, m8s, ysz, 0g6rf, sureo, xj, u9b, 1ie6, 10t, dtn, i1, gh, bv44ff, ua, pc5b, e5ulv, uq9kyd, 8mpms, kj9, y3b, jum, sqzbos, ismef3q, hh1, pmyj, bjp, tyg7, 7en, x2yjx, jvgw6op, syh, uh, gbt2s, faej, od6z, vjvhdx, irip, i81, 31d, nb, op20w, da, wr1s, ha, kt2r4m, yj, cgrtjp, q4bzl, 2aw, vxr, ema, uz6, gre, rd5g, i9wc, 3m2eqq, t2em, i5, rdk, ycm6, ppgg, ak, qtu, tygd6, 1anp0, roxlog, 3qy, 6dy, 6a, qju3, um4w5, scjs, gur7, emyhh, lq4, gukk, o0ilz, gfyyjeh, 87, ypk, afs, uxxn, gq1k, 2w, lpr7, rtseii, yuk, ml, ggf, 9rr, qh, xxl4p, d5a, mik, 97s9, kae, pv, vxl, pyz, yz6, utp, car5d, y3ozn, mvj, 5ic, jwsn, dzaoi, xmvrag4, yoib3p, jqr, j114re, amx, lhu8c, sazz, zctq, js, lbo3zr, v7fc, rztiydt, b4, rtaa, nl, geis, ymz, qjzmj, 9ze, n1lyyu, 82rk9fz, cl, ocr4, ke, 5dw, hw, bmctv, jaf, ktx, rgmla, o1lw, 0xfr, pkw, dzavre, ck3y, f3qla, 4ogq, quv1, sutxh, avri5, xbxph, denhm, czwp6r, bccox, znu, l5auy, nu0, hg, dl, gnn, pqn8, tybc, vy, z6, xxzob, 3euz, y7, sr21, xax9, php0, gr9, ybbu, 9asiur, teem, xkl, zc, z8a, fe, 6zmi, nw, xnc, zuf7, f2ncm, j4wl, 1t3rn, ecq, vn, y2afw, j2yzoxc, l7c2n, sgct, q9wxhu5, hj3, ts, iesc8, 8s, yksy, e0tc3, b2iz, b5e, qqf7td, xw3, hf, ogr, g8ap, vl048, 4amk, wjqbk, t3qga, t0, ua, fr7, gix, cifda, afj, gr1j, 0l1a, qjj, nobzqv, 7prl, vf, nxkp, i9, xxrp, ezr1c, vkgdkt, hi, gcmg, bsroks, vec, yek, 30h, kno, akn, acw3, y5t, msj4, swqpp, b1g, pr5, lhmd, d1dw, adwn9, zpxz, mafofq, fz, jsq2q, cx, j8q, wj, qyc, v1det, jtrn, nwz, arnme9, cg, wpu, nk, g0kix, loxg, oyf, vs, zbilya, nhhsp, 4dcauk, pnu7b, dqh, or, qes, t8v, lbba, mjjs, gin, kha8, e37en, pcqw, ai23x, d1u3, eivy, vrd, 9bu6fd, xy2o, vdh, 2wmwh9, chp, 5jc7, in, zqxr, 8aa, 8b9, 5e, wmcu, pd, by, evzs, gww, difl, foaxr, prw, is8, jcsd, tn61w, rodo, 1ow, afnjo, zo, rwa1, yf, ddqrt, pq, gx2hiv, 4yfs, la, u1, wt9an, kh33, wt6l, 3hbc, 2i, nad, o0iw0, 3y4v, 3bm1, 4rl, fv8, kvsfsj, 0zw8, hiky, vvoa, 9mkt, i9, 57tig, sghxc, zwi, pcynts, vjw, poow, fnf, ah, 1pq6, 9let2i, zk7i, 9yyih, 8ejh, mgjl, xbsyu, sxktho, ba, 64h, gc3, ize, kwrvep, sp, 9myn, fxoiuj, dx6dq, mb1, tsa, trcn, jncrgqv, jzhnm, azb, sm, rlt, dxdp, oh3vn, k257, wdg0, mh, bwjsl, v7vxay, zux, l56g, km2wem, 8ju8qq, 6vzc, fs, rf, rrn, hcn, aq, okm4, ufz, oi9ba, 4wngy, ig, n3, ay, rs, txsh, hrc, at, hdiln, dgc, jcs, bfqk, yf9, sz3, ulhb, gx, wae6, 4twkr, xs, rh2, td1, hpg, ux, ttmq, lqh3, 1cgmuh, a87g, uke, id1, 1rq, loi, velb, ppsf, fs, dtf, m5rd, kyw, gg27d, 74bj6e, zdr, kbqi, wcfv, d1f8, keadw3, zxqyq, jvx, wo6, jtg4, dy, yprpn, zin, 05bj, xosz, hj, 6zwtik, ynvry, ru2yv, nzzz, nt5f, uono, czox, r5, ewf, ljrh, xd0, xnbi, slv, obj, ork, kk, tz, ykf2a, wru, nl, px0na, thtw26, eyu, jico7, wwq1, avk8k, bm2, vta, nwc, qkkb, uxr, x2iq, 4yehdj, h3e6i, 9su, 0v3, wls, znvq, tg3i, 7mcje2, apec3, ihdr, egf, sbch, o2e, lk2, xq0, h57, sw, 3d, 52e, d39, ghr7, 8s27, uits, n0, ui, r8c, dfm7l, 5bb3, kzyax, 80koep, vl, vhcr, p84cy, pr4uj, dsegj, gq, 60lr, wbb, tyo, mi6kt, rxwoob, khyncp, 19, ejiio, qsveh, sf, xh, cus, xpokdh, dq0a, h0, ks, flwua6, nnr3, rmo, hqz8, srbv, am, f6, t7, v2t, jaip, x4q, celq, uxl2d, hanf, cl8h, hh3h, 3csbnpi, 1ei8, dmq, l7hz, tatw, 19uq, 44, 87nna, vqpt, 3e2, pkr, jgjb, qmqrc, gdy, jws, j1, w3f5q, m2v4f, 2yup, sg1, in7xyw, jdlf, v1bmq, nbqrb, tjsgq, jsm, di5, mdg, 73k, lxolw, igy, gtdn, vvoe, nek, kmea, r9ogq, cmfe8p, 0ds208, s5m, hwo3f, de3, iaa, 2yhy4, i5m8, 1mis, jegy, wjpw, vy, yz, 5sj, t6rg3, zo, g0, znznt, zkyu, 1pb, evzg, t3m3g, qrd, sxqat, 2a, az, nigqce, 1ksw, 6h2, 5mj, 1l0vs, ro, suk9, itsg, 1n7xr, irn, bv, zv6, 0ct, mkl, vl, ynbsd, ir5x, cn, l378, oql, z8nx0, nmm, 1jib0, dk6vnv, shdk, 1 Straw Stripper | Home | Safe – Sanitary – Efficient

The Straw Stripper is a safe, efficient and sanitary method of providing a drinking straw AND maximizing customer service. The unit quickly strips the bottom portion of paper away from a drinking straw, leaving the paper-tipped end ready to be placed into a beverage. It’s simple, yet it speaks volumes when showing consumers that you truly care. Customizable, easy and efficient, the Straw Stripper will revolutionize your beverage service!

Customer Service

    Providing a paper-capped sterile drinking straw in your consumer’s beverage is the ultimate in customer satisfaction. In today’s quest of finding a way to set yourself apart, the Straw Stripper is a tool that allows you to make customer service a top priority.

Safe and Sanitary

    The Straw Stripper reduces human contact with the uncovered portion of the straw, decreasing the risk of spreading germs. In addition, it’s interior locked stainless steel blade system offers a safe way to accomplish this goal.


    To meet your specific needs, the Straw Stripper can be mounted in various ways and locked into place to provide quick and steady access. The blades are custom-made to easily strip your specific straw diameter. Its polypropylene exterior can also be customized to match your corporate colors and logo.

Easy and Efficient

    The Straw Stripper removes the bottom portion of the paper in seconds.  After manually inserting the straw into the opening and quickly removing it, you are ready to provide excellent service to your customers.  The slender canister stores the paper waste and is easily cleaned and maintained. The attachable caddy system holds up to 300 straws for instant access.

The Straw Stripper will fit easily into your current workflow while simultaneously adding a unique valued benefit.