YetiShare - File Hosting Script

Create your own professional file sharing service


Thank you for purchasing YetiShare File Hosting Script. This welcome pack contains various tutorials and information that will aid you in using YetiShare. If you have any additional questions then feel free to create a ticket via our support system or via the email above.

YetiShare is a professional file hosting script that can be used to create an online file sharing service, or be used for personal file storage. 

File Hosting Script - File Manager

We have our own support portal that includes a support ticket system, knowledge base and forums, please register via our forum for full access.

Note: You will need to be have a valid license & within your support period to access the ticketing system. You have lifetime access to the support forum and knowledge base included within your purchase.

YetiShare File Hosting Script - Support Center

YetiShare is written in PHP5.6 and uses a MySQL5 database. YetiShare is a "Web Application" that must be installed on a Web Server.

You must install YetiShare on a web host that supports PHP5.6, MySQL5 and Apache or Nginx.

You may also install YetiShare on your personal computer by using one of the many options (i.e google WAMPserver or XAMPP), this is not covered in this document.

The full system requirements can be found below.

Installation Wizard

We have a video tutorial showing all of the steps below. To view it please go to the installation tutorial page.

We've built an installation wizard into the script to make it really easily to get started. 

  1. Download the zip file.
  2. Extract the contents into a folder on your computer.
  3. Using a FTP client (such as FileZilla), upload the extracted contents to your web host. Note: You can install YetiShare as the main site, in a sub-folder on your existing web hosting or setup a new subdomain.
  4. While it's uploading you can create the database. Login via your web host control panel (such as cPanel) and create an empty database.
  5. Setup a new MySQL user and ensure you assign it to your new database with all privileges. Note your new MySQL username, database and password for later.
  6. Once the FTP upload has completed, via your web browser go to: 

YetiShare - File Hosting Script - Install

  1. Follow the steps shown in the install wizard. Enter your MySQL details when prompted and the database will be automatically installed.
  2. Setup the cron tasks, links provided within the installer, or here - https://support.mfscripts.com/public/kb_view/26/ every 5 minutes (more info below in the CRON section).
  3. Done - Enjoy!

If you have any issues with the installation, please see the troubleshooting section of this document.

File & Folder Permissions

During the YetiShare install 1 file and 4 folders will need write permissions. Ensure the following have CHMOD 755 (or 777 depending on what your web host allows)

The cron tasks enable YetiShare to send emails, tidy data (and other tasks) in the background. Please ensure these are setup as they are required by the script.

There are a number of ways to set these up. The best method is to use a Linux Cron style setup on the server itself. This will be the most reliable method. Although you can use one of the many free web cron services, these often only work once every 10-15 minutes, meaning that crons will take longer between runs.

Linux Crons

  1. Type crontab -e in your linux command line.
  2. Type in the following:
0 0 * * * php /path/to/your/install/admin/tasks/auto_prune.cron.php >> /dev/null 2>&1
0 0 * * * php /path/to/your/install/admin/tasks/create_internal_notifications.cron.php >> /dev/null 2>&1
0 * * * * php /path/to/your/install/admin/tasks/delete_redundant_files.cron.php >> /dev/null 2>&1
0 0 * * * php /path/to/your/install/admin/tasks/downgrade_accounts.cron.php >> /dev/null 2>&1
*/5 * * * * php /path/to/your/install/admin/tasks/process_file_queue.cron.php >> /dev/null 2>&1
0 1 * * * php /path/to/your/install/admin/tasks/create_email_notifications.cron.php >> /dev/null 2>&1
  1. Save
  2. crontab -l should now list the cron process

If you do not have access to the command line you might have access to the web hosting control panel that should allow this. Otherwise talk with your webhost.

Upgrading is fairly straight forward. You can view the upgrade tutorial here, or use the following guide to upgrade your existing install to a new release.

  1. Download the latest version of the YetiShare zip file
  2. Backup your MySQL database, any /files/ and the _config.inc.php file.
  3. Backup any custom code or changes you have made (these may be overwritten).
  4. Unzip the newly downloaded zip file onto your local computer.
  5. Remove the local _config.inc.php file & the install/ folder.
  6. Upload the new files to your existing installation of YetiShare replacing all existing files.
  7. Within your hosting control panel, load phpMyAdmin and select your new database. In the right-hand section click on 'import'. Attach the the relevant sql patches from the directory `/install/resources/upgrade_sql_statements/` and submit the form. Choose the patches between your current script version number and the latest, ensuring you do them in version number order. If there are none, you can ignore this step.
  8. Done - Enjoy the upgrade!

The website settings can be found via the admin area. To access:

  1. Login via the /admin url using your site admin credentials.
  2. On the top menu hover over 'Configuration', then click on 'Site Settings'.
  3. You'll see a screen similar to the following:

YetiShare - File Hosting Script - Settings

  1. All the settings are categoried on the left-hand side. By clicking on any of these it will filter the view on the main part of the page.
  2. To edit, click 'edit' on any of the values.
  3. Any changes are immediately reflected on the site.

YetiShare supports any number of languages. All the text content is routed through the translations module and can be translated.

YetiShare - File Hosting Script - Translations

Add New Language

  1. Login to the admin area.
  2. Via the Configuration menu, click Translations.
  3. Click the 'Add Language' button.
  4. Set the language name, Text Direction (only LTR) supported for now and the flag.
  5. Once added click on 'manage translations' and you'll see each text entry that you can edit.
  6. You can also export & import translations on the same screen if you'd prefer to edit them offline.
  7. To set as the main site language click the 'Default' checkbox on the 'Manage Languages' screen.

Note: You may need to logout and back in to see the new language take affect.

Translate Text Content

  1. Load the 'languages' page within the admin area.

YetiShare - File Hosting Script - Translations

  1. Click 'manage translations' and search for the text you'd like to translation.
  2. Once you've found it, click 'edit'.
  3. Click 'update' once you're done. The translation will be immediately available on your site.

The script structure can be seen below with notes next to each folder detailing it's purpose.

YetiShare - File Hosting Script

