Paste is a project that started from the files pastebin.com used before it was bought.
PHP CSS HTML JavaScript
Switch branches/tags
Nothing to show
Clone or download
Permalink
Failed to load latest commit information.
admin Added Toggle Password button Apr 15, 2018
docs Update nginx.example.conf Apr 10, 2018
includes Introduce is_banned() to reduce redundant ban checks May 2, 2017
install remove deprecated header, fix warnings on install page Dec 20, 2016
langs Create de.php Dec 25, 2017
mail get rid of eregi_replace May 2, 2017
oauth update headers Dec 13, 2016
theme set markdown as default paste language Mar 7, 2017
tmp Move Paste from BitBucket to GitHub <https://bitbucket.org/j-samuel/p… Dec 1, 2016
upgrade Missing update mail table Aug 14, 2017
.gitignore Add some more ignorance May 2, 2017
.htaccess replace mypastes with /user/x Dec 7, 2016
README.md Add Development setup May 2, 2017
archive.php make use of is_banned() to get rid of some redundant code. May 2, 2017
config.php Move Paste from BitBucket to GitHub <https://bitbucket.org/j-samuel/p… Dec 1, 2016
index.php make use of is_banned() to get rid of some redundant code. May 2, 2017
login.php make use of is_banned() to get rid of some redundant code. May 2, 2017
oauth.php update headers Dec 13, 2016
pages.php make use of is_banned() to get rid of some redundant code. May 2, 2017
paste.php make use of is_banned() to get rid of some redundant code. May 2, 2017
profile.php make use of is_banned() to get rid of some redundant code. May 2, 2017
robots.txt Move Paste from BitBucket to GitHub <https://bitbucket.org/j-samuel/p… Dec 1, 2016
sitemap.xml Move Paste from BitBucket to GitHub <https://bitbucket.org/j-samuel/p… Dec 1, 2016
user.php make use of is_banned() to get rid of some redundant code. May 2, 2017
verify.php Do we *really* need those properties here? May 2, 2017

README.md

Paste 2.1

Download PASTE Download PASTE

Paste is forked from the original source pastebin.com used before it was bought. The original source is available from the previous owner's GitHub repository

A demo of Paste is available on our homepage at SourceForge

A public version can be found at PasteThis

IRC: If you would like support or want to contribute to Paste connect to irc.collectiveirc.net in channel #PASTE

Any bugs can be reported at: https://github.com/jordansamuel/PASTE/issues/new

Frontend Frontend

Requirements

  • Apache 2.X / Nginx
  • PHP 5.3.7 (or later) with php-mcrypt & GD enabled [PHP5.5+ recommended]
  • MySQL 5.x+

Install

  • Create a database for PASTE.
  • Upload all files to a webfolder
  • Point your browser to http(s)://example.com/install
  • Input some settings, DELETE the install folder and you're ready to go.

Manual install

Do the first two steps above and import the database schema using the CLI (or import via phpMyAdmin)

mysql -uuser -ppassword databasename < docs/paste.mysqlschema.sql

Move docs/config.example.php to config.php and edit

Development setup

  • Set up git
  • Fork this repository
  • Create a database for PASTE.
  • Check out the current master branch of your fork
  • Point your browser to http(s)://example.com/install and follow the instructions on screen or import docs/paste.mysqlschema.sql into your database and copy docs/config.example.php to config.php and edit

Now you can start coding and send in pull requests.


Upgrading

  • 2.0 to 2.1

Insert the schema changes to your database using the CLI:

mysql -uuser -ppassword databasename < upgrade/2.0-to-2.1.sql

or upload & import upgrade/2.0-to-2.1.sql using phpMyAdmin

  • 1.9 to 2.0

Run upgrade/1.9-to.2.0.php


Clean URLs

Set mod_rewrite in config.php to 1

For Apache, just use .htaccess

For Nginx, use the example config in docs/nginx.example.conf


Changelog

See docs/CHANGELOG.md


Paste now supports pastes of upto 4GB in size, and this is configurable in config.php

However, this relies on the value of post_max_size in your PHP configuration file.

// Max paste size in MB. This value should always be below the value of
// post_max_size in your PHP configuration settings (php.ini) or empty errors will occur.
// The value we got on installation of Paste was: post_max_size = 1G
// Otherwise, the maximum value that can be set is 4000 (4GB)
$pastelimit = "1"; // 0.5 = 512 kilobytes, 1 = 1MB

To enable registration with OAUTH see this block in config.php

// OAUTH (to enable, change to yes and edit)
$enablefb = "no";
$enablegoog = "no";

// "CHANGE THIS" = Replace with your details
// Facebook
define('FB_APP_ID', 'CHANGE THIS'); // Your application ID, see https://developers.facebook.com/docs/apps/register
define('FB_APP_SECRET', 'CHANGE THIS');    // What's your Secret key

// Google 
define('G_Client_ID', 'CHANGE THIS'); // Get a Client ID from https://console.developers.google.com/projectselector/apis/library
define('G_Client_Secret', 'CHANGE THIS'); // What's your Secret ID
define('G_Redirect_Uri', 'http://urltoyour/installation/oauth/google.php'); // Leave this as is
define('G_Application_Name', 'Paste'); // Make sure this matches the name of your application

Everything else can be configured using the admin panel.


Credits

The Paste theme was built using Bootstrap, jQuery and various jQuery plugins for present and future features, but we do try to keep it bloat free. Icons are provided by FontAwesome.