示例#1
0
def listDisks():
    disksData = smartmontools.getDisks();
    if len(disksData) > 0:
        addFolderItem(consts.fontBold + consts.colorBlue + addon.getLocalizedString(50018) +        # Choose disk for smartctl:
                      consts.colorEnd + consts.fontBoldEnd, -97);
        for data in disksData:
            l = data.split("|"); # params indexes: 0 - name; 1 - disk id from /dev/disk/by-id; 2 - device (/dev/sda, /dev/hda etc.)

            # getting and setting params to be passed to next call
            deviceType = smartmontools.getDiskType(l[1]);
            dic = smartctl.getStatusInfo(l[2], deviceType);
            dic[consts.paramDevice] = l[2];
            dic[consts.paramDiskId] = l[1];
            dic[consts.paramDiskType] = deviceType;
            params = sutilsxbmc.createParamStringFromDictionairy(dic, False);
            
            displayName = "";
            
            # add color to device name
            try:
                if dic[consts.paramDeviceIsSuported]:
                    if dic[consts.paramOverallHealth] == "PASSED":
                        displayName = consts.colorShadeOfGreen;
                    else:
                        displayName = consts.colorShadeOfRed;
                else:
                    displayName = consts.colorOrange;
            except:
                displayName = "";
            
            displayName += l[0] + " (" + l[2] + ")" + (consts.colorEnd if displayName else "");
                    
            addFolderItem(displayName , 20, params, True);
示例#2
0
def listSmartctlTasks(device, diskId, diskType):
    del params["index"];
    paramString = sutilsxbmc.createParamStringFromDictionairy(params, False);
#    params = consts.paramDevice + "=" + device + "&" + consts.paramDiskId +"=" + diskId;
#    params += "&" + consts.paramDiskType + "="+ diskType;
    
    addFolderItem(addon.getLocalizedString(50037), 44, paramString);
    addFolderItem(addon.getLocalizedString(50028), 41, paramString);          # Overall health status
    addFolderItem(addon.getLocalizedString(50027), 30, paramString, True);    # Perform self-test
    addFolderItem(addon.getLocalizedString(50038), 40, paramString, True);    # Reports
    addFolderItem(addon.getLocalizedString(50002), 21, paramString);          # Set device type
    #addFolderItem("Addon test purpouse task only", 90, paramString);   
    xbmcplugin.endOfDirectory(int(sys.argv[1]));
示例#3
0
def listSmartctlReports():
    del params[consts.paramIndex];
    paramString = sutilsxbmc.createParamStringFromDictionairy(params, False);
    
    addFolderItem(addon.getLocalizedString(50033), 42, paramString);
    addFolderItem(addon.getLocalizedString(50032), 43, paramString);
    addFolderItem(addon.getLocalizedString(50039) + addon.getLocalizedString(50054), 45, paramString);    # SMART capabilities  + (ATA only)
    addFolderItem(addon.getLocalizedString(50040), 46, paramString);
    
    # logs from -l parameter, gets the same index as id of their description in strings.po
    for logType in consts.logTypeToDescStringIdDic.keys():
        index = consts.logTypeToDescStringIdDic[logType];
        description = addon.getLocalizedString(index) 
        addFolderItem(description, index, paramString);
    
    xbmcplugin.endOfDirectory(int(sys.argv[1]));
示例#4
0
def listSmartctlTasks(device, diskId, diskType):
    del params["index"]
    paramString = sutilsxbmc.createParamStringFromDictionairy(params, False)
    #    params = consts.paramDevice + "=" + device + "&" + consts.paramDiskId +"=" + diskId;
    #    params += "&" + consts.paramDiskType + "="+ diskType;

    addFolderItem(addon.getLocalizedString(50037), 44, paramString)
    addFolderItem(addon.getLocalizedString(50028), 41, paramString)
    # Overall health status
    addFolderItem(addon.getLocalizedString(50027), 30, paramString, True)
    # Perform self-test
    addFolderItem(addon.getLocalizedString(50038), 40, paramString, True)
    # Reports
    addFolderItem(addon.getLocalizedString(50002), 21, paramString)
    # Set device type
    #addFolderItem("Addon test purpouse task only", 90, paramString);
    xbmcplugin.endOfDirectory(int(sys.argv[1]))
示例#5
0
def listSmartctlTests(device, diskId, diskType):
    del params[consts.paramIndex]
    paramString = sutilsxbmc.createParamStringFromDictionairy(params, False)
    #    params = consts.paramDevice + "=" + device + "&" + consts.paramDiskId +"=" + diskId;
    #    params += "&" + consts.paramDiskType + "="+ diskType;

    addFolderItem(
        consts.fontBold + consts.colorBlue +
        addon.getLocalizedString(50011) +  # Choose test type:
        consts.colorEnd + consts.fontBoldEnd,
        -99)

    # create list items with test duration
    shortTestString = addon.getLocalizedString(50006)
    # short
    try:
        shortTestString += " (" + params[consts.paramShortTestDuration] + " " + \
                          addon.getLocalizedString(50036) + ")"
    except:  # if duration is not available it will keep only name of the test
        pass

    longTestString = addon.getLocalizedString(50007)
    # long
    try:
        longTestString += " (" + params[consts.paramLongTestDuration] + " " + \
                          addon.getLocalizedString(50036) + ")"
    except:
        pass

    conveyanceTestString = addon.getLocalizedString(50008)
    # conveyance
    try:
        conveyanceTestString += " (" + params[consts.paramConveyanceTestDuration] + " " + \
                          addon.getLocalizedString(50036) + ")"
    except:
        pass

    addFolderItem(shortTestString, 31, paramString)
    addFolderItem(longTestString, 32, paramString)
    addFolderItem(conveyanceTestString, 33, paramString)
    addFolderItem(addon.getLocalizedString(50009), 34, paramString)
    # offline
    addFolderItem(addon.getLocalizedString(50010), 39, paramString)
    # Cancel running tests
    xbmcplugin.endOfDirectory(int(sys.argv[1]))
示例#6
0
def listSmartctlReports():
    del params[consts.paramIndex]
    paramString = sutilsxbmc.createParamStringFromDictionairy(params, False)

    addFolderItem(addon.getLocalizedString(50033), 42, paramString)
    addFolderItem(addon.getLocalizedString(50032), 43, paramString)
    addFolderItem(
        addon.getLocalizedString(50039) + addon.getLocalizedString(50054), 45,
        paramString)
    # SMART capabilities  + (ATA only)
    addFolderItem(addon.getLocalizedString(50040), 46, paramString)

    # logs from -l parameter, gets the same index as id of their description in strings.po
    for logType in consts.logTypeToDescStringIdDic.keys():
        index = consts.logTypeToDescStringIdDic[logType]
        description = addon.getLocalizedString(index)
        addFolderItem(description, index, paramString)

    xbmcplugin.endOfDirectory(int(sys.argv[1]))
示例#7
0
def listDisks():
    disksData = smartmontools.getDisks()
    if len(disksData) > 0:
        addFolderItem(
            consts.fontBold + consts.colorBlue +
            addon.getLocalizedString(50018) +  # Choose disk for smartctl:
            consts.colorEnd + consts.fontBoldEnd,
            -97)
        for data in disksData:
            l = data.split("|")
            # params indexes: 0 - name; 1 - disk id from /dev/disk/by-id; 2 - device (/dev/sda, /dev/hda etc.)

            # getting and setting params to be passed to next call
            deviceType = smartmontools.getDiskType(l[1])
            dic = smartctl.getStatusInfo(l[2], deviceType)
            dic[consts.paramDevice] = l[2]
            dic[consts.paramDiskId] = l[1]
            dic[consts.paramDiskType] = deviceType
            params = sutilsxbmc.createParamStringFromDictionairy(dic, False)

            displayName = ""

            # add color to device name
            try:
                if dic[consts.paramDeviceIsSuported]:
                    if dic[consts.paramOverallHealth] == "PASSED":
                        displayName = consts.colorShadeOfGreen
                    else:
                        displayName = consts.colorShadeOfRed
                else:
                    displayName = consts.colorOrange
            except:
                displayName = ""

            displayName += l[0] + " (" + l[2] + ")" + (consts.colorEnd
                                                       if displayName else "")

            addFolderItem(displayName, 20, params, True)
示例#8
0
def listSmartctlTests(device, diskId, diskType):
    del params[consts.paramIndex];
    paramString = sutilsxbmc.createParamStringFromDictionairy(params, False);
#    params = consts.paramDevice + "=" + device + "&" + consts.paramDiskId +"=" + diskId;
#    params += "&" + consts.paramDiskType + "="+ diskType;
    
    addFolderItem(consts.fontBold + consts.colorBlue + addon.getLocalizedString(50011) +   # Choose test type:
                  consts.colorEnd + consts.fontBoldEnd, -99);  
    
    # create list items with test duration              
    shortTestString = addon.getLocalizedString(50006);  # short 
    try:
        shortTestString += " (" + params[consts.paramShortTestDuration] + " " + \
                          addon.getLocalizedString(50036) + ")";
    except: # if duration is not available it will keep only name of the test
        pass;
    
    longTestString = addon.getLocalizedString(50007);  # long
    try:
        longTestString += " (" + params[consts.paramLongTestDuration] + " " + \
                          addon.getLocalizedString(50036) + ")";
    except:
        pass;
    
    conveyanceTestString = addon.getLocalizedString(50008);   # conveyance
    try:
        conveyanceTestString += " (" + params[consts.paramConveyanceTestDuration] + " " + \
                          addon.getLocalizedString(50036) + ")";
    except:
        pass;
    
    addFolderItem(shortTestString, 31, paramString);   
    addFolderItem(longTestString, 32, paramString);   
    addFolderItem(conveyanceTestString, 33, paramString);
    addFolderItem(addon.getLocalizedString(50009), 34, paramString);   # offline
    addFolderItem(addon.getLocalizedString(50010), 39, paramString);   # Cancel running tests
    xbmcplugin.endOfDirectory(int(sys.argv[1]));