Installation

Requirements

Installing DigiMuse is really easy and can be done in less that 5 minutes. Make sure you have DigiMuse required extensions then start the installation. Or you can just run the installer to see which extensions are already installed

  • php 5.6+
  • php extension: cURL
  • php extension: MySQLi
  • php extension: mbstring
  • php extension: gd
  • php extension: ftp ( optional, for uploading to third party hosts via FTP )
  • php allow_url_fopen enabled in config
  • web server mod_rewrite

Copy your purchase code

Visit Codecanyon. Login to your account. Head to your downloads page. Find `DigiMuse` and click on download button. Download the purchse code as TXT. Open the file and have the purchase code ready to be copied. You'll need it during installation. More help

Create a SQL Database & User

Head to your host/server control panel. Create a new SQL database ( we recommend using "utf8mb4_bin" as database collation but it's not a necessity ). Create a new SQL user and give that user access to created database. If you don't know how to this, contact your host manager and they can easily help you

Upload script files

Upload all files and folder inside script directory to your website http directory ( if you are using managed host then it's probably /public_html directory ). Upload everything INSIDE `script` directory. If your server is using NginX as web server, you need to also upload nginx.conf from documentation directory to your http directory

Installation

Visit YourWebsite.com/installer/ to see a page like the screenshot below After reading our simple terms and hopefuly complying with them, click on `Agree` button to see page #2


In page #2 you can see script's required extensions status. If something is missing try to install or enable it. If you don't know how to, contact your host manager and they will do it for you. Continue when ready to see page #3


In page #3 you have to enter your database data + purchase code + web address. Enter all the required information. There is no easy way to change web address after this page, please be careful and double check your web address. System will check them and if everything is OK you can click on continue button to see page #4


in page #4 you have to enter your email address and choose a password. This will be your account credentials on DigiMuse After entering required data. Click on `Create database tables` to modify database and finalize your installation. Creating new tables usually gets done in few seconds but on some servers it might take up to 3-4 minutes. Please be patient. When installation is over you'll see a `All done. Thank you` message. Your site is ready to use! we recommend reading `After-Installation care` before starting to use your new website

After-Installation Care

  • First thing you have to do is make sure your SQL database and your php are on same timezone. Otherwise script will run into problems like kicking users out right after they log in. In last page of installer you can see both times and compare them. You can ask your host manager to set timezones for you or you can do it yourself in your host/server control panel
  • Installer does absolutely nothing after installation besides displaying your php/mysql time but it's smart to remove `installer` directory after installation
  • Make sure .htaccess files are working or all website URLs will break down and people might get access to your protected content ( original audio files ). List of these URLs is availabe in last page of installer. If your server is using NginX as web-server you need to copy nginx.conf from documentation ( this ) folder to your http folder ( next to .htaccess and index .php )
  • Go to your website admin panel then go to UI -> Theme Setting and set a theme color. You can change this color anytime you like but it won't change already-created waveforms so it's better to choose a color and never change it
  • There is a directory named `Uploading` in ~DigiMuse_path/uploads/uploading. Anything users upload go to this directory first. When user is done editing his uploaded tracks, images will be copied to ~DigiMuse_path/uploads/images and audio-files to ~DigiMuse_path/uploads/protected. Original files might still exists in ~DigiMuse_path/uploads/uploading so you should remove eveything inside this folder once in a while ( everything except .htaccess file ). There will be a `Tool` to help you with this job in next update
  • It's generally recommended that you keep your database tables optimized. There will be a `Tool` to help you optimize your tables in next update

App Guide

User & Group Access

There are 5 pre-defined user-groups that can't be removed. Guest, User, Paid, Artist, Admin. You can create as many user-groups as you like. Default user-group for first user ( the one you create during installation ) is `Admin`. Default user-group for new users is `User`. You can change all of this default values in admin panel.

2 user-groups ( Artist & Paid ) are bonus groups. Meaning no user actually belong to these groups but users can get additional access if they are also a member of one or both of these groups. Users can `upgrade` their plan by paying a monthly fee and become a member of `Paid` user-group and get additional access or they can request to become an artist and they will get additional access and become a member of `Artist` user-group after getting approveed by an admin.

Page Builder

This feature allows you to create as many different pages as you want. Then use one or all of 9 widgets to display the content you want to display in each page. You can also set pagination or a linked page for each widget to direct users to your other pages or more content of the same. To see how each widget looks like, you can visit this demo page.

Page Title & Description

After creating a page head to UI -> Languages then choose languages one by one and set title and description for the page you just created. You can also set variable title for widgets so they can be translated. Read `Translation` part of documentation for more info. You can use Spotify playlists to create self-updating widgets. Read `Dynamic content` part of documentation for more info

Website Direction ( RTL support )

DigiMuse templates should support right-to-left ( RTL ) direction with the help of an addiotional CSS file. To set RTL as direction edit `dir` in Language-editor and set it to `rtl` like the screenshot below

Widgets Translatable Title

You might need to set a translatable title for a widget. In order to do that you need to type a # in title and only use A-Z, numbers and underline after that. Don't make it longer than 15 character. like the screenshot below ( examples: #top_this_month, #most_viewed, #editor_choice, #any_char_here )

Then go to UI -> Language editor -> language and edit the title like screenshot below and repeat for every language

Dynamic Content

DigiMuse can collect track/album/artist/search data from Spotify and use them as accessible content. Users can browse thro thousand of tracks/albums/artists and play any track they like. DigiMuse will find video for requested track on Youtube then show the video to user. User can control the video thro DigiMuse player controls. At this version DigiMuse can collect dynamic content from Spotify in 4 ways:

  • Include Spotify search results in DigiMuse search results ( You need to have ALL `Auto_discover` options ON in Admin -> Setting -> API )
  • Collect artist's top_tracks/single_albums/studio_albums/featured_in data from Spotify and include them in artist page results
  • Collect album's tracks from Spotify and include them in album page results
  • Spotify Widget: You can create a `Spotify widget` in page-builder. You can search in Spotify for a playlist, select that playlist and edit the widget as you see fit. DigiMuse will check Spotify for that playlist content and automatically add them to your contents and update the widget with localized Spotify content. Keep in mind that when you edit and save a page that contains Spotify widgets, you'll reset Spotify cache and you have to wait for crond to update the widget or you can run the updater manualy from Admin -> tools

Updating

Steps

  1. Not a requirement for update but it's always a good idea to back-up your database or if possible, your whole website before making any big changes
  2. Download config.php file located in digimuse_path/app/ directory from your online website. This file contains your purchase code, client clode, sign code, web address and database connection data. It's crucial that you take good care of this file and never lose it. Save it in multiple places if you have to. You should also download .htaccess file if you have changed it
  3. Digimuse should have 3 or 4 directories in your public html directory right now, remove all directories and files BUT uploads directory. You should remove app and themes and installer directories and all other files. Files list are shown below, remove everything but uploads directory
  4. Locate the script directory in downloaded files from Codecanyon. Find config.php located in downloaded_files_path/script/app/ and remove it. Copy config.php - downloaded in step 2 - and paste it there
  5. Zip everything but uploads inside script directory, upload it to your public html directory and unzip it
  6. If you own a custom theme, re-upload the theme directory to digimuse_path/themes/ directory. If you own a custom plugin, re-upload the plugin directory to digimuse_path/app/plugins/ directory
  7. Hard part is over. New files are uploaded, config.php file is replaced, only remaining thing is database modification. Open yourwebsite.com/installer/update.php in your browser. This web-page will help you to modify database and finish the update

Server/Host Config

Crond

DigiMuse has a simple bot that updates `Spotify wigets` ( and a lot more in future versions ). You can run this bot from Admin panel ( Admin -> Tools -> Spotify Widget Updater ) or you can make a cronJob for it. If you have access to your server crond you can create a cron job that executes /~DigiMuse_path/app/core/bot/runner.php every other hour. This will keep your `Spotify widgets` updated

Resources

Creating DigiMuse would not be possible without these resources. Thank you