├── .coveralls.yml ├── .gitignore ├── .travis.yml ├── .tx └── config ├── bin-wp └── install-wp-tests.sh ├── bootstrap ├── css │ ├── bootstrap-theme.css │ ├── bootstrap-theme.min.css │ ├── bootstrap.css │ └── bootstrap.min.css ├── fonts │ ├── glyphicons-halflings-regular.eot │ ├── glyphicons-halflings-regular.svg │ ├── glyphicons-halflings-regular.ttf │ └── glyphicons-halflings-regular.woff └── js │ ├── bootstrap.js │ └── bootstrap.min.js ├── build.xml ├── class-sendpress-font-customizer.php ├── classes ├── api │ └── v1 │ │ ├── class-sendpress-rest-autocron-v1-controller.php │ │ ├── class-sendpress-rest-base-v1.php │ │ ├── class-sendpress-rest-postnotifications-v1-controller.php │ │ └── class-sendpress-rest-sending-v1-controller.php ├── class-css-to-inline-styles.php ├── class-file-loader.php ├── class-sendpress-admin.php ├── class-sendpress-ajax-loader.php ├── class-sendpress-api-loader.php ├── class-sendpress-api.php ├── class-sendpress-array2xml.php ├── class-sendpress-autoresponder-table.php ├── class-sendpress-base.php ├── class-sendpress-browser.php ├── class-sendpress-cron.php ├── class-sendpress-data.php ├── class-sendpress-database.php ├── class-sendpress-debug.php ├── class-sendpress-email-cache.php ├── class-sendpress-email-customizer.php ├── class-sendpress-email-local-table.php ├── class-sendpress-email-render-engine.php ├── class-sendpress-email-templates-table.php ├── class-sendpress-email.php ├── class-sendpress-emails-table.php ├── class-sendpress-enum-base.php ├── class-sendpress-enum-tracker-type.php ├── class-sendpress-error.php ├── class-sendpress-font-customizer.php ├── class-sendpress-helper.php ├── class-sendpress-hipchat.php ├── class-sendpress-jwt.php ├── class-sendpress-lists-table.php ├── class-sendpress-loader.php ├── class-sendpress-logging.php ├── class-sendpress-manager.php ├── class-sendpress-mobile-detect.php ├── class-sendpress-notifications-manager.php ├── class-sendpress-option.php ├── class-sendpress-phpmailer.php ├── class-sendpress-posts.php ├── class-sendpress-pro-manager.php ├── class-sendpress-pro-updater.php ├── class-sendpress-queue-all-table.php ├── class-sendpress-queue-errors-table.php ├── class-sendpress-queue-stuck-table.php ├── class-sendpress-queue-table.php ├── class-sendpress-queue.php ├── class-sendpress-reports-table.php ├── class-sendpress-reports-tests-table.php ├── class-sendpress-screen-options.php ├── class-sendpress-security.php ├── class-sendpress-sender-factory.php ├── class-sendpress-sender-gmail.php ├── class-sendpress-sender-spnl.php ├── class-sendpress-sender-website.php ├── class-sendpress-sender.php ├── class-sendpress-sendgrid-smtp-api.php ├── class-sendpress-settings-forms-table.php ├── class-sendpress-shortcode-loader.php ├── class-sendpress-shortcode-manage.php ├── class-sendpress-shortcodes.php ├── class-sendpress-signup-shortcode-old.php ├── class-sendpress-subscribers-all-table.php ├── class-sendpress-subscribers-table.php ├── class-sendpress-system-email-table.php ├── class-sendpress-template-manager.php ├── class-sendpress-template-tags.php ├── class-sendpress-template.php ├── class-sendpress-tinymce.php ├── class-sendpress-tour.php ├── class-sendpress-tracking.php ├── class-sendpress-unsubscribe-shortcode.php ├── class-sendpress-videos.php ├── class-sendpress-widget-forms.php ├── class-sendpress-widget-signup.php ├── db │ ├── class-sendpress-db-autoresponder.php │ ├── class-sendpress-db-customfields.php │ ├── class-sendpress-db-remote-connection.php │ ├── class-sendpress-db-schedules.php │ ├── class-sendpress-db-subscribers-tracker.php │ ├── class-sendpress-db-subscribers-url.php │ ├── class-sendpress-db-subscribers.php │ ├── class-sendpress-db-suppression.php │ ├── class-sendpress-db-tables.php │ ├── class-sendpress-db-url.php │ └── class-sendpress-db.php ├── index.php ├── modules │ ├── class-sendpress-module-amazonses.php │ ├── class-sendpress-module-autoresponders.php │ ├── class-sendpress-module-bounce.php │ ├── class-sendpress-module-customsmtp.php │ ├── class-sendpress-module-elastic.php │ ├── class-sendpress-module-empty.php │ ├── class-sendpress-module-mailgun.php │ ├── class-sendpress-module-mailjet.php │ ├── class-sendpress-module-pro.php │ ├── class-sendpress-module-reports.php │ ├── class-sendpress-module-sendgrid.php │ ├── class-sendpress-module-spam-test.php │ ├── class-sendpress-module-sparkpost.php │ └── class-sendpress-module.php ├── public-views │ ├── class-sendpress-public-view-confirm.php │ ├── class-sendpress-public-view-email.php │ ├── class-sendpress-public-view-form.php │ ├── class-sendpress-public-view-link.php │ ├── class-sendpress-public-view-manage.php │ ├── class-sendpress-public-view-open.php │ ├── class-sendpress-public-view-post.php │ ├── class-sendpress-public-view-process.php │ ├── class-sendpress-public-view-queue.php │ ├── class-sendpress-public-view-render.php │ ├── class-sendpress-public-view-send.php │ ├── class-sendpress-public-view-tracker.php │ ├── class-sendpress-public-view-unsubscribe.php │ └── class-sendpress-public-view.php ├── sc │ ├── class-sendpress-sc-base.php │ ├── class-sendpress-sc-forms.php │ ├── class-sendpress-sc-recent-posts-by-user.php │ ├── class-sendpress-sc-recent-posts.php │ ├── class-sendpress-sc-signup.php │ └── class-sendpress-sc-unsubscribe-form.php ├── tag │ ├── class-sendpress-tag-base.php │ ├── class-sendpress-tag-body-color.php │ ├── class-sendpress-tag-browser-link-html.php │ ├── class-sendpress-tag-browser-url.php │ ├── class-sendpress-tag-canspam.php │ ├── class-sendpress-tag-confirm-subscription.php │ ├── class-sendpress-tag-confirm-url.php │ ├── class-sendpress-tag-content-area-one.php │ ├── class-sendpress-tag-content-color.php │ ├── class-sendpress-tag-content-text-color.php │ ├── class-sendpress-tag-custom-field.php │ ├── class-sendpress-tag-email-title.php │ ├── class-sendpress-tag-footer-content.php │ ├── class-sendpress-tag-footer-page.php │ ├── class-sendpress-tag-header-content.php │ ├── class-sendpress-tag-header-page.php │ ├── class-sendpress-tag-manage-subscriptions.php │ ├── class-sendpress-tag-site-name.php │ ├── class-sendpress-tag-social-links.php │ ├── class-sendpress-tag-subscriber-id-encoded.php │ ├── class-sendpress-tag-subscriber-id.php │ ├── class-sendpress-tag-unsubscribe-link-html.php │ └── class-sendpress-tag-unsubscribe.php └── views │ ├── class-sendpress-view-emails-autoedit.php │ ├── class-sendpress-view-emails-autoresponder.php │ ├── class-sendpress-view-emails-create.php │ ├── class-sendpress-view-emails-createauto.php │ ├── class-sendpress-view-emails-edit.php │ ├── class-sendpress-view-emails-footer.php │ ├── class-sendpress-view-emails-footerpage.php │ ├── class-sendpress-view-emails-header.php │ ├── class-sendpress-view-emails-headerpage.php │ ├── class-sendpress-view-emails-postnotifications.php │ ├── class-sendpress-view-emails-scheduledsending.php │ ├── class-sendpress-view-emails-send-cancel.php │ ├── class-sendpress-view-emails-send-confirm.php │ ├── class-sendpress-view-emails-send-queue.php │ ├── class-sendpress-view-emails-send.php │ ├── class-sendpress-view-emails-social.php │ ├── class-sendpress-view-emails-style.php │ ├── class-sendpress-view-emails-systememail.php │ ├── class-sendpress-view-emails-systememailcreate.php │ ├── class-sendpress-view-emails-systememailedit.php │ ├── class-sendpress-view-emails-temp.php │ ├── class-sendpress-view-emails-tempclone.php │ ├── class-sendpress-view-emails-tempcreate.php │ ├── class-sendpress-view-emails-tempdelete.php │ ├── class-sendpress-view-emails-tempedit.php │ ├── class-sendpress-view-emails-templates.php │ ├── class-sendpress-view-emails-tempstyle.php │ ├── class-sendpress-view-emails-testing.php │ ├── class-sendpress-view-emails.php │ ├── class-sendpress-view-help-whatsnew.php │ ├── class-sendpress-view-help.php │ ├── class-sendpress-view-overview.php │ ├── class-sendpress-view-pro.php │ ├── class-sendpress-view-queue-all.php │ ├── class-sendpress-view-queue-errors.php │ ├── class-sendpress-view-queue-jobs.php │ ├── class-sendpress-view-queue-stuck.php │ ├── class-sendpress-view-queue.php │ ├── class-sendpress-view-reports-campaign.php │ ├── class-sendpress-view-reports-tests.php │ ├── class-sendpress-view-reports.php │ ├── class-sendpress-view-settings-access.php │ ├── class-sendpress-view-settings-account.php │ ├── class-sendpress-view-settings-activation.php │ ├── class-sendpress-view-settings-advanced.php │ ├── class-sendpress-view-settings-connect.php │ ├── class-sendpress-view-settings-dbfix.php │ ├── class-sendpress-view-settings-fixposts.php │ ├── class-sendpress-view-settings-forms.php │ ├── class-sendpress-view-settings-install.php │ ├── class-sendpress-view-settings-notifications.php │ ├── class-sendpress-view-settings-pro-extras.php │ ├── class-sendpress-view-settings-shared.php │ ├── class-sendpress-view-settings-styles.php │ ├── class-sendpress-view-settings-widgets.php │ ├── class-sendpress-view-settings.php │ ├── class-sendpress-view-subscribers-add.php │ ├── class-sendpress-view-subscribers-all.php │ ├── class-sendpress-view-subscribers-bulk.php │ ├── class-sendpress-view-subscribers-csvimport.php │ ├── class-sendpress-view-subscribers-csvprep.php │ ├── class-sendpress-view-subscribers-customfields.php │ ├── class-sendpress-view-subscribers-listcreate.php │ ├── class-sendpress-view-subscribers-listedit.php │ ├── class-sendpress-view-subscribers-listform.php │ ├── class-sendpress-view-subscribers-settings.php │ ├── class-sendpress-view-subscribers-subscriber.php │ ├── class-sendpress-view-subscribers-subscribers.php │ ├── class-sendpress-view-subscribers-sync.php │ ├── class-sendpress-view-subscribers.php │ ├── class-sendpress-view.php │ └── index.php ├── codemirror ├── .gitattributes ├── .gitignore ├── .travis.yml ├── AUTHORS ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── addon │ ├── comment │ │ ├── comment.js │ │ └── continuecomment.js │ ├── dialog │ │ ├── dialog.css │ │ └── dialog.js │ ├── display │ │ ├── fullscreen.css │ │ ├── fullscreen.js │ │ ├── placeholder.js │ │ └── rulers.js │ ├── edit │ │ ├── closebrackets.js │ │ ├── closetag.js │ │ ├── continuelist.js │ │ ├── matchbrackets.js │ │ ├── matchtags.js │ │ └── trailingspace.js │ ├── fold │ │ ├── brace-fold.js │ │ ├── comment-fold.js │ │ ├── foldcode.js │ │ ├── foldgutter.css │ │ ├── foldgutter.js │ │ ├── indent-fold.js │ │ ├── markdown-fold.js │ │ └── xml-fold.js │ ├── hint │ │ ├── anyword-hint.js │ │ ├── css-hint.js │ │ ├── html-hint.js │ │ ├── javascript-hint.js │ │ ├── pig-hint.js │ │ ├── python-hint.js │ │ ├── show-hint.css │ │ ├── show-hint.js │ │ ├── sql-hint.js │ │ └── xml-hint.js │ ├── lint │ │ ├── coffeescript-lint.js │ │ ├── css-lint.js │ │ ├── javascript-lint.js │ │ ├── json-lint.js │ │ ├── lint.css │ │ ├── lint.js │ │ └── yaml-lint.js │ ├── merge │ │ ├── dep │ │ │ └── diff_match_patch.js │ │ ├── merge.css │ │ └── merge.js │ ├── mode │ │ ├── loadmode.js │ │ ├── multiplex.js │ │ ├── multiplex_test.js │ │ └── overlay.js │ ├── runmode │ │ ├── colorize.js │ │ ├── runmode-standalone.js │ │ ├── runmode.js │ │ └── runmode.node.js │ ├── scroll │ │ └── scrollpastend.js │ ├── search │ │ ├── match-highlighter.js │ │ ├── search.js │ │ └── searchcursor.js │ ├── selection │ │ ├── active-line.js │ │ └── mark-selection.js │ ├── tern │ │ ├── tern.css │ │ ├── tern.js │ │ └── worker.js │ └── wrap │ │ └── hardwrap.js ├── bower.json ├── demo │ ├── activeline.html │ ├── anywordhint.html │ ├── bidi.html │ ├── btree.html │ ├── buffers.html │ ├── changemode.html │ ├── closebrackets.html │ ├── closetag.html │ ├── complete.html │ ├── emacs.html │ ├── folding.html │ ├── fullscreen.html │ ├── hardwrap.html │ ├── html5complete.html │ ├── indentwrap.html │ ├── lint.html │ ├── loadmode.html │ ├── marker.html │ ├── markselection.html │ ├── matchhighlighter.html │ ├── matchtags.html │ ├── merge.html │ ├── multiplex.html │ ├── mustache.html │ ├── placeholder.html │ ├── preview.html │ ├── resize.html │ ├── rulers.html │ ├── runmode.html │ ├── search.html │ ├── spanaffectswrapping_shim.html │ ├── tern.html │ ├── theme.html │ ├── trailingspace.html │ ├── variableheight.html │ ├── vim.html │ ├── visibletabs.html │ ├── widget.html │ └── xmlcomplete.html ├── doc │ ├── activebookmark.js │ ├── compress.html │ ├── docs.css │ ├── internals.html │ ├── logo.png │ ├── logo.svg │ ├── manual.html │ ├── realworld.html │ ├── releases.html │ ├── reporting.html │ ├── upgrade_v2.2.html │ └── upgrade_v3.html ├── index.html ├── keymap │ ├── emacs.js │ ├── extra.js │ └── vim.js ├── lib │ ├── codemirror.css │ └── codemirror.js ├── mode │ ├── apl │ │ ├── apl.js │ │ └── index.html │ ├── asterisk │ │ ├── asterisk.js │ │ └── index.html │ ├── clike │ │ ├── clike.js │ │ ├── index.html │ │ └── scala.html │ ├── clojure │ │ ├── clojure.js │ │ └── index.html │ ├── cobol │ │ ├── cobol.js │ │ └── index.html │ ├── coffeescript │ │ ├── coffeescript.js │ │ └── index.html │ ├── commonlisp │ │ ├── commonlisp.js │ │ └── index.html │ ├── css │ │ ├── css.js │ │ ├── index.html │ │ ├── less.html │ │ ├── less_test.js │ │ ├── scss.html │ │ ├── scss_test.js │ │ └── test.js │ ├── d │ │ ├── d.js │ │ └── index.html │ ├── diff │ │ ├── diff.js │ │ └── index.html │ ├── dtd │ │ ├── dtd.js │ │ └── index.html │ ├── ecl │ │ ├── ecl.js │ │ └── index.html │ ├── eiffel │ │ ├── eiffel.js │ │ └── index.html │ ├── erlang │ │ ├── erlang.js │ │ └── index.html │ ├── fortran │ │ ├── fortran.js │ │ └── index.html │ ├── gas │ │ ├── gas.js │ │ └── index.html │ ├── gfm │ │ ├── gfm.js │ │ ├── index.html │ │ └── test.js │ ├── gherkin │ │ ├── gherkin.js │ │ └── index.html │ ├── go │ │ ├── go.js │ │ └── index.html │ ├── groovy │ │ ├── groovy.js │ │ └── index.html │ ├── haml │ │ ├── haml.js │ │ ├── index.html │ │ └── test.js │ ├── haskell │ │ ├── haskell.js │ │ └── index.html │ ├── haxe │ │ ├── haxe.js │ │ └── index.html │ ├── htmlembedded │ │ ├── htmlembedded.js │ │ └── index.html │ ├── htmlmixed │ │ ├── htmlmixed.js │ │ └── index.html │ ├── http │ │ ├── http.js │ │ └── index.html │ ├── index.html │ ├── jade │ │ ├── index.html │ │ └── jade.js │ ├── javascript │ │ ├── index.html │ │ ├── javascript.js │ │ ├── json-ld.html │ │ ├── test.js │ │ └── typescript.html │ ├── jinja2 │ │ ├── index.html │ │ └── jinja2.js │ ├── julia │ │ ├── index.html │ │ └── julia.js │ ├── less │ │ ├── index.html │ │ └── less.js │ ├── livescript │ │ ├── index.html │ │ ├── livescript.js │ │ └── livescript.ls │ ├── lua │ │ ├── index.html │ │ └── lua.js │ ├── meta.js │ ├── mirc │ │ ├── index.html │ │ └── mirc.js │ ├── mllike │ │ ├── index.html │ │ └── mllike.js │ ├── nginx │ │ ├── index.html │ │ └── nginx.js │ ├── ntriples │ │ ├── index.html │ │ └── ntriples.js │ ├── octave │ │ ├── index.html │ │ └── octave.js │ ├── pascal │ │ ├── index.html │ │ └── pascal.js │ ├── pegjs │ │ ├── index.html │ │ └── pegjs.js │ ├── perl │ │ ├── index.html │ │ └── perl.js │ ├── php │ │ ├── index.html │ │ └── php.js │ ├── pig │ │ ├── index.html │ │ └── pig.js │ ├── properties │ │ ├── index.html │ │ └── properties.js │ ├── puppet │ │ ├── index.html │ │ └── puppet.js │ ├── python │ │ ├── index.html │ │ └── python.js │ ├── q │ │ ├── index.html │ │ └── q.js │ ├── r │ │ ├── index.html │ │ └── r.js │ ├── rpm │ │ ├── changes │ │ │ ├── changes.js │ │ │ └── index.html │ │ └── spec │ │ │ ├── index.html │ │ │ ├── spec.css │ │ │ └── spec.js │ ├── rst │ │ ├── index.html │ │ └── rst.js │ ├── ruby │ │ ├── index.html │ │ ├── ruby.js │ │ └── test.js │ ├── rust │ │ ├── index.html │ │ └── rust.js │ ├── sass │ │ ├── index.html │ │ └── sass.js │ ├── scheme │ │ ├── index.html │ │ └── scheme.js │ ├── shell │ │ ├── index.html │ │ └── shell.js │ ├── sieve │ │ ├── index.html │ │ └── sieve.js │ ├── smalltalk │ │ ├── index.html │ │ └── smalltalk.js │ ├── smarty │ │ ├── index.html │ │ └── smarty.js │ ├── smartymixed │ │ ├── index.html │ │ └── smartymixed.js │ ├── solr │ │ ├── index.html │ │ └── solr.js │ ├── sparql │ │ ├── index.html │ │ └── sparql.js │ ├── stex │ │ ├── index.html │ │ ├── stex.js │ │ └── test.js │ ├── tcl │ │ ├── index.html │ │ └── tcl.js │ ├── tiddlywiki │ │ ├── index.html │ │ ├── tiddlywiki.css │ │ └── tiddlywiki.js │ ├── tiki │ │ ├── index.html │ │ ├── tiki.css │ │ └── tiki.js │ ├── toml │ │ ├── index.html │ │ └── toml.js │ ├── turtle │ │ ├── index.html │ │ └── turtle.js │ ├── vb │ │ ├── index.html │ │ └── vb.js │ ├── vbscript │ │ ├── index.html │ │ └── vbscript.js │ ├── velocity │ │ ├── index.html │ │ └── velocity.js │ ├── verilog │ │ ├── index.html │ │ └── verilog.js │ ├── xml │ │ ├── index.html │ │ └── xml.js │ ├── xquery │ │ ├── index.html │ │ ├── test.js │ │ └── xquery.js │ ├── yaml │ │ ├── index.html │ │ └── yaml.js │ └── z80 │ │ ├── index.html │ │ └── z80.js ├── package.json └── theme │ ├── 3024-day.css │ ├── 3024-night.css │ ├── ambiance-mobile.css │ ├── ambiance.css │ ├── base16-dark.css │ ├── base16-light.css │ ├── blackboard.css │ ├── cobalt.css │ ├── eclipse.css │ ├── elegant.css │ ├── erlang-dark.css │ ├── lesser-dark.css │ ├── mbo.css │ ├── mdn-like.css │ ├── midnight.css │ ├── monokai.css │ ├── neat.css │ ├── night.css │ ├── paraiso-dark.css │ ├── paraiso-light.css │ ├── pastel-on-dark.css │ ├── rubyblue.css │ ├── solarized.css │ ├── the-matrix.css │ ├── tomorrow-night-eighties.css │ ├── twilight.css │ ├── vibrant-ink.css │ ├── xq-dark.css │ └── xq-light.css ├── css ├── addons │ ├── uikit.addons.css │ ├── uikit.addons.min.css │ ├── uikit.almost-flat.addons.css │ ├── uikit.almost-flat.addons.min.css │ ├── uikit.gradient.addons.css │ └── uikit.gradient.addons.min.css ├── admin.css ├── editor.css ├── front-end.css ├── jquery-ui.css ├── jquery.ibutton.css ├── manage-front-end.css ├── public.0.8.7.bootstrap.min.css ├── smoothness │ ├── images │ │ ├── animated-overlay.gif │ │ ├── ui-bg_flat_0_aaaaaa_40x100.png │ │ ├── ui-bg_flat_75_ffffff_40x100.png │ │ ├── ui-bg_glass_55_fbf9ee_1x400.png │ │ ├── ui-bg_glass_65_ffffff_1x400.png │ │ ├── ui-bg_glass_75_dadada_1x400.png │ │ ├── ui-bg_glass_75_e6e6e6_1x400.png │ │ ├── ui-bg_glass_95_fef1ec_1x400.png │ │ ├── ui-bg_highlight-soft_75_cccccc_1x100.png │ │ ├── ui-icons_222222_256x240.png │ │ ├── ui-icons_2e83ff_256x240.png │ │ ├── ui-icons_454545_256x240.png │ │ ├── ui-icons_888888_256x240.png │ │ └── ui-icons_cd0a0a_256x240.png │ ├── jquery-ui-1.10.3.custom.css │ └── jquery-ui-1.10.3.custom.min.css ├── style.css ├── uikit.almost-flat.css ├── uikit.css ├── uikit.gradient.css └── uikit.min.css ├── fonts ├── FontAwesome.otf ├── fontawesome-webfont.eot ├── fontawesome-webfont.ttf └── fontawesome-webfont.woff ├── img ├── 16px │ ├── 500px.png │ ├── AddThis.png │ ├── AppNet.png │ ├── Behance.png │ ├── Blogger.png │ ├── Delicious.png │ ├── DeviantART.png │ ├── Digg.png │ ├── Dopplr.png │ ├── Dribbble.png │ ├── Evernote.png │ ├── Facebook.png │ ├── Flickr.png │ ├── Forrst.png │ ├── GitHub.png │ ├── Google+.png │ ├── Grooveshark.png │ ├── Instagram.png │ ├── Lastfm.png │ ├── LinkedIn.png │ ├── Mail.png │ ├── MySpace.png │ ├── Path.png │ ├── PayPal.png │ ├── Picasa.png │ ├── Pinterest.png │ ├── Posterous.png │ ├── RSS.png │ ├── Reddit.png │ ├── ShareThis.png │ ├── Skype.png │ ├── Soundcloud.png │ ├── Spotify.png │ ├── StumbleUpon.png │ ├── Tumblr.png │ ├── Twitter.png │ ├── Viddler.png │ ├── Vimeo.png │ ├── Virb.png │ ├── Windows.png │ ├── WordPress.png │ ├── YouTube.png │ └── Zerply.png ├── 32px │ ├── 500px.png │ ├── AddThis.png │ ├── AppNet.png │ ├── Behance.png │ ├── Blogger.png │ ├── Delicious.png │ ├── DeviantART.png │ ├── Digg.png │ ├── Dopplr.png │ ├── Dribbble.png │ ├── Evernote.png │ ├── Facebook.png │ ├── Flickr.png │ ├── Forrst.png │ ├── GitHub.png │ ├── Google+.png │ ├── Grooveshark.png │ ├── Instagram.png │ ├── Lastfm.png │ ├── LinkedIn.png │ ├── Mail.png │ ├── MySpace.png │ ├── Path.png │ ├── PayPal.png │ ├── Picasa.png │ ├── Pinterest.png │ ├── Posterous.png │ ├── RSS.png │ ├── Reddit.png │ ├── ShareThis.png │ ├── Skype.png │ ├── Soundcloud.png │ ├── Spotify.png │ ├── StumbleUpon.png │ ├── Tumblr.png │ ├── Twitter.png │ ├── Viddler.png │ ├── Vimeo.png │ ├── Virb.png │ ├── Windows.png │ ├── WordPress.png │ ├── YouTube.png │ └── Zerply.png ├── ajax-loader.gif ├── autocron.png ├── button.jpg ├── clear.gif ├── customedit.png ├── display.png ├── forms.png ├── glyphicons-halflings-white.png ├── glyphicons-halflings.png ├── ibutton-slider-default.png ├── icon.png ├── icons.jpg ├── icons.png ├── imac.png ├── import.png ├── ipad.png ├── ipadready.png ├── iphone.png ├── logo.png ├── logopro.png ├── new-forms.jpg ├── newlook.png ├── postnotifications.jpg ├── pro-reports.jpg ├── prot.png ├── ratethis.png ├── review-us.png ├── reviewus.png ├── roles.png ├── schedule.png ├── sendhistory.png ├── sending-errors.png ├── sendpress-16.png ├── sendpress-160.png ├── sendpress-32.png ├── sendpress-bg-16.png ├── sendpress-bg-32.png ├── sendpress-black.png ├── sendpress-blue.jpg ├── sendpress-red.png ├── sendpress.jpg ├── sendpress.png ├── simpleeditor.png ├── sp-badge-old.png ├── sp-badge.png ├── sprite.png ├── v1update.png └── whatsnew-header.jpg ├── inc ├── forms │ └── email-style.2.0.php ├── functions.php ├── helpers │ ├── sendpress-get-actions.php │ ├── sendpress-help-tabs.php │ └── sendpress-post-actions.php └── output.php ├── index.php ├── js ├── addons │ ├── autocomplete.js │ ├── autocomplete.min.js │ ├── cover.js │ ├── cover.min.js │ ├── datepicker.js │ ├── datepicker.min.js │ ├── form-password.js │ ├── form-password.min.js │ ├── form-select.js │ ├── form-select.min.js │ ├── htmleditor.js │ ├── htmleditor.min.js │ ├── nestable.js │ ├── nestable.min.js │ ├── notify.js │ ├── notify.min.js │ ├── pagination.js │ ├── pagination.min.js │ ├── search.js │ ├── search.min.js │ ├── sortable.js │ ├── sortable.min.js │ ├── sticky.js │ ├── sticky.min.js │ ├── timepicker.js │ ├── timepicker.min.js │ ├── upload.js │ └── upload.min.js ├── chart.min.js ├── customizer-admin.js ├── customizer-public.js ├── farbtastic.js ├── flot │ ├── excanvas.js │ ├── excanvas.min.js │ ├── jquery.colorhelpers.js │ ├── jquery.flot.crosshair.js │ ├── jquery.flot.fillbetween.js │ ├── jquery.flot.image.js │ ├── jquery.flot.js │ ├── jquery.flot.navigate.js │ ├── jquery.flot.pie.js │ ├── jquery.flot.resize.js │ ├── jquery.flot.selection.js │ ├── jquery.flot.stack.js │ ├── jquery.flot.symbol.js │ └── jquery.flot.threshold.js ├── icon.png ├── jquery.autocomplete.js ├── jquery.autocomplete.min.js ├── jquery.circliful.min.js ├── jquery.drawDoughnutChart.js ├── jquery.easypiechart.min.js ├── jquery.ibutton.min.js ├── jquery.liveSearch.js ├── mailmerge_plugin.js ├── parsley.js ├── sendpress.js ├── sendpress.signup.js ├── sendpress.widget.js ├── spnl-backbone.js ├── styler.js ├── uikit.js └── uikit.min.js ├── languages ├── potomo.sh ├── sendpress-ar.mo ├── sendpress-ar_EG.mo ├── sendpress-cs_CZ.mo ├── sendpress-cs_CZ.po ├── sendpress-de_DE.mo ├── sendpress-de_DE.po ├── sendpress-el.mo ├── sendpress-el.po ├── sendpress-en.mo ├── sendpress-en_US.mo ├── sendpress-es_ES.mo ├── sendpress-es_ES.po ├── sendpress-fr.mo ├── sendpress-fr_FR.mo ├── sendpress-fr_FR.po ├── sendpress-he_IL.mo ├── sendpress-hu_HU.mo ├── sendpress-it_IT.mo ├── sendpress-it_IT.po ├── sendpress-ja.mo ├── sendpress-ja.po ├── sendpress-nb_NO.mo ├── sendpress-nb_NO.po ├── sendpress-nl_NL.mo ├── sendpress-nl_NL.po ├── sendpress-no.mo ├── sendpress-pl_PL.mo ├── sendpress-pl_PL.po ├── sendpress-pt_BR.mo ├── sendpress-pt_BR.po ├── sendpress-pt_PT.mo ├── sendpress-pt_PT.po ├── sendpress-ro_RO.mo ├── sendpress-ru_RU.mo ├── sendpress-ru_RU.po ├── sendpress-sl_SI.mo ├── sendpress-sv_SE.mo ├── sendpress-sv_SE.po ├── sendpress-tr_TR.mo ├── sendpress-tr_TR.po ├── sendpress-zh_CN.mo ├── sendpress.mo └── sendpress.pot ├── readme.md ├── readme.txt ├── sendpress.php ├── templates ├── 1column.html ├── 2columns-to-rows.html ├── master.html ├── master.php ├── original.html ├── simple-leftsidebar.php ├── simple-rightsidebar.php ├── simple.css ├── simple.html ├── simple.php └── v1-0 │ └── master.html └── uninstall.php /.coveralls.yml: -------------------------------------------------------------------------------- 1 | src_dir: ./ 2 | service_name: travis-ci 3 | coverage_clover: build/logs/clover.xml 4 | json_path: build/logs/coveralls-upload.json 5 | -------------------------------------------------------------------------------- /.tx/config: -------------------------------------------------------------------------------- 1 | [main] 2 | host = https://www.transifex.com 3 | 4 | [sendpress.sendpress] 5 | file_filter = languages/sendpress-.po 6 | source_file = languages/sendpress.pot 7 | source_lang = en_US 8 | type = PO 9 | 10 | -------------------------------------------------------------------------------- /bootstrap/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/bootstrap/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /bootstrap/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/bootstrap/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /bootstrap/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/bootstrap/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /class-sendpress-font-customizer.php: -------------------------------------------------------------------------------- 1 | id == 'mailtpl_body_size' ) { 12 | $range_min = '320'; 13 | $range_max = '1280'; 14 | } 15 | ?> 23 | [\d]+)/(?P[\d]+)', array( 19 | 'methods' => 'GET', 20 | 'callback' => array($this,'hello_world'), 21 | 22 | //'permission_callback' => array( $this, 'get_item_permissions_check' ), 23 | )); 24 | 25 | register_rest_route( parent::get_api_base(), $this->controller . 'run' , array( 26 | 'methods' => WP_REST_Server::READABLE, 27 | 'callback' => array($this,'run_cron'), 28 | 29 | 'permission_callback' => '__return_true' 30 | )); 31 | */ 32 | } 33 | 34 | function get_item_permissions_check($request){ 35 | return true; 36 | } 37 | 38 | function run_cron($request){ 39 | return SendPress_Cron::run_cron_functions(); 40 | } 41 | 42 | } -------------------------------------------------------------------------------- /classes/api/v1/class-sendpress-rest-base-v1.php: -------------------------------------------------------------------------------- 1 | namespace . $this->version; 21 | } 22 | } -------------------------------------------------------------------------------- /classes/api/v1/class-sendpress-rest-postnotifications-v1-controller.php: -------------------------------------------------------------------------------- 1 | controller . 'queue' , array( 19 | 'methods' => WP_REST_Server::READABLE, 20 | 'callback' => array($this,'queue_messages') 21 | )); 22 | } 23 | 24 | function queue_messages($request){ 25 | //get report id from request 26 | $report_id = $request->report_id; 27 | 28 | //for testing 29 | $report_id = 1234; 30 | 31 | //get report 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | } 41 | 42 | } -------------------------------------------------------------------------------- /classes/api/v1/class-sendpress-rest-sending-v1-controller.php: -------------------------------------------------------------------------------- 1 | [\d]+)/(?P[\d]+)', array( 19 | 'methods' => 'GET', 20 | 'callback' => array($this,'hello_world'), 21 | 22 | //'permission_callback' => array( $this, 'get_item_permissions_check' ), 23 | )); 24 | */ 25 | register_rest_route( parent::get_api_base(), $this->controller . 'run' , array( 26 | 'methods' => WP_REST_Server::READABLE, 27 | 'callback' => array($this,'run_cron'), 28 | 29 | 'permission_callback' => '__return_true', 30 | )); 31 | 32 | register_rest_route( parent::get_api_base(), $this->controller , array( 33 | 'methods' => WP_REST_Server::READABLE, 34 | 'callback' => array($this,'run_cron'), 35 | 36 | 'permission_callback' => '__return_true' 37 | )); 38 | 39 | } 40 | 41 | function get_item_permissions_check($request){ 42 | return true; 43 | } 44 | 45 | function run_cron($request){ 46 | return SendPress_Cron::run_cron_functions(); 47 | } 48 | 49 | } -------------------------------------------------------------------------------- /classes/class-sendpress-api-loader.php: -------------------------------------------------------------------------------- 1 | rest_api_init(); 10 | } 11 | 12 | private function rest_api_init() { 13 | // REST API was included starting WordPress 4.4. 14 | if ( ! class_exists( 'WP_REST_Server' ) ) { 15 | return; 16 | } 17 | 18 | 19 | // Init REST API routes. 20 | add_action( 'rest_api_init', array( $this, 'register_rest_routes' ), 10 ); 21 | } 22 | 23 | 24 | public function register_rest_routes() { 25 | // Register settings to the REST API. 26 | //$this->register_wp_admin_settings(); 27 | 28 | $controllers = array( 29 | // v1 controllers. 30 | 'SendPress_REST_AutoCron_V1_Controller', 31 | 'SendPress_REST_Sending_V1_Controller' 32 | 33 | ); 34 | 35 | foreach ( $controllers as $controller ) { 36 | $this->$controller = new $controller(); 37 | $this->$controller->register_routes(); 38 | } 39 | } 40 | 41 | } -------------------------------------------------------------------------------- /classes/class-sendpress-database.php: -------------------------------------------------------------------------------- 1 | getConstants(); 19 | } 20 | return self::$constCacheArray[$calledClass]; 21 | } 22 | 23 | public static function isValidName($name, $strict = false) { 24 | $constants = self::getConstants(); 25 | 26 | if ($strict) { 27 | return array_key_exists($name, $constants); 28 | } 29 | 30 | $keys = array_map('strtolower', array_keys($constants)); 31 | return in_array(strtolower($name), $keys); 32 | } 33 | 34 | public static function isValidValue($value) { 35 | $values = array_values(self::getConstants()); 36 | return in_array($value, $values, $strict = true); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /classes/class-sendpress-enum-tracker-type.php: -------------------------------------------------------------------------------- 1 | = count($stack)) { 36 | // No other function found. 37 | $func = '?'; 38 | 39 | } elseif(isset($stack[$n+1])) { 40 | // Function call. 41 | $c = $stack[$n+1]; 42 | if(!empty($c['class'])) 43 | $class = $c['class']; 44 | else 45 | $class = $stack[$n]['file'].':'.$stack[$n]['line'].','; 46 | $func = $class.@$c['type'].$c['function']; 47 | 48 | } else { 49 | // Direct from script file. 50 | $c = $stack[$n]; 51 | $func = $stack[$n]['file'].':'.$stack[$n]['line']; 52 | } 53 | 54 | return $func; 55 | } 56 | 57 | 58 | } -------------------------------------------------------------------------------- /classes/class-sendpress-font-customizer.php: -------------------------------------------------------------------------------- 1 | id == 'mailtpl_body_size' ) { 12 | $range_min = '320'; 13 | $range_max = '1280'; 14 | } 15 | ?> 23 | =' ) ) { 15 | if(!class_exists('PHPMailer\PHPMailer\PHPMailer')) { 16 | require(ABSPATH . WPINC .'/PHPMailer/PHPMailer.php'); 17 | require(ABSPATH . WPINC . '/PHPMailer/SMTP.php'); 18 | require(ABSPATH . WPINC . '/PHPMailer/Exception.php'); 19 | } 20 | 21 | class SendPress_PHPMailer extends PHPMailer\PHPMailer\PHPMailer { 22 | 23 | } 24 | } else { 25 | if(!class_exists('PHPMailer')) { 26 | require(ABSPATH . WPINC . '/class-phpmailer.php'); 27 | } 28 | class SendPress_PHPMailer extends PHPMailer { 29 | 30 | } 31 | } 32 | 33 | 34 | -------------------------------------------------------------------------------- /classes/class-sendpress-screen-options.php: -------------------------------------------------------------------------------- 1 | senders[$widget_class] = new $widget_class(); 26 | } 27 | 28 | function unregister($widget_class) { 29 | if ( isset($this->senders[$widget_class]) ) 30 | unset($this->senders[$widget_class]); 31 | } 32 | 33 | function get_all_senders(){ 34 | return $this->senders; 35 | } 36 | 37 | function get_sender( $sender ){ 38 | if ( isset($this->senders[$sender]) ){ 39 | return $this->senders[$sender]; 40 | } 41 | return false; 42 | 43 | } 44 | 45 | /* 46 | function _register_senders() { 47 | global $sendpress_registered_senders; 48 | $keys = array_keys($this->senders); 49 | $registered = array_keys($sendpress_registered_senders); 50 | $registered = array_map('_get_widget_id_base', $registered); 51 | 52 | foreach ( $keys as $key ) { 53 | // don't register new widget if old widget with the same id is already registered 54 | if ( in_array($this->senders[$key]->id_base, $registered, true) ) { 55 | unset($this->senders[$key]); 56 | continue; 57 | } 58 | 59 | $this->senders[$key]->_register(); 60 | } 61 | } 62 | */ 63 | } -------------------------------------------------------------------------------- /classes/class-sendpress-shortcodes.php: -------------------------------------------------------------------------------- 1 | 1, 23 | ), $atts)); 24 | if($content){ 25 | $return_string = '