You can create your own themes within YetiShare so future updates to the theme part of the script don't overwrite any custom changes.

1) Create a new directory named your theme in /themes/. Lowercase alphanumeric and underscores only. i.e.

/themes/yourtheme/

2) Copy the contents of /themes/flow/ into /themes/yourtheme/

3) In /themes/yourtheme/_theme_config.inc.php replace the parameters:

$themeConfig['theme_name'] = 'YetiShare Theme'; // the name of the theme
$themeConfig['folder_name'] = 'flow'; // the folder name you just created
$themeConfig['theme_description'] = 'YetiShare Main Theme'; // theme description shown in the admin area
$themeConfig['author_name'] = 'YetiShare'; // your name

4) Rename /themes/yourtheme/themeFlow.class.php to /themes/yourtheme/themeNewtheme.class.php, ensuring you make the first letter of the theme name uppercase and the rest lowercase.

5) Open /themes/yourtheme/themeNewtheme.class.php and change line 3 from:

class themeFlow extends Theme

to

class themeNewtheme extends Theme

6) You should now be able to enable the theme via your script admin area. The admin area thumbnail can be found in:

/themes/yourtheme/thumb_preview.png

 

YetiShare File Hosting Script - Theme Settings

Your server configuration can have a significant impact on the performance of YetiShare. Below are some of the server settings we'd recommend using. It assumes you have at least a VPS server with root access and understand what you're doing!

Apache

- Enable XSendFile to take load away from PHP - https://support.mfscripts.com/public/kb_view/1/

- Enable X-Accel-Redirect to take load away from PHP - https://support.mfscripts.com/public/kb_view/2/

- Amend /etc/nginx/nginx.conf

http { 
    #... 
    fastcgi_read_timeout 300;
    #... 
}

Restart Nginx after any changes.

PHP

- Amend the following values in your global php.ini file:

memory_limit = 512M
upload_max_filesize = 500M
post_max_size = 500M
max_execution_time = 180
max_input_time = 180

Restart your webserver to apply the changes.

PHP-FPM (if using Nginx)

- Amend /etc/php5/fpm/pool.d/www.conf

request_terminate_timeout = 300
pm.max_children = 50

Source for max_children - http://myshell.co.uk/blog/2012/07/adjusting-child-processes-for-php-fpm-nginx/

PHP Fast CGI

- If you're using FastCGI with PHP/Apache ensure you allow for any timeouts on large downloads, by default they will close connections after 5 minutes so you may get partially completed downloads. In your Apache config file add the following:

<IfModule mod_fcgid.c>
FcgidBusyTimeout 43200
</IfModule>

If you're using WHM/cPanel you can add this to /usr/local/apache/conf/includes/post_virtualhost_global.conf

Save and restart Apache.

MySQL

1) Enable query cache.

Edit my.cnf file (sometimes in /etc/mysql/my.cnf)

nano /etc/mysql/my.cnf

Add or uncomment the following lines:

query_cache_size = 268435456
query_cache_type = 1
query_cache_limit = 1048576

Restart MySQL. (this command will be different depending on your OS)

service mysql restart

2) Increase max connections in MySQL. In your my.cnf file, add or amend the following:

max_connections = 600

Save and restart MySQL. You may need to adjust this value depending on your traffic levels and server resources available.

Other

Problem

After installing the script none of the html links are working and neither are the generated file download urls. 

Fix (Apache)

This is generally one of the following issues: 

RewriteBase /

Replace with: 

RewriteBase /yoursubfolder/
<Directory /var/www/>
	AllowOverride All
</Directory>

Fix (Nginx)

This is generally one of the following issues: 

root /usr/share/nginx/html;
sudo service nginx restart
 

How to reset the admin password if you've forgotten it

Problem

You've forgotten the admin password to your installation

Fix

1) Try the forgot password form on yoursite.com/forgot_password.html

2) If you can't remember the email address or it's invalid, you can reset it directly via the database.

- Login via your MySQL client such as phpMyAdmin.
- Execute the following sql on your database, replace ADMIN_USER with your admin username (usually 'admin') and NEW_PASSWORD with your new password.

UPDATE users SET password = MD5('NEW_PASSWORD') WHERE username='ADMIN_USER';

For example:

UPDATE users SET password = MD5('myp455w0rd') WHERE username='admin';
 

Emails are not being sent when a user registers on the site or when the contact form is submitted

Problem

When a user registers on the site they see the confirmation screen however they never receive an email with their password in it.

Fix

This is due to a number of reasons, try each of the following in order:

1) Test a registration yourself and ensure the email isn't being sent to a spam folder. If it is being spammed or if AOL/Hotmail accounts are not receiving emails, ensure you have SPF records setup for your domain. Your host or system admin can enable this.

2) There are 2 methods the script uses to send email, PHP and SMTP. The default is PHP. Sometimes web hosts block PHP from sending to stop spam scripts from running so although PHP attempts to send the email, it doesn't actually go anywhere. If this is the case switch to SMTP sending via the admin area, site settings. (below)

YetiShare - File Hosting Script - SMTP Settings

Set the options as shown above but replace with your own SMTP email settings. Your web host will be able to confirm these.

3) If the above doesn't work you can test SMTP sending for any errors. To test:

  • Via FTP edit /admin/_test_scripts/test_email.php and replace the email address (you@youremail.com) with your own.
  • Re-upload the file to your website.
  • Login to your /admin/ area.
  • Then in the browser load this url maually - http://yoursite.com/admin/_test_scripts/test_email...
  • An email will be attempted to the email address you entered. Any errors will be shown on screen. A common error is that the sending email address can not be used via that SMTP server so you may need to change the sending email address or ask your web host to allow it.

Note: Sometimes not all debug messages are captured and outputted in the test_email.php script above. You can increase the debug level by temporarily editing the code. In coreFunctions.class.php find $mail->SMTPDebug = 1; and replace with $mail->SMTPDebug = 2; Save, reupload and test again for more detailed information.

 

v4.2 - Huge Performance Increases, Powerful File Search Tool, Built in Link Checker and other improvements/fixes. - 6th November 2015

