Skip to content

Commit

Permalink
#46
Browse files Browse the repository at this point in the history
  • Loading branch information
tihhanovski committed Jul 7, 2016
1 parent 2a30856 commit f2e174c
Show file tree
Hide file tree
Showing 19 changed files with 517 additions and 63 deletions.
4 changes: 4 additions & 0 deletions classes/Application.php
Original file line number Diff line number Diff line change
Expand Up @@ -913,6 +913,10 @@ public function getDefaultDefines()


"L3RD_FONT_AWESOME_CSS" => L3RD_WEB . "font-awesome/css/font-awesome.min.css",
"L3RD_METISMENU_JS" => L3RD_WEB . "metisMenu/metisMenu.min.js",
"L3RD_METISMENU_CSS" => L3RD_WEB . "metisMenu/metisMenu.min.css",
//"L3RD_BOOTSTRAP_CSS" => "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/css/bootstrap.min.css",
//"L3RD_BOOTSTRAP_JS" => "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/js/bootstrap.min.js",
"SETUP_CSS_MAIN" => WFW_WEB . "ui/wfw.css",
"SETUP_HOTKEYS" => L3RD_WEB . "jquery.hotkeys.js",
"SETUP_3RD_XLS" => L3RD_ROOT . "phpexcel/Classes/PHPExcel.php",
Expand Down
6 changes: 5 additions & 1 deletion classes/UIHelper.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,9 @@ public function includeStyles()
//SETUP_3RD_COMBOGRID_CSS, //combogrid
SETUP_JQUERY_UI_CSS,
app()->url("resources/ui.css"),
SETUP_3RD_MULTISELECT_CSS
SETUP_3RD_MULTISELECT_CSS,
L3RD_METISMENU_CSS,
//L3RD_BOOTSTRAP_CSS,
);
foreach ( $styles as $src)
echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"$src\" />";
Expand All @@ -43,6 +45,8 @@ public function includeScripts()
SETUP_HOTKEYS,
SETUP_COMBOGRID,
SETUP_3RD_MULTISELECT_JS,
L3RD_METISMENU_JS,
//L3RD_BOOTSTRAP_JS,
WFW_WEB . "js/app.js",
WFW_WEB . "js/utils.js",
WFW_WEB . "js/autocomplete.js",
Expand Down
48 changes: 41 additions & 7 deletions classes/ui/AbstractUIModule.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,51 @@

class AbstractUIModule
{
//TODO
private $componentPrefix;

public function __construct($s)
{
$this->componentPrefix = $s;
$this->initComponents($s);
}

public function initComponents($s)
{
$uiModuleDir = app()->getAbsoluteFile(UI_MODULE);
$compClasses = array(
"MainMenu",
"Toolbar",
"UserMenu",
);
foreach ($compClasses as $cls)
require_once $uiModuleDir . "classes/" . $s . "UIModule.php";
}

public function getMainMenu()
{
if(!isset($this->mainMenu))
return $this->getUIComponentObject("MainMenu");
}

public function getToolbar()
{
return $this->getUIComponentObject("Toolbar");
}

public function getUserMenu()
{
return $this->getUIComponentObject("UserMenu");
}

public function getUIComponentObject($component)
{
if(!isset($this->$component))
{
if(!defined(MAIN_MENU_CLASS))
define("MAIN_MENU_CLASS", "MainMenu");
if(class_exists($cls = MAIN_MENU_CLASS))
$this->mainMenu = new $cls;
$className = $this->componentPrefix . $component;
if(!class_exists($className))
app()->panic("Component class does not exist: $component");
$this->component = new $className();
}
return $this->mainMenu;
return $this->component;
}

private $modulePath;
Expand Down
78 changes: 78 additions & 0 deletions ui/squared/classes/SquaredMainMenu.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
<?php
/**
* MainMenu
* @author Ilja Tihhanovski <[email protected]>
* @copyright (c) 2015 Intellisoft OÜ
*
*/

class SquaredMainMenu extends HtmlComponent
{
public function toHtml()
{
$p = app()->dbo("menupart");
$p->orderBy("id");
$parts = array();
if($p->find())
while($p->fetch())
{
switch ($p->id)
{
case 1:
$icon = "fa-file";
break;
case 2:
$icon = "fa-print";
break;
case 3:
$icon = "fa-list-alt";
break;
case 4:
$icon = "fa-gear";
break;
default:
$icon = "fa-cube";
break;
}
$parts[$icon] = clone $p;
}

$p = app()->dbo("rmodule");
$p->orderBy("pos");
$modules = array();
if($p->find())
while($p->fetch())
$modules[] = clone $p;

$registries = app()->registries();

$ret = "<aside class=\"sidebar\"><nav class=\"sidebar-nav\"><ul class=\"metismenu\" id=\"menu\">";

foreach ($modules as $m)
{
$sub = "";

foreach ($parts as $icon => $mp)
foreach ($registries as $reg)
if($reg->module == $m->getIdValue() && $reg->menupartId == $mp->getIdValue() && $reg->typeId < 10)
$sub .= "<li><a href=\"" . app()->url("?registry=" . $reg->name) . "\"><span class=\"sidebar-nav-item-icon fa $icon\" aria-hidden=\"true\"></span>" .
t($reg->getCaption()) .
"</a></li>\n\n";


$ret .= "<li>" .
"<a href=\"#\" aria-expanded=\"false\">" .
"<span class=\"sidebar-nav-item-icon fa fa-cube\" aria-hidden=\"true\"></span>" . t($m->name) . "</a>" . //fa-lg
"<ul aria-expanded=\"false\">" .
$sub .
"</ul>" .
"</li>";
}

$ret .= "</ul></nav></aside>" .
"<script src=\"" . app()->ui()->url("js/mainMenu.js") . "\"></script>";


return $ret;
}
}
19 changes: 19 additions & 0 deletions ui/squared/classes/SquaredToolbar.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<?php
/**
* MainMenu
* @author Ilja Tihhanovski <[email protected]>
* @copyright (c) 2015 Intellisoft OÜ
*
*/

class SquaredToolbar extends HtmlComponent
{
public function toHtml()
{
$ret = '<div id="dh" class="frontpageTopMenu">
<div class="frontpageCaption">
<img src="<?=app()->url("resources/p2logo.png")?>" border="0" height="24"/>
<?=APP_TITLE . ($cn ? " / " . $cn : "")?>
</div>' . app()->ui()->getUserMenu()->toHtml() . '</div>';
}
}
File renamed without changes.
22 changes: 22 additions & 0 deletions ui/squared/classes/SquaredUserMenu.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?php
/**
* MainMenu
* @author Ilja Tihhanovski <[email protected]>
* @copyright (c) 2015 Intellisoft OÜ
*
*/

class SquaredUserMenu extends HtmlComponent
{
public function toHtml()
{
return '<div class="squaredUserMenu">
<div>
<!--a href="JavaScript:logout();"><?=t("Logout")?></a-->
<i class="userMenuItem fa fa-share-alt" aria-hidden="true"></i>
<i class="userMenuItem fa fa-user" aria-hidden="true"></i>
<i class="userMenuItem fa fa-cog" aria-hidden="true"></i>
</div>
</div>';
}
}
26 changes: 8 additions & 18 deletions ui/squared/html/frontpage.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@

var w = $(window).width();
var h = $(window).height();
var dh = 200;
var dw = 80;
var dh = 40;
var dw = 30;

$("#dh").width(w - dw);

$(".frontpageMainMenu").height(h - dh);
$(".frontpageMainMenuContents").height(h - dh);
$(".frontpageDashboard").height(h - dh - 40).width(w - 340);
});