'.$content.'

'; 26 | } 27 | $return_string .= '
'; 28 | query_posts(array('orderby' => 'date', 'order' => 'DESC' , 'showposts' => $posts)); 29 | if (have_posts()) : 30 | while (have_posts()) : the_post(); 31 | $return_string .= '
'.get_the_title().'
'; 32 | $return_string .= '
'.get_the_excerpt().'
'; 33 | $return_string .= '
'; 34 | endwhile; 35 | endif; 36 | $return_string .= '
'; 37 | 38 | wp_reset_query(); 39 | $post = $old_post; 40 | return $return_string; 41 | } 42 | 43 | } 44 | 45 | -------------------------------------------------------------------------------- /classes/class-sendpress-tinymce.php: -------------------------------------------------------------------------------- 1 | add_button(); 16 | } 17 | 18 | function add_button() { 19 | // Don't bother doing this stuff if the current user lacks permissions 20 | if ( ! current_user_can('edit_posts') && ! current_user_can('edit_pages') ) 21 | return; 22 | 23 | // Add only in Rich Editor mode 24 | if ( get_user_option('rich_editing') == 'true') { 25 | add_filter("mce_external_plugins", array(&$this, "add_tinymce_plugin") ); 26 | add_filter('mce_buttons', array(&$this,'register_button') ); 27 | } 28 | } 29 | 30 | function register_button($buttons) { 31 | array_push($buttons, "|", "sendpress"); 32 | return $buttons; 33 | } 34 | 35 | // Load the TinyMCE plugin : editor_plugin.js (wp2.5) 36 | function add_tinymce_plugin($plugin_array) { 37 | $plugin_array['sendpress'] = SENDPRESS_URL.'js/mailmerge_plugin.js'; 38 | return $plugin_array; 39 | } 40 | 41 | function my_refresh_mce($ver) { 42 | $ver += 3; 43 | return $ver; 44 | } 45 | 46 | } 47 | 48 | 49 | -------------------------------------------------------------------------------- /classes/class-sendpress-unsubscribe-shortcode.php: -------------------------------------------------------------------------------- 1 | 'First Name' 18 | ), $attr)); 19 | 20 | ?> 21 | 22 |
23 | unsubscribe goes here... 24 |
25 | 26 | is_pro_active() ){ 17 | $plugin_path = 'sendpress-pro/extensions/sendpress-sender-amazon.php'; 18 | } 19 | ?> 20 |

