racktables
8 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).

8 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)

index.php:
 merged together all HTML layout
 added output buffering to collect all the messages before the HTML layout rendering

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

render_image.php:
 changed old showError calls to the calls of new one

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

inc/auth.php:
 authenticated_via_ldap: changed old showError calls to the calls of new one

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

inc/functions.php:
 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

upgrade.php:
-showFailure
 changed calls to showFailure to calls to showError
 added dependency on functions.php

inc/ophandlers.php:
 buildWideRedirectURL: now $_SESSION['log'] is merged with $log, not substituted

8 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

8 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()

8 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

8 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

8 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

8 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

8 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

8 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)

8 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

8 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

8 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

8 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

8 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

8 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

8 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/

8 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

8 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

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

8 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

8 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

8 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

8 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

inc/ophandlers.php:
 -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'

inc/interface.php:
 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.

inc/database.php:
 $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.

inc/functions.php:
 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

8 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
inc/functions.php:
 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

Hooray!!!

8 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

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

8 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

8 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)

8 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

8 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

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

8 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

8 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

8 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

8 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

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

8 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

8 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

8 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

8 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.

8 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

8 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

8 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

8 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

8 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)

8 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

inc/interface.php:
 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

inc/database.php:
 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

inc/functions.php:
 searchEntitiesByText: removed nhits and lasthit calculation and returning

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

8 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.

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

inc/functions.php:
 searchEntitiesByText: the part of former renderSearchResults which searches for entities by given text

8 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

8 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.

8 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
Changed:
inc/interface.php, renderSearchResults

8 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
Changed:
inc/interface.php, renderSearchResults

8 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

8 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.

8 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.

8 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

inc/interface.php:
 renderSearchResults: special template for vlan searching only, not by descriptions of all realms

inc/database.php:
 getVLANSearchResult: vlans are searched by description only if query does not look like VID

8 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
inc/interface.php:
 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

8 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

inc/interface.php:
 showTabs: added support for bypassing optional arguments between tabs

inc/functions.php:
 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

8 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)

8 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)

8 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.

8 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)

8 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

8 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

8 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

8 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

8 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

8 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)

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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.

inc/interface.php:
 renderObject8021QPorts: new button added under port list

inc/functions.php:
 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.

8 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.

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

Classes:
 * 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

Ophandlers:
 * 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)

inc/navidagion.php:
 * 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

inc/interface.php:
 * 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

inc/database.php:
 * 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

inc/functions.php:
 * 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)

inc/triggers.php:
 * 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

8 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

8 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

8 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

8 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

8 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))

8 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

8 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

8 years agor3990 The final release attempt
Alexey Andriyanov [Mon, 25 Oct 2010 08:31:43 +0000 (08:31 +0000)] 
r3990 The final release attempt

8 years agor3989 more accurate lldp neighbors extraction for Cisco IOS (by Boris)
Denis Ovsienko [Fri, 22 Oct 2010 18:20:43 +0000 (18:20 +0000)] 
r3989 more accurate lldp neighbors extraction for Cisco IOS (by Boris)

8 years agor3988 just before release 0.18.5
Alexey Andriyanov [Fri, 22 Oct 2010 13:56:12 +0000 (13:56 +0000)] 
r3988 just before release 0.18.5

8 years agor3987 vrp55Read8021QConfig(): VRP 5.70 added back "XG" interfaces, which VRP 5.50...
Denis Ovsienko [Thu, 21 Oct 2010 15:33:16 +0000 (15:33 +0000)] 
r3987 vrp55Read8021QConfig(): VRP 5.70 added back "XG" interfaces, which VRP 5.50 dropped, so handle that

8 years agor3986 live neighbors page bugfix
Alexey Andriyanov [Tue, 19 Oct 2010 18:48:07 +0000 (18:48 +0000)] 
r3986 live neighbors page bugfix

8 years agor3985 Cisco Catalyst 2960-48PST-L
Alexey Andriyanov [Tue, 19 Oct 2010 17:51:54 +0000 (17:51 +0000)] 
r3985 Cisco Catalyst 2960-48PST-L

8 years agor3984 bugfix of portsort #4
Alexey Andriyanov [Tue, 19 Oct 2010 16:13:36 +0000 (16:13 +0000)] 
r3984 bugfix of portsort #4

8 years agor3983 Cosmetic spelling fix
Alexey Andriyanov [Tue, 19 Oct 2010 13:53:04 +0000 (13:53 +0000)] 
r3983 Cosmetic spelling fix

8 years agor3982 portsort bugfix #3
Alexey Andriyanov [Tue, 19 Oct 2010 13:19:36 +0000 (13:19 +0000)] 
r3982 portsort bugfix #3

8 years agor3981 portsort bugfix
Alexey Andriyanov [Tue, 19 Oct 2010 11:51:47 +0000 (11:51 +0000)] 
r3981 portsort bugfix

8 years agor3979 bugfix of portsort
Alexey Andriyanov [Tue, 19 Oct 2010 10:14:18 +0000 (10:14 +0000)] 
r3979 bugfix of portsort