- Huge performance improvements, over 220% increase in script load times and database load. See our blog for the full info - https://mfscripts.com/blog.html
- Powerful new search tool within the Flow theme. Enable your users to quickly search and download publicly shared files. Optional via the admin area.
- Built in link checker for checking whether multiple downloads links are active at the same time.
- Admin area icon view for file management. Site settings option to set default view.
- Logged in user details and subject added to contact form email notification.
- Improvements to filename retrieval on remote url download.
- Increased the maximum auto deletes on the nightly file removals.
- Performance improvements to translations.
- Various bug fixes and other minor improvements.

Plugin Changes:
- Image Viewer:
--- Fixed embed links when using external file server storage.
- Rewards Program:
--- Added tracking of PPS by cookies for better handling of return visits.
--- Resolved some minor issues with PPS logging on some payment gateways.
--- Added option to cancel withdrawal request in the admin area.
 
v4.1.1 - Various bug fixes for 4.1 - 12th August 2015
- Various bug fixes for 4.1

This release fixes various issues with the previous 4.1 release. To upgrade:

- Backup your install.
- Apply any database patches in \install\resources\upgrade_sql_statements\
- Upload all files and folder except: _config.inc.php, files/ & install.

For new installs see ___INSTALLATION.txt in the script root.
 
v4.1 - Package management, enable users to set their own password on registration, reCaptcha2, account security lock, webdav plugin, security & performance improvements, loads of new plugin changes and more. - 29th July 2015
- Added file privacy options at various levels. Site wide, account level, folders (inc sub-folders) & on specific files. Private settings inherit down onto all folders/files if set by site/account.
- Added the option to allow users to choose their own password when registering an account.
- Added Account locking feature which, when enabled, locks the account details from being changed, users will not be able to edit, move or delete files whilst the account lock is enabled. 
- Updated reCaptcha to the newer reCaptcha2.
- Added sub-folders to the main file manager window rather than just showing the files.
- Added ability to block file types from being uploaded.
- Payment complete page, after payment, user session is reloaded to reflect the upgrade.
- Added ability to ban files by extension (.exe;.jpg;.docx;.etc) and file md5 hash/filesize.
- Added a delete button / option for themes & plugins.
- Added a comprehensive admin support page which will help with support requests.
- Added a function to detect 32bit or 64bit operating system.
- Added account expiry details to account edit page.
- Replaced user drop-downs in the admin area with text entry/auto suggest for better scalability.
- Moved xAccelRedirect & xSendFile options into the file server configuration & removed from the old global settings from the site_config table.
- Allowed the remote downloader to follow 301 redirects, limited to 5 redirects.
- Admins can set files to be restored from the pending deletion queue on the next task run (process_file_queue.cron.php).
- Admins can now limit the hourly amount of emails sent by the send via email form by user.
- Fix to file removal on FTP/S3.
- Added support for theme settings and admin navigation items via theme config.
- Support for file keywords.
- Fixed issue with possible site url injection into the translations.
- Various other minor fixes.

New Plugins:
- WebDav plugin

Plugin Changes:
- Rewards:
--- New overview page showing total earnings by user and overall system stats.
--- Option to limit PPD access by account type (free or paid accounts).
--- Fix to capture PPD data only when PPD is enabled in plugin settings.
--- Log PPD after x percentage on watching videos/audio.
--- Updated code to process the new individual X-Accel-Redirect & XSendFile configurations in the individual server configs.
- Torrent Download Plugin (v3):
--- Use Transmission instead of uTorrent as the torrent engine.
--- Link for user to cancel downloading torrent.
--- Link for user to clear completed torrent.
--- Limitations of account max storage and max upload size now apply to torrents.
--- Added peer information to users torrent download page.
--- Cron script changed to command line rather than wget to improve performance.
--- Fix to allow for users downloading the same torrent at the same time.
- Document Viewer Plugin (v5):
--- Support added for thumbnail previews of PDF files. (requires imagick within PHP)
- Image Viewer Plugin:
--- Better handling of image thumbnails. Links directly to cached version and only routes via PHP on first server cache request.
--- Option to set preview image quality.
--- Option to automatically rotate images on upload, based on EXIF data.
- Media Converter (v8):
--- Added option to keep the originally uploaded file. Converted file will be stored as a new file and linked to the original.
- Media Player (v9):
--- If using the media converter to keep the original file, the converted copy will play directly in the browser whereas the download link will provide the original.
- Social Login Plugin (v2):
--- Integration of social network profile picture to Flow theme.
--- Update to fix Foursquare login process.
--- Updated Facebook login to use new Facebook API permission set.
--- Added social login to site registration page.
- CoinPayments Plugin
--- Added IPN URL to the plugin settings page.
 
v4.0.1 - Cron manager, Minor UI Tweaks and Bug Fixes - 6th January 2015
- Added Google Analytics tracking code option in admin, site settings.
- Background task manager and log viewer in admin area to aid with the configuration of cron tasks.
- Allowed for remote file server uploads for admin when in maintenance mode.
- The ability to drag & drop anywhere in the file manager to prompt an upload to the current folder.
- Flow theme file manager retains current page on file delete.
- Flow theme file manager added ctrl-a shortcut to select all files.
- Added check for mcrypt on installation process.
- Support for xAccelRedirect when using multiple mounted drives on the same file server.
- Fixed responsive download table being cut off on smaller screen sizes.
- Fixed possible storage issue on remote file servers when using relative paths.
- Fixed possible cross site session issue with remote upload.
- Fixed drag and drop sometimes not working correctly in Flow theme.
- Fixed password validation when min and max password length requirement the same.
- Fixed issue with skipping video when using Apache XSendFile.
- Better resizing of file listing in the file manager within the Flow template, list view.
- Storage of server doc roots in the database to fix some cross file server delete issues.
- Fixed issue with recipient email used on send via email template rather than senders email.
- Fixed support for unlimited storage override by user. (when set to zero)
- Fix to show username in forgot password email.
- Fix to allow cross site file removal via abuse reports pages.
- Fix to file move paths for local and direct server storage.
- Fixed formatting of html & forum embed code when using RTL.
- Responsive pie charts in file stats pages.
- Fixed issue with zip file creation when using direct server storage.
- Removed check for CLI mode on cron scripts. Not all servers provide the same interface name when in using CLI.
- Improved Nginx rewrite rules.
- Other minor tweaks and improvements.

Plugin Changes:
- Image Viewer:
--- Updated to use consistent method to loading plugin settings. Resolves reliance on session store and possible cross site image preview issues.
- Newsletter:
--- Removed status bar on email content editor.
- Media Converter:
--- Resolved issue with media over 2GB on remote storage not converting.
- File Leech.
--- Better randomise for selection of paid account details on leeching.
 
v4.0 - New responsive theme, optimized for mobile and tablet, background uploading, RTL support, fast ajax file manager, X-SendFile support, plugin updates, performance improvements and lots more! - 9th October 2014
Version Notes: Major release with a lot of changes to the core code. For upgrades, upload the /install/ folder and see the Upgrade from v3.x to v4.0 option. For new installs upload the same folder and use the installer process.

- New Flow Theme:
--- Responsive - Mobile, tablet and desktop versions included.
--- Built in uploader instead of going to the homepage to upload.
--- Minimise uploader popup during upload. Continue to use your account, browse & download files etc, while uploads are being processed in the background.
--- Written with Bootstrap v3.
--- Full support for RTL languages.
--- List view column headers with total downloads shown.
--- Add/edit file in ajax popup.
--- Add/edit folder in ajax popup.
--- Send file via email tab on file info popup.
--- User can upload an avatar.
--- Account settings page with overall stats shown. Available storage, used storage, active files and total downloads.
--- Account notification widget for alerts on to users. i.e. premium expiry, offers etc.
--- Single click on download links to highlight and copy.
--- Filter by uploaded date range option.
--- Filter in current folder or all folders option.
--- File manager, added direct link to download file. Avoids the preview page if using media player, image and document viewer plugins.
--- Option to download all files in a folder within the file manager as a zip archive.
--- Delete keyboard key shortcut added to file manager, delete files.
- Blue V2 Theme:
--- Responsive - Mobile, tablet and desktop versions added.
--- File manager, added direct link to download file. Avoids the preview page if using media player, image and document viewer plugins.
--- Option to download all files in a folder within the file manager as a zip archive.
- Admin Area:
--- Responsive - Mobile, tablet and desktop versions added.
--- Add links to plugin settings in admin, site settings.
--- Admin configuration option to adjust the time to keep files in /files/_deleted/. Set to 24 hours by default.
--- Set file as premium only via the admin area. Also restrict by other account levels, i.e. only registered users, moderator or admin users.
--- Added option to set upload server for a specific user in admin, edit user. Useful for testing new file servers without disrupting other users.
--- Disabled mod security in admin area if available. Solves some issues with updating site settings or setting advert code.
--- Admin area edit file popup. Edit filename, owner, short url, access password, mime type and admin file notes.
--- Admin add/edit user. Set default paid expiry date to 1 year when creating a paid user. Avoids issues with automatic account downgrades if no date set.
--- Set HTML header and footer on emails. Enabled by default.
--- Admin option to set text direction when adding a new language for template (RTL or LTR).
--- Admin CLI script to sanity check file storage on main server and external file servers. Checks stored files exist as active entries in the database and removes files which shouldnt be there. Script located in /admin/_test_scripts/
--- Admin area manage file action queue. View raw file deletes and moves. Cancel actions and trigger the cron script to process pending actions.
--- Admin area updated to use new cross server session management.
--- Fixed admin option to scan for new text translations.
- Core Code:
--- Better management of templates within the codebase. Template html files now moved into /themes/ along with the css, js etc.
--- New template management pages in the admin area. Upload template zip package, view template details, preview, activate etc.
--- On upload, if file already exists in folder, rename to (2), (3) etc. Blocked renaming of files with the same name within the same folder.
--- File action queue for managing deletes, moves etc.
--- Huge improvement on cross server session management. User session transfered to external file servers as needed, per server, rather than via the homepage for all servers. Performance increase as a result.
--- Added support for X-SendFile to improve performance on downloading with Apache. Option to enable in admin area.
--- Added support for X-Accel-Redirect to improve performance on downloading with Nginx. Option to enable in admin area.
--- Cloudflare support for increased site performance and load times.
--- Increased upload chunk size from 5MB to 100MB to improve upload speed.
--- Change to file delete process on local or direct file storage. Files are now moved into /files/_deleted/ for 24 hours, then removed automatically. Allows for recovery time if needed.
--- Full support for IPv6.
--- Fix to send utf-8 encoded email when using PHP mail() sending method.
--- Fix to clearing of cross site session transfer tokens.
--- Fixed intermittent block size issue when using mcrypt on the download pages.
--- Fixed bug with deleteRedundantFiles() not working as expected on direct file servers.
--- Decoded filenames when using remote file download.
- Security:
--- Huge improvement on storage method for passwords. Now using SHA256 with key stretching via PBKDF2. Existing passwords converted on login.
--- Option to block IP address for 24 hours after x failed logins. (default 5 attempts)
--- Option to send email notification to user when their account email address or password is changed.
--- Account login IP and country history logged for the last month. Viewable via manage users in the admin area.
--- Total login stats within last month, including from different IPs and countries shown by user. Helps reduce account sharing.
--- Ability to set list of email domains to block from registration.
--- Set banned ip expiry date to ban for limited time.
--- Option to ban ip address from logging in.
--- Fixed issues with blocking account sharing. Users will be logged out of their account if another person logs into it. Option in admin area.
--- Minor bug fixes and general performance improvements.
- Cron Tasks: (new in v4.0)
--- Auto prune cron task to clear old database data for better performance.
--- Moved previous executeBatchTasks() on the index page into cron task (delete redundant files and downgrade accounts).
--- Generate internal notifications cron when account due to expire.

New Plugins: (see yetishare.com for pricing)
- File Leech
- File Import Plugin - Scans for files to import into your account, retaining the folder structure. (free plugin)
- Stripe Payment Gateway