Amazon SES

21 |
22 |
23 | Connects to Amazon SES to send your SendPress emails. A Amazon SES account is required to use this option. 24 |
25 | 26 | buttons($plugin_path);?> 27 | 28 | 29 | _nonce_value); ?> 30 |
31 | 32 | is_pro_active() ){ 15 | $plugin_path = 'sendpress-pro/extensions/sendpress-autoresponders.php'; 16 | } 17 | ?> 18 |

Autoresponders

19 |
20 |
21 | Allows you to send a follow-up email after an event. Like send a welcome email a few days after someone subscribes to a list. 22 |
23 | 24 | buttons($plugin_path);?> 25 | 26 | 27 | _nonce_value); ?> 28 |
29 | 30 | is_pro_active() ){ 15 | $plugin_path = 'sendpress-pro/extensions/class-sendpress-bounce.php'; 16 | } 17 | ?> 18 |

Bounce Handling

19 |
20 |
21 | Currently supported for Mandrill API sending with nothing to configure. 22 |
23 | 24 | 25 | 26 | 27 | _nonce_value); ?> 28 |
29 | 30 | is_pro_active() ){ 15 | $plugin_path = 'sendpress-pro/extensions/sendpress-sender-custom.php'; 16 | } 17 | ?> 18 |

Custom SMTP

19 |
20 |
21 | Connects to any SMTP service to send your SendPress emails. 22 |
23 | buttons($plugin_path);?> 24 | 25 | 26 | _nonce_value); ?> 27 |
28 | 29 | is_pro_active() ){ 16 | $plugin_path = 'sendpress-pro/extensions/sendpress-sender-elastic.php'; 17 | } 18 | ?> 19 |

Elastic Email

20 |
21 |
22 | Connects to Elastic Email to send your SendPress emails. A Elastic Email account is required to use this option. 23 |

24 | 25 |
26 | buttons($plugin_path);?> 27 | 28 | 29 | _nonce_value); ?> 30 |
31 | 32 | 13 |

14 | 15 |
16 | 17 |
18 | build_button( 21 | array( 'class' => 'btn btn-primary module-empty', 22 | 'href' => 'http://sendpress.uservoice.com', 23 | 'target' => '_blank', 24 | 'text' => __('Request a Feature','sendpress') 25 | ) 26 | ); 27 | 28 | echo '
'.$btn.'
'; 29 | ?> 30 | _nonce_value); ?> 31 | 32 | 33 | is_pro_active() ){ 15 | $plugin_path = 'sendpress-pro/extensions/sendpress-sender-mailgun.php'; 16 | } 17 | ?> 18 |

MailGun

19 |
20 |
21 | Connects to MailGun to send your SendPress emails. A MailGun account is required to use this option. 22 |

23 | 24 |
25 | buttons($plugin_path);?> 26 | 27 | 28 | _nonce_value); ?> 29 |
30 | 31 | is_pro_active() ){ 16 | $plugin_path = 'sendpress-pro/extensions/sendpress-sender-mailjet.php'; 17 | } 18 | ?> 19 |

MailJet

20 |
21 |
22 | Connects to MailJet to send your SendPress emails. A MailJet account is required to use this option. 23 |

24 | 25 |
26 | buttons($plugin_path);?> 27 | 28 | 29 | _nonce_value); ?> 30 |
31 | 32 | is_pro_active() ){ 15 | $plugin_path = 'sendpress-pro/extensions/class-sendpress-advanced-reports.php'; 16 | } 17 | ?> 18 |

19 |
20 |
21 | 22 |
23 | buttons($plugin_path);?> 24 | 25 | 26 | _nonce_value); ?> 27 |
28 | 29 | is_pro_active() ){ 15 | $plugin_path = 'sendpress-pro/extensions/sendpress-sender-sendgrid.php'; 16 | } 17 | ?> 18 |

SendGrid

19 |
20 |
21 | Connects to SendGrid to send your SendPress emails. A SendGrid account is required to use this option. 22 |

23 | 24 |
25 | buttons($plugin_path);?> 26 | 27 | 28 | _nonce_value); ?> 29 |
30 | 31 | is_pro_active() ){ 15 | $plugin_path = 'sendpress-pro/extensions/class-sendpress-spam-test.php'; 16 | } 17 | ?> 18 |

19 |
20 |
21 | One click spam testing. Find out how your email does with our own email testing system. 22 |
23 | buttons($plugin_path);?> 24 | 25 | 26 | _nonce_value); ?> 27 |
28 | 29 | is_pro_active() ){ 16 | $plugin_path = 'sendpress-pro/extensions/sendpress-sender-sparkpost.php'; 17 | } 18 | ?> 19 |

SparkPost

20 |
21 |
22 | Connects to SparkPost to send your SendPress emails. A SparkPost account is required to use this option. 23 |

24 | 25 |
26 | buttons($plugin_path);?> 27 | 28 | 29 | _nonce_value); ?> 30 |
31 | 32 | 21 | 47 | data(); 18 | 19 | SPNL()->load("Subscribers_Tracker")->open( $info->report , $info->id ); 20 | 21 | //Get the filesize of the image for headers 22 | $filesize = filesize( SENDPRESS_PATH . 'img/icon.png' ); 23 | 24 | //Now actually output the image requested (intentionally disregarding if the database was affected) 25 | header( 'Pragma: public' ); 26 | header( 'Expires: 0' ); 27 | header( 'Cache-Control: must-revalidate, post-check=0, pre-check=0' ); 28 | header( 'Cache-Control: public ',false ); 29 | header('Content-type: image/png'); 30 | header( 'Content-Length: '.$filesize ); 31 | echo file_get_contents( SENDPRESS_PATH . 'img/icon.png' ); 32 | } 33 | 34 | } -------------------------------------------------------------------------------- /classes/public-views/class-sendpress-public-view-process.php: -------------------------------------------------------------------------------- 1 | data(); 18 | if(SPNL()->validate->_int('id') > 0 ){ 19 | $id = SPNL()->validate->_int('id'); 20 | } else{ 21 | $id =$info->id; 22 | } 23 | 24 | $email = SendPress_Data::process_with_iron( $id ); 25 | 26 | $data = array("send"=>$email); 27 | 28 | echo json_encode($data); 29 | 30 | 31 | } 32 | 33 | } -------------------------------------------------------------------------------- /classes/public-views/class-sendpress-public-view-queue.php: -------------------------------------------------------------------------------- 1 | validate->int( get_query_var( 'spemail' ) ); 18 | global $post; 19 | 20 | $post = get_post($email_id); 21 | $inline = false; 22 | if(isset($post) && $post->post_type == 'sp_template' ){ 23 | //Render New Template Preview 24 | 25 | echo SendPress_Email_Render_Engine::render_template_example( $post ); 26 | } else { 27 | if(SPNL()->validate->_bool('inline')){ 28 | $inline = true; 29 | } 30 | echo $post->post_content; 31 | } 32 | } 33 | 34 | function page_start(){ 35 | 36 | } 37 | function page_end(){ 38 | 39 | } 40 | 41 | } -------------------------------------------------------------------------------- /classes/public-views/class-sendpress-public-view-send.php: -------------------------------------------------------------------------------- 1 | $count )); 19 | } 20 | 21 | } -------------------------------------------------------------------------------- /classes/sc/class-sendpress-sc-base.php: -------------------------------------------------------------------------------- 1 | 1, 28 | 'uid' => 0, 29 | 'imgalign' => 'left', 30 | 'alternate' => false 31 | ); 32 | } 33 | 34 | public static function html(){ 35 | return __('You can provide a Title. This is added before the post loop begins.','sendpress'); 36 | } 37 | /** 38 | * Output the form 39 | * 40 | * @param array $atts 41 | */ 42 | public static function output( $atts , $content = null ) { 43 | extract( shortcode_atts( self::options() , $atts ) ); 44 | 45 | if($uid > 0){ 46 | $user = "uid='".$uid."'"; 47 | } 48 | 49 | $shortcode = "[sp-recent-posts-by-user posts='".$posts."' ".$user." imgalign='".$imgalign."' alternate='".$alternate."' readmoretext='".$readmoretext."' ]"; 50 | 51 | //return $shortcode; 52 | return $shortcode . "

" . do_shortcode($shortcode); 53 | 54 | } 55 | 56 | public static function docs(){ 57 | return __('This shortcode creates a listing of Posts in emails or on pages.', 'sendpress'); 58 | } 59 | 60 | 61 | } 62 | -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-body-color.php: -------------------------------------------------------------------------------- 1 | post_content; 20 | if( $color == false ){ 21 | $color = '#ebebeb'; 22 | } 23 | return $color; 24 | 25 | } 26 | 27 | } -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-browser-link-html.php: -------------------------------------------------------------------------------- 1 | $email_id, 19 | "view"=>"email" 20 | ); 21 | $code = SendPress_Data::encrypt( $open_info ); 22 | $xlink = SendPress_Manager::public_url($code); 23 | */ 24 | 25 | return __('Is this email not displaying correctly?','sendpress') ." 26 | " .__('View it in your browser','sendpress') .""; 27 | } 28 | 29 | static function copy(){ 30 | $return = '{sp-browser-link-html}'; 31 | return $return; 32 | } 33 | 34 | } -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-browser-url.php: -------------------------------------------------------------------------------- 1 | $email_id, 19 | "view"=>"email" 20 | ); 21 | $code = SendPress_Data::encrypt( $open_info ); 22 | $xlink = SendPress_Manager::public_url($code); 23 | */ 24 | $link = SendPress_Manager::public_url('email'); 25 | 26 | $email_key = str_replace( '=', '', base64_encode( $email_id ) ); 27 | 28 | //Uses a known internal url - 4/20 29 | return add_query_arg(array('sid'=> '{sp-subscriber-id-encoded}', 'eid'=> $email_key), $link ); 30 | 31 | return $xlink; 32 | } 33 | 34 | static function copy(){ 35 | $return = '{sp-browser-url}'; 36 | return $return; 37 | } 38 | 39 | } -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-canspam.php: -------------------------------------------------------------------------------- 1 | '; 31 | $return = '{canspam}'; 32 | 33 | return $return; 34 | } 35 | 36 | } -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-confirm-subscription.php: -------------------------------------------------------------------------------- 1 | $subscriber_id, 18 | "report"=> $email_id, 19 | "view"=>"confirm" 20 | ); 21 | $code = SendPress_Data::encrypt( $code ); 22 | 23 | if( SendPress_Option::get('old_permalink') || !get_option('permalink_structure') ){ 24 | $link = home_url() ."?sendpress=".$code; 25 | } else { 26 | $link = home_url() ."/sendpress/".$code; 27 | } 28 | 29 | $href = $link; 30 | $html_href = "". $link .""; 31 | return $html_href; 32 | } 33 | 34 | static function copy(){ 35 | $return = '{sp-confirm-link-html}'; 36 | return $return; 37 | } 38 | 39 | } -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-confirm-url.php: -------------------------------------------------------------------------------- 1 | $subscriber_id, 18 | "report"=> $email_id, 19 | "view"=>"confirm" 20 | ); 21 | $code = SendPress_Data::encrypt( $code ); 22 | 23 | if( SendPress_Option::get('old_permalink') || !get_option('permalink_structure') ){ 24 | $link = home_url() ."?sendpress=".$code; 25 | } else { 26 | $link = home_url() ."/sendpress/".$code; 27 | } 28 | 29 | return $link; 30 | } 31 | 32 | static function copy(){ 33 | $return = '{sp-confirm-url}'; 34 | return $return; 35 | } 36 | 37 | } -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-content-color.php: -------------------------------------------------------------------------------- 1 | post_content; 20 | if( $color == false ){ 21 | $color = '#ffffff'; 22 | } 23 | return $color; 24 | 25 | } 26 | 27 | } -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-content-text-color.php: -------------------------------------------------------------------------------- 1 | post_content; 20 | if( $color == false ){ 21 | $color = '#333333'; 22 | } 23 | return $color; 24 | 25 | } 26 | 27 | } -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-custom-field.php: -------------------------------------------------------------------------------- 1 | $subscriber_id, 19 | "view"=>'manage' 20 | ); 21 | 22 | //SendPress_Error::log($link_data); 23 | 24 | $code = SendPress_Data::encrypt( $link_data ); 25 | $link = SendPress_Manager::public_url($code); 26 | 27 | 28 | 29 | if(SendPress_Option::get('manage-page') == 'custom' ){ 30 | $page = SendPress_Option::get('manage-page-id'); 31 | if($page != false){ 32 | $plink = get_permalink($page); 33 | if($plink != ""){ 34 | $link = $plink . '?spms='. $code; 35 | } 36 | } 37 | } 38 | 39 | return $link; 40 | } 41 | 42 | static function copy(){ 43 | $return = '{sp-manage-subscription-url}'; 44 | return $return; 45 | } 46 | 47 | } -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-site-name.php: -------------------------------------------------------------------------------- 1 | $email_id, 19 | "view"=>"email" 20 | ); 21 | $code = SendPress_Data::encrypt( $open_info ); 22 | $xlink = SendPress_Manager::public_url($code); 23 | */ 24 | 25 | return "" .__('Unsubscribe from this list.','sendpress') .""; 26 | } 27 | 28 | static function copy(){ 29 | $return = '{sp-unsubscribe-link-html}'; 30 | return $return; 31 | } 32 | 33 | } -------------------------------------------------------------------------------- /classes/tag/class-sendpress-tag-unsubscribe.php: -------------------------------------------------------------------------------- 1 | '{sp-subscriber-id-encoded}', 'rid'=> $email_key), $link ); 21 | } 22 | 23 | static function copy(){ 24 | $return = '{sp-unsubscribe-url}'; 25 | return $return; 26 | } 27 | 28 | } -------------------------------------------------------------------------------- /classes/views/class-sendpress-view-emails-autoresponder.php: -------------------------------------------------------------------------------- 1 | 19 | 20 | 21 |
22 |
23 | 24 |
25 | 26 | 27 |
28 | 29 |
30 | 31 | 32 | 33 | display(); ?> 34 | _nonce_value); ?> 35 |
36 | prepare_items(); 19 | 20 | ?> 21 | 22 | 23 |
24 |
25 | 29 |
30 | 31 |
32 | 35 | 36 |
37 | 38 | 39 | 40 | display(); ?> 41 | _nonce_value); ?> 42 |
43 | security_check(); 22 | $post = get_default_post_to_edit( 'sp_template' , true ); 23 | $post_ID = $post->ID; 24 | 25 | global $current_user; 26 | $content = ''; 27 | switch($_POST['starter']){ 28 | case 'blank': 29 | $content = ''; 30 | break; 31 | default: 32 | $content = 'Default HTML'; 33 | break; 34 | 35 | 36 | 37 | } 38 | 39 | /* 40 | $my_post['ID'] = $_POST['post_ID']; 41 | $my_post['post_content'] = $_POST['content']; 42 | $my_post['post_title'] = $_POST['post_title']; 43 | */ 44 | $post->post_title = $_POST['post_title']; 45 | $post->post_status = 'sp-custom'; 46 | $post->post_content = $content; 47 | // Update the post into the database 48 | wp_update_post( $post ); 49 | 50 | //SendPress_Email::set_default_style( $my_post['ID'] ); 51 | //clear the cached file. 52 | 53 | 54 | SendPress_Admin::redirect( 'Emails_Tempedit' , array('templateID' => $post->ID ) ); 55 | //$this->save_redirect( $_POST ); 56 | 57 | } 58 | 59 | function html() { 60 | 61 | } 62 | 63 | } 64 | -------------------------------------------------------------------------------- /classes/views/class-sendpress-view-emails-tempdelete.php: -------------------------------------------------------------------------------- 1 | 25 | validate->_int('templateID'); 27 | $template = get_post( $t_id ); 28 | 29 | ?> 30 | 31 | 32 | 33 |