$(window).resize();
Expand All @@ -35,25 +35,15 @@
<link rel="stylesheet" type="text/css" href="<?=$ui->url("styles.css")?>" />
<div id="dh" class="frontpageTopMenu">
<div class="frontpageCaption">
<img src="<?=app()->url("resources/p2logo.png")?>" border="0" height="24"/>
<?=APP_TITLE . ($cn ? " / " . $cn : "")?> sq
</div>
<div class="squaredUserMenu">
<div>
<!--a href="JavaScript:logout();"><?=t("Logout")?></a-->
<i class="userMenuItem fa fa-share-alt" aria-hidden="true"></i>
<i class="userMenuItem fa fa-user" aria-hidden="true"></i>
<i class="userMenuItem fa fa-cog" aria-hidden="true"></i>
</div>
</div>
<img src="<?=app()->url("resources/p2logo.png")?>" border="0" height="16"/>
<?=APP_TITLE?>
</div><?=$ui->getUserMenu()->toHtml()?>
</div>
<div class="frontpageBody">
<div class="frontpageMainMenu">
<div class="frontpageMainMenuContents"><?=$ui->getMainMenu()->toHtml()?></div>
</div>
<div class="frontpageMainMenu"><?=$ui->getMainMenu()->toHtml()?></div>
<div class="frontpageDashboard">
<div class="frontpageDashboardContents">
dashboard contents
<div><?=$cn?></div>
</div>
</div>
</div>
Expand Down
10 changes: 7 additions & 3 deletions ui/squared/index.php
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
<?php

const MAIN_MENU_CLASS = "SquaredMainMenu";
const TOOLBAR_CLASS = "SquaredToolbar";
const USERMENU_CLASS = "SquaredUserMenu";

$uiModuleDir = app()->getAbsoluteFile(UI_MODULE);
require_once $uiModuleDir . "SquaredUIModule.php";
require_once $uiModuleDir . "SquaredMainMenu.php";
require_once $uiModuleDir . "classes/SquaredUIModule.php";
require_once $uiModuleDir . "classes/SquaredMainMenu.php";
require_once $uiModuleDir . "classes/SquaredToolbar.php";
require_once $uiModuleDir . "classes/SquaredUserMenu.php";

app()->_uiModule = new SquaredUIModule();
app()->_uiModule = new SquaredUIModule("Squared");
15 changes: 4 additions & 11 deletions ui/squared/js/mainMenu.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,4 @@

function togglePart(partId)
{
$("#partItemsContainer" + partId).toggle();
$(this).toggleClass("partSelected");
}

$(function()
{
$("")
});
$(function()
{
$("#menu").metisMenu();
});
Loading

0 comments on commit f2e174c

Please sign in to comment.