VirtualBox

Ignore:
Timestamp:
Dec 30, 2016 3:35:30 PM (8 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
112534
Message:

testmanager: Simple system wide changelog.

Location:
trunk/src/VBox/ValidationKit/testmanager/webui
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmin.py

    r64986 r65039  
    4848    ksScriptName = 'admin.py'
    4949
     50    ## Number of days back.
     51    ksParamDaysBack = 'cDaysBack';
    5052
    5153    ## @name Actions
    5254    ## @{
    5355    ksActionSystemLogList           = 'SystemLogList'
     56    ksActionSystemChangelogList     = 'SystemChangelogList'
    5457
    5558    ksActionUserList                = 'UserList'
     
    165168        #
    166169        self._dDispatch[self.ksActionSystemLogList]             = self._actionSystemLogList;
     170        self._dDispatch[self.ksActionSystemChangelogList]       = self._actionSystemChangelogList;
    167171
    168172        #
     
    333337            ],
    334338            [
    335                 'System',      self._sActionUrlBase + self.ksActionSystemLogList,
     339                'System',      self._sActionUrlBase + self.ksActionSystemChangelogList,
    336340                [
     341                    [ 'Changelog',              self._sActionUrlBase + self.ksActionSystemChangelogList ],
    337342                    [ 'System log',             self._sActionUrlBase + self.ksActionSystemLogList ],
    338343                    [ 'User accounts',          self._sActionUrlBase + self.ksActionUserList ],
     
    410415    #
    411416
     417    # System wide changelog actions.
     418
     419    def _actionSystemChangelogList(self):
     420        """ Action wrapper. """
     421        from testmanager.core.systemchangelog          import SystemChangelogLogic;
     422        from testmanager.webui.wuiadminsystemchangelog import WuiAdminSystemChangelogList;
     423
     424        tsEffective     = self.getEffectiveDateParam();
     425        cItemsPerPage   = self.getIntParam(self.ksParamItemsPerPage, iMin = 2, iMax =   9999, iDefault = 300);
     426        iPage           = self.getIntParam(self.ksParamPageNo,       iMin = 0, iMax = 999999, iDefault = 0);
     427        cDaysBack       = self.getIntParam(self.ksParamDaysBack,     iMin = 1, iMax = 366,    iDefault = 14);
     428        self._checkForUnknownParameters();
     429
     430        aoEntries  = SystemChangelogLogic(self._oDb).fetchForListingEx(iPage * cItemsPerPage, cItemsPerPage + 1,
     431                                                                       tsEffective, cDaysBack);
     432        oContent   = WuiAdminSystemChangelogList(aoEntries, iPage, cItemsPerPage, tsEffective,
     433                                                 cDaysBack = cDaysBack, fnDPrint = self._oSrvGlue.dprint, oDisp = self);
     434        (self._sPageTitle, self._sPageBody) = oContent.show();
     435        return True;
     436
    412437    # System Log actions.
    413438
  • trunk/src/VBox/ValidationKit/testmanager/webui/wuicontentbase.py

    r62484 r65039  
    3636from common                         import webutils;
    3737from testmanager                    import config;
    38 from testmanager.webui.wuibase      import WuiDispatcherBase, WuiException
     38from testmanager.webui.wuibase      import WuiDispatcherBase, WuiException;
    3939from testmanager.webui.wuihlpform   import WuiHlpForm;
    4040from testmanager.core               import db;
     41from testmanager.core.base          import AttributeChangeEntryPre;
    4142
    4243
     
    460461        j = 0;
    461462        for oChange in oEntry.aoChanges:
    462             sContent += '        <tr class="%s%s"><td>%s</td><td>%s</td><td>%s</td></tr>\n' \
    463                       % ( sRowClass, 'odd' if j & 1 else 'even',
    464                           webutils.escapeElem(oChange.sAttr),
    465                           webutils.escapeElem(oChange.sOldText),
    466                           webutils.escapeElem(oChange.sNewText), );
     463            if isinstance(oChange, AttributeChangeEntryPre):
     464                sContent += '        <tr class="%s%s"><td>%s</td>'\
     465                            '<td><div class="tdpre"><pre>%s</pre></div></td>' \
     466                            '<td><div class="tdpre"><pre>%s</pre></div></td></tr>\n' \
     467                          % ( sRowClass, 'odd' if j & 1 else 'even',
     468                              webutils.escapeElem(oChange.sAttr),
     469                              webutils.escapeElem(oChange.sOldText),
     470                              webutils.escapeElem(oChange.sNewText), );
     471            else:
     472                sContent += '        <tr class="%s%s"><td>%s</td><td>%s</td><td>%s</td></tr>\n' \
     473                          % ( sRowClass, 'odd' if j & 1 else 'even',
     474                              webutils.escapeElem(oChange.sAttr),
     475                              webutils.escapeElem(oChange.sOldText),
     476                              webutils.escapeElem(oChange.sNewText), );
    467477            j += 1;
    468478
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette