11 years agor4104 show page/tab handler exception messages embedded in main page interface
Alexey Andriyanov [Wed, 12 Jan 2011 05:50:37 +0000 (05:50 +0000)] 
r4104 show page/tab handler exception messages embedded in main page interface
prevent message appearing in foreign tab

+clearMessages: clears $_SESSION['log']
index.php: additional try-catch block added around tabhandler call
index.php: message list is clearead after index.php finishes, making sure no unshown messages kept
showMessageOrError: used new clearMessages

11 years agor4103 getVLANSwitchTemplate(): asterisk SELECT is an evil, replace
Denis Ovsienko [Wed, 12 Jan 2011 00:29:00 +0000 (00:29 +0000)] 
r4103 getVLANSwitchTemplate(): asterisk SELECT is an evil, replace
genericAssertion(): JSON gets spoiled in $_REQUEST, but not in $sic
commitUpdateVSTRules(): check mutex reliably, don't return anything, let exceptions roll transaction back
updVSTRule(): rewrite in a way with exceptions in mind

11 years agor4102 querySNMPData(): fix mistype
Denis Ovsienko [Tue, 11 Jan 2011 23:50:14 +0000 (23:50 +0000)] 
r4102 querySNMPData(): fix mistype

11 years agor4101 deleteRack(): fix mistype
Denis Ovsienko [Tue, 11 Jan 2011 23:47:56 +0000 (23:47 +0000)] 
r4101 deleteRack(): fix mistype

11 years agor4100 updateVService(): improve assertion
Denis Ovsienko [Tue, 11 Jan 2011 23:24:03 +0000 (23:24 +0000)] 
r4100 updateVService(): improve assertion
setPortVLAN(): make oneLiner() use explicit, add 2nd catch block
addRack(): dismiss old checks
deleteRack(): idem
querySNMPData(): reoder branches

11 years agor4099 genericAssertion(): add "enum/ipproto" case
Denis Ovsienko [Tue, 11 Jan 2011 22:19:52 +0000 (22:19 +0000)] 
r4099 genericAssertion(): add "enum/ipproto" case
addVService(): update respectively and merge meaningful code of commitCreateVS()
commitCreateVS(): bye
updateUser(): fix mistype

11 years agor4098 setPortVLAN(): update with respect to assertions, exceptions and error codes
Denis Ovsienko [Tue, 11 Jan 2011 22:01:31 +0000 (22:01 +0000)] 
r4098 setPortVLAN(): update with respect to assertions, exceptions and error codes
renderVLANMembership(): add catch block
setSwitchVLANs(): employ exceptions
gwSendFileToObject(): idem
gwRecvFileFromObject(): idem

11 years agor4097 fixed PHP tags
Denis Ovsienko [Tue, 11 Jan 2011 21:32:39 +0000 (21:32 +0000)] 
r4097 fixed PHP tags

11 years agor4096 reduce msgcode array in a way, and justify some functions respectively
Denis Ovsienko [Tue, 11 Jan 2011 19:24:27 +0000 (19:24 +0000)] 
r4096 reduce msgcode array in a way, and justify some functions respectively

11 years agor4095 genericAssertion(): add 'enum/wdmstd' and 'iif' cases
Denis Ovsienko [Tue, 11 Jan 2011 19:13:45 +0000 (19:13 +0000)] 
r4095 genericAssertion(): add 'enum/wdmstd' and 'iif' cases

11 years agor4094 setSwitchVLANs(): remove pointless assertion
Denis Ovsienko [Tue, 11 Jan 2011 14:36:40 +0000 (14:36 +0000)] 
r4094 setSwitchVLANs(): remove pointless assertion

11 years agor4093 Finalise the work on issue #369 by means of new function HTTPDateToUnixTime(),
Denis Ovsienko [Tue, 11 Jan 2011 11:20:12 +0000 (11:20 +0000)] 
r4093 Finalise the work on issue #369 by means of new function HTTPDateToUnixTime(),
which is supposed to do a better job, than strtotime() did (by Matt Mills).

11 years agor4092 new API for dispaying messages (showError, showWarning, showSuccess)
Alexey Andriyanov [Tue, 11 Jan 2011 07:50:30 +0000 (07:50 +0000)] 
r4092 new API for dispaying messages (showError, showWarning, showSuccess)

 merged together all HTML layout
 added output buffering to collect all the messages before the HTML layout rendering

 used new functions instead of oneLiner.
 added logic to redirect to the submit form page when ophandler returns NULL

 changed old showError calls to the calls of new one

 showTabs: removed surrounding <td>'s from the output
 renderObject8021QSync: changed old showError calls to the calls of new one
 renderDiscoveredNeighbors: idem

 authenticated_via_ldap: changed old showError calls to the calls of new one

 -showError: the old version of the func removed, the new one is implemented in functions.php
 -showWarning: idem

 getCellFilter: changed old showWarning calls to the calls of new one
 buildLVSConfig: idem
 eval_expression: idem
+setMessage: function for rendering or queueing all kinds of messages
+showError, showWarning, showSuccess, showNotice: wrappers around setMessage

 changed calls to showFailure to calls to showError
 added dependency on functions.php

 buildWideRedirectURL: now $_SESSION['log'] is merged with $log, not substituted

11 years agor4091 l2addressForDatabase(): signal error with exception, not NULL
Denis Ovsienko [Mon, 10 Jan 2011 22:51:53 +0000 (22:51 +0000)] 
r4091 l2addressForDatabase(): signal error with exception, not NULL
genericAssertion(): add cases for IPv6, L2 and PCRE types
commitAddPort(): dismiss local check, rely on exception
commitUpdatePort(): idem
getPortSearchResults(): employ catch block
addPortForObject(): add respective assertion
editPortForObject(): ditto

11 years agor4090 tableHandler(): add implementation of DELETE
Denis Ovsienko [Mon, 10 Jan 2011 12:59:25 +0000 (12:59 +0000)] 
r4090 tableHandler(): add implementation of DELETE
genericAssertion(): add "enum/vlan_type" case
renderPortsForObject(): don't put port_name and remote_port_id parameters to URL
delPortInterfaceCompatPack(): make DB access direct