: post_title; ?>

34 |
35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | post_content,'textversion'); ?> 43 | 44 | _nonce_value); ?>

45 | 46 | 47 | security_check(); 13 | $saveid = SPNL()->validate->_int( 'templateID' ); 14 | if( $saveid > 0 ){ 15 | update_post_meta( $saveid, '_header_content', SPNL()->validate->_html('header-content') ); 16 | 17 | SendPress_Admin::redirect('Emails_Header',array('templateID' => $saveid)); 18 | } 19 | } 20 | 21 | function html() { 22 | ?> 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 | 32 | 33 | 45 | 46 | 47 | __('Emails per page', 'sendpress'), 29 | 'default' => 10, 30 | 'option' => 'sendpress_queue_per_page' 31 | ); 32 | add_screen_option( 'per_page', $args ); 33 | } 34 | 35 | 36 | function html() { ?> 37 | 38 | 15 |
16 | 17 | 18 | 19 |

Campaign based reports require SendPress Pro version 2.1.12.* or higher.

20 |

You currently have version installed.

21 | 22 | 23 |

Campaign based reports require SendPress Pro version 2.1.12.* or higher.

24 |
25 | Upgrade to SendPress Pro now at https://www.sendpress.com. 26 |
Use discount code PRO2019 at checkout and get 15% off your purchase of SendPress Pro. 27 |
28 | 19 |
20 | Connect your site to AutoCron V2..... 21 | 22 | _nonce_value); ?> 23 |
24 | security_check(); 13 | if(isset($_POST['templates'])){ 14 | SendPress_Data::remove_all_templates(); 15 | SendPress_Template_Manager::update_template_content(); 16 | } 17 | 18 | if(isset($_POST['settings'])){ 19 | SendPress_Data::remove_all_settings(); 20 | //SendPress_Data::create_settings_post_signup_form(); 21 | } 22 | 23 | SendPress_Admin::redirect('Settings_Dbfix'); 24 | } 25 | 26 | 27 | 28 | function html() { 29 | ?> 30 |
31 |
32 |
33 | panel_start( __('1.0 Template Reset','sendpress') ); ?> 34 |

.

35 | 36 | panel_end(); ?> 37 |
38 |
39 | panel_start( __('Reset Settings','sendpress') ); ?> 40 |

41 | 42 | 43 | panel_end(); ?> 44 |
45 |
46 | _nonce_value); ?> 47 |
48 | 49 | security_check(); 13 | } 14 | 15 | function posts_repair(){ 16 | //$this->security_check(); 17 | SendPress_Data::delete_extra_posts(); 18 | SendPress_Admin::redirect('Settings_Fixposts'); 19 | } 20 | 21 | function html() { 22 | $count = SendPress_Data::get_bad_post_count(); 23 | echo __("We see","sendpress")." ". $count." ". __("bad posts.","sendpress"); 24 | $link = SendPress_Admin::link('Settings_Fixposts',array('action'=>'posts-repair')); 25 | echo "

".__('Attempt to Delete These','sendpress').""; 26 | 27 | 28 | /* 29 | echo "

Attempting to install or repair missing data


"; 30 | 31 | SendPress_Data::install(); 32 | 33 | echo "
";
34 | 		echo SendPress_DB_Tables::check_setup_support();
35 | 		echo "
"; 36 | */ 37 | } 38 | 39 | } -------------------------------------------------------------------------------- /classes/views/class-sendpress-view-settings-forms.php: -------------------------------------------------------------------------------- 1 | testingsecurity_check(); 13 | SendPress_DB_Tables::repair_events_table(); 14 | SendPress_Admin::redirect('Settings_Install'); 15 | } 16 | 17 | function html() { 18 | echo "

". __('Attempting to install or repair missing data','sendpress') . "


"; 19 | 20 | SendPress_Data::install(); 21 | @SPNL()->load("Subscribers_Tracker")->create_table(); 22 | @SPNL()->load("Url")->create_table(); 23 | @SPNL()->load("Subscribers_Url")->create_table(); 24 | echo "
";
25 | 		echo SendPress_DB_Tables::check_setup_support();
26 | 		echo "
"; 27 | 28 | } 29 | 30 | } -------------------------------------------------------------------------------- /classes/views/index.php: -------------------------------------------------------------------------------- 1 | and others 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /codemirror/README.md: -------------------------------------------------------------------------------- 1 | # CodeMirror 2 | [![Build Status](https://secure.travis-ci.org/marijnh/CodeMirror.png?branch=master)](http://travis-ci.org/marijnh/CodeMirror) 3 | [![NPM version](https://badge.fury.io/js/codemirror.png)](http://badge.fury.io/js/codemirror) 4 | 5 | CodeMirror is a JavaScript component that provides a code editor in 6 | the browser. When a mode is available for the language you are coding 7 | in, it will color your code, and optionally help with indentation. 8 | 9 | The project page is http://codemirror.net 10 | The manual is at http://codemirror.net/doc/manual.html 11 | The contributing guidelines are in [CONTRIBUTING.md](https://github.com/marijnh/CodeMirror/blob/master/CONTRIBUTING.md) 12 | -------------------------------------------------------------------------------- /codemirror/addon/dialog/dialog.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-dialog { 2 | position: absolute; 3 | left: 0; right: 0; 4 | background: white; 5 | z-index: 15; 6 | padding: .1em .8em; 7 | overflow: hidden; 8 | color: #333; 9 | } 10 | 11 | .CodeMirror-dialog-top { 12 | border-bottom: 1px solid #eee; 13 | top: 0; 14 | } 15 | 16 | .CodeMirror-dialog-bottom { 17 | border-top: 1px solid #eee; 18 | bottom: 0; 19 | } 20 | 21 | .CodeMirror-dialog input { 22 | border: none; 23 | outline: none; 24 | background: transparent; 25 | width: 20em; 26 | color: inherit; 27 | font-family: monospace; 28 | } 29 | 30 | .CodeMirror-dialog button { 31 | font-size: 70%; 32 | } 33 | -------------------------------------------------------------------------------- /codemirror/addon/display/fullscreen.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-fullscreen { 2 | position: fixed; 3 | top: 0; left: 0; right: 0; bottom: 0; 4 | height: auto; 5 | z-index: 9; 6 | } 7 | -------------------------------------------------------------------------------- /codemirror/addon/display/fullscreen.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | "use strict"; 3 | 4 | CodeMirror.defineOption("fullScreen", false, function(cm, val, old) { 5 | if (old == CodeMirror.Init) old = false; 6 | if (!old == !val) return; 7 | if (val) setFullscreen(cm); 8 | else setNormal(cm); 9 | }); 10 | 11 | function setFullscreen(cm) { 12 | var wrap = cm.getWrapperElement(); 13 | cm.state.fullScreenRestore = {scrollTop: window.pageYOffset, scrollLeft: window.pageXOffset, 14 | width: wrap.style.width, height: wrap.style.height}; 15 | wrap.style.width = ""; 16 | wrap.style.height = "auto"; 17 | wrap.className += " CodeMirror-fullscreen"; 18 | document.documentElement.style.overflow = "hidden"; 19 | cm.refresh(); 20 | } 21 | 22 | function setNormal(cm) { 23 | var wrap = cm.getWrapperElement(); 24 | wrap.className = wrap.className.replace(/\s*CodeMirror-fullscreen\b/, ""); 25 | document.documentElement.style.overflow = ""; 26 | var info = cm.state.fullScreenRestore; 27 | wrap.style.width = info.width; wrap.style.height = info.height; 28 | window.scrollTo(info.scrollLeft, info.scrollTop); 29 | cm.refresh(); 30 | } 31 | })(); 32 | -------------------------------------------------------------------------------- /codemirror/addon/display/rulers.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | "use strict"; 3 | 4 | CodeMirror.defineOption("rulers", false, function(cm, val, old) { 5 | if (old && old != CodeMirror.Init) { 6 | clearRulers(cm); 7 | cm.off("refresh", refreshRulers); 8 | } 9 | if (val && val.length) { 10 | setRulers(cm); 11 | cm.on("refresh", refreshRulers); 12 | } 13 | }); 14 | 15 | function clearRulers(cm) { 16 | for (var i = cm.display.lineSpace.childNodes.length - 1; i >= 0; i--) { 17 | var node = cm.display.lineSpace.childNodes[i]; 18 | if (/(^|\s)CodeMirror-ruler($|\s)/.test(node.className)) 19 | node.parentNode.removeChild(node); 20 | } 21 | } 22 | 23 | function setRulers(cm) { 24 | var val = cm.getOption("rulers"); 25 | var cw = cm.defaultCharWidth(); 26 | var left = cm.charCoords(CodeMirror.Pos(cm.firstLine(), 0), "div").left; 27 | var bot = -cm.display.scroller.offsetHeight; 28 | for (var i = 0; i < val.length; i++) { 29 | var elt = document.createElement("div"); 30 | var col, cls = null; 31 | if (typeof val[i] == "number") { 32 | col = val[i]; 33 | } else { 34 | col = val[i].column; 35 | cls = val[i].className; 36 | } 37 | elt.className = "CodeMirror-ruler" + (cls ? " " + cls : ""); 38 | elt.style.cssText = "left: " + (left + col * cw) + "px; top: -50px; bottom: " + bot + "px"; 39 | cm.display.lineSpace.insertBefore(elt, cm.display.cursorDiv); 40 | } 41 | } 42 | 43 | function refreshRulers(cm) { 44 | clearRulers(cm); 45 | setRulers(cm); 46 | } 47 | })(); 48 | -------------------------------------------------------------------------------- /codemirror/addon/edit/continuelist.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | 'use strict'; 3 | 4 | var listRE = /^(\s*)([*+-]|(\d+)\.)(\s*)/, 5 | unorderedBullets = '*+-'; 6 | 7 | CodeMirror.commands.newlineAndIndentContinueMarkdownList = function(cm) { 8 | if (cm.getOption("disableInput")) return CodeMirror.Pass; 9 | 10 | var pos = cm.getCursor(), 11 | inList = cm.getStateAfter(pos.line).list !== false, 12 | match; 13 | 14 | if (!inList || !(match = cm.getLine(pos.line).match(listRE))) { 15 | cm.execCommand('newlineAndIndent'); 16 | return; 17 | } 18 | 19 | var indent = match[1], after = match[4]; 20 | var bullet = unorderedBullets.indexOf(match[2]) >= 0 21 | ? match[2] 22 | : (parseInt(match[3], 10) + 1) + '.'; 23 | 24 | cm.replaceSelection('\n' + indent + bullet + after, 'end'); 25 | }; 26 | 27 | }()); 28 | -------------------------------------------------------------------------------- /codemirror/addon/edit/trailingspace.js: -------------------------------------------------------------------------------- 1 | CodeMirror.defineOption("showTrailingSpace", false, function(cm, val, prev) { 2 | if (prev == CodeMirror.Init) prev = false; 3 | if (prev && !val) 4 | cm.removeOverlay("trailingspace"); 5 | else if (!prev && val) 6 | cm.addOverlay({ 7 | token: function(stream) { 8 | for (var l = stream.string.length, i = l; i && /\s/.test(stream.string.charAt(i - 1)); --i) {} 9 | if (i > stream.pos) { stream.pos = i; return null; } 10 | stream.pos = l; 11 | return "trailingspace"; 12 | }, 13 | name: "trailingspace" 14 | }); 15 | }); 16 | -------------------------------------------------------------------------------- /codemirror/addon/fold/foldgutter.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-foldmarker { 2 | color: blue; 3 | text-shadow: #b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px, #b9f -1px 1px 2px; 4 | font-family: arial; 5 | line-height: .3; 6 | cursor: pointer; 7 | } 8 | .CodeMirror-foldgutter { 9 | width: .7em; 10 | } 11 | .CodeMirror-foldgutter-open, 12 | .CodeMirror-foldgutter-folded { 13 | color: #555; 14 | cursor: pointer; 15 | } 16 | .CodeMirror-foldgutter-open:after { 17 | content: "\25BE"; 18 | } 19 | .CodeMirror-foldgutter-folded:after { 20 | content: "\25B8"; 21 | } 22 | -------------------------------------------------------------------------------- /codemirror/addon/fold/indent-fold.js: -------------------------------------------------------------------------------- 1 | CodeMirror.registerHelper("fold", "indent", function(cm, start) { 2 | var tabSize = cm.getOption("tabSize"), firstLine = cm.getLine(start.line); 3 | if (!/\S/.test(firstLine)) return; 4 | var getIndent = function(line) { 5 | return CodeMirror.countColumn(line, null, tabSize); 6 | }; 7 | var myIndent = getIndent(firstLine); 8 | var lastLineInFold = null; 9 | // Go through lines until we find a line that definitely doesn't belong in 10 | // the block we're folding, or to the end. 11 | for (var i = start.line + 1, end = cm.lastLine(); i <= end; ++i) { 12 | var curLine = cm.getLine(i); 13 | var curIndent = getIndent(curLine); 14 | if (curIndent > myIndent) { 15 | // Lines with a greater indent are considered part of the block. 16 | lastLineInFold = i; 17 | } else if (!/\S/.test(curLine)) { 18 | // Empty lines might be breaks within the block we're trying to fold. 19 | } else { 20 | // A non-empty line at an indent equal to or less than ours marks the 21 | // start of another block. 22 | break; 23 | } 24 | } 25 | if (lastLineInFold) return { 26 | from: CodeMirror.Pos(start.line, firstLine.length), 27 | to: CodeMirror.Pos(lastLineInFold, cm.getLine(lastLineInFold).length) 28 | }; 29 | }); 30 | CodeMirror.indentRangeFinder = CodeMirror.fold.indent; // deprecated 31 | -------------------------------------------------------------------------------- /codemirror/addon/fold/markdown-fold.js: -------------------------------------------------------------------------------- 1 | CodeMirror.registerHelper("fold", "markdown", function(cm, start) { 2 | var maxDepth = 100; 3 | 4 | function isHeader(lineNo) { 5 | var tokentype = cm.getTokenTypeAt(CodeMirror.Pos(lineNo, 0)); 6 | return tokentype && /\bheader\b/.test(tokentype); 7 | } 8 | 9 | function headerLevel(lineNo, line, nextLine) { 10 | var match = line && line.match(/^#+/); 11 | if (match && isHeader(lineNo)) return match[0].length; 12 | match = nextLine && nextLine.match(/^[=\-]+\s*$/); 13 | if (match && isHeader(lineNo + 1)) return nextLine[0] == "=" ? 1 : 2; 14 | return maxDepth; 15 | } 16 | 17 | var firstLine = cm.getLine(start.line), nextLine = cm.getLine(start.line + 1); 18 | var level = headerLevel(start.line, firstLine, nextLine); 19 | if (level === maxDepth) return undefined; 20 | 21 | var lastLineNo = cm.lastLine(); 22 | var end = start.line, nextNextLine = cm.getLine(end + 2); 23 | while (end < lastLineNo) { 24 | if (headerLevel(end + 1, nextLine, nextNextLine) <= level) break; 25 | ++end; 26 | nextLine = nextNextLine; 27 | nextNextLine = cm.getLine(end + 2); 28 | } 29 | 30 | return { 31 | from: CodeMirror.Pos(start.line, firstLine.length), 32 | to: CodeMirror.Pos(end, cm.getLine(end).length) 33 | }; 34 | }); 35 | -------------------------------------------------------------------------------- /codemirror/addon/hint/anyword-hint.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | "use strict"; 3 | 4 | var WORD = /[\w$]+/, RANGE = 500; 5 | 6 | CodeMirror.registerHelper("hint", "anyword", function(editor, options) { 7 | var word = options && options.word || WORD; 8 | var range = options && options.range || RANGE; 9 | var cur = editor.getCursor(), curLine = editor.getLine(cur.line); 10 | var start = cur.ch, end = start; 11 | while (end < curLine.length && word.test(curLine.charAt(end))) ++end; 12 | while (start && word.test(curLine.charAt(start - 1))) --start; 13 | var curWord = start != end && curLine.slice(start, end); 14 | 15 | var list = [], seen = {}; 16 | var re = new RegExp(word.source, "g"); 17 | for (var dir = -1; dir <= 1; dir += 2) { 18 | var line = cur.line, endLine = Math.min(Math.max(line + dir * range, editor.firstLine()), editor.lastLine()) + dir; 19 | for (; line != endLine; line += dir) { 20 | var text = editor.getLine(line), m; 21 | while (m = re.exec(text)) { 22 | if (line == cur.line && m[0] === curWord) continue; 23 | if ((!curWord || m[0].lastIndexOf(curWord, 0) == 0) && !Object.prototype.hasOwnProperty.call(seen, m[0])) { 24 | seen[m[0]] = true; 25 | list.push(m[0]); 26 | } 27 | } 28 | } 29 | } 30 | return {list: list, from: CodeMirror.Pos(cur.line, start), to: CodeMirror.Pos(cur.line, end)}; 31 | }); 32 | })(); 33 | -------------------------------------------------------------------------------- /codemirror/addon/hint/css-hint.js: -------------------------------------------------------------------------------- 1 | (function () { 2 | "use strict"; 3 | 4 | var pseudoClasses = {link: 1, visited: 1, active: 1, hover: 1, focus: 1, 5 | "first-letter": 1, "first-line": 1, "first-child": 1, 6 | before: 1, after: 1, lang: 1}; 7 | 8 | CodeMirror.registerHelper("hint", "css", function(cm) { 9 | var cur = cm.getCursor(), token = cm.getTokenAt(cur); 10 | var inner = CodeMirror.innerMode(cm.getMode(), token.state); 11 | if (inner.mode.name != "css") return; 12 | 13 | var word = token.string, start = token.start, end = token.end; 14 | if (/[^\w$_-]/.test(word)) { 15 | word = ""; start = end = cur.ch; 16 | } 17 | 18 | var spec = CodeMirror.resolveMode("text/css"); 19 | 20 | var result = []; 21 | function add(keywords) { 22 | for (var name in keywords) 23 | if (!word || name.lastIndexOf(word, 0) == 0) 24 | result.push(name); 25 | } 26 | 27 | var st = token.state.state; 28 | if (st == "pseudo" || token.type == "variable-3") { 29 | add(pseudoClasses); 30 | } else if (st == "block" || st == "maybeprop") { 31 | add(spec.propertyKeywords); 32 | } else if (st == "prop" || st == "parens" || st == "at" || st == "params") { 33 | add(spec.valueKeywords); 34 | add(spec.colorKeywords); 35 | } else if (st == "media" || st == "media_parens") { 36 | add(spec.mediaTypes); 37 | add(spec.mediaFeatures); 38 | } 39 | 40 | if (result.length) return { 41 | list: result, 42 | from: CodeMirror.Pos(cur.line, start), 43 | to: CodeMirror.Pos(cur.line, end) 44 | }; 45 | }); 46 | })(); 47 | -------------------------------------------------------------------------------- /codemirror/addon/hint/show-hint.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-hints { 2 | position: absolute; 3 | z-index: 10; 4 | overflow: hidden; 5 | list-style: none; 6 | 7 | margin: 0; 8 | padding: 2px; 9 | 10 | -webkit-box-shadow: 2px 3px 5px rgba(0,0,0,.2); 11 | -moz-box-shadow: 2px 3px 5px rgba(0,0,0,.2); 12 | box-shadow: 2px 3px 5px rgba(0,0,0,.2); 13 | border-radius: 3px; 14 | border: 1px solid silver; 15 | 16 | background: white; 17 | font-size: 90%; 18 | font-family: monospace; 19 | 20 | max-height: 20em; 21 | overflow-y: auto; 22 | } 23 | 24 | .CodeMirror-hint { 25 | margin: 0; 26 | padding: 0 4px; 27 | border-radius: 2px; 28 | max-width: 19em; 29 | overflow: hidden; 30 | white-space: pre; 31 | color: black; 32 | cursor: pointer; 33 | } 34 | 35 | .CodeMirror-hint-active { 36 | background: #08f; 37 | color: white; 38 | } 39 | -------------------------------------------------------------------------------- /codemirror/addon/lint/coffeescript-lint.js: -------------------------------------------------------------------------------- 1 | // Depends on coffeelint.js from http://www.coffeelint.org/js/coffeelint.js 2 | 3 | // declare global: coffeelint 4 | 5 | CodeMirror.registerHelper("lint", "coffeescript", function(text) { 6 | var found = []; 7 | var parseError = function(err) { 8 | var loc = err.lineNumber; 9 | found.push({from: CodeMirror.Pos(loc-1, 0), 10 | to: CodeMirror.Pos(loc, 0), 11 | severity: err.level, 12 | message: err.message}); 13 | }; 14 | try { 15 | var res = coffeelint.lint(text); 16 | for(var i = 0; i < res.length; i++) { 17 | parseError(res[i]); 18 | } 19 | } catch(e) { 20 | found.push({from: CodeMirror.Pos(e.location.first_line, 0), 21 | to: CodeMirror.Pos(e.location.last_line, e.location.last_column), 22 | severity: 'error', 23 | message: e.message}); 24 | } 25 | return found; 26 | }); 27 | CodeMirror.coffeeValidator = CodeMirror.lint.coffeescript; // deprecated 28 | -------------------------------------------------------------------------------- /codemirror/addon/lint/css-lint.js: -------------------------------------------------------------------------------- 1 | // Depends on csslint.js from https://github.com/stubbornella/csslint 2 | 3 | // declare global: CSSLint 4 | 5 | CodeMirror.registerHelper("lint", "css", function(text) { 6 | var found = []; 7 | var results = CSSLint.verify(text), messages = results.messages, message = null; 8 | for ( var i = 0; i < messages.length; i++) { 9 | message = messages[i]; 10 | var startLine = message.line -1, endLine = message.line -1, startCol = message.col -1, endCol = message.col; 11 | found.push({ 12 | from: CodeMirror.Pos(startLine, startCol), 13 | to: CodeMirror.Pos(endLine, endCol), 14 | message: message.message, 15 | severity : message.type 16 | }); 17 | } 18 | return found; 19 | }); 20 | -------------------------------------------------------------------------------- /codemirror/addon/lint/json-lint.js: -------------------------------------------------------------------------------- 1 | // Depends on jsonlint.js from https://github.com/zaach/jsonlint 2 | 3 | // declare global: jsonlint 4 | 5 | CodeMirror.registerHelper("lint", "json", function(text) { 6 | var found = []; 7 | jsonlint.parseError = function(str, hash) { 8 | var loc = hash.loc; 9 | found.push({from: CodeMirror.Pos(loc.first_line - 1, loc.first_column), 10 | to: CodeMirror.Pos(loc.last_line - 1, loc.last_column), 11 | message: str}); 12 | }; 13 | try { jsonlint.parse(text); } 14 | catch(e) {} 15 | return found; 16 | }); 17 | CodeMirror.jsonValidator = CodeMirror.lint.json; // deprecated 18 | -------------------------------------------------------------------------------- /codemirror/addon/lint/yaml-lint.js: -------------------------------------------------------------------------------- 1 | // Depends on js-yaml.js from https://github.com/nodeca/js-yaml 2 | 3 | // declare global: jsyaml 4 | 5 | CodeMirror.registerHelper("lint", "yaml", function(text) { 6 | var found = []; 7 | try { jsyaml.load(text); } 8 | catch(e) { 9 | var loc = e.mark; 10 | found.push({ from: CodeMirror.Pos(loc.line, loc.column), to: CodeMirror.Pos(loc.line, loc.column), message: e.message }); 11 | } 12 | return found; 13 | }); 14 | CodeMirror.yamlValidator = CodeMirror.lint.yaml; // deprecated 15 | -------------------------------------------------------------------------------- /codemirror/addon/mode/multiplex_test.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | CodeMirror.defineMode("markdown_with_stex", function(){ 3 | var inner = CodeMirror.getMode({}, "stex"); 4 | var outer = CodeMirror.getMode({}, "markdown"); 5 | 6 | var innerOptions = { 7 | open: '$', 8 | close: '$', 9 | mode: inner, 10 | delimStyle: 'delim', 11 | innerStyle: 'inner' 12 | }; 13 | 14 | return CodeMirror.multiplexingMode(outer, innerOptions); 15 | }); 16 | 17 | var mode = CodeMirror.getMode({}, "markdown_with_stex"); 18 | 19 | function MT(name) { 20 | test.mode( 21 | name, 22 | mode, 23 | Array.prototype.slice.call(arguments, 1), 24 | 'multiplexing'); 25 | } 26 | 27 | MT( 28 | "stexInsideMarkdown", 29 | "[strong **Equation:**] [delim $][inner&tag \\pi][delim $]"); 30 | })(); 31 | -------------------------------------------------------------------------------- /codemirror/addon/runmode/colorize.js: -------------------------------------------------------------------------------- 1 | CodeMirror.colorize = (function() { 2 | 3 | var isBlock = /^(p|li|div|h\\d|pre|blockquote|td)$/; 4 | 5 | function textContent(node, out) { 6 | if (node.nodeType == 3) return out.push(node.nodeValue); 7 | for (var ch = node.firstChild; ch; ch = ch.nextSibling) { 8 | textContent(ch, out); 9 | if (isBlock.test(node.nodeType)) out.push("\n"); 10 | } 11 | } 12 | 13 | return function(collection, defaultMode) { 14 | if (!collection) collection = document.body.getElementsByTagName("pre"); 15 | 16 | for (var i = 0; i < collection.length; ++i) { 17 | var node = collection[i]; 18 | var mode = node.getAttribute("data-lang") || defaultMode; 19 | if (!mode) continue; 20 | 21 | var text = []; 22 | textContent(node, text); 23 | node.innerHTML = ""; 24 | CodeMirror.runMode(text.join(""), mode, node); 25 | 26 | node.className += " cm-s-default"; 27 | } 28 | }; 29 | })(); 30 | -------------------------------------------------------------------------------- /codemirror/addon/scroll/scrollpastend.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | "use strict"; 3 | 4 | CodeMirror.defineOption("scrollPastEnd", false, function(cm, val, old) { 5 | if (old && old != CodeMirror.Init) { 6 | cm.off("change", onChange); 7 | cm.off("refresh", updateBottomMargin); 8 | cm.display.lineSpace.parentNode.style.paddingBottom = ""; 9 | cm.state.scrollPastEndPadding = null; 10 | } 11 | if (val) { 12 | cm.on("change", onChange); 13 | cm.on("refresh", updateBottomMargin); 14 | updateBottomMargin(cm); 15 | } 16 | }); 17 | 18 | function onChange(cm, change) { 19 | if (CodeMirror.changeEnd(change).line == cm.lastLine()) 20 | updateBottomMargin(cm); 21 | } 22 | 23 | function updateBottomMargin(cm) { 24 | var padding = ""; 25 | if (cm.lineCount() > 1) { 26 | var totalH = cm.display.scroller.clientHeight - 30, 27 | lastLineH = cm.getLineHandle(cm.lastLine()).height; 28 | padding = (totalH - lastLineH) + "px"; 29 | } 30 | if (cm.state.scrollPastEndPadding != padding) { 31 | cm.state.scrollPastEndPadding = padding; 32 | cm.display.lineSpace.parentNode.style.paddingBottom = padding; 33 | cm.setSize(); 34 | } 35 | } 36 | })(); 37 | -------------------------------------------------------------------------------- /codemirror/addon/selection/active-line.js: -------------------------------------------------------------------------------- 1 | // Because sometimes you need to style the cursor's line. 2 | // 3 | // Adds an option 'styleActiveLine' which, when enabled, gives the 4 | // active line's wrapping
the CSS class "CodeMirror-activeline", 5 | // and gives its background
the class "CodeMirror-activeline-background". 6 | 7 | (function() { 8 | "use strict"; 9 | var WRAP_CLASS = "CodeMirror-activeline"; 10 | var BACK_CLASS = "CodeMirror-activeline-background"; 11 | 12 | CodeMirror.defineOption("styleActiveLine", false, function(cm, val, old) { 13 | var prev = old && old != CodeMirror.Init; 14 | if (val && !prev) { 15 | updateActiveLine(cm, cm.getCursor().line); 16 | cm.on("beforeSelectionChange", selectionChange); 17 | } else if (!val && prev) { 18 | cm.off("beforeSelectionChange", selectionChange); 19 | clearActiveLine(cm); 20 | delete cm.state.activeLine; 21 | } 22 | }); 23 | 24 | function clearActiveLine(cm) { 25 | if ("activeLine" in cm.state) { 26 | cm.removeLineClass(cm.state.activeLine, "wrap", WRAP_CLASS); 27 | cm.removeLineClass(cm.state.activeLine, "background", BACK_CLASS); 28 | } 29 | } 30 | 31 | function updateActiveLine(cm, selectedLine) { 32 | var line = cm.getLineHandleVisualStart(selectedLine); 33 | if (cm.state.activeLine == line) return; 34 | cm.operation(function() { 35 | clearActiveLine(cm); 36 | cm.addLineClass(line, "wrap", WRAP_CLASS); 37 | cm.addLineClass(line, "background", BACK_CLASS); 38 | cm.state.activeLine = line; 39 | }); 40 | } 41 | 42 | function selectionChange(cm, sel) { 43 | updateActiveLine(cm, sel.head.line); 44 | } 45 | })(); 46 | -------------------------------------------------------------------------------- /codemirror/addon/tern/worker.js: -------------------------------------------------------------------------------- 1 | // declare global: tern, server 2 | 3 | var server; 4 | 5 | this.onmessage = function(e) { 6 | var data = e.data; 7 | switch (data.type) { 8 | case "init": return startServer(data.defs, data.plugins, data.scripts); 9 | case "add": return server.addFile(data.name, data.text); 10 | case "del": return server.delFile(data.name); 11 | case "req": return server.request(data.body, function(err, reqData) { 12 | postMessage({id: data.id, body: reqData, err: err && String(err)}); 13 | }); 14 | case "getFile": 15 | var c = pending[data.id]; 16 | delete pending[data.id]; 17 | return c(data.err, data.text); 18 | default: throw new Error("Unknown message type: " + data.type); 19 | } 20 | }; 21 | 22 | var nextId = 0, pending = {}; 23 | function getFile(file, c) { 24 | postMessage({type: "getFile", name: file, id: ++nextId}); 25 | pending[nextId] = c; 26 | } 27 | 28 | function startServer(defs, plugins, scripts) { 29 | if (scripts) importScripts.apply(null, scripts); 30 | 31 | server = new tern.Server({ 32 | getFile: getFile, 33 | async: true, 34 | defs: defs, 35 | plugins: plugins 36 | }); 37 | } 38 | 39 | var console = { 40 | log: function(v) { postMessage({type: "debug", message: v}); } 41 | }; 42 | -------------------------------------------------------------------------------- /codemirror/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "CodeMirror", 3 | "main": ["lib/codemirror.js", "lib/codemirror.css"], 4 | "ignore": [ 5 | "**/.*", 6 | "node_modules", 7 | "components", 8 | "bin", 9 | "demo", 10 | "doc", 11 | "test", 12 | "index.html", 13 | "package.json" 14 | ] 15 | } 16 | -------------------------------------------------------------------------------- /codemirror/demo/closetag.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Close-Tag Demo 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 18 | 30 | 31 |
32 |

Close-Tag Demo

33 |
34 | 35 | 41 |
42 | -------------------------------------------------------------------------------- /codemirror/demo/marker.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Breakpoint Demo 4 | 5 | 6 | 7 | 8 | 9 | 10 | 15 | 27 | 28 |
29 |

Breakpoint Demo

30 |
47 | 48 |

Click the line-number gutter to add or remove 'breakpoints'.

49 | 50 | 51 | 52 |
53 | -------------------------------------------------------------------------------- /codemirror/demo/markselection.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Match Selection Demo 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 16 | 28 | 29 |
30 |

Match Selection Demo

31 |
35 | 36 | 42 | 43 |

Simple addon to easily mark (and style) selected text.

44 | 45 |
46 | -------------------------------------------------------------------------------- /codemirror/demo/matchtags.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Tag Matcher Demo 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 16 | 28 | 29 |
30 |

Tag Matcher Demo

31 | 32 | 33 |
34 | 35 | 45 | 46 |

Put the cursor on or inside a pair of tags to highlight them. 47 | Press Ctrl-J to jump to the tag that matches the one under the 48 | cursor.

49 |
50 | -------------------------------------------------------------------------------- /codemirror/demo/placeholder.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Placeholder demo 4 | 5 | 6 | 7 | 8 | 9 | 10 | 16 | 28 | 29 |
30 |

Placeholder demo

31 |
32 | 33 |

The placeholder 34 | plug-in adds an option placeholder that can be set to 35 | make text appear in the editor when it is empty and not focused. 36 | If the source textarea has a placeholder attribute, 37 | it will automatically be inherited.

38 | 39 | 44 | 45 |
46 | -------------------------------------------------------------------------------- /codemirror/doc/activebookmark.js: -------------------------------------------------------------------------------- 1 | // Kludge in HTML5 tag recognition in IE8 2 | document.createElement("section"); 3 | document.createElement("article"); 4 | 5 | (function() { 6 | var pending = false, prevVal = null; 7 | 8 | function updateSoon() { 9 | if (!pending) { 10 | pending = true; 11 | setTimeout(update, 250); 12 | } 13 | } 14 | 15 | function update() { 16 | pending = false; 17 | var marks = document.getElementById("nav").getElementsByTagName("a"), found; 18 | for (var i = 0; i < marks.length; ++i) { 19 | var mark = marks[i], m; 20 | if (mark.getAttribute("data-default")) { 21 | if (found == null) found = i; 22 | } else if (m = mark.href.match(/#(.*)/)) { 23 | var ref = document.getElementById(m[1]); 24 | if (ref && ref.getBoundingClientRect().top < 50) 25 | found = i; 26 | } 27 | } 28 | if (found != null && found != prevVal) { 29 | prevVal = found; 30 | var lis = document.getElementById("nav").getElementsByTagName("li"); 31 | for (var i = 0; i < lis.length; ++i) lis[i].className = ""; 32 | for (var i = 0; i < marks.length; ++i) { 33 | if (found == i) { 34 | marks[i].className = "active"; 35 | for (var n = marks[i]; n; n = n.parentNode) 36 | if (n.nodeName == "LI") n.className = "active"; 37 | } else { 38 | marks[i].className = ""; 39 | } 40 | } 41 | } 42 | } 43 | 44 | if (window.addEventListener) { 45 | window.addEventListener("scroll", updateSoon); 46 | window.addEventListener("load", updateSoon); 47 | } 48 | })(); 49 | -------------------------------------------------------------------------------- /codemirror/doc/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/codemirror/doc/logo.png -------------------------------------------------------------------------------- /codemirror/keymap/extra.js: -------------------------------------------------------------------------------- 1 | // A number of additional default bindings that are too obscure to 2 | // include in the core codemirror.js file. 3 | 4 | (function() { 5 | "use strict"; 6 | 7 | var Pos = CodeMirror.Pos; 8 | 9 | function moveLines(cm, start, end, dist) { 10 | if (!dist || start > end) return 0; 11 | 12 | var from = cm.clipPos(Pos(start, 0)), to = cm.clipPos(Pos(end)); 13 | var text = cm.getRange(from, to); 14 | 15 | if (start <= cm.firstLine()) 16 | cm.replaceRange("", from, Pos(to.line + 1, 0)); 17 | else 18 | cm.replaceRange("", Pos(from.line - 1), to); 19 | var target = from.line + dist; 20 | if (target <= cm.firstLine()) { 21 | cm.replaceRange(text + "\n", Pos(target, 0)); 22 | return cm.firstLine() - from.line; 23 | } else { 24 | var targetPos = cm.clipPos(Pos(target - 1)); 25 | cm.replaceRange("\n" + text, targetPos); 26 | return targetPos.line + 1 - from.line; 27 | } 28 | } 29 | 30 | function moveSelectedLines(cm, dist) { 31 | var head = cm.getCursor("head"), anchor = cm.getCursor("anchor"); 32 | cm.operation(function() { 33 | var moved = moveLines(cm, Math.min(head.line, anchor.line), Math.max(head.line, anchor.line), dist); 34 | cm.setSelection(Pos(anchor.line + moved, anchor.ch), Pos(head.line + moved, head.ch)); 35 | }); 36 | } 37 | 38 | CodeMirror.commands.moveLinesUp = function(cm) { moveSelectedLines(cm, -1); }; 39 | CodeMirror.commands.moveLinesDown = function(cm) { moveSelectedLines(cm, 1); }; 40 | 41 | CodeMirror.keyMap["default"]["Alt-Up"] = "moveLinesUp"; 42 | CodeMirror.keyMap["default"]["Alt-Down"] = "moveLinesDown"; 43 | })(); 44 | -------------------------------------------------------------------------------- /codemirror/mode/diff/diff.js: -------------------------------------------------------------------------------- 1 | CodeMirror.defineMode("diff", function() { 2 | 3 | var TOKEN_NAMES = { 4 | '+': 'positive', 5 | '-': 'negative', 6 | '@': 'meta' 7 | }; 8 | 9 | return { 10 | token: function(stream) { 11 | var tw_pos = stream.string.search(/[\t ]+?$/); 12 | 13 | if (!stream.sol() || tw_pos === 0) { 14 | stream.skipToEnd(); 15 | return ("error " + ( 16 | TOKEN_NAMES[stream.string.charAt(0)] || '')).replace(/ $/, ''); 17 | } 18 | 19 | var token_name = TOKEN_NAMES[stream.peek()] || stream.skipToEnd(); 20 | 21 | if (tw_pos === -1) { 22 | stream.skipToEnd(); 23 | } else { 24 | stream.pos = tw_pos; 25 | } 26 | 27 | return token_name; 28 | } 29 | }; 30 | }); 31 | 32 | CodeMirror.defineMIME("text/x-diff", "diff"); 33 | -------------------------------------------------------------------------------- /codemirror/mode/ecl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: ECL mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

ECL mode

27 |
45 | 48 | 49 |

Based on CodeMirror's clike mode. For more information see HPCC Systems web site.

50 |

MIME types defined: text/x-ecl.

51 | 52 |
53 | -------------------------------------------------------------------------------- /codemirror/mode/http/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: HTTP mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

HTTP mode

27 | 28 | 29 |
39 | 40 | 43 | 44 |

MIME types defined: message/http.

45 |
46 | -------------------------------------------------------------------------------- /codemirror/mode/jinja2/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Jinja2 mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Jinja2 mode

27 |
45 | 50 |
51 | -------------------------------------------------------------------------------- /codemirror/mode/ntriples/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: NTriples mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 15 | 28 | 29 |
30 |

NTriples mode

31 |
32 | 39 |
40 | 41 | 44 |

MIME types defined: text/n-triples.

45 |
46 | -------------------------------------------------------------------------------- /codemirror/mode/pascal/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Pascal mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Pascal mode

27 | 28 | 29 |
52 | 53 | 59 | 60 |

MIME types defined: text/x-pascal.

61 |
62 | -------------------------------------------------------------------------------- /codemirror/mode/pig/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Pig Latin mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Pig Latin mode

27 |
39 | 40 | 47 | 48 |

49 | Simple mode that handles Pig Latin language. 50 |

51 | 52 |

MIME type defined: text/x-pig 53 | (PIG code) 54 | 55 |

56 | -------------------------------------------------------------------------------- /codemirror/mode/rpm/changes/changes.js: -------------------------------------------------------------------------------- 1 | CodeMirror.defineMode("changes", function() { 2 | var headerSeperator = /^-+$/; 3 | var headerLine = /^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ?\d{1,2} \d{2}:\d{2}(:\d{2})? [A-Z]{3,4} \d{4} - /; 4 | var simpleEmail = /^[\w+.-]+@[\w.-]+/; 5 | 6 | return { 7 | token: function(stream) { 8 | if (stream.sol()) { 9 | if (stream.match(headerSeperator)) { return 'tag'; } 10 | if (stream.match(headerLine)) { return 'tag'; } 11 | } 12 | if (stream.match(simpleEmail)) { return 'string'; } 13 | stream.next(); 14 | return null; 15 | } 16 | }; 17 | }); 18 | 19 | CodeMirror.defineMIME("text/x-rpm-changes", "changes"); 20 | -------------------------------------------------------------------------------- /codemirror/mode/rpm/spec/spec.css: -------------------------------------------------------------------------------- 1 | .cm-s-default span.cm-preamble {color: #b26818; font-weight: bold;} 2 | .cm-s-default span.cm-macro {color: #b218b2;} 3 | .cm-s-default span.cm-section {color: green; font-weight: bold;} 4 | .cm-s-default span.cm-script {color: red;} 5 | .cm-s-default span.cm-issue {color: yellow;} 6 | -------------------------------------------------------------------------------- /codemirror/mode/ruby/test.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | var mode = CodeMirror.getMode({indentUnit: 2}, "ruby"); 3 | function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); } 4 | 5 | MT("divide_equal_operator", 6 | "[variable bar] [operator /=] [variable foo]"); 7 | 8 | MT("divide_equal_operator_no_spacing", 9 | "[variable foo][operator /=][number 42]"); 10 | 11 | })(); 12 | -------------------------------------------------------------------------------- /codemirror/mode/rust/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Rust mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Rust mode

27 | 28 | 29 |
52 | 53 | 58 | 59 |

MIME types defined: text/x-rustsrc.

60 |
61 | -------------------------------------------------------------------------------- /codemirror/mode/solr/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Solr mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 20 | 33 | 34 |
35 |

Solr mode

36 | 37 |
38 | 47 |
48 | 49 | 55 | 56 |

MIME types defined: text/x-solr.

57 |
58 | -------------------------------------------------------------------------------- /codemirror/mode/tiddlywiki/tiddlywiki.css: -------------------------------------------------------------------------------- 1 | span.cm-underlined { 2 | text-decoration: underline; 3 | } 4 | span.cm-strikethrough { 5 | text-decoration: line-through; 6 | } 7 | span.cm-brace { 8 | color: #170; 9 | font-weight: bold; 10 | } 11 | span.cm-table { 12 | color: blue; 13 | font-weight: bold; 14 | } 15 | -------------------------------------------------------------------------------- /codemirror/mode/tiki/tiki.css: -------------------------------------------------------------------------------- 1 | .cm-tw-syntaxerror { 2 | color: #FFF; 3 | background-color: #900; 4 | } 5 | 6 | .cm-tw-deleted { 7 | text-decoration: line-through; 8 | } 9 | 10 | .cm-tw-header5 { 11 | font-weight: bold; 12 | } 13 | .cm-tw-listitem:first-child { /*Added first child to fix duplicate padding when highlighting*/ 14 | padding-left: 10px; 15 | } 16 | 17 | .cm-tw-box { 18 | border-top-width: 0px ! important; 19 | border-style: solid; 20 | border-width: 1px; 21 | border-color: inherit; 22 | } 23 | 24 | .cm-tw-underline { 25 | text-decoration: underline; 26 | } -------------------------------------------------------------------------------- /codemirror/mode/turtle/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Turtle mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Turtle mode

27 |
41 | 47 | 48 |

MIME types defined: text/turtle.

49 | 50 |
51 | -------------------------------------------------------------------------------- /codemirror/mode/z80/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Z80 assembly mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Z80 assembly mode

27 | 28 | 29 |
44 | 45 | 50 | 51 |

MIME type defined: text/x-z80.

52 |
53 | -------------------------------------------------------------------------------- /codemirror/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "codemirror", 3 | "version":"3.22.0", 4 | "main": "lib/codemirror.js", 5 | "description": "In-browser code editing made bearable", 6 | "licenses": [{"type": "MIT", 7 | "url": "http://codemirror.net/LICENSE"}], 8 | "directories": {"lib": "./lib"}, 9 | "scripts": {"test": "node ./test/run.js"}, 10 | "bugs": "http://github.com/marijnh/CodeMirror/issues", 11 | "keywords": ["JavaScript", "CodeMirror", "Editor"], 12 | "homepage": "http://codemirror.net", 13 | "maintainers":[{"name": "Marijn Haverbeke", 14 | "email": "marijnh@gmail.com", 15 | "web": "http://marijnhaverbeke.nl"}], 16 | "repository": {"type": "git", 17 | "url": "https://github.com/marijnh/CodeMirror.git"} 18 | } 19 | -------------------------------------------------------------------------------- /codemirror/theme/3024-day.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Name: 3024 day 4 | Author: Jan T. Sott (http://github.com/idleberg) 5 | 6 | CodeMirror template by Jan T. Sott (https://github.com/idleberg/base16-codemirror) 7 | Original Base16 color scheme by Chris Kempson (https://github.com/chriskempson/base16) 8 | 9 | */ 10 | 11 | .cm-s-3024-day.CodeMirror {background: #f7f7f7; color: #3a3432;} 12 | .cm-s-3024-day div.CodeMirror-selected {background: #d6d5d4 !important;} 13 | .cm-s-3024-day .CodeMirror-gutters {background: #f7f7f7; border-right: 0px;} 14 | .cm-s-3024-day .CodeMirror-linenumber {color: #807d7c;} 15 | .cm-s-3024-day .CodeMirror-cursor {border-left: 1px solid #5c5855 !important;} 16 | 17 | .cm-s-3024-day span.cm-comment {color: #cdab53;} 18 | .cm-s-3024-day span.cm-atom {color: #a16a94;} 19 | .cm-s-3024-day span.cm-number {color: #a16a94;} 20 | 21 | .cm-s-3024-day span.cm-property, .cm-s-3024-day span.cm-attribute {color: #01a252;} 22 | .cm-s-3024-day span.cm-keyword {color: #db2d20;} 23 | .cm-s-3024-day span.cm-string {color: #fded02;} 24 | 25 | .cm-s-3024-day span.cm-variable {color: #01a252;} 26 | .cm-s-3024-day span.cm-variable-2 {color: #01a0e4;} 27 | .cm-s-3024-day span.cm-def {color: #e8bbd0;} 28 | .cm-s-3024-day span.cm-bracket {color: #3a3432;} 29 | .cm-s-3024-day span.cm-tag {color: #db2d20;} 30 | .cm-s-3024-day span.cm-link {color: #a16a94;} 31 | .cm-s-3024-day span.cm-error {background: #db2d20; color: #5c5855;} 32 | 33 | .cm-s-3024-day .CodeMirror-activeline-background {background: #e8f2ff !important;} 34 | .cm-s-3024-day .CodeMirror-matchingbracket { text-decoration: underline; color: white !important;} 35 | -------------------------------------------------------------------------------- /codemirror/theme/3024-night.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Name: 3024 night 4 | Author: Jan T. Sott (http://github.com/idleberg) 5 | 6 | CodeMirror template by Jan T. Sott (https://github.com/idleberg/base16-codemirror) 7 | Original Base16 color scheme by Chris Kempson (https://github.com/chriskempson/base16) 8 | 9 | */ 10 | 11 | .cm-s-3024-night.CodeMirror {background: #090300; color: #d6d5d4;} 12 | .cm-s-3024-night div.CodeMirror-selected {background: #3a3432 !important;} 13 | .cm-s-3024-night .CodeMirror-gutters {background: #090300; border-right: 0px;} 14 | .cm-s-3024-night .CodeMirror-linenumber {color: #5c5855;} 15 | .cm-s-3024-night .CodeMirror-cursor {border-left: 1px solid #807d7c !important;} 16 | 17 | .cm-s-3024-night span.cm-comment {color: #cdab53;} 18 | .cm-s-3024-night span.cm-atom {color: #a16a94;} 19 | .cm-s-3024-night span.cm-number {color: #a16a94;} 20 | 21 | .cm-s-3024-night span.cm-property, .cm-s-3024-night span.cm-attribute {color: #01a252;} 22 | .cm-s-3024-night span.cm-keyword {color: #db2d20;} 23 | .cm-s-3024-night span.cm-string {color: #fded02;} 24 | 25 | .cm-s-3024-night span.cm-variable {color: #01a252;} 26 | .cm-s-3024-night span.cm-variable-2 {color: #01a0e4;} 27 | .cm-s-3024-night span.cm-def {color: #e8bbd0;} 28 | .cm-s-3024-night span.cm-bracket {color: #d6d5d4;} 29 | .cm-s-3024-night span.cm-tag {color: #db2d20;} 30 | .cm-s-3024-night span.cm-link {color: #a16a94;} 31 | .cm-s-3024-night span.cm-error {background: #db2d20; color: #807d7c;} 32 | 33 | .cm-s-3024-night .CodeMirror-activeline-background {background: #2F2F2F !important;} 34 | .cm-s-3024-night .CodeMirror-matchingbracket { text-decoration: underline; color: white !important;} 35 | -------------------------------------------------------------------------------- /codemirror/theme/ambiance-mobile.css: -------------------------------------------------------------------------------- 1 | .cm-s-ambiance.CodeMirror { 2 | -webkit-box-shadow: none; 3 | -moz-box-shadow: none; 4 | box-shadow: none; 5 | } 6 | -------------------------------------------------------------------------------- /codemirror/theme/blackboard.css: -------------------------------------------------------------------------------- 1 | /* Port of TextMate's Blackboard theme */ 2 | 3 | .cm-s-blackboard.CodeMirror { background: #0C1021; color: #F8F8F8; } 4 | .cm-s-blackboard .CodeMirror-selected { background: #253B76 !important; } 5 | .cm-s-blackboard .CodeMirror-gutters { background: #0C1021; border-right: 0; } 6 | .cm-s-blackboard .CodeMirror-linenumber { color: #888; } 7 | .cm-s-blackboard .CodeMirror-cursor { border-left: 1px solid #A7A7A7 !important; } 8 | 9 | .cm-s-blackboard .cm-keyword { color: #FBDE2D; } 10 | .cm-s-blackboard .cm-atom { color: #D8FA3C; } 11 | .cm-s-blackboard .cm-number { color: #D8FA3C; } 12 | .cm-s-blackboard .cm-def { color: #8DA6CE; } 13 | .cm-s-blackboard .cm-variable { color: #FF6400; } 14 | .cm-s-blackboard .cm-operator { color: #FBDE2D;} 15 | .cm-s-blackboard .cm-comment { color: #AEAEAE; } 16 | .cm-s-blackboard .cm-string { color: #61CE3C; } 17 | .cm-s-blackboard .cm-string-2 { color: #61CE3C; } 18 | .cm-s-blackboard .cm-meta { color: #D8FA3C; } 19 | .cm-s-blackboard .cm-builtin { color: #8DA6CE; } 20 | .cm-s-blackboard .cm-tag { color: #8DA6CE; } 21 | .cm-s-blackboard .cm-attribute { color: #8DA6CE; } 22 | .cm-s-blackboard .cm-header { color: #FF6400; } 23 | .cm-s-blackboard .cm-hr { color: #AEAEAE; } 24 | .cm-s-blackboard .cm-link { color: #8DA6CE; } 25 | .cm-s-blackboard .cm-error { background: #9D1E15; color: #F8F8F8; } 26 | 27 | .cm-s-blackboard .CodeMirror-activeline-background {background: #3C3636 !important;} 28 | .cm-s-blackboard .CodeMirror-matchingbracket {outline:1px solid grey;color:white !important} -------------------------------------------------------------------------------- /codemirror/theme/cobalt.css: -------------------------------------------------------------------------------- 1 | .cm-s-cobalt.CodeMirror { background: #002240; color: white; } 2 | .cm-s-cobalt div.CodeMirror-selected { background: #b36539 !important; } 3 | .cm-s-cobalt .CodeMirror-gutters { background: #002240; border-right: 1px solid #aaa; } 4 | .cm-s-cobalt .CodeMirror-linenumber { color: #d0d0d0; } 5 | .cm-s-cobalt .CodeMirror-cursor { border-left: 1px solid white !important; } 6 | 7 | .cm-s-cobalt span.cm-comment { color: #08f; } 8 | .cm-s-cobalt span.cm-atom { color: #845dc4; } 9 | .cm-s-cobalt span.cm-number, .cm-s-cobalt span.cm-attribute { color: #ff80e1; } 10 | .cm-s-cobalt span.cm-keyword { color: #ffee80; } 11 | .cm-s-cobalt span.cm-string { color: #3ad900; } 12 | .cm-s-cobalt span.cm-meta { color: #ff9d00; } 13 | .cm-s-cobalt span.cm-variable-2, .cm-s-cobalt span.cm-tag { color: #9effff; } 14 | .cm-s-cobalt span.cm-variable-3, .cm-s-cobalt span.cm-def { color: white; } 15 | .cm-s-cobalt span.cm-bracket { color: #d8d8d8; } 16 | .cm-s-cobalt span.cm-builtin, .cm-s-cobalt span.cm-special { color: #ff9e59; } 17 | .cm-s-cobalt span.cm-link { color: #845dc4; } 18 | .cm-s-cobalt span.cm-error { color: #9d1e15; } 19 | 20 | .cm-s-cobalt .CodeMirror-activeline-background {background: #002D57 !important;} 21 | .cm-s-cobalt .CodeMirror-matchingbracket {outline:1px solid grey;color:white !important} 22 | -------------------------------------------------------------------------------- /codemirror/theme/eclipse.css: -------------------------------------------------------------------------------- 1 | .cm-s-eclipse span.cm-meta {color: #FF1717;} 2 | .cm-s-eclipse span.cm-keyword { line-height: 1em; font-weight: bold; color: #7F0055; } 3 | .cm-s-eclipse span.cm-atom {color: #219;} 4 | .cm-s-eclipse span.cm-number {color: #164;} 5 | .cm-s-eclipse span.cm-def {color: #00f;} 6 | .cm-s-eclipse span.cm-variable {color: black;} 7 | .cm-s-eclipse span.cm-variable-2 {color: #0000C0;} 8 | .cm-s-eclipse span.cm-variable-3 {color: #0000C0;} 9 | .cm-s-eclipse span.cm-property {color: black;} 10 | .cm-s-eclipse span.cm-operator {color: black;} 11 | .cm-s-eclipse span.cm-comment {color: #3F7F5F;} 12 | .cm-s-eclipse span.cm-string {color: #2A00FF;} 13 | .cm-s-eclipse span.cm-string-2 {color: #f50;} 14 | .cm-s-eclipse span.cm-qualifier {color: #555;} 15 | .cm-s-eclipse span.cm-builtin {color: #30a;} 16 | .cm-s-eclipse span.cm-bracket {color: #cc7;} 17 | .cm-s-eclipse span.cm-tag {color: #170;} 18 | .cm-s-eclipse span.cm-attribute {color: #00c;} 19 | .cm-s-eclipse span.cm-link {color: #219;} 20 | .cm-s-eclipse span.cm-error {color: #f00;} 21 | 22 | .cm-s-eclipse .CodeMirror-activeline-background {background: #e8f2ff !important;} 23 | .cm-s-eclipse .CodeMirror-matchingbracket {outline:1px solid grey; color:black !important;} 24 | -------------------------------------------------------------------------------- /codemirror/theme/elegant.css: -------------------------------------------------------------------------------- 1 | .cm-s-elegant span.cm-number, .cm-s-elegant span.cm-string, .cm-s-elegant span.cm-atom {color: #762;} 2 | .cm-s-elegant span.cm-comment {color: #262; font-style: italic; line-height: 1em;} 3 | .cm-s-elegant span.cm-meta {color: #555; font-style: italic; line-height: 1em;} 4 | .cm-s-elegant span.cm-variable {color: black;} 5 | .cm-s-elegant span.cm-variable-2 {color: #b11;} 6 | .cm-s-elegant span.cm-qualifier {color: #555;} 7 | .cm-s-elegant span.cm-keyword {color: #730;} 8 | .cm-s-elegant span.cm-builtin {color: #30a;} 9 | .cm-s-elegant span.cm-link {color: #762;} 10 | .cm-s-elegant span.cm-error {background-color: #fdd;} 11 | 12 | .cm-s-elegant .CodeMirror-activeline-background {background: #e8f2ff !important;} 13 | .cm-s-elegant .CodeMirror-matchingbracket {outline:1px solid grey; color:black !important;} 14 | -------------------------------------------------------------------------------- /codemirror/theme/mbo.css: -------------------------------------------------------------------------------- 1 | /* Based on mbonaci's Brackets mbo theme */ 2 | 3 | .cm-s-mbo.CodeMirror {background: #2c2c2c; color: #ffffe9;} 4 | .cm-s-mbo div.CodeMirror-selected {background: #716C62 !important;} 5 | .cm-s-mbo .CodeMirror-gutters {background: #4e4e4e; border-right: 0px;} 6 | .cm-s-mbo .CodeMirror-linenumber {color: #dadada;} 7 | .cm-s-mbo .CodeMirror-cursor {border-left: 1px solid #ffffec !important;} 8 | 9 | .cm-s-mbo span.cm-comment {color: #95958a;} 10 | .cm-s-mbo span.cm-atom {color: #00a8c6;} 11 | .cm-s-mbo span.cm-number {color: #00a8c6;} 12 | 13 | .cm-s-mbo span.cm-property, .cm-s-mbo span.cm-attribute {color: #9ddfe9;} 14 | .cm-s-mbo span.cm-keyword {color: #ffb928;} 15 | .cm-s-mbo span.cm-string {color: #ffcf6c;} 16 | 17 | .cm-s-mbo span.cm-variable {color: #ffffec;} 18 | .cm-s-mbo span.cm-variable-2 {color: #00a8c6;} 19 | .cm-s-mbo span.cm-def {color: #ffffec;} 20 | .cm-s-mbo span.cm-bracket {color: #fffffc; font-weight: bold;} 21 | .cm-s-mbo span.cm-tag {color: #9ddfe9;} 22 | .cm-s-mbo span.cm-link {color: #f54b07;} 23 | .cm-s-mbo span.cm-error {background: #636363; color: #ffffec;} 24 | 25 | .cm-s-mbo .CodeMirror-activeline-background {background: #494b41 !important;} 26 | .cm-s-mbo .CodeMirror-matchingbracket { 27 | text-decoration: underline; 28 | color: #f5e107 !important; 29 | } 30 | 31 | .cm-s-mbo .CodeMirror-matchingtag {background: #4e4e4e;} 32 | 33 | .cm-s-mbo span.cm-searching { 34 | background-color: none; 35 | background: none; 36 | box-shadow: 0 0 0 1px #ffffec; 37 | } 38 | -------------------------------------------------------------------------------- /codemirror/theme/monokai.css: -------------------------------------------------------------------------------- 1 | /* Based on Sublime Text's Monokai theme */ 2 | 3 | .cm-s-monokai.CodeMirror {background: #272822; color: #f8f8f2;} 4 | .cm-s-monokai div.CodeMirror-selected {background: #49483E !important;} 5 | .cm-s-monokai .CodeMirror-gutters {background: #272822; border-right: 0px;} 6 | .cm-s-monokai .CodeMirror-linenumber {color: #d0d0d0;} 7 | .cm-s-monokai .CodeMirror-cursor {border-left: 1px solid #f8f8f0 !important;} 8 | 9 | .cm-s-monokai span.cm-comment {color: #75715e;} 10 | .cm-s-monokai span.cm-atom {color: #ae81ff;} 11 | .cm-s-monokai span.cm-number {color: #ae81ff;} 12 | 13 | .cm-s-monokai span.cm-property, .cm-s-monokai span.cm-attribute {color: #a6e22e;} 14 | .cm-s-monokai span.cm-keyword {color: #f92672;} 15 | .cm-s-monokai span.cm-string {color: #e6db74;} 16 | 17 | .cm-s-monokai span.cm-variable {color: #a6e22e;} 18 | .cm-s-monokai span.cm-variable-2 {color: #9effff;} 19 | .cm-s-monokai span.cm-def {color: #fd971f;} 20 | .cm-s-monokai span.cm-bracket {color: #f8f8f2;} 21 | .cm-s-monokai span.cm-tag {color: #f92672;} 22 | .cm-s-monokai span.cm-link {color: #ae81ff;} 23 | .cm-s-monokai span.cm-error {background: #f92672; color: #f8f8f0;} 24 | 25 | .cm-s-monokai .CodeMirror-activeline-background {background: #373831 !important;} 26 | .cm-s-monokai .CodeMirror-matchingbracket { 27 | text-decoration: underline; 28 | color: white !important; 29 | } 30 | -------------------------------------------------------------------------------- /codemirror/theme/neat.css: -------------------------------------------------------------------------------- 1 | .cm-s-neat span.cm-comment { color: #a86; } 2 | .cm-s-neat span.cm-keyword { line-height: 1em; font-weight: bold; color: blue; } 3 | .cm-s-neat span.cm-string { color: #a22; } 4 | .cm-s-neat span.cm-builtin { line-height: 1em; font-weight: bold; color: #077; } 5 | .cm-s-neat span.cm-special { line-height: 1em; font-weight: bold; color: #0aa; } 6 | .cm-s-neat span.cm-variable { color: black; } 7 | .cm-s-neat span.cm-number, .cm-s-neat span.cm-atom { color: #3a3; } 8 | .cm-s-neat span.cm-meta {color: #555;} 9 | .cm-s-neat span.cm-link { color: #3a3; } 10 | 11 | .cm-s-neat .CodeMirror-activeline-background {background: #e8f2ff !important;} 12 | .cm-s-neat .CodeMirror-matchingbracket {outline:1px solid grey; color:black !important;} 13 | -------------------------------------------------------------------------------- /codemirror/theme/night.css: -------------------------------------------------------------------------------- 1 | /* Loosely based on the Midnight Textmate theme */ 2 | 3 | .cm-s-night.CodeMirror { background: #0a001f; color: #f8f8f8; } 4 | .cm-s-night div.CodeMirror-selected { background: #447 !important; } 5 | .cm-s-night .CodeMirror-gutters { background: #0a001f; border-right: 1px solid #aaa; } 6 | .cm-s-night .CodeMirror-linenumber { color: #f8f8f8; } 7 | .cm-s-night .CodeMirror-cursor { border-left: 1px solid white !important; } 8 | 9 | .cm-s-night span.cm-comment { color: #6900a1; } 10 | .cm-s-night span.cm-atom { color: #845dc4; } 11 | .cm-s-night span.cm-number, .cm-s-night span.cm-attribute { color: #ffd500; } 12 | .cm-s-night span.cm-keyword { color: #599eff; } 13 | .cm-s-night span.cm-string { color: #37f14a; } 14 | .cm-s-night span.cm-meta { color: #7678e2; } 15 | .cm-s-night span.cm-variable-2, .cm-s-night span.cm-tag { color: #99b2ff; } 16 | .cm-s-night span.cm-variable-3, .cm-s-night span.cm-def { color: white; } 17 | .cm-s-night span.cm-bracket { color: #8da6ce; } 18 | .cm-s-night span.cm-comment { color: #6900a1; } 19 | .cm-s-night span.cm-builtin, .cm-s-night span.cm-special { color: #ff9e59; } 20 | .cm-s-night span.cm-link { color: #845dc4; } 21 | .cm-s-night span.cm-error { color: #9d1e15; } 22 | 23 | .cm-s-night .CodeMirror-activeline-background {background: #1C005A !important;} 24 | .cm-s-night .CodeMirror-matchingbracket {outline:1px solid grey; color:white !important;} 25 | -------------------------------------------------------------------------------- /codemirror/theme/paraiso-dark.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Name: Paraíso (Dark) 4 | Author: Jan T. Sott 5 | 6 | Color scheme by Jan T. Sott (https://github.com/idleberg/Paraiso-CodeMirror) 7 | Inspired by the art of Rubens LP (http://www.rubenslp.com.br) 8 | 9 | */ 10 | 11 | .cm-s-paraiso-dark.CodeMirror {background: #2f1e2e; color: #b9b6b0;} 12 | .cm-s-paraiso-dark div.CodeMirror-selected {background: #41323f !important;} 13 | .cm-s-paraiso-dark .CodeMirror-gutters {background: #2f1e2e; border-right: 0px;} 14 | .cm-s-paraiso-dark .CodeMirror-linenumber {color: #776e71;} 15 | .cm-s-paraiso-dark .CodeMirror-cursor {border-left: 1px solid #8d8687 !important;} 16 | 17 | .cm-s-paraiso-dark span.cm-comment {color: #e96ba8;} 18 | .cm-s-paraiso-dark span.cm-atom {color: #815ba4;} 19 | .cm-s-paraiso-dark span.cm-number {color: #815ba4;} 20 | 21 | .cm-s-paraiso-dark span.cm-property, .cm-s-paraiso-dark span.cm-attribute {color: #48b685;} 22 | .cm-s-paraiso-dark span.cm-keyword {color: #ef6155;} 23 | .cm-s-paraiso-dark span.cm-string {color: #fec418;} 24 | 25 | .cm-s-paraiso-dark span.cm-variable {color: #48b685;} 26 | .cm-s-paraiso-dark span.cm-variable-2 {color: #06b6ef;} 27 | .cm-s-paraiso-dark span.cm-def {color: #f99b15;} 28 | .cm-s-paraiso-dark span.cm-bracket {color: #b9b6b0;} 29 | .cm-s-paraiso-dark span.cm-tag {color: #ef6155;} 30 | .cm-s-paraiso-dark span.cm-link {color: #815ba4;} 31 | .cm-s-paraiso-dark span.cm-error {background: #ef6155; color: #8d8687;} 32 | 33 | .cm-s-paraiso-dark .CodeMirror-activeline-background {background: #4D344A !important;} 34 | .cm-s-paraiso-dark .CodeMirror-matchingbracket { text-decoration: underline; color: white !important;} 35 | -------------------------------------------------------------------------------- /codemirror/theme/paraiso-light.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Name: Paraíso (Light) 4 | Author: Jan T. Sott 5 | 6 | Color scheme by Jan T. Sott (https://github.com/idleberg/Paraiso-CodeMirror) 7 | Inspired by the art of Rubens LP (http://www.rubenslp.com.br) 8 | 9 | */ 10 | 11 | .cm-s-paraiso-light.CodeMirror {background: #e7e9db; color: #41323f;} 12 | .cm-s-paraiso-light div.CodeMirror-selected {background: #b9b6b0 !important;} 13 | .cm-s-paraiso-light .CodeMirror-gutters {background: #e7e9db; border-right: 0px;} 14 | .cm-s-paraiso-light .CodeMirror-linenumber {color: #8d8687;} 15 | .cm-s-paraiso-light .CodeMirror-cursor {border-left: 1px solid #776e71 !important;} 16 | 17 | .cm-s-paraiso-light span.cm-comment {color: #e96ba8;} 18 | .cm-s-paraiso-light span.cm-atom {color: #815ba4;} 19 | .cm-s-paraiso-light span.cm-number {color: #815ba4;} 20 | 21 | .cm-s-paraiso-light span.cm-property, .cm-s-paraiso-light span.cm-attribute {color: #48b685;} 22 | .cm-s-paraiso-light span.cm-keyword {color: #ef6155;} 23 | .cm-s-paraiso-light span.cm-string {color: #fec418;} 24 | 25 | .cm-s-paraiso-light span.cm-variable {color: #48b685;} 26 | .cm-s-paraiso-light span.cm-variable-2 {color: #06b6ef;} 27 | .cm-s-paraiso-light span.cm-def {color: #f99b15;} 28 | .cm-s-paraiso-light span.cm-bracket {color: #41323f;} 29 | .cm-s-paraiso-light span.cm-tag {color: #ef6155;} 30 | .cm-s-paraiso-light span.cm-link {color: #815ba4;} 31 | .cm-s-paraiso-light span.cm-error {background: #ef6155; color: #776e71;} 32 | 33 | .cm-s-paraiso-light .CodeMirror-activeline-background {background: #CFD1C4 !important;} 34 | .cm-s-paraiso-light .CodeMirror-matchingbracket { text-decoration: underline; color: white !important;} 35 | -------------------------------------------------------------------------------- /codemirror/theme/rubyblue.css: -------------------------------------------------------------------------------- 1 | .cm-s-rubyblue { font-family: Trebuchet, Verdana, sans-serif; } /* - customized editor font - */ 2 | 3 | .cm-s-rubyblue.CodeMirror { background: #112435; color: white; } 4 | .cm-s-rubyblue div.CodeMirror-selected { background: #38566F !important; } 5 | .cm-s-rubyblue .CodeMirror-gutters { background: #1F4661; border-right: 7px solid #3E7087; } 6 | .cm-s-rubyblue .CodeMirror-linenumber { color: white; } 7 | .cm-s-rubyblue .CodeMirror-cursor { border-left: 1px solid white !important; } 8 | 9 | .cm-s-rubyblue span.cm-comment { color: #999; font-style:italic; line-height: 1em; } 10 | .cm-s-rubyblue span.cm-atom { color: #F4C20B; } 11 | .cm-s-rubyblue span.cm-number, .cm-s-rubyblue span.cm-attribute { color: #82C6E0; } 12 | .cm-s-rubyblue span.cm-keyword { color: #F0F; } 13 | .cm-s-rubyblue span.cm-string { color: #F08047; } 14 | .cm-s-rubyblue span.cm-meta { color: #F0F; } 15 | .cm-s-rubyblue span.cm-variable-2, .cm-s-rubyblue span.cm-tag { color: #7BD827; } 16 | .cm-s-rubyblue span.cm-variable-3, .cm-s-rubyblue span.cm-def { color: white; } 17 | .cm-s-rubyblue span.cm-bracket { color: #F0F; } 18 | .cm-s-rubyblue span.cm-link { color: #F4C20B; } 19 | .cm-s-rubyblue span.CodeMirror-matchingbracket { color:#F0F !important; } 20 | .cm-s-rubyblue span.cm-builtin, .cm-s-rubyblue span.cm-special { color: #FF9D00; } 21 | .cm-s-rubyblue span.cm-error { color: #AF2018; } 22 | 23 | .cm-s-rubyblue .CodeMirror-activeline-background {background: #173047 !important;} 24 | -------------------------------------------------------------------------------- /codemirror/theme/the-matrix.css: -------------------------------------------------------------------------------- 1 | .cm-s-the-matrix.CodeMirror { background: #000000; color: #00FF00; } 2 | .cm-s-the-matrix div.CodeMirror-selected { background: #2D2D2D !important; } 3 | .cm-s-the-matrix .CodeMirror-gutters { background: #060; border-right: 2px solid #00FF00; } 4 | .cm-s-the-matrix .CodeMirror-linenumber { color: #FFFFFF; } 5 | .cm-s-the-matrix .CodeMirror-cursor { border-left: 1px solid #00FF00 !important; } 6 | 7 | .cm-s-the-matrix span.cm-keyword {color: #008803; font-weight: bold;} 8 | .cm-s-the-matrix span.cm-atom {color: #3FF;} 9 | .cm-s-the-matrix span.cm-number {color: #FFB94F;} 10 | .cm-s-the-matrix span.cm-def {color: #99C;} 11 | .cm-s-the-matrix span.cm-variable {color: #F6C;} 12 | .cm-s-the-matrix span.cm-variable-2 {color: #C6F;} 13 | .cm-s-the-matrix span.cm-variable-3 {color: #96F;} 14 | .cm-s-the-matrix span.cm-property {color: #62FFA0;} 15 | .cm-s-the-matrix span.cm-operator {color: #999} 16 | .cm-s-the-matrix span.cm-comment {color: #CCCCCC;} 17 | .cm-s-the-matrix span.cm-string {color: #39C;} 18 | .cm-s-the-matrix span.cm-meta {color: #C9F;} 19 | .cm-s-the-matrix span.cm-qualifier {color: #FFF700;} 20 | .cm-s-the-matrix span.cm-builtin {color: #30a;} 21 | .cm-s-the-matrix span.cm-bracket {color: #cc7;} 22 | .cm-s-the-matrix span.cm-tag {color: #FFBD40;} 23 | .cm-s-the-matrix span.cm-attribute {color: #FFF700;} 24 | .cm-s-the-matrix span.cm-error {color: #FF0000;} 25 | 26 | .cm-s-the-matrix .CodeMirror-activeline-background {background: #040;} 27 | -------------------------------------------------------------------------------- /css/editor.css: -------------------------------------------------------------------------------- 1 | body{ 2 | padding: 10px; 3 | } 4 | -------------------------------------------------------------------------------- /css/front-end.css: -------------------------------------------------------------------------------- 1 | 2 | /* Copy this css into you're theme to style the SendPress sign up widget. */ 3 | 4 | /* container for the signup form */ 5 | .sendpress-signup-form{ 6 | position:relative; 7 | } 8 | /* labels in the sign up form */ 9 | .sendpress-signup-form label{ 10 | display:block; 11 | word-wrap: none; 12 | padding:0 5px 0 0; 13 | } 14 | /* input fields in sign up form */ 15 | .sendpress-signup-form input[type=text]{ 16 | width: 100%; 17 | } 18 | /* submit button */ 19 | .sendpress-submit{ 20 | margin-top: 20px; 21 | display: inline-block !important; 22 | } 23 | /* element where error messages are displayed */ 24 | .sendpress-signup-form #error{ 25 | color:#8B0000; 26 | margin:10px 0px; 27 | display:none; 28 | } 29 | /* element where the thank you message shows upon successful submit */ 30 | .sendpress-signup-form #thanks, 31 | .sendpress-signup-form #exists{ 32 | margin:10px 0px; 33 | display:none; 34 | } 35 | /*Extra fields that only exist if you have SendPress Pro*/ 36 | .signup-fields-bottom label{ 37 | /*float:left;*/ 38 | display:inline; 39 | } 40 | 41 | .ajaxloader{ 42 | margin-left:5px; 43 | display:none; 44 | } 45 | 46 | -------------------------------------------------------------------------------- /css/smoothness/images/animated-overlay.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/animated-overlay.gif -------------------------------------------------------------------------------- /css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-bg_glass_75_dadada_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-icons_222222_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-icons_222222_256x240.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-icons_2e83ff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-icons_2e83ff_256x240.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-icons_454545_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-icons_454545_256x240.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-icons_888888_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-icons_888888_256x240.png -------------------------------------------------------------------------------- /css/smoothness/images/ui-icons_cd0a0a_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/css/smoothness/images/ui-icons_cd0a0a_256x240.png -------------------------------------------------------------------------------- /fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /img/16px/500px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/500px.png -------------------------------------------------------------------------------- /img/16px/AddThis.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/AddThis.png -------------------------------------------------------------------------------- /img/16px/AppNet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/AppNet.png -------------------------------------------------------------------------------- /img/16px/Behance.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Behance.png -------------------------------------------------------------------------------- /img/16px/Blogger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Blogger.png -------------------------------------------------------------------------------- /img/16px/Delicious.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Delicious.png -------------------------------------------------------------------------------- /img/16px/DeviantART.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/DeviantART.png -------------------------------------------------------------------------------- /img/16px/Digg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Digg.png -------------------------------------------------------------------------------- /img/16px/Dopplr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Dopplr.png -------------------------------------------------------------------------------- /img/16px/Dribbble.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Dribbble.png -------------------------------------------------------------------------------- /img/16px/Evernote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Evernote.png -------------------------------------------------------------------------------- /img/16px/Facebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Facebook.png -------------------------------------------------------------------------------- /img/16px/Flickr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Flickr.png -------------------------------------------------------------------------------- /img/16px/Forrst.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Forrst.png -------------------------------------------------------------------------------- /img/16px/GitHub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/GitHub.png -------------------------------------------------------------------------------- /img/16px/Google+.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Google+.png -------------------------------------------------------------------------------- /img/16px/Grooveshark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Grooveshark.png -------------------------------------------------------------------------------- /img/16px/Instagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Instagram.png -------------------------------------------------------------------------------- /img/16px/Lastfm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Lastfm.png -------------------------------------------------------------------------------- /img/16px/LinkedIn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/LinkedIn.png -------------------------------------------------------------------------------- /img/16px/Mail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Mail.png -------------------------------------------------------------------------------- /img/16px/MySpace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/MySpace.png -------------------------------------------------------------------------------- /img/16px/Path.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Path.png -------------------------------------------------------------------------------- /img/16px/PayPal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/PayPal.png -------------------------------------------------------------------------------- /img/16px/Picasa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Picasa.png -------------------------------------------------------------------------------- /img/16px/Pinterest.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Pinterest.png -------------------------------------------------------------------------------- /img/16px/Posterous.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Posterous.png -------------------------------------------------------------------------------- /img/16px/RSS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/RSS.png -------------------------------------------------------------------------------- /img/16px/Reddit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Reddit.png -------------------------------------------------------------------------------- /img/16px/ShareThis.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/ShareThis.png -------------------------------------------------------------------------------- /img/16px/Skype.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Skype.png -------------------------------------------------------------------------------- /img/16px/Soundcloud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Soundcloud.png -------------------------------------------------------------------------------- /img/16px/Spotify.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Spotify.png -------------------------------------------------------------------------------- /img/16px/StumbleUpon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/StumbleUpon.png -------------------------------------------------------------------------------- /img/16px/Tumblr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Tumblr.png -------------------------------------------------------------------------------- /img/16px/Twitter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Twitter.png -------------------------------------------------------------------------------- /img/16px/Viddler.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Viddler.png -------------------------------------------------------------------------------- /img/16px/Vimeo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Vimeo.png -------------------------------------------------------------------------------- /img/16px/Virb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Virb.png -------------------------------------------------------------------------------- /img/16px/Windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Windows.png -------------------------------------------------------------------------------- /img/16px/WordPress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/WordPress.png -------------------------------------------------------------------------------- /img/16px/YouTube.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/YouTube.png -------------------------------------------------------------------------------- /img/16px/Zerply.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/16px/Zerply.png -------------------------------------------------------------------------------- /img/32px/500px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/500px.png -------------------------------------------------------------------------------- /img/32px/AddThis.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/AddThis.png -------------------------------------------------------------------------------- /img/32px/AppNet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/AppNet.png -------------------------------------------------------------------------------- /img/32px/Behance.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Behance.png -------------------------------------------------------------------------------- /img/32px/Blogger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Blogger.png -------------------------------------------------------------------------------- /img/32px/Delicious.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Delicious.png -------------------------------------------------------------------------------- /img/32px/DeviantART.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/DeviantART.png -------------------------------------------------------------------------------- /img/32px/Digg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Digg.png -------------------------------------------------------------------------------- /img/32px/Dopplr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Dopplr.png -------------------------------------------------------------------------------- /img/32px/Dribbble.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Dribbble.png -------------------------------------------------------------------------------- /img/32px/Evernote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Evernote.png -------------------------------------------------------------------------------- /img/32px/Facebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Facebook.png -------------------------------------------------------------------------------- /img/32px/Flickr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Flickr.png -------------------------------------------------------------------------------- /img/32px/Forrst.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Forrst.png -------------------------------------------------------------------------------- /img/32px/GitHub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/GitHub.png -------------------------------------------------------------------------------- /img/32px/Google+.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Google+.png -------------------------------------------------------------------------------- /img/32px/Grooveshark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Grooveshark.png -------------------------------------------------------------------------------- /img/32px/Instagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Instagram.png -------------------------------------------------------------------------------- /img/32px/Lastfm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Lastfm.png -------------------------------------------------------------------------------- /img/32px/LinkedIn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/LinkedIn.png -------------------------------------------------------------------------------- /img/32px/Mail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Mail.png -------------------------------------------------------------------------------- /img/32px/MySpace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/MySpace.png -------------------------------------------------------------------------------- /img/32px/Path.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Path.png -------------------------------------------------------------------------------- /img/32px/PayPal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/PayPal.png -------------------------------------------------------------------------------- /img/32px/Picasa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Picasa.png -------------------------------------------------------------------------------- /img/32px/Pinterest.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Pinterest.png -------------------------------------------------------------------------------- /img/32px/Posterous.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Posterous.png -------------------------------------------------------------------------------- /img/32px/RSS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/RSS.png -------------------------------------------------------------------------------- /img/32px/Reddit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Reddit.png -------------------------------------------------------------------------------- /img/32px/ShareThis.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/ShareThis.png -------------------------------------------------------------------------------- /img/32px/Skype.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Skype.png -------------------------------------------------------------------------------- /img/32px/Soundcloud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Soundcloud.png -------------------------------------------------------------------------------- /img/32px/Spotify.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Spotify.png -------------------------------------------------------------------------------- /img/32px/StumbleUpon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/StumbleUpon.png -------------------------------------------------------------------------------- /img/32px/Tumblr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Tumblr.png -------------------------------------------------------------------------------- /img/32px/Twitter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Twitter.png -------------------------------------------------------------------------------- /img/32px/Viddler.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Viddler.png -------------------------------------------------------------------------------- /img/32px/Vimeo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Vimeo.png -------------------------------------------------------------------------------- /img/32px/Virb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Virb.png -------------------------------------------------------------------------------- /img/32px/Windows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Windows.png -------------------------------------------------------------------------------- /img/32px/WordPress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/WordPress.png -------------------------------------------------------------------------------- /img/32px/YouTube.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/YouTube.png -------------------------------------------------------------------------------- /img/32px/Zerply.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/32px/Zerply.png -------------------------------------------------------------------------------- /img/ajax-loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/ajax-loader.gif -------------------------------------------------------------------------------- /img/autocron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/autocron.png -------------------------------------------------------------------------------- /img/button.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/button.jpg -------------------------------------------------------------------------------- /img/clear.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/clear.gif -------------------------------------------------------------------------------- /img/customedit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/customedit.png -------------------------------------------------------------------------------- /img/display.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/display.png -------------------------------------------------------------------------------- /img/forms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/forms.png -------------------------------------------------------------------------------- /img/glyphicons-halflings-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/glyphicons-halflings-white.png -------------------------------------------------------------------------------- /img/glyphicons-halflings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/glyphicons-halflings.png -------------------------------------------------------------------------------- /img/ibutton-slider-default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/ibutton-slider-default.png -------------------------------------------------------------------------------- /img/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/icon.png -------------------------------------------------------------------------------- /img/icons.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/icons.jpg -------------------------------------------------------------------------------- /img/icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/icons.png -------------------------------------------------------------------------------- /img/imac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/imac.png -------------------------------------------------------------------------------- /img/import.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/import.png -------------------------------------------------------------------------------- /img/ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/ipad.png -------------------------------------------------------------------------------- /img/ipadready.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/ipadready.png -------------------------------------------------------------------------------- /img/iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/iphone.png -------------------------------------------------------------------------------- /img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/logo.png -------------------------------------------------------------------------------- /img/logopro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/logopro.png -------------------------------------------------------------------------------- /img/new-forms.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/new-forms.jpg -------------------------------------------------------------------------------- /img/newlook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/newlook.png -------------------------------------------------------------------------------- /img/postnotifications.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/postnotifications.jpg -------------------------------------------------------------------------------- /img/pro-reports.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/pro-reports.jpg -------------------------------------------------------------------------------- /img/prot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/prot.png -------------------------------------------------------------------------------- /img/ratethis.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/ratethis.png -------------------------------------------------------------------------------- /img/review-us.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/review-us.png -------------------------------------------------------------------------------- /img/reviewus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/reviewus.png -------------------------------------------------------------------------------- /img/roles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/roles.png -------------------------------------------------------------------------------- /img/schedule.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/schedule.png -------------------------------------------------------------------------------- /img/sendhistory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendhistory.png -------------------------------------------------------------------------------- /img/sending-errors.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sending-errors.png -------------------------------------------------------------------------------- /img/sendpress-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendpress-16.png -------------------------------------------------------------------------------- /img/sendpress-160.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendpress-160.png -------------------------------------------------------------------------------- /img/sendpress-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendpress-32.png -------------------------------------------------------------------------------- /img/sendpress-bg-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendpress-bg-16.png -------------------------------------------------------------------------------- /img/sendpress-bg-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendpress-bg-32.png -------------------------------------------------------------------------------- /img/sendpress-black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendpress-black.png -------------------------------------------------------------------------------- /img/sendpress-blue.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendpress-blue.jpg -------------------------------------------------------------------------------- /img/sendpress-red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendpress-red.png -------------------------------------------------------------------------------- /img/sendpress.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendpress.jpg -------------------------------------------------------------------------------- /img/sendpress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sendpress.png -------------------------------------------------------------------------------- /img/simpleeditor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/simpleeditor.png -------------------------------------------------------------------------------- /img/sp-badge-old.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sp-badge-old.png -------------------------------------------------------------------------------- /img/sp-badge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sp-badge.png -------------------------------------------------------------------------------- /img/sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/sprite.png -------------------------------------------------------------------------------- /img/v1update.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/v1update.png -------------------------------------------------------------------------------- /img/whatsnew-header.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/img/whatsnew-header.jpg -------------------------------------------------------------------------------- /index.php: -------------------------------------------------------------------------------- 1 | -1?"&":"?","enablejsapi=1&api=1"].join(""))}},check:function(){var a,b,c=this.parent.width(),d=this.parent.height();c/this.ratiospan:first"},init:function(){var a=this;this.target=this.find(this.options.target),this.select=this.find("select"),this.select.on("change",function(){var b=a.select[0],c=function(){try{a.target.text(b.options[b.selectedIndex].text)}catch(d){}return c};return c()}()),this.element.data("formSelect",this)}}),b.ready(function(c){a("[data-uk-form-select]",c).each(function(){var c=a(this);if(!c.data("formSelect")){b.formSelect(c,b.Utils.options(c.attr("data-uk-form-select")))}})}),b.formSelect}); -------------------------------------------------------------------------------- /js/customizer-admin.js: -------------------------------------------------------------------------------- 1 | customizer-admin.js -------------------------------------------------------------------------------- /js/customizer-public.js: -------------------------------------------------------------------------------- 1 | customizer-public.js -------------------------------------------------------------------------------- /js/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/js/icon.png -------------------------------------------------------------------------------- /js/mailmerge_plugin.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | tinymce.create('tinymce.plugins.SendPress', { 3 | init : function(ed, url) { 4 | spadmin.current_ed = ed; 5 | // Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('mceExample'); 6 | ed.addCommand('WP_SP', function() { 7 | jQuery('#sendpress-helper').modal('show'); 8 | }, { 9 | plugin_url : url // Plugin absolute URL 10 | }); 11 | 12 | 13 | ed.addButton('sendpress', { 14 | title : 'SendPress', 15 | image : url + '/icon.png', 16 | cmd : 'WP_SP' 17 | }); 18 | }, 19 | 20 | getInfo : function() { 21 | return { 22 | longname : "SendPressShortcodes", 23 | author : 'Josh Lyford', 24 | authorurl : 'http://sendpress.com/', 25 | infourl : 'http://sendpress.com/', 26 | version : "1.0" 27 | }; 28 | } 29 | }); 30 | tinymce.PluginManager.add('sendpress', tinymce.plugins.SendPress); 31 | })(); -------------------------------------------------------------------------------- /js/spnl-backbone.js: -------------------------------------------------------------------------------- 1 | 2 | (function($) { 3 | 4 | var AppRouter = Backbone.Router.extend({ 5 | routes: { 6 | "spnl/:action/:id": "defaultRoute" // matches http://example.com/#anything-here 7 | } 8 | }); 9 | 10 | 11 | var x = Backbone.View.extend({ 12 | tagName: 'div', 13 | // Get the template from the DOM 14 | template : wp.template( 'my-awesome-template'), 15 | 16 | // When a model is saved, return the button to the disabled state 17 | initialize:function () { 18 | var _this = this; 19 | 20 | } 21 | ,render: function() { 22 | this.$el.html(this.template({name: 'world'})); 23 | } 24 | 25 | 26 | }); 27 | 28 | 29 | // Initiate the router 30 | var app_router = new AppRouter; 31 | 32 | app_router.on('route:defaultRoute', function(actions,id) { 33 | alert(actions + ' ' + id); 34 | $(document).ready(function(){ 35 | var t = new x({}); 36 | t.render(); 37 | $('body').append(t.$el); 38 | //console.log(t.$el); 39 | }); 40 | 41 | 42 | }); 43 | 44 | // Start Backbone history a necessary step for bookmarkable URL's 45 | Backbone.history.start(); 46 | 47 | 48 | 49 | 50 | 51 | /** Our code here **/ 52 | 53 | }(jQuery)); -------------------------------------------------------------------------------- /languages/potomo.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | for file in `/usr/bin/find . -name '*.po'` ; do /usr/local/opt/gettext/bin/msgfmt -o ${file/.po/.mo} $file ; done -------------------------------------------------------------------------------- /languages/sendpress-ar.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-ar.mo -------------------------------------------------------------------------------- /languages/sendpress-ar_EG.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-ar_EG.mo -------------------------------------------------------------------------------- /languages/sendpress-cs_CZ.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-cs_CZ.mo -------------------------------------------------------------------------------- /languages/sendpress-de_DE.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-de_DE.mo -------------------------------------------------------------------------------- /languages/sendpress-el.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-el.mo -------------------------------------------------------------------------------- /languages/sendpress-en.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-en.mo -------------------------------------------------------------------------------- /languages/sendpress-en_US.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-en_US.mo -------------------------------------------------------------------------------- /languages/sendpress-es_ES.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-es_ES.mo -------------------------------------------------------------------------------- /languages/sendpress-fr.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-fr.mo -------------------------------------------------------------------------------- /languages/sendpress-fr_FR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-fr_FR.mo -------------------------------------------------------------------------------- /languages/sendpress-he_IL.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-he_IL.mo -------------------------------------------------------------------------------- /languages/sendpress-hu_HU.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-hu_HU.mo -------------------------------------------------------------------------------- /languages/sendpress-it_IT.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-it_IT.mo -------------------------------------------------------------------------------- /languages/sendpress-ja.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-ja.mo -------------------------------------------------------------------------------- /languages/sendpress-nb_NO.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-nb_NO.mo -------------------------------------------------------------------------------- /languages/sendpress-nl_NL.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-nl_NL.mo -------------------------------------------------------------------------------- /languages/sendpress-no.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-no.mo -------------------------------------------------------------------------------- /languages/sendpress-pl_PL.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-pl_PL.mo -------------------------------------------------------------------------------- /languages/sendpress-pt_BR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-pt_BR.mo -------------------------------------------------------------------------------- /languages/sendpress-pt_PT.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-pt_PT.mo -------------------------------------------------------------------------------- /languages/sendpress-ro_RO.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-ro_RO.mo -------------------------------------------------------------------------------- /languages/sendpress-ru_RU.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-ru_RU.mo -------------------------------------------------------------------------------- /languages/sendpress-sl_SI.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-sl_SI.mo -------------------------------------------------------------------------------- /languages/sendpress-sv_SE.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-sv_SE.mo -------------------------------------------------------------------------------- /languages/sendpress-tr_TR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-tr_TR.mo -------------------------------------------------------------------------------- /languages/sendpress-zh_CN.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress-zh_CN.mo -------------------------------------------------------------------------------- /languages/sendpress.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brewlabs/sendpress/85795afad3e985c05dbc4c25e58b52df3eff617b/languages/sendpress.mo -------------------------------------------------------------------------------- /templates/master.php: -------------------------------------------------------------------------------- 1 | validate->_int( 'spemail' ); 17 | global $post; 18 | $post = get_post($email_id); 19 | $inline = false; 20 | 21 | if(isset($post) && $post->post_type == 'sp_template' ){ 22 | //Render New Template Preview 23 | 24 | echo SendPress_Email_Render_Engine::render_template_example( $post ); 25 | } else { 26 | if(SPNL()->validate->_bool('inline')){ 27 | $inline = true; 28 | } 29 | echo $post->post_content; 30 | } 31 | 32 | */ -------------------------------------------------------------------------------- /templates/simple-rightsidebar.php: -------------------------------------------------------------------------------- 1 | $post_type, 'numberposts' => -1, 'fields' => 'ids' ) ); 34 | 35 | if ( $items ) { 36 | foreach ( $items as $item ) { 37 | delete_transient('sendpress_report_subject_' . $item ); 38 | delete_transient('sendpress_report_body_html_' . $item ); 39 | wp_delete_post( $item, true); 40 | } 41 | } 42 | } 43 | 44 | //Drop All DB tables 45 | //This could use an updated for Multisite 46 | require_once plugin_dir_path( __FILE__ ) . 'classes/class-sendpress-db-tables.php'; 47 | SendPress_DB_Tables::remove_all_data(); 48 | */ --------------------------------------------------------------------------------