61 os.chdir(projectPath) |
61 os.chdir(projectPath) |
62 try: |
62 try: |
63 entries = self.client.info2(fn, recurse=False) |
63 entries = self.client.info2(fn, recurse=False) |
64 infoStr = "<table>" |
64 infoStr = "<table>" |
65 for path, info in entries: |
65 for path, info in entries: |
66 infoStr += self.trUtf8( |
66 infoStr += self.tr( |
67 "<tr><td><b>Path (relative to project):</b></td>" |
67 "<tr><td><b>Path (relative to project):</b></td>" |
68 "<td>{0}</td></tr>").format(path) |
68 "<td>{0}</td></tr>").format(path) |
69 if info['URL']: |
69 if info['URL']: |
70 infoStr += self.trUtf8( |
70 infoStr += self.tr( |
71 "<tr><td><b>Url:</b></td><td>{0}</td></tr>")\ |
71 "<tr><td><b>Url:</b></td><td>{0}</td></tr>")\ |
72 .format(info['URL']) |
72 .format(info['URL']) |
73 if info['rev']: |
73 if info['rev']: |
74 infoStr += self.trUtf8( |
74 infoStr += self.tr( |
75 "<tr><td><b>Revision:</b></td><td>{0}</td></tr>")\ |
75 "<tr><td><b>Revision:</b></td><td>{0}</td></tr>")\ |
76 .format(info['rev'].number) |
76 .format(info['rev'].number) |
77 if info['repos_root_URL']: |
77 if info['repos_root_URL']: |
78 infoStr += self.trUtf8( |
78 infoStr += self.tr( |
79 "<tr><td><b>Repository root URL:</b></td>" |
79 "<tr><td><b>Repository root URL:</b></td>" |
80 "<td>{0}</td></tr>").format(info['repos_root_URL']) |
80 "<td>{0}</td></tr>").format(info['repos_root_URL']) |
81 if info['repos_UUID']: |
81 if info['repos_UUID']: |
82 infoStr += self.trUtf8( |
82 infoStr += self.tr( |
83 "<tr><td><b>Repository UUID:</b></td>" |
83 "<tr><td><b>Repository UUID:</b></td>" |
84 "<td>{0}</td></tr>").format(info['repos_UUID']) |
84 "<td>{0}</td></tr>").format(info['repos_UUID']) |
85 if info['last_changed_author']: |
85 if info['last_changed_author']: |
86 infoStr += self.trUtf8( |
86 infoStr += self.tr( |
87 "<tr><td><b>Last changed author:</b></td>" |
87 "<tr><td><b>Last changed author:</b></td>" |
88 "<td>{0}</td></tr>")\ |
88 "<td>{0}</td></tr>")\ |
89 .format(info['last_changed_author']) |
89 .format(info['last_changed_author']) |
90 if info['last_changed_date']: |
90 if info['last_changed_date']: |
91 infoStr += self.trUtf8( |
91 infoStr += self.tr( |
92 "<tr><td><b>Last Changed Date:</b></td>" |
92 "<tr><td><b>Last Changed Date:</b></td>" |
93 "<td>{0}</td></tr>")\ |
93 "<td>{0}</td></tr>")\ |
94 .format(formatTime(info['last_changed_date'])) |
94 .format(formatTime(info['last_changed_date'])) |
95 if info['last_changed_rev'] and \ |
95 if info['last_changed_rev'] and \ |
96 info['last_changed_rev'].kind == \ |
96 info['last_changed_rev'].kind == \ |
97 pysvn.opt_revision_kind.number: |
97 pysvn.opt_revision_kind.number: |
98 infoStr += self.trUtf8( |
98 infoStr += self.tr( |
99 "<tr><td><b>Last changed revision:</b></td>" |
99 "<tr><td><b>Last changed revision:</b></td>" |
100 "<td>{0}</td></tr>")\ |
100 "<td>{0}</td></tr>")\ |
101 .format(info['last_changed_rev'].number) |
101 .format(info['last_changed_rev'].number) |
102 if info['kind']: |
102 if info['kind']: |
103 if info['kind'] == pysvn.node_kind.file: |
103 if info['kind'] == pysvn.node_kind.file: |
104 nodeKind = self.trUtf8("file") |
104 nodeKind = self.tr("file") |
105 elif info['kind'] == pysvn.node_kind.dir: |
105 elif info['kind'] == pysvn.node_kind.dir: |
106 nodeKind = self.trUtf8("directory") |
106 nodeKind = self.tr("directory") |
107 elif info['kind'] == pysvn.node_kind.none: |
107 elif info['kind'] == pysvn.node_kind.none: |
108 nodeKind = self.trUtf8("none") |
108 nodeKind = self.tr("none") |
109 else: |
109 else: |
110 nodeKind = self.trUtf8("unknown") |
110 nodeKind = self.tr("unknown") |
111 infoStr += self.trUtf8( |
111 infoStr += self.tr( |
112 "<tr><td><b>Node kind:</b></td><td>{0}</td></tr>")\ |
112 "<tr><td><b>Node kind:</b></td><td>{0}</td></tr>")\ |
113 .format(nodeKind) |
113 .format(nodeKind) |
114 if info['lock']: |
114 if info['lock']: |
115 lockInfo = info['lock'] |
115 lockInfo = info['lock'] |
116 infoStr += self.trUtf8( |
116 infoStr += self.tr( |
117 "<tr><td><b>Lock Owner:</b></td><td>{0}</td></tr>")\ |
117 "<tr><td><b>Lock Owner:</b></td><td>{0}</td></tr>")\ |
118 .format(lockInfo['owner']) |
118 .format(lockInfo['owner']) |
119 infoStr += self.trUtf8( |
119 infoStr += self.tr( |
120 "<tr><td><b>Lock Creation Date:</b></td>" |
120 "<tr><td><b>Lock Creation Date:</b></td>" |
121 "<td>{0}</td></tr>")\ |
121 "<td>{0}</td></tr>")\ |
122 .format(formatTime(lockInfo['creation_date'])) |
122 .format(formatTime(lockInfo['creation_date'])) |
123 if lockInfo['expiration_date'] is not None: |
123 if lockInfo['expiration_date'] is not None: |
124 infoStr += self.trUtf8( |
124 infoStr += self.tr( |
125 "<tr><td><b>Lock Expiration Date:</b></td>" |
125 "<tr><td><b>Lock Expiration Date:</b></td>" |
126 "<td>{0}</td></tr>")\ |
126 "<td>{0}</td></tr>")\ |
127 .format(formatTime(lockInfo['expiration_date'])) |
127 .format(formatTime(lockInfo['expiration_date'])) |
128 infoStr += self.trUtf8( |
128 infoStr += self.tr( |
129 "<tr><td><b>Lock Token:</b></td><td>{0}</td></tr>")\ |
129 "<tr><td><b>Lock Token:</b></td><td>{0}</td></tr>")\ |
130 .format(lockInfo['token']) |
130 .format(lockInfo['token']) |
131 infoStr += self.trUtf8( |
131 infoStr += self.tr( |
132 "<tr><td><b>Lock Comment:</b></td><td>{0}</td></tr>")\ |
132 "<tr><td><b>Lock Comment:</b></td><td>{0}</td></tr>")\ |
133 .format(lockInfo['comment']) |
133 .format(lockInfo['comment']) |
134 if info['wc_info']: |
134 if info['wc_info']: |
135 wcInfo = info['wc_info'] |
135 wcInfo = info['wc_info'] |
136 if wcInfo['schedule']: |
136 if wcInfo['schedule']: |
137 if wcInfo['schedule'] == pysvn.wc_schedule.normal: |
137 if wcInfo['schedule'] == pysvn.wc_schedule.normal: |
138 schedule = self.trUtf8("normal") |
138 schedule = self.tr("normal") |
139 elif wcInfo['schedule'] == pysvn.wc_schedule.add: |
139 elif wcInfo['schedule'] == pysvn.wc_schedule.add: |
140 schedule = self.trUtf8("add") |
140 schedule = self.tr("add") |
141 elif wcInfo['schedule'] == pysvn.wc_schedule.delete: |
141 elif wcInfo['schedule'] == pysvn.wc_schedule.delete: |
142 schedule = self.trUtf8("delete") |
142 schedule = self.tr("delete") |
143 elif wcInfo['schedule'] == pysvn.wc_schedule.replace: |
143 elif wcInfo['schedule'] == pysvn.wc_schedule.replace: |
144 schedule = self.trUtf8("replace") |
144 schedule = self.tr("replace") |
145 infoStr += self.trUtf8( |
145 infoStr += self.tr( |
146 "<tr><td><b>Schedule:</b></td><td>{0}</td></tr>")\ |
146 "<tr><td><b>Schedule:</b></td><td>{0}</td></tr>")\ |
147 .format(schedule) |
147 .format(schedule) |
148 if wcInfo['copyfrom_url']: |
148 if wcInfo['copyfrom_url']: |
149 infoStr += self.trUtf8( |
149 infoStr += self.tr( |
150 "<tr><td><b>Copied From URL:</b></td>" |
150 "<tr><td><b>Copied From URL:</b></td>" |
151 "<td>{0}</td></tr>")\ |
151 "<td>{0}</td></tr>")\ |
152 .format(wcInfo['copyfrom_url']) |
152 .format(wcInfo['copyfrom_url']) |
153 infoStr += self.trUtf8( |
153 infoStr += self.tr( |
154 "<tr><td><b>Copied From Rev:</b></td>" |
154 "<tr><td><b>Copied From Rev:</b></td>" |
155 "<td>{0}</td></tr>")\ |
155 "<td>{0}</td></tr>")\ |
156 .format(wcInfo['copyfrom_rev'].number) |
156 .format(wcInfo['copyfrom_rev'].number) |
157 if wcInfo['text_time']: |
157 if wcInfo['text_time']: |
158 infoStr += self.trUtf8( |
158 infoStr += self.tr( |
159 "<tr><td><b>Text Last Updated:</b></td>" |
159 "<tr><td><b>Text Last Updated:</b></td>" |
160 "<td>{0}</td></tr>")\ |
160 "<td>{0}</td></tr>")\ |
161 .format(formatTime(wcInfo['text_time'])) |
161 .format(formatTime(wcInfo['text_time'])) |
162 if wcInfo['prop_time']: |
162 if wcInfo['prop_time']: |
163 infoStr += self.trUtf8( |
163 infoStr += self.tr( |
164 "<tr><td><b>Properties Last Updated:</b></td>" |
164 "<tr><td><b>Properties Last Updated:</b></td>" |
165 "<td>{0}</td></tr>")\ |
165 "<td>{0}</td></tr>")\ |
166 .format(formatTime(wcInfo['prop_time'])) |
166 .format(formatTime(wcInfo['prop_time'])) |
167 if wcInfo['checksum']: |
167 if wcInfo['checksum']: |
168 infoStr += self.trUtf8( |
168 infoStr += self.tr( |
169 "<tr><td><b>Checksum:</b></td><td>{0}</td></tr>")\ |
169 "<tr><td><b>Checksum:</b></td><td>{0}</td></tr>")\ |
170 .format(wcInfo['checksum']) |
170 .format(wcInfo['checksum']) |
171 infoStr += "</table>" |
171 infoStr += "</table>" |
172 self.infoBrowser.setHtml(infoStr) |
172 self.infoBrowser.setHtml(infoStr) |
173 except pysvn.ClientError as e: |
173 except pysvn.ClientError as e: |