s
MagicApps uses metadata tehnology: complete Apps are stored in central repository (database). With AppBuilder You will create new Apps or modify existing App – but with no coding. All You have to do is just setting properties. AppGenerator will serve those Apps to end Users on the fly with superb performances.
Because metadata development is code-free, it extremely reduces development time by eliminating developer errors and by saving redundant steps.
MagicApps comes with fully automated installing process.
MagicApps is a great solution for increasing your company productivity, communication and collaboration.
Put our app files in the root folder on your server and run the 'install' directory. You should see this screen:
After entering your database connection credentials click 'Connect' and let the script test your connection.
If database connection was successful you should see this screen:
If not, please click 'Try again' until you get the success message.
On this screen 'Demo content' is selected by default, so you can see some content and user interaction in our app.
If you would like a clean system, with only one admin user and no content, please select 'Clean install' and click on the 'Install' button.
Congratulations! You have successfully installed MagicApps
All tables needed for MagicApps have been imported into your database.
After you click 'Finish' the 'install' folder and all of its contens will be deleted for security reasons.
File 'inc_dbinfo.php' will be generated in root directoy on your server. Please do not edit that file.
You will be redirected to login screen. Use 'admin@demo.com' with password '123456789' and enjoy MagicApps.
File Hierarchy of the Source Code Package
MagicApps/
├── bootstrap/ (clean bootstrap 3)
│
├── build/
│ ├── less/
│ │ ├── MagicApps Less files
│ └── Bootstrap-less/ (Only for reference. No modifications have been made)
│ ├── mixins/
│ ├── variables.less
│ └── mixins.less
├── dist/
│ ├── CSS/
│ ├── JS/
│ │ └── custom.js (user events: likes, comments, status updates...)
│ │ └── demo.custom.js (demo user events: alerts 'Demo!' for all user events)
│ └── img/
│ └── favicon.png (favorites icon, check 'inc_styles.php')
│
├── documentation/ (CSS and JS files)
│
├── images/ (documentation images)
│
├── install/ (MagicApps instalation folder)
│
├── plugins/
│ └── All the customized plugins CSS and JS files
│
├── upl/ (profile picture, documents, cover photos upload folder)
│
├── inc_dbinfo.php (contains database connection credentials, generated after the installation process)
│
├── inc_dbconnect.php (connects to the database provided in 'inc_dbinfo.php' file)
│
├── inc_main.php (main configuration file and label translations for MagicApps)
│
├── inc_lib.php (functions that return user data: 'fGiveMeUserFullName', 'fGiveMeProfilePicture'...)
│
├── inc_styles.php (all CSS files used within MagicApps)
│
├── inc_scripts.php (all JS files used within MagicApps)
│
├── home.php (main screen file. It opens basic stream by default)
│ └── inc_home.php (different streams are based on $_GET parameters - pIDpos,pIDproject,pIDuser)
│ └── inc_profile.php (based on $_GET 'pIDuser' this file gets included and shows single user profile stream)
│ └── inc_inc_home_comments.php (generates comments from database for stream posts)
│ └── inc_inc_home_posts.php (generates posts from database)
│
├── messages.php (messages screen, used for all or single message display)
│ ├── inc_msg_all.php (shows all of your conversations with dataTables. Easy searchable and sortable)
│ └── inc_msg_single.php (single conversation real-time chat screen)
│
├── inc_notif*.php (all scripts starting wih 'inc_notif' are used for notification update)
│
├── password.php (user password change screen)
│
├── profile_pic.php (change user profile picture)
│
├── load_*.php (all files with 'load_' prefix pull and append data instantly via AJAX)
│
├── save_*.php (all files with 'save_' prefix save and append data instantly via AJAX)
│
├── login.php (main login screen)
│
├── login_check.php (used to check input from login.php and create all necessary $_SESSION variables used by MagicApps)
│
├── logout.php (destroys session and logs the user out)
│
├── lockscreen.php (also destroys session and logs the user out, but you can login faster only by typing your password)
│
├── app_*.php (app files, app builder, app generator)
│
└── blank.php (blank screen template with all scripts included)
The default stream shows all posts within MagicApps. You can update your status only on this screen.
As you scroll down, posts are loaded automatically on all streams.
Project stream filters stream posts to only those that belong in certain project.
User profile stream shows you only posts created by the user whos profile you are on.
Main messages screen allows you to search and sort your private messages, but also create new conversations.
Users with red circle around their profile picture have not seen all messages inside the conversation.
Users with green circle around their picture have seen them all.
In real-time chat mode, all of the users included in a single conversation can exchange messages.
The ones that are currently not active will get a message notification.
Setup $chatRefreshRate
in inc_main.php for new messages appending time interval.
MagicApps keeps track of all activities inside the App.
Using the smartupdater plugin, MagicApps alerts you when there is something new.
All of the notifications are in the top right corner. Keep track of your Messages, Notifications and Tasks the easy way.
Setup $nNotificationMessageRefresh
, $nNotificationAlertRefresh
, $nTaskAlertRefresh
in inc_main.php for messages, notifications and tasks refreshing time interval.
MagicApps is unique integrated software package, intended to use by You (as new Apps developer) and Your End Users (as App Users). MagicApps will hide from You all technology complexities and give You extreme productivity in new Apps development, so You can focus only to delivering the business benefits to Your User.
MagicApps use metadata tehnology: complete Apps are stored in central repository (database). With AppBuilder You will create new Apps or modify existing App - but with no coding. All You have to do is just setting properties. AppGenerator will serve those Apps to end Users on the fly with superb performances.
Because metadata development is code-free, it extremely reduces development time by eliminating developer errors and by saving redundant steps.
Application Market is unique and powerful concept here in MagicApps: It is collection of all "User-type" Apps. It allows User to review Apps (every App has own "page") and install&uninstall every App. App is installed into User profile, so every User can install and use only needed Apps.
AppMarket will became more important in forecoming versions of MagicApps, with more and more included User Apps!
MagicApps includes 12 User-Apps, 1 Admin-App and 1 System App.
With included AppBuilder You can edit all of this Apps with no-coding (so consider this Apps as Application Templates.) You can also create unlimited number of new powerful Apps, with no-coding of course. Easy and extreme fast.
Application Generator is tool included in MagicApps. Once new App is created by AppBuilder, You can run this App. And the magic of "run" is in AppGenerator. This is the common engine of all Apps and guarantees superb App performances and great User experience.
MagicApps use metadata tehnology: complete Apps are stored in central repository (database).
AppBuilder is tool for creating new App or editing existing App.
MagicApps use metadata tehnology: complete Apps are stored in central repository (database). With AppBuilder You will create new Apps or modify existing App - with no coding. All You have to do is just setting properties. Then AppGenerator will serve those Apps to end Users on the fly with superb performances.
Create new Application - AppWizard
AppWizard will create new table (in current DB) with default mandatory fields. You can extend this structure later.
AppWizard will create 3 basic Objects: Browse, Form and Menu. Those Objects will be linked properly. You can extend this App later in unlimited way.
Note: You can find complete code of default AppWizard in ip_after_insert_app.php
Create New Object - ObjectWizard
ObjectWizard will create new table (in current DB) with default mandatory fields. You can extend this structure later.
ObjectWizard will create 2 linked Objects: Browse and Form. Those Object will be part of current App. Those Objects will also be added into App Menu Object.
Note: You can find complete code of default ObjectWizard in ip_after_insert_obj.php
Tip: If You need to create new single Object, just Copy existing Object into new one (use "Copy" from Object row toolbar).
Note: SysAdmin has privilege to run AppBuilder
Note: SysAdmin privilege is on-screen button
Note: AppBuilder is made as one of Apps in MagicApps package (App ID#1 in metadata repository :)
Note: Here is AppBuilder video demo
Typical App consists of 3 Objects:
dltd
. This is record status. This field should be indexed.pic1
, pic2
, pic3
doc1
, doc2
, doc3
lnk1
, lnk2
, lnk3
vid1
, vid2
, vid3
There are 3 basic Types of Apps:
Application have few Objects. So App is Parent and Objects are Childs.
It is very simple: We have Browse, Form and Menu Objects. Browse and Form Objects are usually linked, examples: after Insert, Form is going to Browse; or You can select record in Browse Object and goto Edit Form Object...
$tableButtonsWithCaptions
in inc_main.php$tableButtonsWithCaptions
in inc_main.phpObject have many Elements. So Object is Parent and Elements are Childs.
It is very simple: We have Column/Field, Tab and MenuLabel Elements. Browse Objects consist of Column/Fields Elements, Form Objects consist of Column/Fields and Tabs Elements, and Menu Object consists of MenuLabel Elements...
It is very simple: We have Column/Field, Tab and MenuLabel Elements. Browse Objects consist of Column/Fields Elements, Form Objects consist of Column/Fields and Tabs Elements, and Menu Object consists of MenuLabel Elements...
$datePickerLang
, $dateDisplayFormat
and $firstDayOfWeek
in inc_main.php$timePicker24on
and $timeDisplayFormat
in inc_main.php$mPathDoc
in inc_main.php - default is "upl/doc"$mMaxDocHeavy
in inc_main.php - default is 10MB$mPathPic
, $mPathThumb
in inc_main.php - default "upl/pic", "upl/thumb"$mMaxDocHeavy
in inc_main.php - default is 6MB$mPicWidth
, $mThumbWidth
- defaults are 1366, 160fGiveMeAppIconBig
in inc_lib.phpNOW()
Element may have few Details. So Element is Parent and Details are Childs.
Details are using as lookup values for SelectStatic type
Browse: To display data entered as LookupStatic-Details, use also "SelectStatic" and define Details again.
Form: Use and define Details for SelectStatic type (Lookup)
MagicApps is based on the AdminLTE template so it makes use of same plugins, plus some that we added. Added plugins are in '/plugins/ebiz/' folder. For documentation, updates or license information, please visit the provided links.
MagicApps supports the following browsers:
Note: IE9 does not support transitions or animations. The template will function properly but it won't use animations/transitions on IE9.
MagicApps is a commercial product that can be purchased exclusively on CodeCanyon.
If you would like create your own WebApp using AdminLTE please visit its homepage.
AdminLTE is an open source project that is licensed under the MIT license.