drawio-offline
Version:
diagrams.net desktop
1,644 lines (1,414 loc) • 52 kB
JavaScript
/**
* $Id: mxF5.js,v 1.0 2018/05/03 13:10:37 mate Exp $
* Copyright (c) 2006-2018, JGraph Ltd
*/
//**********************************************************************************************************************************************************
//Big-IP 1600
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp1600(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp1600, mxShape);
mxRackF5BigIp1600.prototype.cst =
{
SHAPE_BIG_IP_1600 : 'mxgraph.rackF5Shapes.big_ip_1600'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp1600.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp1600.prototype.cst.SHAPE_BIG_IP_1600, mxRackF5BigIp1600);
//**********************************************************************************************************************************************************
//Big-IP 2x00
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp2x00(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp2x00, mxShape);
mxRackF5BigIp2x00.prototype.cst =
{
SHAPE_BIG_IP_2x00 : 'mxgraph.rackF5Shapes.big_ip_2x00'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp2x00.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_2x00_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp2x00.prototype.cst.SHAPE_BIG_IP_2x00, mxRackF5BigIp2x00);
//**********************************************************************************************************************************************************
//Big-IP 3600
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp3600(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp3600, mxShape);
mxRackF5BigIp3600.prototype.cst =
{
SHAPE_BIG_IP_3600 : 'mxgraph.rackF5Shapes.big_ip_3600'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp3600.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_3600_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp3600.prototype.cst.SHAPE_BIG_IP_3600, mxRackF5BigIp3600);
//**********************************************************************************************************************************************************
//Big-IP 3900
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp3900(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp3900, mxShape);
mxRackF5BigIp3900.prototype.cst =
{
SHAPE_BIG_IP_3900 : 'mxgraph.rackF5Shapes.big_ip_3900'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp3900.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_3900_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp3900.prototype.cst.SHAPE_BIG_IP_3900, mxRackF5BigIp3900);
//**********************************************************************************************************************************************************
//Big-IP 4x00
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp4x00(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp4x00, mxShape);
mxRackF5BigIp4x00.prototype.cst =
{
SHAPE_BIG_IP_4x00 : 'mxgraph.rackF5Shapes.big_ip_4x00'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp4x00.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_4x00_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp4x00.prototype.cst.SHAPE_BIG_IP_4x00, mxRackF5BigIp4x00);
//**********************************************************************************************************************************************************
//Big-IP 5x00
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp5x00(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp5x00, mxShape);
mxRackF5BigIp5x00.prototype.cst =
{
SHAPE_BIG_IP_5x00 : 'mxgraph.rackF5Shapes.big_ip_5x00'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp5x00.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_5x00_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp5x00.prototype.cst.SHAPE_BIG_IP_5x00, mxRackF5BigIp5x00);
//**********************************************************************************************************************************************************
//EM 4000
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5Em4000(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5Em4000, mxShape);
mxRackF5Em4000.prototype.cst =
{
SHAPE_EM_4000 : 'mxgraph.rackF5Shapes.em4000'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5Em4000.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'em_4000_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5Em4000.prototype.cst.SHAPE_EM_4000, mxRackF5Em4000);
//**********************************************************************************************************************************************************
//Big-IP 6900
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp6900(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp6900, mxShape);
mxRackF5BigIp6900.prototype.cst =
{
SHAPE_BIG_IP_6900 : 'mxgraph.rackF5Shapes.big_ip_6900'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp6900.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_6900_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_6900_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_6900_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_6900_back.png', 0, 0, 0);
if (isDC)
{
c.image(w * 0.046, h * 0.025, w * 0.176, h * 0.48, stencilPath + 'big_ip_6900_dc.png', 0, 0, 0);
c.image(w * 0.227, h * 0.025, w * 0.176, h * 0.48, stencilPath + 'big_ip_6900_dc.png', 0, 0, 0);
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp6900.prototype.cst.SHAPE_BIG_IP_6900, mxRackF5BigIp6900);
//**********************************************************************************************************************************************************
//Big-IP 89x0
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp89x0(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp89x0, mxShape);
mxRackF5BigIp89x0.prototype.cst =
{
SHAPE_BIG_IP_89x0 : 'mxgraph.rackF5Shapes.big_ip_89x0'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp89x0.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_6900_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_6900_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_89x0_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_6900_back.png', 0, 0, 0);
if (isDC)
{
c.image(w * 0.046, h * 0.025, w * 0.176, h * 0.48, stencilPath + 'big_ip_6900_dc.png', 0, 0, 0);
c.image(w * 0.227, h * 0.025, w * 0.176, h * 0.48, stencilPath + 'big_ip_6900_dc.png', 0, 0, 0);
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp89x0.prototype.cst.SHAPE_BIG_IP_89x0, mxRackF5BigIp89x0);
//**********************************************************************************************************************************************************
//Big-IP 7x00
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp7x00(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp7x00, mxShape);
mxRackF5BigIp7x00.prototype.cst =
{
SHAPE_BIG_IP_7x00 : 'mxgraph.rackF5Shapes.big_ip_7x00'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp7x00.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_6900_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_6900_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_7x00_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_6900_back.png', 0, 0, 0);
if (isDC)
{
c.image(w * 0.046, h * 0.025, w * 0.176, h * 0.48, stencilPath + 'big_ip_6900_dc.png', 0, 0, 0);
c.image(w * 0.227, h * 0.025, w * 0.176, h * 0.48, stencilPath + 'big_ip_6900_dc.png', 0, 0, 0);
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp7x00.prototype.cst.SHAPE_BIG_IP_7x00, mxRackF5BigIp7x00);
//**********************************************************************************************************************************************************
//Big-IP 10x00
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp10x00(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp10x00, mxShape);
mxRackF5BigIp10x00.prototype.cst =
{
SHAPE_BIG_IP_10x00 : 'mxgraph.rackF5Shapes.big_ip_10x00'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp10x00.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_6900_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_6900_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_10x00_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_6900_back.png', 0, 0, 0);
if (isDC)
{
c.image(w * 0.046, h * 0.025, w * 0.176, h * 0.48, stencilPath + 'big_ip_6900_dc.png', 0, 0, 0);
c.image(w * 0.227, h * 0.025, w * 0.176, h * 0.48, stencilPath + 'big_ip_6900_dc.png', 0, 0, 0);
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp10x00.prototype.cst.SHAPE_BIG_IP_10x00, mxRackF5BigIp10x00);
//**********************************************************************************************************************************************************
//Big-IP 110x0
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIp110x0(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIp110x0, mxShape);
mxRackF5BigIp110x0.prototype.cst =
{
SHAPE_BIG_IP_110x0 : 'mxgraph.rackF5Shapes.big_ip_110x0'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIp110x0.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, h * 0.33, w * 0.04, h * 0.67, stencilPath + 'big_ip_6900_ear.png', 0, 0, 0);
c.image(w * 0.96, h * 0.33, w * 0.04, h * 0.67, stencilPath + 'big_ip_6900_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_110x0_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_110x0_back.png', 0, 0, 0);
if (isDC)
{
c.image(w * 0.085, h * 0.025, w * 0.177, h * 0.31, stencilPath + 'big_ip_6900_dc.png', 0, 0, 0);
c.image(w * 0.271, h * 0.025, w * 0.179, h * 0.31, stencilPath + 'big_ip_6900_dc.png', 0, 0, 0);
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIp110x0.prototype.cst.SHAPE_BIG_IP_110x0, mxRackF5BigIp110x0);
//**********************************************************************************************************************************************************
//Viprion 2400
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5Viprion2400(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5Viprion2400, mxShape);
mxRackF5Viprion2400.prototype.cst =
{
SHAPE_VIPRION_2400 : 'mxgraph.rackF5Shapes.viprion_2400'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5Viprion2400.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var bladeNum = parseInt(mxUtils.getValue(this.style, 'bladeNum', '4'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'viprion_2400_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'viprion_2400_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'viprion_2400_front.png', 0, 0, 0);
if (isDC)
{
c.image(w * 0.178, h * 0.025, w * 0.301, h * 0.273, stencilPath + 'viprion_2400_dc.png', 0, 0, 0);
c.image(w * 0.52, h * 0.025, w * 0.301, h * 0.273, stencilPath + 'viprion_2400_dc.png', 0, 0, 0);
}
if (bladeNum >= 1)
{
c.image(w * 0.052, h * 0.337, w * 0.45, h * 0.29, stencilPath + 'viprion_2400_blade.png', 0, 0, 0);
}
if (bladeNum >= 2)
{
c.image(w * 0.495, h * 0.337, w * 0.45, h * 0.29, stencilPath + 'viprion_2400_blade.png', 0, 0, 0);
}
if (bladeNum >= 3)
{
c.image(w * 0.052, h * 0.655, w * 0.45, h * 0.29, stencilPath + 'viprion_2400_blade.png', 0, 0, 0);
}
if (bladeNum >= 4)
{
c.image(w * 0.495, h * 0.655, w * 0.45, h * 0.29, stencilPath + 'viprion_2400_blade.png', 0, 0, 0);
}
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'viprion_2400_back.png', 0, 0, 0);
}
};
mxCellRenderer.registerShape(mxRackF5Viprion2400.prototype.cst.SHAPE_VIPRION_2400, mxRackF5Viprion2400);
//**********************************************************************************************************************************************************
//Viprion 4400
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5Viprion4400(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5Viprion4400, mxShape);
mxRackF5Viprion4400.prototype.cst =
{
SHAPE_VIPRION_4400 : 'mxgraph.rackF5Shapes.viprion_4400'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5Viprion4400.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var hasMask = mxUtils.getValue(this.style, 'hasMask', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var bladeType = mxUtils.getValue(this.style, 'bladeType', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var bladeNum = parseInt(mxUtils.getValue(this.style, 'bladeNum', '0'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'viprion_4400_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'viprion_4400_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'viprion_4400_front_chassis.png', 0, 0, 0);
if (hasMask)
{
c.image(w * 0.033, h * 0.005, w * 0.934, h * 0.282, stencilPath + 'viprion_4400_front.png', 0, 0, 0);
}
var bladeStr = stencilPath + 'viprion_4400_pb100_blade.png';
if (bladeType == 1)
{
bladeStr = stencilPath + 'viprion_4400_pb200_blade.png';
}
else if (bladeType == 2)
{
bladeStr = stencilPath + 'viprion_4400_b4300_blade.png';
}
if (bladeNum >= 1)
{
c.image(w * 0.182, h * 0.3, w * 0.74, h * 0.145, bladeStr, 0, 0, 0);
}
if (bladeNum >= 2)
{
c.image(w * 0.182, h * 0.462, w * 0.74, h * 0.145, bladeStr, 0, 0, 0);
}
if (bladeNum >= 3)
{
c.image(w * 0.182, h * 0.625, w * 0.74, h * 0.145, bladeStr, 0, 0, 0);
}
if (bladeNum >= 4)
{
c.image(w * 0.182, h * 0.788, w * 0.74, h * 0.145, bladeStr, 0, 0, 0);
}
}
else
{
if (isDC)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'viprion_4400_back_dc.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'viprion_4400_back_ac.png', 0, 0, 0);
}
}
};
mxCellRenderer.registerShape(mxRackF5Viprion4400.prototype.cst.SHAPE_VIPRION_4400, mxRackF5Viprion4400);
//**********************************************************************************************************************************************************
//Viprion 4800
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5Viprion4800(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5Viprion4800, mxShape);
mxRackF5Viprion4800.prototype.cst =
{
SHAPE_VIPRION_4800 : 'mxgraph.rackF5Shapes.viprion_4800'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5Viprion4800.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var bladeNum = parseInt(mxUtils.getValue(this.style, 'bladeNum', '0'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, h * 0.09, w * 0.04, h * 0.8, stencilPath + 'viprion_4800_ear.png', 0, 0, 0);
c.image(w * 0.96, h * 0.09, w * 0.04, h * 0.8, stencilPath + 'viprion_4800_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'viprion_4800_front.png', 0, 0, 0);
if (bladeNum >= 1)
{
c.image(w * 0.075, h * 0.245, w * 0.104, h * 0.516, stencilPath + 'viprion_4800_blade.png', 0, 0, 0);
}
if (bladeNum >= 2)
{
c.image(w * 0.182, h * 0.245, w * 0.104, h * 0.516, stencilPath + 'viprion_4800_blade.png', 0, 0, 0);
}
if (bladeNum >= 3)
{
c.image(w * 0.289, h * 0.245, w * 0.104, h * 0.516, stencilPath + 'viprion_4800_blade.png', 0, 0, 0);
}
if (bladeNum >= 4)
{
c.image(w * 0.396, h * 0.245, w * 0.104, h * 0.516, stencilPath + 'viprion_4800_blade.png', 0, 0, 0);
}
if (bladeNum >= 5)
{
c.image(w * 0.503, h * 0.245, w * 0.104, h * 0.516, stencilPath + 'viprion_4800_blade.png', 0, 0, 0);
}
if (bladeNum >= 6)
{
c.image(w * 0.61, h * 0.245, w * 0.104, h * 0.516, stencilPath + 'viprion_4800_blade.png', 0, 0, 0);
}
if (bladeNum >= 7)
{
c.image(w * 0.717, h * 0.245, w * 0.104, h * 0.516, stencilPath + 'viprion_4800_blade.png', 0, 0, 0);
}
if (bladeNum >= 8)
{
c.image(w * 0.824, h * 0.245, w * 0.104, h * 0.516, stencilPath + 'viprion_4800_blade.png', 0, 0, 0);
}
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'viprion_4800_back.png', 0, 0, 0);
}
};
mxCellRenderer.registerShape(mxRackF5Viprion4800.prototype.cst.SHAPE_VIPRION_4800, mxRackF5Viprion4800);
//**********************************************************************************************************************************************************
//Big-IP i2000
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIpi2000(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIpi2000, mxShape);
mxRackF5BigIpi2000.prototype.cst =
{
SHAPE_BIG_IP_I2000 : 'mxgraph.rackF5Shapes.big_ip_i2000'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIpi2000.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_i2000_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIpi2000.prototype.cst.SHAPE_BIG_IP_I2000, mxRackF5BigIpi2000);
//**********************************************************************************************************************************************************
//Big-IP i4000
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIpi4000(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIpi4000, mxShape);
mxRackF5BigIpi4000.prototype.cst =
{
SHAPE_BIG_IP_I4000 : 'mxgraph.rackF5Shapes.big_ip_i4000'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIpi4000.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_i4000_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIpi4000.prototype.cst.SHAPE_BIG_IP_I4000, mxRackF5BigIpi4000);
//**********************************************************************************************************************************************************
//Big-IP i5000
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIpi5000(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIpi5000, mxShape);
mxRackF5BigIpi5000.prototype.cst =
{
SHAPE_BIG_IP_I5000 : 'mxgraph.rackF5Shapes.big_ip_i5000'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIpi5000.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_i5000_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIpi5000.prototype.cst.SHAPE_BIG_IP_I5000, mxRackF5BigIpi5000);
//**********************************************************************************************************************************************************
//Big-IP i7000
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIpi7000(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIpi7000, mxShape);
mxRackF5BigIpi7000.prototype.cst =
{
SHAPE_BIG_IP_I7000 : 'mxgraph.rackF5Shapes.big_ip_i7000'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIpi7000.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_i7000_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIpi7000.prototype.cst.SHAPE_BIG_IP_I7000, mxRackF5BigIpi7000);
//**********************************************************************************************************************************************************
//Big-IP i10000
//**********************************************************************************************************************************************************
/**
* Extends mxShape.
*/
function mxRackF5BigIpi10000(bounds, fill, stroke, strokewidth)
{
mxShape.call(this);
this.bounds = bounds;
this.fill = fill;
this.stroke = stroke;
this.strokewidth = (strokewidth != null) ? strokewidth : 1;
};
/**
* Extends mxShape.
*/
mxUtils.extend(mxRackF5BigIpi10000, mxShape);
mxRackF5BigIpi10000.prototype.cst =
{
SHAPE_BIG_IP_I10000 : 'mxgraph.rackF5Shapes.big_ip_i10000'
};
/**
* Function: paintVertexShape
*
* Paints the vertex shape.
*/
mxRackF5BigIpi10000.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.translate(x, y);
var hasEars = mxUtils.getValue(this.style, 'hasEars', '1');
var isFront = mxUtils.getValue(this.style, 'isFront', '0');
var isDC = mxUtils.getValue(this.style, 'isDC', '0');
var psNum = parseInt(mxUtils.getValue(this.style, 'psNum', '2'));
var stencilPath = mxUtils.getValue(this.style, 'path', 'img/lib/f5/');
if (hasEars)
{
c.image(0, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 0, 0);
c.image(w * 0.96, 0, w * 0.04, h, stencilPath + 'big_ip_5x00_ear.png', 0, 1, 0);
}
if (isFront)
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_i10000_front.png', 0, 0, 0);
}
else
{
c.image(w * 0.04, 0, w * 0.92, h, stencilPath + 'big_ip_1600_back.png', 0, 0, 0);
if (isDC)
{
if (psNum >= '1')
{
c.image(w * 0.425, h * 0.05, w * 0.244, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_dc.png', 0, 0, 0);
}
}
else
{
if (psNum >= '2')
{
c.image(w * 0.672, h * 0.05, w * 0.245, h * 0.92, stencilPath + 'big_ip_4x00_ac.png', 0, 0, 0);
}
}
}
};
mxCellRenderer.registerShape(mxRackF5BigIpi10000.prototype.cst.SHAPE_BIG_IP_I10000, mxRackF5BigIpi10000);
/**
* Order is relevant. Do not move to start of file!
*/
Draw.loadPlugin(function(ui)
{
var w = 100;
var h = 100;
var stencilPath = "path=https://jgraph.github.io/drawio-libs/libs/f5/;";
var s = stencilPath + 'strokeColor=#666666;html=1;labelPosition=right;align=left;spacingLeft=15;shadow=0;dashed=0;fillColor=#ffffff;outlineConnect=0;shape=mxgraph.rackF5Shapes.';
var gn = 'mxgraph.rackF5Shapes';
var dt = '';
// Avoids having to bind all functions to "this"
var sb = ui.sidebar;
// Default tags
var dt = 'rack f5 network ';
var fns = [
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_1600;hasEars=0;isFront=1;isDC=0;psNum=1;',
168, 16, '', 'Big-IP 1600', null, null, dt + 'big ip 1600'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_1600;hasEars=1;isFront=0;isDC=1;psNum=2;',
168, 16, '', 'Big-IP 1600', null, null, dt + 'big ip 1600'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_2x00;hasEars=0;isFront=1;isDC=0;psNum=1;',
168, 16, '', 'Big-IP 2x00', null, null, dt + 'big ip 2x00'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_2x00;hasEars=1;isFront=0;isDC=1;psNum=2;',
168, 16, '', 'Big-IP 2x00', null, null, dt + 'big ip 2x00'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_3600;hasEars=0;isFront=1;isDC=0;psNum=1;',
168, 16, '', 'Big-IP 3600', null, null, dt + 'big ip 3600'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_3600;hasEars=1;isFront=0;isDC=1;psNum=2;',
168, 16, '', 'Big-IP 3600', null, null, dt + 'big ip 3600'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_3900;hasEars=0;isFront=1;isDC=0;psNum=1;',
168, 16, '', 'Big-IP 3900', null, null, dt + 'big ip 3900'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_3900;hasEars=1;isFront=0;isDC=1;psNum=2;',
168, 16, '', 'Big-IP 3900', null, null, dt + 'big ip 3900'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_4x00;hasEars=0;isFront=1;isDC=0;psNum=1;',
168, 16, '', 'Big-IP 4x00', null, null, dt + 'big ip 4x00'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_4x00;hasEars=1;isFront=0;isDC=1;psNum=2;',
168, 16, '', 'Big-IP 4x00', null, null, dt + 'big ip 4x00'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_5x00;hasEars=0;isFront=1;isDC=0;psNum=1;',
168, 16, '', 'Big-IP 5x00', null, null, dt + 'big ip 5x00'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_5x00;hasEars=1;isFront=0;isDC=1;psNum=2;',
168, 16, '', 'Big-IP 5x00', null, null, dt + 'big ip 5x00'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.em4000;hasEars=0;isFront=1;isDC=0;psNum=1;',
168, 16, '', 'EM 4000', null, null, dt + 'em 4000'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.em4000;hasEars=1;isFront=0;isDC=1;psNum=2;',
168, 16, '', 'EM 4000', null, null, dt + 'em 4000'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_6900;hasEars=0;isFront=1;isDC=0;',
168, 32, '', 'Big-IP 6900', null, null, dt + 'big ip 6900'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_6900;hasEars=1;isFront=0;isDC=1;',
168, 32, '', 'Big-IP 6900', null, null, dt + 'big ip 6900'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_89x0;hasEars=0;isFront=1;isDC=0;',
168, 32, '', 'Big-IP 89x0', null, null, dt + 'big ip 89x0'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_6900;hasEars=1;isFront=0;isDC=1;',
168, 32, '', 'Big-IP 89x0', null, null, dt + 'big ip 89x0'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_7x00;hasEars=0;isFront=1;isDC=0;',
168, 32, '', 'Big-IP 7x00', null, null, dt + 'big ip 7x00'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_7x00;hasEars=1;isFront=0;isDC=1;',
168, 32, '', 'Big-IP 7x00', null, null, dt + 'big ip 7x00'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_10x00;hasEars=0;isFront=1;isDC=0;',
168, 32, '', 'Big-IP 10x00', null, null, dt + 'big ip 10x00'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_10x00;hasEars=1;isFront=0;isDC=1;',
168, 32, '', 'Big-IP 10x00', null, null, dt + 'big ip 10x00'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_110x0;hasEars=0;isFront=1;isDC=0;',
168, 48, '', 'Big-IP 110x0', null, null, dt + 'big ip 110x0'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_110x0;hasEars=1;isFront=0;isDC=1;',
168, 48, '', 'Big-IP 110x0', null, null, dt + 'big ip 110x0'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.viprion_2400;hasEars=0;isFront=1;isDC=1;bladeNum=4;',
168, 64, '', 'VIPRION 2400', null, null, dt + 'viprion 2400'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.viprion_2400;hasEars=1;isFront=0;isDC=0;bladeNum=4;',
168, 64, '', 'VIPRION 2400', null, null, dt + 'viprion 2400'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.viprion_4400;hasMask=1;bladeType=0;hasEars=0;isFront=1;isDC=1;bladeNum=4;',
168, 112, '', 'VIPRION 4400', null, null, dt + 'viprion 4400'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.viprion_4400;hasMask=1;bladeType=0;hasEars=1;isFront=0;isDC=0;bladeNum=4;',
168, 112, '', 'VIPRION 4400', null, null, dt + 'viprion 4400'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.viprion_4800;hasEars=1;isFront=1;bladeNum=8;',
168, 224, '', 'VIPRION 4800', null, null, dt + 'viprion 4800'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.viprion_4800;hasEars=0;isFront=0;bladeNum=8;',
168, 224, '', 'VIPRION 4800', null, null, dt + 'viprion 4800'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.rackF5Shapes.big_ip_i2000;hasEars=0;isFront=1;isDC=0;psNum=1;',
168, 16, '', 'Big-IP i2000', null, null, dt + 'big ip i2000'),
sb.createVertexTemplateEntry(stencilPath + 'shape=mxgraph.