Plugin Changes:
- Media Player:
--- Added support for subtitles when using JWPlayer. Auto loaded when subtitle file named the same as video file. Multiple languages supported. Supports srt, vtt, xml, dfxp.
--- Support for responsive templates in JWPlayer on video playback.
--- Preview of video/audio embedded into Flow file manager on file details popup.
--- Added video screenshot to JWPlayer if available. (via media converter plugin)
--- Fixed issue with video not showing correctly on https.
--- Opengraph preview icon added so icon shows when posting to Facebook. Screenshot is also used if created via the media converter.
- Media Converter:
--- Added support for video conversion to webm.
--- Added framerate option to convert.php to speed up conversions. Default set to 30fps.
--- Added guidelines on how to install ffmpeg with ffmpeginstaller.com.
--- View current converter queue stats and queue items via converter plugin page.
--- Cancel or redo a conversion via admin area plugin.
--- Automatically fail any conversions which have been in processing stats for more than 1 day. Resolves occasional timeout issues.
--- Cancellation of any pending conversions if file deleted.
--- Improved storage of screenshots. Moved into global cache folder in core.
--- Auto removal of any cache (screenshots) on deletion of media.
- Image Viewer:
--- Capture of EXIF data on upload and displayed in the Flow theme image popup, in the file manager.
--- Larger image preview added to Flow file manager on file details popup.
--- Admin option to show a direct link to the image for users. Images can be directly hot-linked, if the option is enabled.
--- Support for responsive templates on image preview.
--- Opengraph preview image added so thumbnail shows when posting to Facebook.
--- Auto removal of any image cache on deletion of media.
--- Improved storage of resized images and thumbnails. Moved into global cache folder in core.
- Document Viewer:
--- Preview of document embedded into Flow file manager on file details popup.
--- Opengraph preview icon added so document icon shows when posting to Facebook.
- FTP Upload:
--- Added support for ProFTPD. Runs in virtual mode using the main database. Need access to server to configure.
--- Staggered each upload 1 at a time rather than all at once to improve performance on large volume uploads.
--- Added link to FTP upload tab to recheck for pending transfers.
- Rewards:
--- Added download complete log for NGINX users. PPD downloads are only logged when a download is entirely downloaded when using X-Accel-Redirect. Included in the plugin at no extra cost.
--- Added PPD groups by filesize. Set payment rate based on filesize aswell as country.
--- Added total paid figure on customer account rewards page.
--- Add option to set other outpayment methods for withdrawals. i.e. bank transfer, cheque. Easily add new ones like bitcoin, stripe etc.
--- Option to set maximum total daily earnings by downloader IP.
--- Option to set maximum total daily earnings by file.
--- Option to set maximum total daily earnings by file owner/user.
--- Link in admin, payment requests page to pay outpayment via PayPal. Auto-fills the amount, description, currency, users PayPal email address etc.
- File Leech:
--- Added percentage progress indicator onscreen when leeching, same as remote url download.
 
v3.5.5 - Important security fix - 16th July 2014
- Removal of potentially unsafe uploadify code. See /offline/upgrade_file_diffs/V3-5_2_to_V3-5-3_DIFF.txt
 
v3.5.2 - Password policy options, batch file move in members area, v3.5.1 fixes and improvements. - 1st May 2014
Version Notes: Please see /offline/upgrade_file_diffs/ for the full list of changed files. This release is a minor release fixing a number of issues in the previous v3.5.1 release. Ensure you apply the database changes from /offline/upgrade_sql_statements/ when upgrading.

- Fix to server select method when when using direct file server storage. (class.uploader.php)
- Improvement to bulk file deletes across remote file servers.
- Detection of visitors correct IP address if using Cloudflare.
- Added password policy options for accounts. Min/max length, include uppercase, numbers and special characters options.
- Batch drag & drop file move in file manager.
- Right-click context menu on files in file manager & select all menu.
- Delete file in file manager now uses ajax remove process.
- Fixed account max upload limit on remote uploader.

Plugin Changes:
- FTP Plugin:
--- Added option to override cPanel host for FTP accounts. Use if using ftp.yourhost.com.
--- Better support for non-utf8 characters in filenames.
- Rewards Plugin:
--- Update to add all text content to translations.
- Media Player Plugin:
--- Removal of old token usage for downloads.
- Document Viewer Plugin:
--- Removal of old token usage for downloads.
 
v3.5.1 - Better seeking in media player, performance improvements, direct download manager support using un/pw, some v3.5 fixes and improvements. - 28th March 2014
Version Notes: Please see /offline/upgrade_file_diffs/ for the full list of changed files. This release is a minor release fixing a number of issues in the previous v3.5 release. Ensure you apply the database changes from /offline/upgrade_sql_statements/ when upgrading. Theres limited impact on templates this release, most is core code changes. For custom download pages, note additional text in admin area, download pages section for creating next page links.

- Additional headers in file download process for better support on partial content requests. Fixes seeking in media player.
- Improvements to download speed restriction code to remove output buffering. Performance increase.
- Fixes to download process when using multiple download pages. Note additional text in admin area, download pages section for creating next page links.
- Download threads limitation bug via download managers resolved.
- Support for directly adding download urls in file managers with username & password. Resolves FDM issues.
- Ability to change file password on file edit page.
- More flexible options for different FTP server types in FTP file servers.
- Added file management class to centralise removal of actual file distributed on multiple file servers.
- Fix to seek failure when playing movies in Chrome.
- Other minor fixes.

Plugin Changes:
- Media Player Plugin:
--- Improved media seeking.
--- Fixed download not working after playing movie.
--- Added option to ignore download pages for media file types.
- Media Converter:
--- Fixed bug when full stop character used in server path.
- Image Viewer Script:
--- Removal of thumbnail cache on delete of an image.
--- Fix background colour of transparent image thumbnails to white.
--- Fix to resize of image fail for non-cache thumbs or blank custom image size.
--- Detection and display of animated gifs on image viewer page.
- FTP Plugin:
--- Increased generated password sensitivity for better compatibility with all cPanel configurations.
--- Added option to set hostname on username. Certain cPanel servers require login in the format username@domain.com.
 
v3.5 - Bulk delete files, private stats, custom/multiple download pages, admin account delete, contact form, file manager improvements, performance improvements and more. - 11th March 2014
- Added new button to file manager to bulk delete files.
- Drag to select multiple files in front-end file manager. (or use ctrl click)
- In file manager, added option to change selected file popup by using the right & left cursor keys.
- Support for download managers for non/free users, including resume support.
- Option to set direct file servers to produce download urls using the main site url. Final download is processed with file server.
- Members area option to keep all file statistics private. Statistics urls will not work unless theyre logged into their account.
- New admin area section to set mutiple download pages based on user type. Users can be shown any amount of intermediate pages before being provided the download. Easily add custom download pages.
- Admin area added option to remove multiple files at once.
- Admin area option to delete user account and associated files.
- Admin area option to delete file/stats database records.
- Admin area split option to toggle adverts by non, free and paid users.
- Admin area option to disable uploading by non, free and paid users.
- Contact form added to front-end. Includes optional captcha.
- Sharing folders publicly will also now list sub-folders. Sub-folders need to be set as publicly accessible via the file manager.
- Added additional mimetypes for remote downloads.
- Added option in admin area to set the default view of the file manager to icon or list.
- In admin area file manager, added link in own column to quickly filter files by IP or account.
- Prefilling of abuse report file urls if linked from file download page.
- File stats no longer require Flash, pure html5 implementation. Viewable across all devices now.
- Added more system logging to aid debugging.
- Import and export CSV option within admin area manage translations.
- Admin option to scan codebase for missing translations to ensure translations data is up to date.
- jQuery updated to jquery-1.11.0.min.js.
- Minor bug fix for file manager when moving files into sub-folders. Root folder no longer shows all files.
- Overall reduction on memory usage by 25%.
- Overall reduction in the amount of queries run on each page load.
- Performance improvement when loading translations.
- Performance improvement with file statistics.
- Added automatic JavaScript merging and minifying. Reduction in overall page size and total requests on page.
- Removal of old YUI javascript library, yui_combo.js.
- Fix to max concurrent file uploads setting for non/free users.
- Other minor bug fixes.

New Plugins: (see yetishare.com for pricing)
- Document Viewer Plugin
- BitPay Plugin

Plugin Changes:
- Media Player Plugin:
--- Added support for JWPlayer. (commercial sites require license from JWPlayer.com)
--- Support for lights out when using JWPlayer.
- Image Viewer Plugin:
--- Option to hide file countdown for all user types on images.
--- Performance improvement on image thumbnails.
 
v3.4 - Chunked Uploads, New File Manager, No Duplicate Files in Storage, Split Non-User Settings from Free Users, Bug Fixes. - 4th December 2013
- New file management area for users:
--- Merging of folder and file management.
--- Multi-level folders.
--- New quicker icon based interface.
--- Ajax popup on each file for quick access to file information.
--- Image previews if used with image plugin.
--- Upload directly to a folder.
--- Fullscreen mode for file management.
--- Alternative listview mode.
--- Ctrl click multiple select to copy and paste all links, forum bbcode or html code at once.
--- Quick access to recent uploads.
--- Trash can for deleted files. Empty trash option to permanently remove file stats and information.
- Ability to limit the maximum files which can be downloaded for free user in a 24 hour period.
- Progress indicators on remote file upload.
- Logging of md5 file hashes on upload.
- Support for chunked uploads if supported by browser. Bypasses PHP limits and any tmp folder size restrictions.
- Duplicate files are no longer stored, so the same file will only ever be kept in storage once. Unique download urls are still generated on each upload for stats, privacy etc.
- Added option to set session expiry period via the admin area.
- Improved cross site session token clearing when PHP & MySQL times are out of sync.
- Improvements with possible conflicts on PHP class auto-loader.
- Added system log class for better error handling.
- Admin area log file viewer.
- Fixed various notices in log files.
- Improvement to tab rendering on index page.
- Added option to hide adverts for paid/admin users.
- Updated IP address to country data.
- Added database browsing tool to aid debugging.
- Option to set the load order of plugins via the plugin database table.
- Added forgot password link to main login page rather than just the login popup.
- Added payment page in admin area to search and browse received payments.
- New add payment popup to manually log payments. Useful for manual upgrades, bank transfers, cash payments etc.
- Separated free user configuration options from non-logged in users.
- Added account storage limit options for free and paid users.
- Added account storage limit override by account on edit/add user.
- Added admin option to block paid account sharing. On login, itll clear sessions for any other users logged in with the same account.
- Added admin option to use different site images and css styles dependant on language.
- Added improved file type icons with a wider selection of formats.
- Better report copyright abuse integration. Front-end form to capture details including validation of active file. Admin area screens to review and easily remove files. Admin dashboard change to show how many pending review.
- New moderator user type to provide limited access for reviewing copyright reports. User type can access the file management and reported abuse pages in the admin area.
- Improvements to better get mime type when finfo not available within PHP. Resolves possible streaming issues on media player for files added using remote upload or FTP upload.
- Added admin area notice when script upgrades are available.
- Added option within account settings to enable users to select their default account language. Option in admin area to enable/disable.
- Admin option to put website into maintenance mode. Disables front-end website with a message. Admin area access still available.
- Fixed bug on remote url upload which caused an error if the url contained brackets.
- On the uploader, added option to select folder before uploading (in options). Option pre-selected if upload prompted from your files.
- Admin option to disable user registration.
- Added option to copy file into your account on the file details page (~i page). Can not be used for password protected files.
- Added fix to session so user is remembered after returning to the site.
- Option to set maximum storage limit for file servers.
- Option to use a file server until its full, then use the next. File server priority must be set and until full chosen for the server selection method.

Plugin Changes:
- Image Viewer Plugin:
--- Change to display preview thumb on scroll down upload result.
--- Added embed code to upload result.
--- Removed link to info page on upload result.
--- Added logging of width/height of image and shown on upload result page.
--- Added image size on image preview page.
--- Added option to download a resized version of the image.
--- Added option to set custom resized image size.
- Media Player Plugin:
--- Embed video or audio option for external sites.
--- Full screen support for FF & Chrome on embedded videos.
--- Proper full screen mode for browsers which support it.
--- Fixed preloading of media time on certain videos/audio.
--- Improved issue with progress bar not working on certain videos/audio.

- Rewards Plugin:
--- PPD options:
----- Pay users per 1000 downloads of files.
----- Different payment group rates.
----- Payment groups based on downloaders country.
----- Option to only count above certain file sizes.
----- Only counts by daily unique IP addresses.
----- Admin interface to view downloads and manage settings.
----- UPDATED: PPD earnings now clear each night. Clearer feedback on screen for PPD balances.

- Media Converter Plugin
--- Added notice in media player screen for any pending/processing conversions.
--- Allowed processing of mp4s so theyre converted to streamable versions.
--- Attempts to grab a screenshot of the video 15 seconds in and uses as thumbnail in users account/account sharing page.

New Plugins: (see yetishare.com for pricing)

- Media Converter Plugin
- Social Network Login Plugin
 
v3.3 - Direct Upload/Download File Server Support, Installer Script, IE Upload Progress, PDO Database Layer and more. - 4th July 2013
- Support for direct uploads and downloads to external file servers using the file uploader.
- Support for url uploads direct to external file servers.
- Migrated from old mysql_query functions to PDO in database layer.
- Moved to database based sessions to allow for cross server session support.
- Cross site user login sessions. Run the script across domains, sharing the database, distributing the load & storage.
- Added ability to disable default local file storage via admin area.
- Added PayPal callback in PayPal payment gateway plugin to validate IPN call.
- Added installer script.
- Improvements to remote upload functionality and error handling.
- Internal rework on uploader code to move the result drop-down from JS into the uploader class in PHP. Content can also be overwritten via plugins.
- Support for upload progress in IE added with general IE improvements.
- Added ability to send download links via email on upload. (see new options link)
- Added ability to set password for files on upload. (see new options link)
- Support for currencies with comma in amount.
- Limit on length of filename displayed within the file details page to fix formatting issue.
- Added logged in username to current download list in admin area.
- Added option in admin area to limit maximum files that can be uploaded at the same time. Default is set to 50. Split by free/paid users.
- Added auto redirect to www/non-www version of the site depending on the _config.inc.php setting. Resolves some ajax issues.
- Added optional captcha for account registration page.
- Added option to enable or disable logging of current downloads in the admin area.
- Added option in admin area to limit total concurrent connections for paid users. Also limits connections using download managers.
- Removal of reliance on hard-coded admin folder path in plugins. Now relies on path set in includes/master.inc.php.
- Added option in admin area to set a waiting time between downloads for free users.
- Fix for banned ip checking on upload.
- Fix for max files a users IP can upload per day.
- Change to plugin code to allow for parameters to be passed.
- Delete links amended across the site & admin area to allow for direct file server deletes.
- Moved datatable labels on account_home to translations.
- Fix for possible XSS issue on file details page.
- Fix to wrap filename on download delay page.
- Fixed file type icons not showing if file extension in uppercase.
- Fix for PHP Notice on line 1234 in includes/functions.inc.php
- Improvements to allow for double request for download when using Android. Fixes download for free users on Android.

Release Notes:
- The core database layer has moved from using the old mysql_query functions to PDO. You will need to ensure you have the MySQL PDO module enabled before upgrading.
- Many plugins, including the FTP plugin, have been updated for this release so they work with the new uploader code. If you use them, ensure youve updated your code to the latest version. You can do this by downloading the zip from our site and uploading the files to your plugin folder via FTP.

New Plugins: (see yetishare.com for pricing)
- Image Viewer Plugin
- Authorize.net Payment Gateway
- First Data Payment Gateway
- OKPay Payment Gateway
- Payza Payment Gateway
 
v3.2 - Minor release. Moved PayPal to plugin architecture and changes for new FTP plugin. - 11th March 2013
- Moved PayPal gateway to plugin architecture so it can be disabled if needed.
- Minor change to wrap long file names within your files.
- Changes to allow for FTP Upload Plugin.

New Plugins: (see yetishare.com for pricing)
- FTP Upload Plugin
 
v3.11 - Minor release to allow for media player plugin. - 5th February 2013
- Minor file change to allow for media streaming plugin.
- Only the following files have been changed on this release:

includes/class.file.php
file_download.php

New Plugins: (see yetishare.com for pricing)
- Media Player Plugin
 
v3.1 - Remote upload, new configuration options, other minor improvements. - 7th January 2013
- Remote url upload functionality added to home page. Supports http, https and ftp urls.
- Minor change to not count admin area file downloads in stats.
- Allowed delayed redirect seconds to be zero so free users can be configured for direct downloads.
- Option in admin area to require users to register before uploading.
- Option in admin area to require users to register before downloading.
- Option in admin area to set the type of file url to create on upload. Shortest or long random hash.
- Option in admin area to set maximum file download size for free/non users.
- Option in admin area to set maximum concurrent downloads for free/non users.
- Admin area option to delete a file server and all associated files.
- Display 404 page instead of redirecting to index page when a file url is invalid.
- Minor improvement on live download tracking under heavy traffic loads. No longer keeps database connections open during downloads.
- Minor bug fix on current downloads page in admin area.
- Added IP address of uploader to admin file manage screen for non-logged in users.
- Minor fix in admin area to correctly display TB sizes on file server manager.
- Minor change to public folder listing. If owner of folder is logged in, the password prompt is not displayed.
- Added better support for plugin zip extract via admin area using pclzip. Resolves occasional 500 error.
- Better formatting in Chrome for dialog popups in the admin area.

New Plugins: (see yetishare.com for pricing)
- Newsletter Plugin
 
