Skip to content

osc2nuke/BreadBuilder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BreadBuilder

BreadBuilder for oscommerce admin

Depanding on the breadbuilder settings your output will be auto-generated.

This means that after you assigned a setting to your database field the output is automaticly generated by that setting.

The general principe is that for each supported page that has CRUD functionality within osCommerce, from now on require only a Hook

The breadbuilder allows you to create layouts based on :

  • Browse

  • Read

  • Edit (TODO)

  • Add

  • Delete

    Read as : BREAD

supported fields:

  • Checkbox

  • Color

  • Date

  • File

  • Image

  • Multiple Images

  • Number

  • Password

  • Radio Button

  • Rich Text Box

  • Code editor

  • Markdown Editor

  • Select Dropdown

  • Select Multiple

  • Text

  • Text Area

  • Timestamp

  • Hidden

  • Coordinates

    Alternative layouts support.

DataTables

DataTables is used to make the colums sortable.

Screenshots

alt text

alt text

alt text

SQL


DROP TABLE IF EXISTS `data_rows`;
CREATE TABLE IF NOT EXISTS `data_rows` (
  `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  `data_type_id` int(10) UNSIGNED NOT NULL,
  `field` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `type` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `display_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `required` tinyint(1) NOT NULL DEFAULT '0',
  `browse` tinyint(1) NOT NULL DEFAULT '0',
  `read` tinyint(1) NOT NULL DEFAULT '0',
  `edit` tinyint(1) NOT NULL DEFAULT '0',
  `add` tinyint(1) NOT NULL DEFAULT '0',
  `delete` tinyint(1) NOT NULL DEFAULT '0',
  `details` text COLLATE utf8_unicode_ci,
  `order` int(11) NOT NULL DEFAULT '1',
  PRIMARY KEY (`id`),
  KEY `data_rows_data_type_id_foreign` (`data_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;


DROP TABLE IF EXISTS `data_types`;
CREATE TABLE IF NOT EXISTS `data_types` (
  `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `slug` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `display_name_singular` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `display_name_plural` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `icon` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
  `model_name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
  `policy_name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
  `controller` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
  `description` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
  `generate_permissions` tinyint(1) NOT NULL DEFAULT '0',
  `server_side` tinyint(4) NOT NULL DEFAULT '0',
  `details` text COLLATE utf8_unicode_ci,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `data_types_name_unique` (`name`),
  UNIQUE KEY `data_types_slug_unique` (`slug`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;


ALTER TABLE `data_rows`
  ADD CONSTRAINT `data_rows_data_type_id_foreign` FOREIGN KEY (`data_type_id`) REFERENCES `data_types` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
COMMIT;

TODO

  • A settings page to configure the ComboTables (currently hardcoded).
  • Hooks for the alternive views (currently only manufacturers).
  • Add in browse page: Search form.
  • Make Edit page
  • Fine-tune "add new" page.

Future Enhancements

  • Relate the created BREAD's to the admin menu.
  • Role management support.
  • Front-End support.
  • Data In-Export (csv,xml ...).
  • JSON settings (input validations, multiple-image sizes on upload).

BreadBuilder for osCommerce is based on : Laravel Voyager

About

BreadBuilder for oscommerce admin

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages