Midrub is a platform based on CodeIgniter which allows you to have a Social Marketing Tool. At this moments Midrub supports up to 20 social networks and you can use it to schedule posts, read insights and moderate your comments. It supports RSS Feeds and has a planner where you can schedule easy your posts.
Midrub is not a toy and it is one of the few scripts which allows you to start a stable business.
Why Midrub could be the right solution to start an online business:
Midrub uses official api and you can sign in a contract with social networks. Official api means stable business because there aren't bugs in the api.
Any reported bug will be fixed in the same day or if is minor will be fixed in the next update(max a month).
Midrub already has the same planner which you're seeing in Hootsuite, and in november will be added a button in the quick schedule popup which will allow to select the days of the week and hour when to publish a post.
Midrub is not another script which will be closed for a stupid reason. You can be sure it will be improved for years.
Create your custom themes.
Manage menu from admin.
Create a custom theme for frontend.
Create custom plans with dynamic added features.
The Midrub Stream and Midrub's ADS Manager will make Midrub more useful than other similar tools.
Download Midrub platform and extract all files from Midrub-app folder, compile it on server.
Create MySQL data base and import the sql file from the documentation folder.
Open config.php file from application/config/ and replace the http://www.examle.com/ with your website address, also replace Midrub with your site name. Add your contact email (will be used as expeditor for sent messages) and notification email where you will receive the system notifications.
Open file database.php from application/config/ folder and add the server address to the created data base, the name of the data base, user and password.
After you have accomplished the steps above, you have to configure the platform, so you can connect social networks to make posts. Next you will find detailed information about how to configure each social network.
You can login on your website with username: administrator and password: 12345678 as admin.
You have to replace the url https://www.midrub.com/ with the url you have in the config.php file.
The cron commands above aren't universal. A few of servers will not support them. Better to ask about your server provider.
Here are all common errors. Please use CTRL + F to search errors in this section.
403 denied access
Solution: Please ensure the cookie_domain variable in config.php has a correct value.
404 Not Found
Solution: Please ensure you have uploaded the htaccess. If you have edited it, upload from zip again the htaccess. You don't need to edit htaccess.
500 Internal Server Error
Solution: There are three reasons for this error: wrong file permissions, timeout limit reach and htaccess has wrong characters(please restore it).
Class 'Phar' not found
Solution: Please contact your server provider.
Parse error: syntax error, unexpected '.', expecting ']' in
Solution: Midrub runs on PHP 5.6+. Now your version is older than PHP 5.6.
Fatal error: Class 'InstagramAPI\Instagram' not found in
Solution: By default the private Instagram library missing in Midrub and you have to install it.
Module 'timezonedb' already loaded
Solution: Please contact your server provider.
Call to undefined function mysqli_init()
Solution: Please install the mysqli extension in your php.ini.
You already have an account
Solution: This is not an error. Is just a restriction to prevent abuse. You can limit signup from same ip for a day or forever from admin.
SMTP doesn't work
Solution: Codeigniter uses three ways to send emails: smtp, email and sendmail. By default is sendmail. Please try each from your SMTP configuration at SMTP Protocol.
file_exists(): open_basedir restriction in effect.
Solution: Please contact your server provider.
In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column
Solution: Go to your phpmyadmin, click on sql and enter the code from here: https://jsfiddle.net/zj9e09hj/
ci_sessions doesn't exist
Solution: Please import the sql code.
Here are all common questions and answers. Please use CTRL + F to search questions in this section.
How to update Midrub?
Answer: Midrub has automatic update system, but a large number of files changed can't be updated automatically. I want to avoid interruption of download due to server configuration limits for someone. For more details please look in the Update's(left side) section.
How to custom the styles for user dashboard?
Answer: Create a file called custom.css in the folder assets/user/styles/css and add there your custom styles. If you will update Midrub manually, please backup the file.
How to enable Emails in Midrub?
Answer: First enabled from Admin -> Settings(Email Marketing). Then enable per plan by adding in the field "Number of sent emails" a number greater than 0. Midrub is rewriting now from scratch and in december will be added an advanced stream not only for social, but for each business needs and ads manager. After in January i will create a new Email composer professional like on MailChimp and the section Emails will be like Posts with history, insights, planner, etc.
Why is soo hard to configure the script?
Answer: Midrub is not hard to be configured. But the social networks requires efforts to be configured. In the Social Networks(left side) tab you can watch videos how to configure them.
Answer: Midrub supports proxies only for Instagram private library. Other social networks not requires a proxy because are using official api and you can't have problems with the api. The proxy can be added for each user or for all.
Where i can add my timezone?
Answer: Midrub uses the device time and the timezone is not important. Midrub always worked without the timezone, but in this year was added team and i think to add timezone to avoiod scheduling problems for team members which have different location.
Why the database's table ci_sessions is soo big?
Answer: The table ci_sessions is the CodeIgniter's table where are saved all sessions. By default the table should be emptied automatically. It is based on the php options gc_probability and gc_divisor. If the table ci_sessions not empties automatically, contact your server provider.
From the begin Midrub had an original update system. But the update system is not perfect, because a large number of files can't be updated. The max update limit is about 100 files. A lot of servers are slow and have configuration limits and updates with a large number of files will be interrupted before the end.
I've created at the begin the system update for bugs and i'm using it for this scope more. If you're reporting a bug, i'm not interested to make you wait a new update in a month. I will provide imediatelly a new update with solution from admin(this was my goal from the begin).
In august - september 2019 i will develop a new update solution which will allow you easily to update/install Midrub's base, apps, components, plugins and themes. Updates after will be always possible to get from admin panel.
After manual update is required an automatic update from admin.
How to update Midrub manually?
To update Midrub, you don't need to touch the database, htaccess or vendor folder. Just backup the files application/config/config.php and application/config/database.php because the files contains your configuration.
The backup folders assets/img where are the system images and assets/share where are stored the users files.
Copy from CodeCanyon application and assets folders. Then restore your backup.
I recommend you a professional update. Install Midrub in a test folder too and after each update test anything. If you're satisfied with the new update, copy it in your main location if no, contact me.
Please watch the video below to understand how you can easy update Midrub in 3 minutes:
If you have translated Midrub please look in the section Changelogs to see which words were added in the last update.
How to translate Midrub
Midrub can be translated in any language you want, but is not simply for more reasons: a lot of files to translate, at each update are added new words and requires a lot of attention.
You have first to create a new language folder here application/language. After you have to copy each files from the folder english and translate them. Each app has its language folders and you have to translate them in the same way.
After that, open the file application/config/config.php and at the variable $config[‘language’] replace the 'english' with the word name of your translation folder.
In this way you can easily translate Midrub in any language you want.
Please remember, each update means new words to translate, just copy them from the original english files in your edited files.
To understand better how Midrub can be translated, please watch the video below:
The plans page was changed a lot from the version 0.0.7.4. Now it is dynamic and you have to enable plans limits for each enabled app. If the apps aren't enabled, you will not see them in the plans page.
Please read the description at each plan limit. It's important the price to have decimals. It's important for currency code to be correct. It's important to add a correct storage user for each plan.
If you have Facebook Ads Manager, please wait several hours until will be available a new version of the Facebook Ads Manager on CodeCanyon because the Facebook Business library was updated.
Was changed the Midrub's Core and in the following months the new core will replace all existing Midrub's structure and you will have only application/base and assets/base as Midrub's core. Other folders will be CodeIgniter's folders/files.
Midrub's themes allows you to develop your own theme by using html code. In the new public documentation you will have instructions about how to create Midrub's themes.
Removed accounts pagination option from user's settings. Now by default is enabled.
If a social network is disabled, connected accounts won't be more displayed.
Storage app – at this time has file manager and categories but image editor comming in the next week.
Updated Linkedin api and now is possible to publish in Linkedin profiles. We’ve applied for partnership(made more requests) and as soon will be approved, will be added companies and groups. Old library for Linkedin Companies is still available but i don’t know how long will work.
New Admin Settings page – will be released in the next week.
Affiliates section based on coupon codes – will be released in the next week.
Download Photos from url.
Popular Hashtags suggestions – will be in the next week.
Option to enable url field – will be in the next week.
If you have apps(other than Posts and Dashboard), please backup them and then restore. If you have other posting classes in application/autopost, please backup them and then restore, if you have a custom payment classes, please backup and then restore. Same for vendor's folders.
New User Settings Page – the user’s Settings page has a new design which will integrate all settings, api’s apps, invoices, plan usage, connected services via api, 2 factor authentication, etc. In the Settings page users will be able to control their payment subscriptions.
Plan Usage – now users will be able to see for what they’re paying and will see what missing.
Settings Invoices – users will see in this section all their invoices and they will be able to print them.
New modern Faq Section – with advanced tickets and categories(this feature will be in this version but in beta 1 is not available).
Hashtags Support – now hashtags are supported by Imgur, Medium and Tumblr. You have to add #hashtag in the post’s message.
Instagram Replies – now you can reply to Instagram comments as reply.
Hooks for Apps – this is an essential feature added for apps. Without it the apps are useless. In the next week i will create a developer documentation where i will explain step by step how to add new features in Midrub.
User Settings for Apps – now you can create a custom class with settings for each Midrub’s app which will be displayed in the user Settings page.
RSS Attached Images – now RSS Feed can read the attached images as files
Security Monitoring System – added a security monitoring system which verifies every minute for non Midrub's files, deletes them and send you notification.
Facebook Graph – Facebook api is not supported more. I've replaced with graph.
Account list pagination – Now if someone has more than 10 social accounts, from admin ca enable pagination.
Improved the Midrub’s menu icon and font.
Pagination for RSS posts history.
Changed colors for social buttons.
Improved the RSS Posts widget from the Dashboard’s app.
Improved Midrub for mobile compatibility
All user’s options now are restricted. Them will be saved only if are present in my default list or if are present in a Midrub’s application.
Was updated completely the language file application/language/english/default_tickets_lang.php
This update required a lot of time due to really important changes which required a long test period.
Plans Page - the page was rewritten from scratch and added support for apps. Now apps will import them plan's limits once will be enabled.
Cron Job - i'm going to replace all cron commands url with one single url which will be cron-job. For more details please look in the section Introduction -> Cron Jobs.
User Deletion - since the apps are standalone and each app has its table in the database, each app should delete the user data when the user will be deleted. For this reason was added this feature in the apps.
My Team widget - the widget My Team from dashboard was disabled for team's member, was blocked the page Plans for team's member and upgrade's links were removed too.
RSS Section - was moved in the Posts app. Since more apps will have a RSS section, i've moved RSS section in the Posts's app and was improved. The Faq can be enabled or disabled from Admin Panel -> Apps.
Imgur - Imgur can display your photos in a hour to more than 100 people i've added the possibility to publish photos in the gallery and will be indexed by Google. Please remember Imgur could easy ban you for abuse(ban means your photos will be hidden for a period).
Inbox's app - is an universal application which allows to add all your inboxes(emails, twitter, google, etc) and automatize them. By default you have Facebook Pages where you can reply to messages manually, see them, see the author, create quick replies and private messages for each page. The Inbox app has a plan limit for bot's messages. Later will be added other limits for plans. I'm sorry but is not possible to use the alternative Facebook classes for this app. I've tried but is not possible.
Networks - networks doesn't mean more social networks. I've added a type field for each Networks. The accounts manager in Midrub will be the same but networks will be displayed based on types. For example in the Inbox's app is displayed only Facebook Pages now. In the Ads Manager will be displayed only networks which supports ads. On new Emails app will be displayed the networks which supports smtp. On the Posts app you can see only Networks which has post, rss or insights type.
URL Shortener - in the Posts's app was added support for url Shortener. By default will be used Midrub Shortener and you have the option in admin to enable Google Shortener. In near future will be added more options.
Posting Error - in the History tab you will see posting errors for each social account. Users will see posting errors for both manual and RSS's posts.
Bots name and description - was added now the possibity to add original name for each bot(only admin will see real name). Same for description. You have to edit the Bots classes which are standalone.
Midrub has now a new Faq Article section which supports multilanguage articles and categories. The core of the FAQ section was rewritten from scratch and now it looks more professional. From admin you can create a list with categories and subcategories. Than with a click you can select the categories for each Faq article.
The Faq section provides support for any number of languages you have. For each language folder, you will see new inputs and the articles for user will be in the selected language. Same for categories.
The Tickets system in Midrub was rewritten from scratch and now users can create new tickets from the Faq section. As admin you can restrict the creation of new tickets per time or disable it. Was removed the attachements support. Now is supported only subject and ticket’s message. But i think in the future will be added other fields.
As admin you can reply to tickets. When someone creates a ticket, the ticket count will be displayed in the admin panel until admin will reply. Same for user, user will see notification for not replied tickets. User can close it or reply.
Admin has now the option to mark as important the tickets.
How to configure Twitter
If you don't have a develop account on Twitter, please contact me by email.
Add correct callback https://www.website.com/callback/twitter(url like in your config.php)
Add another correct callback https://www.website.com/user/callback/twitter(url like in your config.php)
Copy the API key and API secret key. Paste them in Midrub -> Admin -> User -> Networks -> Twitter
Please be careful with Twitter because them don't allows more to publish same tweet in two accounts. Twitter allows to publish up to 4 photos. Short video and links are part of the tweet(280 characters - link).
How to configure Blogger
Blogger is easy to configure. But you have to follow 200% my video below.
Add correct callback https://www.website.com/user/callback/dailymotion(url like in your config.php)
Copy the API Key and API Secret and paste in Midrub -> Admin -> User -> Networks -> Dailymotion
Dailymotion hasn't priority like Youtube, but as soon as possible will be added comments moderation and insights.
How to configure Facebook
Facebook option must be configured if you want login/signup via Facebook. BUT DON'T ENABLE IT. Just paste the App ID and Secret. Before this was used to publish on profiles,
but from 1 august Facebook requires to convert a profile in a business page.
I didn't removed it from Midrub Facebook still allows to share videos in normal Facebook Profiles. And i'm going to develop an advanced video composer and this option will be used in future optionally.
Correct callback for Facebook login is https://www.website.com/callback/facebook(url like in your config.php)
Once approved you will have the library Google My Business API in your Google Console's account for your application(where you have enabled Google Plus, Youtube and Blogger).
Correct callback for Google My Business is https://www.website.com/user/callback/google_my_business(url like in your config.php)
Copy the App key, Client ID and Client secret key and paste in Midrub -> Admin -> User -> Networks -> Google My Business
Is not soo hard to get the Google My Business api access like how become Google Partner. I know several small companies which has the api access.
How to configure Google Plus
The option Google Plus allows to publish on the Google Plus profiles if you are Google Partner or if you have a G Suite account. From the 1 august 2019 on Google Plus will be possible to publish only with G Suite(for all companies, Google Partner will not be more important since the social account will be private). And i'm sure the api will be improved for G Suite.
Correct callback for Imgur is https://www.website.com/user/callback/imgur(url like in your config.php)
Copy the Client ID and Client secret key and paste in Midrub -> Admin -> User -> Networks -> Imgur
How to configure Instagram
To publish with official on Instagram you have to be a Facebook Marketing Partner or Instagram Partner. I'm going to help the Midrub's users to become a Facebook Marketing Partner in the following months. For this you need official business.
The private Instagram library now have a different license and i can't distribute it. If you still want to use Instagram, follow this video https://youtu.be/q8i7A9DEavs. If you have installed Midrub, just download it, install the library and upload back. If you just downloaded it from CodeCanyon, unzip, install the library and upload on your server.
If you have clients really interested in Instagram, the library author can provide you a stable solution for a monthly subscription.
This library allows to publish posts with photos. If you have a server and want to publish videos, please contact me by email.
How to configure Instagram Api
The option Instagram Api allows to publish photos and text on Instagram by using the Buffer Api. This solution is stable and ideal for personal use. You can connect your Instagram Accounts(which must be business) and connect RSS Feeds and posts will be published without errors.
Add your Your Callback URL: http://yourwebsite.com/admin/callback/instagram_api
You will receive Client ID and Secret by email
Then go to Midrub -> Admin Panel -> Networks -> Instagram Api
Enter the Client ID and Secret
Enable, after enable if you refresh, you will get an error, don't worry, because the Instagram_api's class is standalone and has it's optional table in the database. Refresh again.
Now, users can submit their Instagram accounts(username and password). Passwords will be encoded in the database.
You can approve or delete submissions. All submissions will be displayed in Midrub -> Admin Panel -> Networks -> Instagram_api
To approve an account, you have to login in the Instagram account and connect it in your Buffer account, then with a click you will be able to approve it for user in Midrub(Better is to become the Facebook Partner, but if you can't you can use Buffer to publish).
You can connect via api even more Buffer accounts.
Correct callback for Medium is https://www.website.com/user/callback/medium(url like in your config.php)
Copy the Client ID and Client secret key and paste in Midrub -> Admin -> User -> Networks -> Medium
How to configure Odnoklassniki
Midrub allows to publish on the Odnoklassniki's groups and copany pages. The option is available only by request. Please contact me by email.
How to configure Pinterest
The option Pinterest uses official Pinterest's api which can be used by you or your team. Pinterest requires to review applications. If you have a company you can ask for review. If no, you can enable the option from admin to allow to each user to use their Pinterest's applicatios or you can use the alternative ways to publish on Pinterest(which are available in Midrub).
I'm going to add Pinterest ads support in the Midrub's ADS Marketing and will be easy to get their permissions.
Correct callback for Pinterest is https://www.website.com/user/callback/pinterest(url like in your config.php)
Copy the App ID and App Secret and paste in Midrub -> Admin -> User -> Networks -> Pinterest
You can connect only boards, not accounts.
If you have more accounts and don't want to ask for review, add all accounts in your application -> Collaborators
How to configure Pinterest Boards
The option Pinterest Boards allows to publish text, links and photos on Pinterest Boards. The option Pinterest Boards is based on the library SNAP API(https://www.nextscripts.com/).
If you have the library, please contact me by email.
How to configure Pinterest Bot
The option Pinterest Bot allows to publish text, links and photos on Pinterest Boards. This options works via email and password and is not officially. At this moment it don't has a proxy, if you will have problems i can add support.
Reddit has more restrictions for their api. You can't publish in any subreddit you want. You can't publish same url twice or if was published already by another user. You can't publish one post often than 10 minutes.
The option Reddit requires an url, you can't publish photos.
Correct callback for Reddit is https://www.website.com/user/callback/reddit(url like in your config.php)
Then, add your Client ID and Client Secret in Midrub -> Admin -> User -> Networks -> Reddit.
How to configure Telegram Channels and Groups
Midrub allows to publish photos and posts on Telegram Channels and Telegram Groups. You can easily connect all your Telegram Channels and Telegram Groups.
You don’t need to configure Telegram Channels or Telegram Groups from admin. Just enable them. Each user have to create a Telegram application and a Telegram bot. Same Telegram bot and api can be used both Telegram Channels and Telegram Groups.
For more details and videos about Telegram Channels and Groups please contact me by email.
How to configure Tumblr
The option Tumblr allows to publish photos, links and text on Tumblr's blogs. Is easy to configure.
Correct callback for Wordpress is https://www.website.com/user/callback/wordpress(url like in your config.php)
Then, add your Client ID and Client Secret in Midrub -> Admin -> User -> Networks -> Wordpress.
How to configure Wordpress Platform
Midrub allows to publish in any website created in Wordpress. For this you need the Wordpress's plugin. If you want it, please contact me by email.
How to configure Xing
The option Xing allows to publish text and links on Xing. The option Xing is based on the library SNAP API(https://www.nextscripts.com/).
If you have the library, please contact me by email.
The posts section is an application which you can find in application/apps/collection. The Posts app has 4 tabs but in max 2 weeks will be added another one, RSS.This tabs can be enabled or disabled from admin.
The Posts app has options in for admin in Admin -> Apps -> Posts and for user in Settings but soon each app will have a tab with its settings added automatically.
The Posts app has two widgets which are displayed in the user dashboard. In the following updates you will be able to enable or disable widgets.
The Composer Tab has 3 sections:
Accounts List/Groups List - are displayed all accounts or groups and user can search/select accounts/groups. In the same are user will see the accounts manager button. By clicking on the button user will be able to manage accounts and groups.
You can read more about the accounts manager here http://blog.midrub.com/midrub-social-accounts-manager/
Posts Composer - contains the post composer and multimedia gallery. In section are displayed the buttons to display title, upload new files and the popup with last posts scheduled/published/drafted.
Preview - contains the post preview where are displayed the post content and selected accounts or groups. From there user can unselect selected accounts.
The scheduled tab has a planner where are displayed all your published/scheduled posts. The planner displays the posts with an image cover or video cover if has. If has more images will be displayed only one. User can see even up to 7 social networks icons where will be published or was published a post.
In the planer you can click on the next date fields and quick schedule posts. The quick scheduler is more limited and don't allows to select categories, upload files or connect new accounts/groups.
The Insights tab displays insights for published posts and you can moderate comments. Insights tab displays even insights for connected accounts.
At this moments Insights are supported by default for:
Instagram Business Accounts
Above were listed the default insights classes. You can custom these standalone classes which are in application/apps/collection/posts/insights
After 12 november will be available Insights for Youtube, Twitter and Google Plus. But these classes will be available by request.
The History tab display all published, scheduled or drafted posts. For each post you can see where was published. If were errors on publishing, time when was published and post's content. From the History tab is possible to delete the posts.
The Inbox's app was created more for automatizations. This app has a bot in each network and will reply to comments, delete non wanted comments, reply to chat messages, reply to review, reply to emails, etc.
The app is stable and you can be sure it will help your potential/existing clients to get instantly replies to their questions.
You can add easy any network you want without lost the data after Midrub's update. I will not change the actual core.
The Inbox's app is provided like a gift by request and instructions for configuration too. You need to request one permission to make it work.
I don't know if you will prefer this app for Facebook Pages Inbox instead the new Midrub's Stream, but at least you can create quick replies for each page and the bot will reply to questions in the Facebook Page's chat. Another feature is private messages. You can create a list with private messages which will be sent to people which comment your Facebook Page's posts.
At this moment the Inbox app supports exact phrases and keywords. Exact phrases means if someone ask exact what you've written in a bot's message, the bot will reply. I think you will prefer the keywords where each keyword should be in a message. Reply is only plan text.
Analytics tab allows to see by time who contacted you and what bot replied.
How to add a new network
I will explain how i will add Twitter, but in the same way you can add any network you want. Please follow exactly my instructions.
First in assets/apps/inbox/networks i will create a new folder twitter. Inside i will create two folders: js and styles. In the folder js i will create the file main.js where i will add all js code for Twitter. My ajax calls will have the url url + 'user/app-ajax/inbox' and parameters action(name of the php's method) and network will be twitter to say where is located the wanted php method.
In the folder styles i will create the folder styles and inside the file styles.css with network's styles.
Then inside the folder application/apps/collection/inbox/networks i will create another folder called twitter. After, in the folder twitter i will create files:
main.php - is the first called class when a network is loaded. You have to follow the interface MidrubApps\Collection\Inbox\Interfaces\Networks The method network_info should return an array with keys(please look in my Facebook Pages example).
ajax.php - is the file called by ajax. You have to add there all your methods.
bot.php - is the file called by social networks. There you have to write all bot's commands.
footer.php - is the file which will contain all your modals. You can see two modals in the Facebook Pages like example.
The bot's url will be https://www.midrub.com/social/user/bots/inbox?action=load_bots&bot=twitter
To connect accounts in the Inbox's app, the autopost's class should have the type "inbox".
The default Storage app was created to allow you to manage more easy your upload media files. Also, this app was created to allow photo edition and files categorization(Soon your will se how categories can be used).
At this time the app is basic, but will improved soon with new features.
How to configure PayPal
PayPal can be used for both recurring payments and monthly manual payments.
You need a Business PayPal account, but don’t worry, you don’t need to pay nothing. For each transaction PayPal will take 0.50$. If you have already a Business PayPal account, sign in and click on the Profile -> Profile and settings -> My selling tools -> Website preferences(Update) -> Copy the PayPal Identity Token and add in Midrub.
Why you need PayPal Identity Token in Midrub? Someone can redirect manually a link to your website and upgrade the plan without paying. But with PayPal Identity Token we can verify the redirected token if is valid, already exists in your database or the payment value is exact for the choosen plan.
For recurring payments please contact me by email and i will provide more instructions.
How to configure 2Checkout
2Checkout can be used for monthly manual payments.
2Checkout is available in almost any country and people can pay by using their credit card.
If you want to use 2Checkout, you need first to create a Merchant Account:
And paste the copied Live Secret Key in the field Stripe Secret Key(Press SPACE and BACKSPACE if will not be saved)
How to add a new payment gateway
The payment gateways in Midrub are standalone files. You can add a new payment gateways by adding a class in application/payments(you have to follow the interface application/interfaces/Payments.php).
How to create a new payment class:
process - is the method which process the request sent after user click on the button Pay Now
save - is the method which process the response when user is redirected to http://yourdomain.com/user/success-payment
info - contains the class's info
cancel - if user has a subscription and changes the plan, we should delete the existing subscription first. So add the code in the method.
From the version 0.0.7.7 Midrub has it's api. For each Midrub's app you can create custom endpoints and read, modify or create new content in Midrub from any device or website.
The api is based on Oauth 2 and users can generate tokens based on permissions and use the tokens to access the api's endpoints. Tokens can be generated by redirect/login or via username and password from a mobile app.
All apps can be manager from the Admin panel and you can decide which permissions will have each api's application. In the near future users will be able to ask for permissions and manage their applications from their accounts.
How to configure Dropbox
Dropbox can be enabled from Admin -> Apps -> Posts -> Multimedia -> Enable the DropBox multimedia picker
We added $config['sess_use_database'] = TRUE; in the application/config/config.php file and all sessions are saved in the database.
Why there is NO captcha for login and sign up forms?
Because after 5 failed attempts to login, the user is blocked for one hour. Once registered/signed up, the ip address is stored and the user will not be able to register/sign up again for 24 hours. Also you can choose, that it will not be possible to register/sign up ever, from the same ip address. This way, we simplified the login and sign up steps, without being necessary to complete other fields.
All uploaded images and videos in the user panel will have only the read permissions. Midrub allows to run only it's files which are included in the htaccess. The htaccess from the folder assets will prevent the execution of php files in all subfolders.
For vulnerable folders i've disabled via Htaccess the php files execution but this solution won't work o Nginx.
Please, remember, i'm only a web developer and any big/middle companies have security engineers which only ensure the security for the company's projects. If you have ideas how to improve the security for Midrub, please let me know, i will check to add them.