v3.0 - Admin Area Redesign, Plugin Framework, Download Resuming/HTTP Auth, Minor Big Fixes - 7th December 2012
- Admin area redesign.
- Plugin architecture added to the admin area and core codebase.
- In the admin area, it now displays which user uploaded the file.
- Better flow from file countdown, to register, payment & upgrade.
- Added HTTP auth support for download managers.
- Better support for resuming downloads using both local and ftp storage.
- Support for chunking in download managers.
- New admin area page to view currently active downloads.
- Site language chooser. Option in admin site settings to show or hide.
- Improved admin functions to manage translations.
- Site email content moved into translations. i.e. registration, forgot password & report file notifications.
- Database indexes set to improve performance with larger datasets.
- Database logging of which files result in paid upgrades. Available within the premium_order table.
- Logging into a premium account when on the file countdown page redirects back to the file page. Results in immediate download for premium accounts or upgrade for other.
- Better error reporting on multi uploader.
- Admin area check & notification for tmp folder size.
- Admin area option to set reason for file removal and logging of original DMCA removal request text.
- Minor bug fix with payment process to PayPal when using other currencies.
- Converted members area file listing to ajax for better performance.
- Additional filters added to members area file listing (folder & status). Default file listing status is now active.
- The right-hand your files widget now only displays non-account files by the same IP if the user isnt logged in.
- Bug fix which permitted usernames with spaces.
- Sanity checked and added a number of missing text translations.

New Plugins: (see yetishare.com for pricing)
- Rewards Program.
 
v2.1 - Folders, Forgot Password, Captcha, Minor Bug Fixes. - 12th June 2012
- Added folder management.
- After file upload, option to set folder.
- Set folder public or private.
- Set password on folder.
- Show files in folder listing page. (for public folders)
- Added edit file details page.
- Reset forgotten password pages.
- Edit account email, name & password page.
- Optional captcha after download counter for free users.
- Improved download streaming when using remote ftp file servers.
- Removed inaccurate upload progress text when using IE.
- Moved homepage benefits text into translations.
- On homepage upload, prevented the results box from being closed when clicking any of the rows.
- Added docx icon into file upload types.
- Added secure phpinfo page within admin area to aid with debugging.
- Removed admin area navigation if not logged in.
- Improved admin login form style.
- Fixed issue with editing ftp port on file server management.
- Minor bug fix. In some instances, uploaded files might not be completely removed when deleted by admin.
- Added check for php ftp functions within admin test ftp page.
- Fix on Admin Users & File Servers for the sorting of total space used and total files.
 
v2.01 - Minor Bug Fixes - 14th May 2012
- Removed database password from displaying if theres an error with database connectivity.
- Fixed filtering within admin area.
- Fixed csv export within admin area.
- Minor bug fix with account expiry date not updating via admin edit user.
 
v2.0 - Multiple File Server Support - 3rd April 2012
- View/amend account paid expiry date within admin area.
- Added filesize when browsing files admin area.
- Added filesize in user file manager.
- More detail on file uploader. Percentage progress, filesize progress, upload speed and time remaining. (Chrome & Firefox only)
- Option in admin area to show original filename on end of file url.
- Option to set different download site address to main site. Set downloads from a different domain.
- Support for https.
- Improved countdown timer page. More information about the benefits of registering for a paid account inc estimated download time.
- Support for multiple file servers via FTP.
- New admin page to configure file servers.
- Test file server page.
- Admin area option to use a specific file server or automatically select the one with least space used.
- Added filter by server option on manage files in admin area.
- Added filter by user option on manage files in admin area.
- Added link to manage users to view user uploaded files.
- Added total space used and total active files to manage users in admin area.
- Added link to admin area on main site if logged in as admin user.
 
v1.06 - Minor bug fixes - 27th March 2012
- Removed the ability to bypass the countdown by refreshing on the countdown timer page.
- Fixed minor character issues within the admin settings page.
 
v1.05 - Minor bug fixes - 19th March 2012
- Fixed issue which could mean paid users see the countdown timer when downloading a file.
- Fixed issue which meant the countdown wasnt displayed for free users when clicking on links in the your files section.
 
v1.04 - Minor bug fixes - 7th February 2012
- Added the ability to specify smtp settings for sending site emails.
- Fixed filesize bug using IE to upload.
- Fixed issue where entries are sometimes created in the database on upload failure.
- Better compatibility with Safari browser.
 
v1.03 - Large download bug fix - 5th February 2012
- On some servers larger downloads could produce 500 errors. Resolved in this release.
 
v1.02 - Minor bug fixes - 24th January 2012
- Minor bug fix to limit maximum days value for redundant file deletion.
- Missing unknown translation on stats pages.
- Minor bug fix to block file upload attempts without names and with zero size.
- Added check for referrer on file upload script.
 
v1.01 - Minor bug fixes - 23rd January 2012
- Fixed possible XXS issues within login and registration forms.
- Minor spelling corrections.
 
v1.0 - Initial Release - 20th January 2012
- Script initially released for purchase & download on MFScripts.com.

License

This program was developed by MFScripts Ltd and is copyrighted.

THIS SOFTWARE AND THE ACCOMPANYING FILES ARE PROVIDED "AS IS" AND WITHOUT WARRANTIES OF ANY KIND WHETHER EXPRESSED OR IMPLIED.

In no event shall the author or MFScripts Ltd be held liable for any damages whatsoever, including without limitation, damages for loss of business profits, business interruption, loss of business information, or any other loss arising from the use or inability to use the software.

Your purchase of YetiShare allows you to install a SINGLE (one) copy of YetiShare on ONE domain. You may not resell, distribute or rent YetiShare. You can find our full terms and conditions here.

Credits

MFScripts Ltd

3rd Party Code

A number of MIT, LGPL and other copyrighted libraries and resources have been used in this program. These copyrights remain the property of their owners.

Some of these libraries include:

If we have missed anything please let us know!

We've spent the past 4 year building YetiShare into what it is today, however there's still lots more we can do. If you have any comments on how we can improve the script further feel free to post on our RFCs via the MFScripts forum.

Thanks again for your continued support!

Adam Wilson & Simon Nooranvary - MFScripts.com

https://yetishare.com/