Dismiss another pack of functions, which become obsolete after that:

- delObjectPort()
- delPortFromObject()
- deleteObjectLog()
- deleteRealServer()
- commitDeleteRS()
- deleteLoadBalancer()
- commitDestroyTag()
- destroyTag()
- commitReducePIC()
- delPortInterfaceCompat()
- deleteRow()
- commitDeleteRow()
- unlinkPort()
- commitReducePOIFC()
- delPortOIFCompat()
- commitSupplementPOIFC()
- addPortOIFCompat()
- commitReduceDictionary()
- reduceDictionary()
- commitDeleteAttribute()
- deleteAttribute()
- commitReduceAttrMap()
- reduceAttrMap()

11 years agor4089 process.php: do basic bypass validation by means of getBypassValue()
Denis Ovsienko [Sun, 9 Jan 2011 13:52:19 +0000 (13:52 +0000)] 
r4089 process.php: do basic bypass validation by means of getBypassValue()
addPortForObject(): rely on that and dismiss/update assertion
editPortForObject(): idem
addMultiPorts(): idem
addBulkPorts(): idem
editAddress(): idem
updateUser(): idem
updateDictionary(): idem
reduceDictionary(): idem
clearSticker(): idem
updateObjectAllocation(): idem
updateObject(): idem
resetObject(): idem
addRealServers(): idem
updateRSPool(): idem
generateAutoPorts(): idem
saveEntityTags(): idem
rollTags(): idem
submitSLBConfig(): idem
addRack(): idem
updateRack(): idem
updateRackDesign(): idem
updateRackProblems(): idem
querySNMPData(): idem
addFileToEntity(): idem
linkFileToEntity(): idem
replaceFile(): idem
updateFile(): idem
updateFileText(): idem
process8021QRecalcRequest(): idem
cloneVSTRule(): idem
updVSTRule(): idem
addObjectlog(): idem

11 years agor4088 genericAssertion(): merge ENUM validation from commitAddAttribute()
Denis Ovsienko [Sun, 9 Jan 2011 12:20:28 +0000 (12:20 +0000)] 
r4088 genericAssertion(): merge ENUM validation from commitAddAttribute()
createAttribute(): sayonara
commitAddAttribute(): sayonara

11 years agor4087 renderChapterEditor(): justify INPUT size across table rows
Denis Ovsienko [Sun, 9 Jan 2011 11:58:17 +0000 (11:58 +0000)] 
r4087 renderChapterEditor(): justify INPUT size across table rows
supplementDictionary(): dismiss in favour of tableHandler()
commitSupplementDictionary(): idem

11 years agor4086 Don't allow changing object's type after it is added to database,
Denis Ovsienko [Sun, 9 Jan 2011 11:30:19 +0000 (11:30 +0000)] 
r4086 Don't allow changing object's type after it is added to database,
this was known to cause minor side-effects.

renderEditObjectForm(): dismiss object type SELECT
updateObject(): update respectively
commitUpdateObject(): update respectively

11 years agor4085 dynamic_title_decoder(): suppress tag markup in "file" and "vst" pages TITLE
Denis Ovsienko [Sun, 9 Jan 2011 11:07:08 +0000 (11:07 +0000)] 
r4085 dynamic_title_decoder(): suppress tag markup in "file" and "vst" pages TITLE

11 years agor4084 render_image.php: use gmdate() to save one timezone warning (IMS caching)
Denis Ovsienko [Sat, 8 Jan 2011 23:29:51 +0000 (23:29 +0000)] 
r4084 render_image.php: use gmdate() to save one timezone warning (IMS caching)

11 years agor4083 bugfix: prevent invalid port links (#363), remove DB triggers
Aaron Dummer [Sat, 8 Jan 2011 19:14:35 +0000 (19:14 +0000)] 
r4083 bugfix: prevent invalid port links (#363), remove DB triggers

install/init-structure.sql: remove triggers
executeUpgradeBatch(): idem
isInnoDBSupported(): idem
linkPorts(): add SELECT before INSERT check

11 years agor4082 getFile(): employ MySQL's NOW() to avoid timezone logic
Denis Ovsienko [Fri, 7 Jan 2011 20:33:08 +0000 (20:33 +0000)] 
r4082 getFile(): employ MySQL's NOW() to avoid timezone logic
getFileCache(): idem, and fix to actually return the result

11 years agor4081 genericAssertion(): add "tag" case validation
Denis Ovsienko [Fri, 7 Jan 2011 18:16:04 +0000 (18:16 +0000)] 
r4081 genericAssertion(): add "tag" case validation
createTag(): dismiss, obsoleted by tableHandler()
commitCreateTag(): idem

11 years agor4080 genericAssertion(): add "string0" assertion case
Denis Ovsienko [Fri, 7 Jan 2011 15:52:50 +0000 (15:52 +0000)] 
r4080 genericAssertion(): add "string0" assertion case
tableHandler(): make "table_colname" optional; perform NULL value cast on request
addVLANDescription(): dismiss, obsoleted by tableHandler

11 years agor4079 process.php: fix function name
Denis Ovsienko [Fri, 7 Jan 2011 13:19:07 +0000 (13:19 +0000)] 
r4079 process.php: fix function name
addChapter(): dismiss, replaced by tableHandler
commitAddChapter(): ditto

11 years agor4078 genericAssertion(): new function, multiplexer
Denis Ovsienko [Fri, 7 Jan 2011 12:57:11 +0000 (12:57 +0000)] 
r4078 genericAssertion(): new function, multiplexer
getBypassValue(): new function to aid in context focusing
index.php: make use of above
tableHandler(): new function, a generic substitute for many trivial DB functions
process.php: recognize "opspec" structure and use multiplexer for these
addRow(): sayonara
commitAddRow(): sayonara

11 years agor4077 bugfix for recent change: pi.css was not ladable on installer page after moving...
Alexey Andriyanov [Wed, 5 Jan 2011 11:40:47 +0000 (11:40 +0000)] 
r4077 bugfix for recent change: pi.css was not ladable on installer page after moving to css/

11 years agor4076 bugfix: the 'Refcnt' counter on Configuration: Dictionary page was sometimes...
Alexey Andriyanov [Tue, 4 Jan 2011 23:45:28 +0000 (23:45 +0000)] 
r4076 bugfix: the 'Refcnt' counter on Configuration: Dictionary page was sometimes broken (closes mantis:0000381)
Only the buggy SQL query was changed, now joining RackObject to check object_type

11 years agor4075 minor fix: bulik port creator now can begin port counter with zero value
Alexey Andriyanov [Wed, 29 Dec 2010 21:13:19 +0000 (21:13 +0000)] 
r4075 minor fix: bulik port creator now can begin port counter with zero value

11 years agor4074 renderVLANDomain(): align TDs
Denis Ovsienko [Wed, 29 Dec 2010 12:31:15 +0000 (12:31 +0000)] 
r4074 renderVLANDomain(): align TDs

11 years agor4073 minor change in UI for recent change: VST form commit on ENTER and hints on...
Alexey Andriyanov [Tue, 28 Dec 2010 18:23:24 +0000 (18:23 +0000)] 
r4073 minor change in UI for recent change: VST form commit on ENTER and hints on add buttons

11 years agor4072 platform_is_ok(): update for the recent two extensions used
Denis Ovsienko [Mon, 27 Dec 2010 15:04:16 +0000 (15:04 +0000)] 
r4072 platform_is_ok(): update for the recent two extensions used

11 years agor4071 minor bugfix for recent change: row highlighing in VST rules was broken
Alexey Andriyanov [Mon, 27 Dec 2010 12:47:34 +0000 (12:47 +0000)] 
r4071 minor bugfix for recent change: row highlighing in VST rules was broken

11 years agor4070 update: 802.1Q template editor now supports single-submit edit and concerns...
Alexey Andriyanov [Mon, 27 Dec 2010 12:40:33 +0000 (12:40 +0000)] 
r4070 update: 802.1Q template editor now supports single-submit edit and concerns concurrent submits

 -addVSTRule: unneeded op removed (no more ops for single rule)
 -delVSTRule: idem
 +cloneVSTRule: template cloning code moved to 'clone' op, uses common commitUpdateVSTRules
 updVSTRule: function redesigned to update whole template, not the single rule. Takes input data as text in json format. Uses common commitUpdateVSTRules.

inc/navigation.php: [editrules]add/del removed, clone added, tab renamed from 'Rules' to 'Edit'

 global $port_role_options moved to database.php
 renderVSTRules: code to render read-only rules list, separated from renderVST
 renderVST: uses new renderVSTRules
 renderVSTRulesEditor: redesigned to render new JS-based VST editor.

 $port_role_options moved from interfaces.php
 getVLANSwitchTemplate: selects new fields from VLANSwitchTemplate table
 commitUpdateVSTRules: new function, replaces all the rules in the VST. Updates mutex and author in VLANSwitchTemplate.

 isInteger: new function to check values to be integer. returns BOOL.
 isPCRE: idem for PCRE

upgrade.php: new columns 'mutex_rev' and 'saved_by' in VLANSwitchTemplate table
install/init-structure.sql: idem

11 years agor4069 new feature: UI: live switchport info (port config, link status, learned mac...
Alexey Andriyanov [Sat, 25 Dec 2010 22:07:25 +0000 (22:07 +0000)] 
r4069 new feature: UI: live switchport info (port config, link status, learned mac list) showed inline on any object tab
update: selective including of JS and CSS files. No more unneeded js code loaded.

gateways/deviceconfig/nxos4.connector: added two more commands: getportstatus and getmaclist
gateways/deviceconfig/ios12.connector: idem
gateways/deviceconfig/vrp53.connector: idem
gateways/deviceconfig/vrp55.connector: idem

pi.css: moved into css/ dir, removed duplicated body attributes, many new styles added for popup interface
added jquery.contextmenu plugin: css/jquery.contextmenu.css and js/jquery.contextmenu.js files
index.php: buffering of output added to call printPageHeaders after page generation for adding nesessary JS/CSS into page header
added new pix: ajax-loader.gif, checkbox_yes.png, link-disabled.png, link-up.png, link-down.png, 1x1t.gif (transparent pixel)
inc/navigation.php: new object tab 'Live ports' added

inc/interface.php: changed mainly for reacting to js/css include policy change
 renderRack: add autogenerated css styles for rack atoms on-demand (addAtomCSS call), added common class atom to TDs
 renderMolecule: idem
 renderAtomGrid: idem
 renderGridForm: include js libs on-demand (function renders some JS code)
 renderRackSpaceForObject: idem
 renderLivePTR: idem
 renderCellFilterPortlet: idem
 renderTextEditor: idem
 renderRackObject: prepare portlist to add popup menu if needed, include js libs on-demand (function renders some JS code)
 renderPortsForObject: idem
 renderObject8021QPorts: idem
 renderDiscoveredNeighbors: idem
 renderObject8021QSync: idem, also preventive init port config popups (cause we already have info from switch)
 renderPortsInfo: new function, renders new 'Live ports' tab
 renderIPv4SpaceRecords: reflect renaming of getAutoScrollScript
 renderIPv6SpaceRecords: idem
 RenderIPv4Network: idem
 RenderIPv6Network: idem
 renderIPv4SpaceEditor: JS prefix syntax validator reformatted to reflect new JS include policy
 renderIPv6SpaceEditor: idem
 renderRackCodeEditor: JS reformatted reformatted to reflect new JS include policy
 formatPortLink: ability to pass <a>-class
 getAutoScrollScript: renamed to addAutoScrollScript, cause it does no renders anything now, only adds link to JS file
 switchportInfoJS: new function checking permissions and other requirements for portinfo popup menu, and including nesessary JS/CSS
 addAtomCSS: new function to generate rackatom css runtime based on config variable (legacy feature, BTW)

inc/init.php: $pageheaders cleaned up from JS and CSS, now they are included on-demand
 ios12ShortenIfName: VRP formats iface names in short manner (GE, XGE) in some pages, concerning it
 printPageHeaders: adding links to remembered during page rendering JS/CSS files or inline blocks
 getColumnCoordinates: new util function (used in ios12 int status gw) to parse fixed-column-length-formatted tables
 addJS: new function to include JS files/block on demand
 addCSS: idem
 isEthernetPort: new function to check if popup menu is appiable for the specified port

inc/ajax-interface.php: new file like interface.php, but small enough to be included in ajax.php instead of huge interface.php
 formatPortLinkHints: prepares HTML code for inline and popup parts of popup interface
 formatPortMacHints: idem
 formatPortConfigHints: idem

inc/gateways.php: ability to fetch mac list, link status and port configs from ios12, vrp, nxos.
 ios12ScanTopLevel: 802.1q config parsing functions now saving every seen line to ['config'] subkey (for port config fetching)
 ios12PickSwitchportCommand: idem
 vrp53ScanTopLevel: idem
 vrp53PickInterfaceSubcommand: idem
 vrp55Read8021QConfig: idem
 nxos4ScanTopLevel: idem
 nxos4PickSwitchportCommand: idem
 ciscoReadInterfaceStatus: function for parsing 'show int status' IOS and NXOS command output
 vrpReadInterfaceStatus: idem for VRP 5.3/5.5
 maclist_sort: function for sorting mac list by VLAN id
 ios12ReadMacList: function for parsing 'show mac address-table dynamic' IOS command output
 nxos4ReadMacList: idem for NXOS
 vrp53ReadMacList: idem for VRP 5.3
 vrp55ReadMacList: idem for VRP 5.5/5.7

inc/triggers.php: new trigger for 'Live ports' tab
ajax.php: 3 new ops for port info data queries. Calling functions from ajax-interface.php and encoding their output in JSON
js/jquery.thumbhover.js: JS library to show stickable popups on hover. Rewritten by me from unknown source

js/jquery.contextmenu.js, css/jquery.contextmenu.css: third-party library for displaying popup menus

js/racktables.js: new util function to parse query string and extract GET param value from it
js/jquery-1.3.1.min.js was replaced by the new version: js/jquery-1.4.4.min.js
js/portinfo.js: JS code implementing popup switchport info logic


11 years agor4068 mkA(): new helper function
Denis Ovsienko [Sat, 25 Dec 2010 12:53:04 +0000 (12:53 +0000)] 
r4068 mkA(): new helper function
render8021QReport(): initial implementation

11 years agor4066 fix column count
Denis Ovsienko [Sat, 25 Dec 2010 09:32:51 +0000 (09:32 +0000)] 
r4066 fix column count

11 years agor4065 add myself to the list of 2010 contributors
Aaron Dummer [Fri, 24 Dec 2010 20:36:20 +0000 (20:36 +0000)] 
r4065 add myself to the list of 2010 contributors

11 years agor4064 add DB triggers to prevent invalid port links (#363)
Aaron Dummer [Fri, 24 Dec 2010 20:21:52 +0000 (20:21 +0000)] 
r4064 add DB triggers to prevent invalid port links (#363)

11 years agor4063 set current version to 0.19.0
Aaron Dummer [Fri, 24 Dec 2010 20:21:18 +0000 (20:21 +0000)] 
r4063 set current version to 0.19.0

11 years agor4062 if no logs exist, display a generic message instead of an empty table
Aaron Dummer [Fri, 24 Dec 2010 18:31:37 +0000 (18:31 +0000)] 
r4062 if no logs exist, display a generic message instead of an empty table

11 years agor4061 add missing semi-colons
Aaron Dummer [Fri, 24 Dec 2010 18:21:02 +0000 (18:21 +0000)] 
r4061 add missing semi-colons

11 years agor4060 Add some cleanups and comments:
Denis Ovsienko [Thu, 23 Dec 2010 22:58:55 +0000 (22:58 +0000)] 
r4060 Add some cleanups and comments:

gotClearanceForTagChain(): make use of exceptions
getFile(): idem
markAllSpans(): dismiss obsolete assertion
getPrevIDforRack(): idem
getNextIDforRack(): idem
getRSUforRack(): idem
getRSUforRackRow(): idem
buildLVSConfig(): idem

11 years agor4059 Move code around to make it possible to work without the
Denis Ovsienko [Thu, 23 Dec 2010 22:20:13 +0000 (22:20 +0000)] 
r4059 Move code around to make it possible to work without the
functions in code.php, unless when they are really required to run.

eval_expression(): move to functions.php
getRackCodeWarnings(): ditto
spotPayload(): ditto, and do the inclusion on demand
getRackCode(): ditto
gotClearanceForTagChain(): move to auth.php
processAdjustmentSentence(): ditto

ajax.php: justify switching and exceptions logic

11 years agor4058 assertUIntArg(): don't generate extra warning, when argument isn't set at all
Denis Ovsienko [Thu, 23 Dec 2010 21:56:10 +0000 (21:56 +0000)] 
r4058 assertUIntArg(): don't generate extra warning, when argument isn't set at all
assertStringArg(): idem
assertBoolArg(): idem

11 years agor4057 Huawei VRP 5.70 pseudo-interactive telnet support (fixes multiple problems...
Alexey Andriyanov [Thu, 23 Dec 2010 10:16:11 +0000 (10:16 +0000)] 
r4057 Huawei VRP 5.70 pseudo-interactive telnet support (fixes multiple problems caused by fast commands post through netcat)

new netcat wrapper written in Perl: gateways/deviceconfig/nc.pl
requires netcat for operating

11 years agor4056 printSelect(): spec cleanup
Denis Ovsienko [Mon, 20 Dec 2010 13:42:04 +0000 (13:42 +0000)] 
r4056 printSelect(): spec cleanup

11 years agor4055 objectlog: add ON DELETE CASCADE and leave it in some consistent form
Denis Ovsienko [Mon, 20 Dec 2010 11:57:49 +0000 (11:57 +0000)] 
r4055 objectlog: add ON DELETE CASCADE and leave it in some consistent form

11 years agor4054 Merge most of the code from Ernest Shaffer's objectlog plugin:
Denis Ovsienko [Sun, 19 Dec 2010 15:07:16 +0000 (15:07 +0000)] 
r4054 Merge most of the code from Ernest Shaffer's objectlog plugin:

SQL schema: add ObjectLog table
navigation: add extra top-level page and a tab for object page
deleteObjectLog(): new handler function
addObjectlog(): ditto
renderRackObject(): add "log records" portlet
renderObjectLogEditor(): new function for editor tab
allObjectLogs(): new function, table viewer
renderGlobalLogEditor(): new function, placeholder
getLogRecordsForObject(): new function, table reader
getLogRecords(): idem

11 years agor4053 add new page image for the objectlog code
Denis Ovsienko [Sun, 19 Dec 2010 12:23:34 +0000 (12:23 +0000)] 
r4053 add new page image for the objectlog code

11 years agor4051 bugfix for recent change: exception when search result was returned only by...
Alexey Andriyanov [Fri, 17 Dec 2010 11:27:55 +0000 (11:27 +0000)] 
r4051 bugfix for recent change: exception when search result was returned only by custom search plugin.

11 years agor4050 Incorrect argument count for the initial Config data
Jonathan Thurman [Fri, 17 Dec 2010 04:26:25 +0000 (04:26 +0000)] 
r4050 Incorrect argument count for the initial Config data

11 years agor4049 addVSTRule(): enhance to support 2-mode operation (2nd is "copier")
Denis Ovsienko [Thu, 16 Dec 2010 12:46:33 +0000 (12:46 +0000)] 
r4049 addVSTRule(): enhance to support 2-mode operation (2nd is "copier")
renderVSTRulesEditor(): idem
trigger_vst_editrules(): new function to modify tab style

11 years agor4048 Minor change in UI on 8021qports page: remote object link replaced by link...
Alexey Andriyanov [Tue, 14 Dec 2010 12:33:33 +0000 (12:33 +0000)] 
r4048 Minor change in UI on 8021qports page: remote object link replaced by link to remote port

11 years agor4047 Multi-process parallel 802.1Q sync support
Alexey Andriyanov [Tue, 14 Dec 2010 11:18:57 +0000 (11:18 +0000)] 
r4047 Multi-process parallel 802.1Q sync support

inc/init.php: new function connectDB for reconnecting in childs
syncdomain.php: child workers supports (pcre extension dependent)

upgrade.php: new config variable 'SYNCDOMAIN_MAX_PROCESSES' added
inc/ophandlers.php: idem
install/init-dictbase.sql: idem

11 years agor4046 Huawei VRP 5.5/5.7: screen-length 0 support (no more need to disable pager...
Alexey Andriyanov [Tue, 14 Dec 2010 11:04:53 +0000 (11:04 +0000)] 
r4046 Huawei VRP 5.5/5.7: screen-length 0 support (no more need to disable pager globally on devices)

11 years agor4045 Interface to renderSearchResults function was simplified: no more need to pass...
Alexey Andriyanov [Fri, 10 Dec 2010 09:55:27 +0000 (09:55 +0000)] 
r4045 Interface to renderSearchResults function was simplified: no more need to pass nhits and lasthit
Possibility of dupes in search results eliminated by indexing by entity id
bugfix: create IPv4 network button, if pressed to open in a new window, was redirecting the parent window, too
bugfix: when searching for IP not belonging to any known network, the ugly assertion failed page was shown.
update: links to ports added to object search results
update: custom rearch results provided by users' plugins now supported

 renderSearchResults: parameters were simplified, unknown IP bug was fixed, custom search results supported, links to ports added
 renderPortOIFCompatEditor: bug fixed with nested <input> into <a> (parent page redirection)
 printIPNetInfoTDs: idem
 renderPortIFCompatEditor: idem

 getIPv4PrefixSearchResult: indexing results by id, for simplifying duplicates management in search results
 getIPv4AddressSearchResult: idem
 getIPv6AddressSearchResult: idem
 getIPv4RSPoolSearchResult: idem
 getIPv4VServiceSearchResult: idem
 getFileSearchResult: idem
 getVLANSearchResult: idem
 getAccountSearchResult: idem, mergind code updated to reflect indexing changes

 searchEntitiesByText: removed nhits and lasthit calculation and returning

11 years agor4044 list Catalyst 2960S series
Denis Ovsienko [Thu, 9 Dec 2010 14:11:01 +0000 (14:11 +0000)] 
r4044 list Catalyst 2960S series

11 years agor4043 Removed the 'Ability to search for IP networks by vlan id' (commit #4035)
Alexey Andriyanov [Wed, 8 Dec 2010 12:12:14 +0000 (12:12 +0000)] 
r4043 Removed the 'Ability to search for IP networks by vlan id' (commit #4035)
This functional turned to be very sepecific so now it is replaced by
the ability to override search logic in local.php plugin.

 renderSearchResults: this function was reduced, now it only renders search results, not calculates them
 searchHandler: new function, glues together searchEntitiesByText and renderSearchResults

 searchEntitiesByText: the part of former renderSearchResults which searches for entities by given text

11 years agor4042 additional Dell hardware dictionary increase
Ryan Farrington [Sun, 5 Dec 2010 04:00:45 +0000 (04:00 +0000)] 
r4042 additional Dell hardware dictionary increase

11 years agor4041 added additional Dell hardware
Ryan Farrington [Sun, 5 Dec 2010 03:58:21 +0000 (03:58 +0000)] 
r4041 added additional Dell hardware
pdo_mysql extention verification hotfix.

11 years agor4040 bugfix for recent change: vlan case-sensitive searching
Alexey Andriyanov [Fri, 3 Dec 2010 15:53:06 +0000 (15:53 +0000)] 
r4040 bugfix for recent change: vlan case-sensitive searching
inc/interface.php, renderSearchResults

11 years agor4039 bugfix for recent change: duplicate IP networks were shown on vlan search results
Alexey Andriyanov [Fri, 3 Dec 2010 12:24:52 +0000 (12:24 +0000)] 
r4039 bugfix for recent change: duplicate IP networks were shown on vlan search results
inc/interface.php, renderSearchResults

11 years agor4038 add SMC records to dictionary and SNMP block
Denis Ovsienko [Thu, 2 Dec 2010 17:51:40 +0000 (17:51 +0000)] 
r4038 add SMC records to dictionary and SNMP block

11 years agor4037 bugfix: UI: spare <td> on the 8021q ports page
Alexey Andriyanov [Wed, 1 Dec 2010 11:59:05 +0000 (11:59 +0000)] 
r4037 bugfix: UI: spare <td> on the 8021q ports page

inc/interface.php: renderObject8021QPorts fixed.

11 years agor4036 bugfix: UI: pager in ipv4net shows appropriate page when IP is highlighted
Alexey Andriyanov [Wed, 1 Dec 2010 11:14:07 +0000 (11:14 +0000)] 
r4036 bugfix: UI: pager in ipv4net shows appropriate page when IP is highlighted

Fixed inc/interface.php renderIPv4Network.

11 years agor4035 Ability to search for IP networks by vlan id
Alexey Andriyanov [Tue, 30 Nov 2010 16:27:32 +0000 (16:27 +0000)] 
r4035 Ability to search for IP networks by vlan id

 renderSearchResults: special template for vlan searching only, not by descriptions of all realms

 getVLANSearchResult: vlans are searched by description only if query does not look like VID

11 years agor4034 The pages are now scrolled to highlighted items.
Alexey Andriyanov [Tue, 30 Nov 2010 15:04:19 +0000 (15:04 +0000)] 
r4034 The pages are now scrolled to highlighted items.
Object's ports are now highlighted on every tab.

inc/navigation.php: param added for bypassing between tabs
pi.css: new class .border_highlight making light-green border around cell
 renderRackObject: added <a>-ancors for ports and IPs and JS call to scroll on page load
 renderPortsForObject: idem for ports
 renderIPv4SpaceRecords: idem for v4 nets, removed old ancors #netid-*
 renderIPv6SpaceRecords: idem
 renderIPv4Network: idem for ip addresses
 renderIPv6Network: idem
 renderEmptyIPv6: added name for link, to make in an ancor
 renderIPv6NetworkAddresses: added <a>-ancors for IPs and JS call to scroll on page load
 renderVLANMembership: find a portname by id, highlight the port cell
 printIPNetInfoTDs: added name for link, to make in an ancor
 renderObject8021QPorts: added <a>-ancors for ports and JS call to scroll on page load
 renderObject8021QSync: idem, find a portname by id
 renderDiscoveredNeighbors: idem
 getAutoScrollScript: new function, generates JS scrolling code

11 years agor4033 bugfix: the feature of remembering last opened tab of realm page is now working
Alexey Andriyanov [Tue, 30 Nov 2010 14:24:55 +0000 (14:24 +0000)] 
r4033 bugfix: the feature of remembering last opened tab of realm page is now working

index.php: store not only tab name, but also last visited time
inc/navigation.php: independent bug, moved renderIPv4SLB from pagehandler to tabhandler

 showTabs: added support for bypassing optional arguments between tabs

 new constant TAB_REMEMBER_TIMEOUT defined
 redirectIfNecessary: redirects to remembered tab
 prepareNavigation: moved old feature code out of here, it was not working before permissions init
 redirectUser: added support for bypassing optional arguments between tabs

11 years agor4032 employ standard naming for icon image (should help having text/plain custom...
Denis Ovsienko [Tue, 30 Nov 2010 13:30:48 +0000 (13:30 +0000)] 
r4032 employ standard naming for icon image (should help having text/plain custom scripts)

11 years agor4030 platform_is_ok(): check existence of a constant, which is supported by mysqlnd...
Denis Ovsienko [Tue, 30 Nov 2010 11:53:52 +0000 (11:53 +0000)] 
r4030 platform_is_ok(): check existence of a constant, which is supported by mysqlnd (reported by Andrey Stepanov)

11 years agor4028 NXOS connector bugfix.
Alexey Andriyanov [Tue, 30 Nov 2010 10:21:43 +0000 (10:21 +0000)] 
r4028 NXOS connector bugfix.

Fixes the case when last port config is not parsed correctly due to lack of line return at the end of config.

11 years agor4027 bugfix: fixed telnet session hanging in NX-OS4 connector
Alexey Andriyanov [Tue, 30 Nov 2010 08:21:28 +0000 (08:21 +0000)] 
r4027 bugfix: fixed telnet session hanging in NX-OS4 connector

nxos4.connector: fixed prompt regexp (main enhancement was adding EOL($) to the end)

11 years agor4026 exportSwitch8021QConfig(): make sure, that "(un)set native" command is always...
Denis Ovsienko [Mon, 29 Nov 2010 19:16:27 +0000 (19:16 +0000)] 
r4026 exportSwitch8021QConfig(): make sure, that "(un)set native" command is always queued with proper argument

11 years agor4025 add 0.18.6 release date
Denis Ovsienko [Mon, 29 Nov 2010 19:14:35 +0000 (19:14 +0000)] 
r4025 add 0.18.6 release date

11 years agor4024 A patch by Jeroen Benda (#380, JS checkbox helpers)
Denis Ovsienko [Mon, 29 Nov 2010 13:17:22 +0000 (13:17 +0000)] 
r4024 A patch by Jeroen Benda (#380, JS checkbox helpers)

renderGridForm(): extend JS bits in table header
renderRackSpaceForObject(): idem
renderAtomGrid(): idem
blockToggleRowOfAtoms(): new JS function
blockToggleColumnOfAtoms(): idem

11 years agor4020 bugfix: clear VLAN config on object reset
Alexey Andriyanov [Fri, 26 Nov 2010 14:20:26 +0000 (14:20 +0000)] 
r4020 bugfix: clear VLAN config on object reset

commitResetObject: now deletes rows from PortNativeVLAN and PortAllowedVLAN tables

11 years agor4019 IPv6:
Alexey Andriyanov [Mon, 22 Nov 2010 16:50:30 +0000 (16:50 +0000)] 
r4019 IPv6:
- foreign keys added for v4/v6 allocations
- v6 allocations now removed on object clearing

11 years agor4018 Bugfix2 for previous bug (recalc vlans button)
Alexey Andriyanov [Mon, 22 Nov 2010 16:44:13 +0000 (16:44 +0000)] 
r4018 Bugfix2 for previous bug (recalc vlans button)

11 years agor4017 bugfix: recalc8021Q: the button was not shown if there were no any 'access...
Alexey Andriyanov [Mon, 22 Nov 2010 16:12:08 +0000 (16:12 +0000)] 
r4017 bugfix: recalc8021Q: the button was not shown if there were no any 'access/anymode' ports on switch

11 years agor4016 Merging Jens Weibler SNMPv3 patch to be tested on real hardware.
Denis Ovsienko [Mon, 22 Nov 2010 12:06:32 +0000 (12:06 +0000)] 
r4016 Merging Jens Weibler SNMPv3 patch to be tested on real hardware.

querySNMPData(): detect protocol version
renderSNMPPortFinder(): extend the FORM for more INPUTs
SNMP: new abstract class
SNMPv2: new protocol implementation class
SNMPv3: ditto
SNMPDevice: employ SNMPv2/SNMPv3 classes, add get/set methods
doSNMPmining(): make use of SNMPDevice class
doSwitchSNMPmining(): idem
doPDUSNMPmining(): idem
APCPowerSwitch: use snmpset/snmpget methods instead of library functions

11 years agor4015 renderRackSpaceForObject(): cleaned up code, updated comments
Denis Ovsienko [Sun, 21 Nov 2010 14:09:41 +0000 (14:09 +0000)] 
r4015 renderRackSpaceForObject(): cleaned up code, updated comments

11 years agor4014 renderRackObject(): justify TD count in TR
Denis Ovsienko [Sun, 21 Nov 2010 10:18:10 +0000 (10:18 +0000)] 
r4014 renderRackObject(): justify TD count in TR

11 years agor4013 RackSpace: add missing FK relation to Rack
Denis Ovsienko [Sun, 21 Nov 2010 10:10:43 +0000 (10:10 +0000)] 
r4013 RackSpace: add missing FK relation to Rack

11 years agor4012 SQL: add new column 'cable' for optional cable label
Denis Ovsienko [Sat, 20 Nov 2010 17:48:50 +0000 (17:48 +0000)] 
r4012 SQL: add new column 'cable' for optional cable label
linkPortForObject(): update respectively for extra argument
renderRackObject(): idem
renderPortsForObject(): idem
getObjectPortsAndLinks(): idem
linkPorts(): idem

11 years agor4011 make some room for 0.19
Denis Ovsienko [Sat, 20 Nov 2010 17:41:36 +0000 (17:41 +0000)] 
r4011 make some room for 0.19

11 years agor4009 update Fedora install notes for version 13
Denis Ovsienko [Sat, 20 Nov 2010 10:13:58 +0000 (10:13 +0000)] 
r4009 update Fedora install notes for version 13

11 years agor4008 update committer list for year 2010
Denis Ovsienko [Sat, 20 Nov 2010 09:56:33 +0000 (09:56 +0000)] 
r4008 update committer list for year 2010

11 years agor4007 bugfix: recalc8021QPorts: added permission check to run this operation
Alexey Andriyanov [Fri, 19 Nov 2010 17:24:38 +0000 (17:24 +0000)] 
r4007 bugfix: recalc8021QPorts: added permission check to run this operation

11 years agor4006 802.1Q: Recalculate downlinks/uplinks button. Used in cases when due to some...
Alexey Andriyanov [Fri, 19 Nov 2010 16:57:16 +0000 (16:57 +0000)] 
r4006 802.1Q: Recalculate downlinks/uplinks button. Used in cases when due to some action
(order change, link add) port vlan configs are not consistent.

 renderObject8021QPorts: new button added under port list

 recalc8021QPorts: new function to recalculate uplinks and downlinks on the specified switch,
                   and also its corresponding remote ports. Can be useful in script mode.
 produceDownlinkPort: new function to duplicate remote side uplink port config as local side downlink. Used by recalc8021QPorts.
 queueChangesToSwitch: updates D-config and mutex_rev if new port config differs from the old one.

11 years agor4005 The keys 'db_first' and 'db_last' were returned back into the $netinfo arrays
Alexey Andriyanov [Thu, 18 Nov 2010 11:47:05 +0000 (11:47 +0000)] 
r4005 The keys 'db_first' and 'db_last' were returned back into the $netinfo arrays
after being reduced by previous commit. Some incomatibilities appeared
in Yandex local scripts depending on those keys.

11 years agor4004 new feature: IPv6 support
Alexey Andriyanov [Wed, 17 Nov 2010 09:34:07 +0000 (09:34 +0000)] 
r4004 new feature: IPv6 support

 * new class IPv6Address. Stores, formats, parses v6 addresses, does simple arythmetics.

DB schema:
 * IPv6Address table branched from IPv4Address
 * IPv6Allocation table branched from IPv4Allocation
 * IPv6Network table branched from IPv4Network
 * VLANIPv6 table branched from VLANIPv4
 * enum field `entity_type` extended to 'ipv6net' in table FileLink
 * enum field `entity_realm` extended to 'ipv6net' in table TagStorage

 * updIPv6Allocation added (brached from updIPv4Allocation)
 * delIPv6Allocation added (brached from delIPv4Allocation)
 * addIPv6Allocation added (brached from addIPv4Allocation)
 * addIPv6Prefix added (brached from addIPv4Prefix)
 * delIPv6Prefix added (brached from delIPv4Prefix)
 * updIPv6Prefix added (brached from updIPv4Prefix)
 * editvv6Address added (brached from editAddress)
 * bindVLANtoIPv6Net added (branched from bindVLANtoIPv4Net)
 * unbindVLANtoIPv6Net added (branched from unbindVLANtoIPv4Net)

 * new page 'ipv6space' added to main page layout
 * new tab 'ipv6' added to page 'object'
 * titles from 'IPv4/IPv6 space' pages removed, they are now calculated in dynamic_title_decoder
 * new page 'ipv6address' added
 * new report 'ipv6' added
 * new tab 'ipv6' added to 'vlan' page
 * triggers for 'ipv4/ipv6' tabs added to 'vlan' page

 * renderIndexItem now asks dynamic_title_decoder for page title unless it is set in $pages array
 * renderRackObject:
    * renders both ipv4 and ipv6 allocationd of default tab
* groups allocations by iface name and sorts iface names using sortPortList
* new http req arg 'hl_ipv6_addr
 * renderIPv6ForObject added (branched from renderIPv4ForObject)
 * new status codes for IPv6 added
 * renderIPv6Space added (branched from renderIPv4Space)
 * renderIPv6SpaceRecords added (branched from renderIPv4SpaceRecords)
 * formatIPv6NetUsage added. It generates text like '3 of 4G /64 nets' by used address count and v6net prefix length.
 * renderIPv4SpaceEditor: rendering of delete buttons siplified, the same logic was keeped
 * renderIPv6SpaceEditor added (branched from renderIPv4SpaceEditor)
 * renderIPv6Network added with satellites (renderIPv6NetworkAddresses, renderEmptyIPv6, renderSeparator, getPageNumOfIPv6)
 * renderSearchResults extended to support searching by IPv6 net/addr info
 * renderIPv6Reports added
 * renderTagStats extended to support new realm 'ipv6net'
 * printRoutersTD: router can have v6 address
 * showPathAndSearch now supports ancors in 'params' array (key must be named as '#')
 * dynamic_title_decoder:
    * decodes titles for 'ipv6address' and 'ipv6net' pages
* link to ipv[46]space page now support targeting on matching network with highlight and target support
 * renderVLANInfo shows v6 nets
 * function renderIPv4NetworkProperties renamed to renderIPNetworkProperties for handling both v4/v6 nets
* function printIPv4NetInfoTDs renamed to printIPNetInfoTDs, idem
 * function renderVLANIPv4 renamed to renderVLANIPLinks, idem
 * function render renderIPv4Address renamed to renderIPAddress, idem
 * function renderIPv4AddressProperties renamed to renderIPAddressProperties, idem
 * function renderIPv4AddressAllocations renamed to renderIPAddressAllocations, idem

 * scanIPv6Space added, branched from scanIPv4Space
 * getIPv6Address added
 * bindIPv6ToObject added
 * getIPv6AddressNetworkId added
 * new meta-function updateAddress, decides between updateV6Address and updateV4Address
 * updateIPv6Bond added
 * unbindIPv6FromObject added
 * getIPv6PrefixSearchResult added
 * getIPv6AddressSearchResult added
 * getObjectIfacesSearchResults searches for both v4/v6 addresses
 * getIPv6Stats added
 * getRackspaceStats: calculate sum of v4/v6 nets count, keyed with 'ipnet'
 * createIPv6Prefix added
 * destroyIPv6Prefix added
 * getDomainVLANs: calculate sum of v4/v6 nets count, fetches both v4 and v6 net ids
 * getVLANIPv6Options added
 * commitSupplementVLANIPv6 added
 * commitReduceVLANIPv6 added
 * getIPv6Network8021QBindings added

 * assertIPArg: new meta-function, used to decide which type of argument was passed (v4/v6 address)
 * assertIPv6Arg: new function, parses v6 address, throws exception otherwise
 * IPv6NetworkCmp added. simple bitstring compare function
 * ipv6tree_fill added (branched from ipv4tree_fill)
 * ipv6tree_construct added (branched from ipv4tree_construct)
 * iptree_embed: removed 'db_first' and 'db_last' keys cause they are not used any more
 * ipv6tree_embed added (branched from iptree_embed)
 * countOwnIPv4Addresses: removed unused old code for searching in DB. Now that function only counts net width, without used addresses.
 * loadOwnIPv4Addresses: same logic, but calclulation of db_first/db_last moved here from iptree_embed
 * loadIPv6AddrList addded
 * loadOwnIPv6Addresses added (branched from loadOwnIPv4Addresses)
 * prepareIPv6Tree added (branched from prepareIPv4Tree)

 * new trigger trigger_ipv6 (branched from trigger_ipv4)
 * new trigger trigger_ipv6net_vlanconfig (branched from trigger_ipv4net_vlanconfig)
 * new triggers trigger_vlan_ipv4net
 * new trigger_vlan_ipv6net

11 years agor4003 Merged 8021Q order delete focus hints from maintenance
Alexey Andriyanov [Wed, 10 Nov 2010 16:24:19 +0000 (16:24 +0000)] 
r4003 Merged 8021Q order delete focus hints from maintenance

11 years agor4002 Merged SNMP data for FastIron LS from maintenance
Alexey Andriyanov [Wed, 10 Nov 2010 16:18:57 +0000 (16:18 +0000)] 
r4002 Merged SNMP data for FastIron LS from maintenance

11 years agor4001 Merged LiveCDP changes from maintenance-#3993
Alexey Andriyanov [Wed, 10 Nov 2010 16:09:32 +0000 (16:09 +0000)] 
r4001 Merged LiveCDP changes from maintenance-#3993

11 years agor3999 ChangeLog line added for prev. commit
Alexey Andriyanov [Sat, 30 Oct 2010 17:17:46 +0000 (17:17 +0000)] 
r3999 ChangeLog line added for prev. commit

11 years agor3998 Fixed an issue with SQL error on old PHP versions (added unset ($result))
Alexey Andriyanov [Sat, 30 Oct 2010 14:59:57 +0000 (14:59 +0000)] 
r3998 Fixed an issue with SQL error on old PHP versions (added unset ($result))

11 years agor3996 getFileCache(): new function
Denis Ovsienko [Thu, 28 Oct 2010 20:48:43 +0000 (20:48 +0000)] 
r3996 getFileCache(): new function
commitAddFileCache(): new function
replaceFile(): reset thumbnail column on replace
renderFilePreview(): update logic to update and use thumbnail cache

11 years agor3992 queryLDAPServer(): throw exception on missing extension
Denis Ovsienko [Mon, 25 Oct 2010 09:49:58 +0000 (09:49 +0000)] 
r3992 queryLDAPServer(): throw exception on missing extension