From 3bd4f1ddd531ddeac30b71a8c44ffd0983e7bb0a Mon Sep 17 00:00:00 2001 From: Daniel Beck Date: Thu, 21 Mar 2024 23:59:51 +0100 Subject: [PATCH] Initial commit with source code migrated from core --- .gitignore | 15 ++ .mvn/extensions.xml | 7 + .mvn/maven.config | 2 + Jenkinsfile | 11 + LICENSE.md | 9 + README.md | 15 ++ pom.xml | 74 +++++++ .../plugins/peopleview/AsynchPeople.java | 203 ++++++++++++++++++ .../io/jenkins/plugins/peopleview/People.java | 126 +++++++++++ .../plugins/peopleview/TransientFactory.java | 23 ++ .../jenkins/plugins/peopleview/UserInfo.java | 80 +++++++ src/main/resources/index.jelly | 4 + .../peopleview/AsynchPeople/index.jelly | 71 ++++++ .../peopleview/AsynchPeople/index.properties | 23 ++ .../AsynchPeople/index_bg.properties | 37 ++++ .../AsynchPeople/index_ca.properties | 7 + .../AsynchPeople/index_cs.properties | 27 +++ .../AsynchPeople/index_da.properties | 29 +++ .../AsynchPeople/index_de.properties | 29 +++ .../AsynchPeople/index_el.properties | 27 +++ .../AsynchPeople/index_es.properties | 30 +++ .../AsynchPeople/index_es_AR.properties | 6 + .../AsynchPeople/index_et.properties | 4 + .../AsynchPeople/index_fi.properties | 27 +++ .../AsynchPeople/index_fr.properties | 29 +++ .../AsynchPeople/index_hu.properties | 28 +++ .../AsynchPeople/index_it.properties | 32 +++ .../AsynchPeople/index_ja.properties | 28 +++ .../AsynchPeople/index_ko.properties | 26 +++ .../AsynchPeople/index_lt.properties | 27 +++ .../AsynchPeople/index_lv.properties | 28 +++ .../AsynchPeople/index_nb_NO.properties | 27 +++ .../AsynchPeople/index_nl.properties | 29 +++ .../AsynchPeople/index_pl.properties | 28 +++ .../AsynchPeople/index_pt_BR.properties | 29 +++ .../AsynchPeople/index_pt_PT.properties | 7 + .../AsynchPeople/index_ro.properties | 27 +++ .../AsynchPeople/index_ru.properties | 29 +++ .../AsynchPeople/index_sr.properties | 9 + .../AsynchPeople/index_sv_SE.properties | 29 +++ .../AsynchPeople/index_tr.properties | 27 +++ .../AsynchPeople/index_uk.properties | 7 + .../AsynchPeople/index_zh_TW.properties | 30 +++ .../AsynchPeople/people-resources.js | 57 +++++ .../plugins/peopleview/People/index.jelly | 37 ++++ .../peopleview/People/index.properties | 23 ++ .../peopleview/People/index_bg.properties | 28 +++ .../peopleview/People/index_ca.properties | 3 + .../peopleview/People/index_cs.properties | 3 + .../peopleview/People/index_de.properties | 4 + .../peopleview/People/index_es.properties | 3 + .../peopleview/People/index_es_AR.properties | 3 + .../peopleview/People/index_et.properties | 3 + .../peopleview/People/index_fr.properties | 3 + .../peopleview/People/index_he.properties | 3 + .../peopleview/People/index_hu.properties | 3 + .../peopleview/People/index_it.properties | 26 +++ .../peopleview/People/index_ja.properties | 23 ++ .../peopleview/People/index_lt.properties | 3 + .../peopleview/People/index_nb_NO.properties | 3 + .../peopleview/People/index_nl.properties | 3 + .../peopleview/People/index_pl.properties | 3 + .../peopleview/People/index_pt_BR.properties | 25 +++ .../peopleview/People/index_pt_PT.properties | 3 + .../peopleview/People/index_ro.properties | 3 + .../peopleview/People/index_ru.properties | 3 + .../peopleview/People/index_sl.properties | 3 + .../peopleview/People/index_sr.properties | 4 + .../peopleview/People/index_tr.properties | 3 + .../peopleview/People/index_uk.properties | 3 + .../peopleview/People/index_zh_TW.properties | 23 ++ .../plugins/peopleview/AsynchPeopleTest.java | 64 ++++++ 72 files changed, 1730 insertions(+) create mode 100644 .gitignore create mode 100644 .mvn/extensions.xml create mode 100644 .mvn/maven.config create mode 100644 Jenkinsfile create mode 100644 LICENSE.md create mode 100644 README.md create mode 100644 pom.xml create mode 100644 src/main/java/io/jenkins/plugins/peopleview/AsynchPeople.java create mode 100644 src/main/java/io/jenkins/plugins/peopleview/People.java create mode 100644 src/main/java/io/jenkins/plugins/peopleview/TransientFactory.java create mode 100644 src/main/java/io/jenkins/plugins/peopleview/UserInfo.java create mode 100644 src/main/resources/index.jelly create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index.jelly create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_bg.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ca.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_cs.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_da.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_de.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_el.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_es.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_es_AR.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_et.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_fi.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_fr.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_hu.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_it.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ja.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ko.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_lt.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_lv.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_nb_NO.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_nl.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pl.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pt_BR.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pt_PT.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ro.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ru.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_sr.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_sv_SE.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_tr.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_uk.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_zh_TW.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/people-resources.js create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index.jelly create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_bg.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_ca.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_cs.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_de.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_es.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_es_AR.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_et.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_fr.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_he.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_hu.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_it.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_ja.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_lt.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_nb_NO.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_nl.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_pl.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_pt_BR.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_pt_PT.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_ro.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_ru.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_sl.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_sr.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_tr.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_uk.properties create mode 100644 src/main/resources/io/jenkins/plugins/peopleview/People/index_zh_TW.properties create mode 100644 src/test/java/io/jenkins/plugins/peopleview/AsynchPeopleTest.java diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0834364 --- /dev/null +++ b/.gitignore @@ -0,0 +1,15 @@ +target + +# mvn hpi:run +work + +# IntelliJ IDEA project files +*.iml +*.iws +*.ipr +.idea + +# Eclipse project files +.settings +.classpath +.project diff --git a/.mvn/extensions.xml b/.mvn/extensions.xml new file mode 100644 index 0000000..a64ab6f --- /dev/null +++ b/.mvn/extensions.xml @@ -0,0 +1,7 @@ + + + io.jenkins.tools.incrementals + git-changelist-maven-extension + 1.7 + + diff --git a/.mvn/maven.config b/.mvn/maven.config new file mode 100644 index 0000000..2a0299c --- /dev/null +++ b/.mvn/maven.config @@ -0,0 +1,2 @@ +-Pconsume-incrementals +-Pmight-produce-incrementals diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..09032da --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,11 @@ +/* + See the documentation for more options: + https://github.com/jenkins-infra/pipeline-library/ +*/ +buildPlugin( + forkCount: '1C', // run this number of tests in parallel for faster feedback. If the number terminates with a 'C', the value will be multiplied by the number of available CPU cores + useContainerAgent: true, // Set to `false` if you need to use Docker for containerized tests + configurations: [ + [platform: 'linux', jdk: 21], + [platform: 'windows', jdk: 17], +]) diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..2cb3a3a --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,9 @@ +The MIT License + +Copyright 2024 Daniel Beck + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..55d99db --- /dev/null +++ b/README.md @@ -0,0 +1,15 @@ +# People View Plugin + +## Introduction + +This plugin provides the "People" view removed from Jenkins core. +See [JENKINS-18884](https://issues.jenkins.io/browse/JENKINS-18884) for additional context. + +## Contributing + +Refer to our [contribution guidelines](https://github.com/jenkinsci/.github/blob/master/CONTRIBUTING.md) + +## LICENSE + +Licensed under MIT, see [LICENSE](LICENSE.md) + diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..98e5f3a --- /dev/null +++ b/pom.xml @@ -0,0 +1,74 @@ + + + 4.0.0 + + + org.jenkins-ci.plugins + plugin + 4.78 + + + + io.jenkins.plugins + people-view + ${revision}${changelist} + hpi + + People View Plugin + https://github.com/jenkinsci/${project.artifactId}-plugin + + + MIT License + https://opensource.org/license/mit/ + + + + scm:git:https://github.com/${gitHubRepo} + scm:git:https://github.com/${gitHubRepo} + ${scmTag} + https://github.com/${gitHubRepo} + + + 1.0 + -SNAPSHOT + + + 2.451-SNAPSHOT + jenkinsci/${project.artifactId}-plugin + false + + + + + + io.jenkins.tools.bom + bom-2.414.x + 2857.v01a_0144eb_20b_ + pom + import + + + + + + + org.kohsuke + access-modifier-suppressions + 1.33 + provided + + + + + + repo.jenkins-ci.org + https://repo.jenkins-ci.org/public/ + + + + + repo.jenkins-ci.org + https://repo.jenkins-ci.org/public/ + + + diff --git a/src/main/java/io/jenkins/plugins/peopleview/AsynchPeople.java b/src/main/java/io/jenkins/plugins/peopleview/AsynchPeople.java new file mode 100644 index 0000000..9def470 --- /dev/null +++ b/src/main/java/io/jenkins/plugins/peopleview/AsynchPeople.java @@ -0,0 +1,203 @@ +package io.jenkins.plugins.peopleview; + +import edu.umd.cs.findbugs.annotations.NonNull; +import hudson.Functions; +import hudson.model.Action; +import hudson.model.Api; +import hudson.model.Item; +import hudson.model.Job; +import hudson.model.ModelObject; +import hudson.model.Run; +import hudson.model.TopLevelItem; +import hudson.model.User; +import hudson.model.View; +import hudson.scm.ChangeLogSet; +import hudson.tasks.UserAvatarResolver; +import hudson.util.RunList; +import java.util.Collection; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import jenkins.model.Jenkins; +import jenkins.scm.RunWithSCM; +import jenkins.util.ProgressiveRendering; +import net.sf.json.JSON; +import net.sf.json.JSONArray; +import net.sf.json.JSONObject; +import org.kohsuke.accmod.Restricted; +import org.kohsuke.accmod.restrictions.NoExternalUse; +import org.kohsuke.accmod.restrictions.suppressions.SuppressRestrictedWarnings; +import org.kohsuke.stapler.Stapler; +import org.kohsuke.stapler.StaplerRequest; +import org.kohsuke.stapler.export.Exported; +import org.kohsuke.stapler.export.ExportedBean; + +public class AsynchPeople extends ProgressiveRendering implements Action { + + private final Collection items; + private final User unknown; + private final Map users = new HashMap<>(); + private final Set modified = new HashSet<>(); + private final String iconSize; + public final ModelObject parent; + + @Override + public String getIconFileName() { + return "symbol-people"; + } + + @Override + public String getDisplayName() { + return "People"; // TODO i18n + } + + @Override + public String getUrlName() { + return "asynchPeople"; + } + + /** @see jenkins.model.Jenkins#getAsynchPeople */ + public AsynchPeople(Jenkins parent) { + this.parent = parent; + items = parent.getItems(); + unknown = User.getUnknown(); + } + + /** @see View#getAsynchPeople */ + public AsynchPeople(View parent) { + this.parent = parent; + items = parent.getItems(); + unknown = null; + } + + @SuppressRestrictedWarnings(Functions.class) + private static String getIconSize() { + StaplerRequest req = Stapler.getCurrentRequest(); + return req != null ? Functions.validateIconSize(Functions.getCookie(req, "iconSize", "32x32")) : "32x32"; + } + + { + iconSize = getIconSize(); + } + + @Override + protected void compute() throws Exception { + int itemCount = 0; + for (Item item : items) { + for (Job job : item.getAllJobs()) { + RunList> builds = job.getBuilds(); + int buildCount = 0; + for (Run r : builds) { + if (canceled()) { + return; + } + if (!(r instanceof RunWithSCM)) { + continue; + } + + RunWithSCM runWithSCM = (RunWithSCM) r; + for (ChangeLogSet c : runWithSCM.getChangeSets()) { + for (ChangeLogSet.Entry entry : c) { + User user = entry.getAuthor(); + UserInfo info = users.get(user); + if (info == null) { + UserInfo userInfo = new UserInfo(user, job, r.getTimestamp()); + userInfo.avatar = UserAvatarResolver.resolveOrNull(user, iconSize); + synchronized (this) { + users.put(user, userInfo); + modified.add(user); + } + } else if (info.getLastChange().before(r.getTimestamp())) { + synchronized (this) { + info.project = job; + info.lastChange = r.getTimestamp(); + modified.add(user); + } + } + } + } + // TODO consider also adding the user of the UserCause when applicable + buildCount++; + // TODO this defeats lazy-loading. Should rather do a breadth-first search, as in + // hudson.plugins.view.dashboard.builds.LatestBuilds + // (though currently there is no quick implementation of RunMap.size() ~ idOnDisk.size(), which + // would be needed for proper progress) + progress((itemCount + 1.0 * buildCount / builds.size()) / (items.size() + 1)); + } + } + itemCount++; + progress(1.0 * itemCount / (items.size() + /* handling User.getAll */ 1)); + } + if (unknown != null) { + if (canceled()) { + return; + } + for (User u : User.getAll()) { // TODO nice to have a method to iterate these lazily + if (canceled()) { + return; + } + if (u == unknown) { + continue; + } + if (!users.containsKey(u)) { + UserInfo userInfo = new UserInfo(u, null, null); + userInfo.avatar = UserAvatarResolver.resolveOrNull(u, iconSize); + synchronized (this) { + users.put(u, userInfo); + modified.add(u); + } + } + } + } + } + + @NonNull + @Override + protected synchronized JSON data() { + JSONArray r = new JSONArray(); + for (User u : modified) { + UserInfo i = users.get(u); + JSONObject entry = new JSONObject() + .accumulate("id", u.getId()) + .accumulate("fullName", u.getFullName()) + .accumulate("url", u.getUrl() + "/") + .accumulate( + "avatar", + i.avatar != null + ? i.avatar + : Stapler.getCurrentRequest().getContextPath() + Functions.getResourcePath() + + "/images/svgs/person.svg") + .accumulate("timeSortKey", i.getTimeSortKey()) + .accumulate("lastChangeTimeString", i.getLastChangeTimeString()); + Job p = i.getJob(); + if (p != null) { + entry.accumulate("projectUrl", p.getUrl()).accumulate("projectFullDisplayName", p.getFullDisplayName()); + } + r.add(entry); + } + modified.clear(); + return r; + } + + public Api getApi() { + return new Api(new AsynchPeople.InnerPeople()); + } + + /** JENKINS-16397 workaround */ + @Restricted(NoExternalUse.class) + @ExportedBean + public final class InnerPeople { + + private People people; + + @Exported + public synchronized List getUsers() { + if (people == null) { + people = parent instanceof Jenkins ? new People((Jenkins) parent) : new People((View) parent); + } + return people.users; + } + } +} diff --git a/src/main/java/io/jenkins/plugins/peopleview/People.java b/src/main/java/io/jenkins/plugins/peopleview/People.java new file mode 100644 index 0000000..a9e437a --- /dev/null +++ b/src/main/java/io/jenkins/plugins/peopleview/People.java @@ -0,0 +1,126 @@ +package io.jenkins.plugins.peopleview; + +import hudson.model.Action; +import hudson.model.Api; +import hudson.model.InvisibleAction; +import hudson.model.Item; +import hudson.model.Job; +import hudson.model.ModelObject; +import hudson.model.Run; +import hudson.model.User; +import hudson.model.View; +import hudson.scm.ChangeLogSet; +import hudson.util.RunList; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import jenkins.model.Jenkins; +import jenkins.scm.RunWithSCM; +import org.kohsuke.stapler.export.Exported; +import org.kohsuke.stapler.export.ExportedBean; + +@ExportedBean +public class People implements Action { + @Override + public String getUrlName() { + return "people"; + } + + @Override + public String getDisplayName() { + return "People"; // TODO i18n + } + + @Override + public String getIconFileName() { + return null; // no sidepanel link + } + + @Exported + public final List users; + + public final ModelObject parent; + + public People(Jenkins parent) { + this.parent = parent; + // for Hudson, really load all users + Map users = getUserInfo(parent.getItems()); + User unknown = User.getUnknown(); + for (User u : User.getAll()) { + if (u == unknown) continue; // skip the special 'unknown' user + if (!users.containsKey(u)) users.put(u, new UserInfo(u, null, null)); + } + this.users = toList(users); + } + + public People(View parent) { + this.parent = parent; + this.users = toList(getUserInfo(parent.getItems())); + } + + private Map getUserInfo(Collection items) { + Map users = new HashMap<>(); + for (Item item : items) { + for (Job job : item.getAllJobs()) { + RunList> runs = job.getBuilds(); + for (Run r : runs) { + if (r instanceof RunWithSCM) { + RunWithSCM runWithSCM = (RunWithSCM) r; + + for (ChangeLogSet c : runWithSCM.getChangeSets()) { + for (ChangeLogSet.Entry entry : c) { + User user = entry.getAuthor(); + + UserInfo info = users.get(user); + if (info == null) users.put(user, new UserInfo(user, job, r.getTimestamp())); + else if (info.getLastChange().before(r.getTimestamp())) { + info.project = job; + info.lastChange = r.getTimestamp(); + } + } + } + } + } + } + } + return users; + } + + private List toList(Map users) { + ArrayList list = new ArrayList<>(users.values()); + Collections.sort(list); + return Collections.unmodifiableList(list); + } + + public Api getApi() { + return new Api(this); + } + + /** + * @deprecated Potentially very expensive call; do not use from Jelly views. + */ + @Deprecated + public static boolean isApplicable(Collection items) { + for (Item item : items) { + for (Job job : item.getAllJobs()) { + RunList> runs = job.getBuilds(); + + for (Run r : runs) { + if (r instanceof RunWithSCM) { + RunWithSCM runWithSCM = (RunWithSCM) r; + for (ChangeLogSet c : runWithSCM.getChangeSets()) { + for (ChangeLogSet.Entry entry : c) { + User user = entry.getAuthor(); + if (user != null) return true; + } + } + } + } + } + } + return false; + } +} diff --git a/src/main/java/io/jenkins/plugins/peopleview/TransientFactory.java b/src/main/java/io/jenkins/plugins/peopleview/TransientFactory.java new file mode 100644 index 0000000..5d53dbd --- /dev/null +++ b/src/main/java/io/jenkins/plugins/peopleview/TransientFactory.java @@ -0,0 +1,23 @@ +package io.jenkins.plugins.peopleview; + +import hudson.Extension; +import hudson.model.Action; +import hudson.model.AllView; +import hudson.model.TransientViewActionFactory; +import hudson.model.View; +import java.util.List; +import jenkins.model.Jenkins; + +@Extension +public class TransientFactory extends TransientViewActionFactory { + + @Override + public List createFor(View v) { + final Jenkins j = Jenkins.get(); + if (j.equals(v.getOwner()) && v instanceof AllView) { + // If this is the top-level (~not in a folder) AllView, show everything + return List.of(new People(j), new AsynchPeople((j))); + } + return List.of(new People(v), new AsynchPeople(v)); + } +} diff --git a/src/main/java/io/jenkins/plugins/peopleview/UserInfo.java b/src/main/java/io/jenkins/plugins/peopleview/UserInfo.java new file mode 100644 index 0000000..b0af02c --- /dev/null +++ b/src/main/java/io/jenkins/plugins/peopleview/UserInfo.java @@ -0,0 +1,80 @@ +package io.jenkins.plugins.peopleview; + +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; +import hudson.Util; +import hudson.model.AbstractProject; +import hudson.model.Job; +import hudson.model.User; +import java.util.Calendar; +import java.util.GregorianCalendar; +import org.kohsuke.stapler.export.Exported; +import org.kohsuke.stapler.export.ExportedBean; + +@SuppressFBWarnings("EQ_COMPARETO_USE_OBJECT_EQUALS") // TODO Unchanged from core +@ExportedBean(defaultVisibility = 2) +public class UserInfo implements Comparable { + private final User user; + /** + * When did this user made a last commit on any of our projects? Can be null. + */ + protected Calendar lastChange; + /** + * Which project did this user commit? Can be null. + */ + protected Job project; + + /** @see hudson.tasks.UserAvatarResolver */ + String avatar; + + UserInfo(User user, Job p, Calendar lastChange) { + this.user = user; + this.project = p; + this.lastChange = lastChange; + } + + @Exported + public User getUser() { + return user; + } + + @Exported + public Calendar getLastChange() { + return lastChange; + } + + @Deprecated + public AbstractProject getProject() { + return project instanceof AbstractProject ? (AbstractProject) project : null; + } + + @Exported(name = "project") + public Job getJob() { + return project; + } + + /** + * Returns a human-readable string representation of when this user was last active. + */ + public String getLastChangeTimeString() { + if (lastChange == null) return "N/A"; + long duration = new GregorianCalendar().getTimeInMillis() - ordinal(); + return Util.getTimeSpanString(duration); + } + + public String getTimeSortKey() { + if (lastChange == null) return "-"; + return Util.XS_DATETIME_FORMATTER.format(lastChange.getTime()); + } + + @Override + public int compareTo(UserInfo that) { + long rhs = that.ordinal(); + long lhs = this.ordinal(); + return Long.compare(rhs, lhs); + } + + private long ordinal() { + if (lastChange == null) return 0; + return lastChange.getTimeInMillis(); + } +} diff --git a/src/main/resources/index.jelly b/src/main/resources/index.jelly new file mode 100644 index 0000000..dee1a04 --- /dev/null +++ b/src/main/resources/index.jelly @@ -0,0 +1,4 @@ + +
+ Provides the "People" view and API that were part of Jenkins up to version TODO. +
diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index.jelly b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index.jelly new file mode 100644 index 0000000..cf652ea --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index.jelly @@ -0,0 +1,71 @@ + + + + + + + + +
+
+

+ ${%People} + + + - ${it.parent.displayName} +

+
+
+

${%blurb}

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index.properties new file mode 100644 index 0000000..d1ce574 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index.properties @@ -0,0 +1,23 @@ +# The MIT License +# +# Copyright 2013 Jesse Glick. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +blurb=Includes all known “users”, including login identities which the current security realm can enumerate, as well as people mentioned in commit messages in recorded changelogs. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_bg.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_bg.properties new file mode 100644 index 0000000..40bd48a --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_bg.properties @@ -0,0 +1,37 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Name=\ + Име +On=\ + На +People=\ + Потребители +All\ People=\ + Всички потребители +User\ ID=\ + Идентификатор на потребител +blurb=\ + Включва всички познати потребители, включително тези, които текущата област\ + може да изброи, както и всички потребители указани в съобщенията при подаване. +Last\ Commit\ Activity=\ + Последни подавания diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ca.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ca.properties new file mode 100644 index 0000000..2c0a549 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ca.properties @@ -0,0 +1,7 @@ +# This file is under the MIT License by authors + +Last\ Active=Darrer actiu +Name=Nom +On=Actiu +People=Persones +User\ ID=Identificador d''''usuari diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_cs.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_cs.properties new file mode 100644 index 0000000..16b1670 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_cs.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Last\ Active=Poslední aktivita +Name=Jméno +On=Na +People=Lidé +User\ ID=Uživatelské ID diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_da.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_da.properties new file mode 100644 index 0000000..ed6d847 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_da.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. Kohsuke Kawaguchi. Knud Poulsen. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +On=På +Last\ Active=Sidst aktiv +People=Personer +Name=Navn +All\ People=Alle Personer +User\ ID=Bruger-ID +blurb=Inkluderer alle kendte "brugere", inklusiv login-identiteter som kan findes ud fra nuværende sikkerhedsniveau samt personer nævnt i commit-beskeder i registrerede changelogs. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_de.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_de.properties new file mode 100644 index 0000000..8af7bba --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_de.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Simon Wiest +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Name=Name +On=Job +All\ People=Alle Benutzer +People=Benutzer +User\ ID=Jenkins Benutzer Id +blurb=Beinhaltet alle bekannten Benutzer, einschließlich der Login-Benutzer des aktuellen Sicherheitsbereichs, sowie Namen, die in Commit-Kommentaren von Changelogs erwähnt werden. +Last\ Commit\ Activity=Letzte SCM-Aktivität diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_el.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_el.properties new file mode 100644 index 0000000..16a5bfc --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_el.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Last\ Active=Τελευταία χρονική ενεργή αναφορά +Name=Όνομα +On=Τελευταία ενεργή αναφορά στο project +People=Άνθρωποι +User\ ID=Id χρήστη diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_es.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_es.properties new file mode 100644 index 0000000..6154554 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_es.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Name=Nombre +Last\ Active=Actividad Reciente +On=En +All\ People=Todos +People=Actividad + +User\ ID=Nombre de Usario +blurb=Incluye todos los "usuarios" conocidos, incluyendo las identidades de acceso que se pueden enumerar en el dominio de seguridad actual, así como las personas mencionadas en los mensajes de confirmación en los registros de cambios registrados. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_es_AR.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_es_AR.properties new file mode 100644 index 0000000..db524a5 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_es_AR.properties @@ -0,0 +1,6 @@ +# This file is under the MIT License by authors + +Last\ Active=último activo +Name=Nombre +People=Personas +User\ ID=ID del usuario diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_et.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_et.properties new file mode 100644 index 0000000..1b69349 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_et.properties @@ -0,0 +1,4 @@ +# This file is under the MIT License by authors + +Name=Nimi +People=Inimesed diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_fi.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_fi.properties new file mode 100644 index 0000000..c48ca62 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_fi.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Last\ Active=Viimeksi Aktiivisena +Name=Nimi +On=Viimeksi Aktiivinen Työ +People=Käyttäjät +User\ ID=Käyttäjätunnus diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_fr.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_fr.properties new file mode 100644 index 0000000..3948f05 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_fr.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Eric Lefevre-Ardant +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Name=Nom complet +All\ People=Tout le monde +Last\ Commit\ Activity=Dernière activité de commit +On=Sur +People=Utilisateurs +User\ ID=Identifiant +blurb=Inclus tout les utilisateurs connus, ce qui comprend les login que le domaine de sécurité (security realm) actuel peut énumérer, ainsi que les personnes mentionné(e)s dans les message de commit reliés au changelogs. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_hu.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_hu.properties new file mode 100644 index 0000000..339ce0c --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_hu.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +All\ People=Minden Felhasználó +Last\ Active=Utolsó aktivitás +Name=Név +On=Ebben +People=Emberek +User\ ID=Felhasználó azonosító diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_it.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_it.properties new file mode 100644 index 0000000..75fc513 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_it.properties @@ -0,0 +1,32 @@ +# The MIT License +# +# Italian localization plugin for Jenkins +# Copyright © 2020 Alessandro Menti +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +All\ People=Tutte le persone +blurb=Include tutti gli "utenti" noti, incluse le identità di accesso \ + enumerabili dall''area di autenticazione corrente, così come le persone \ + menzionate nei messaggi di commit nei log delle modifiche registrati. +Last\ Commit\ Activity=Ultima attività di commit +Name=Nome +On=Il +People=Persone +User\ ID=ID utente diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ja.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ja.properties new file mode 100644 index 0000000..f1f1830 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ja.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc., Kohsuke Kawaguchi, id:cactusman, Seiji Sogabe +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +User\ ID=ユーザーID +Name=名前 +Last\ Active=最近の活動 +On=場所 +People=開発者 +All\ People=すべて diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ko.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ko.properties new file mode 100644 index 0000000..7225f74 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ko.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Last\ Active=마지막 활동사항 +Name=이름 +On=접속 중 +People=사용자 diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_lt.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_lt.properties new file mode 100644 index 0000000..e06e635 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_lt.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +All\ People=Visi vartotojai +Last\ Active=Paskutiniai Veiksmai +Name=Vardas +People=Vartotojai +User\ ID=Slapyvardis diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_lv.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_lv.properties new file mode 100644 index 0000000..1536d56 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_lv.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +All\ People=Visi cilvēki +Last\ Active=Pedējā aktivitāte +Name=Vārds +On=Uz +People=Cilvēki +User\ ID=Lietotāja identifikators diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_nb_NO.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_nb_NO.properties new file mode 100644 index 0000000..a7af7e7 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_nb_NO.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Last\ Active=Sist aktiv +Name=Navn +On=På +People=Folk +User\ ID=Bruker Id diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_nl.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_nl.properties new file mode 100644 index 0000000..3c17f0f --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_nl.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, id:sorokh +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Name=Naam +All\ People=Iedereen +Last\ Active=Laatst actief +On= +People=Mensen +User\ ID=Id gebruiker +blurb=Dit zijn alle bekende “gebruikers”, inclusief geregistreerde inloggers, plus alle mensen genoemd in wijzingings logboeken die wijzinging hebben gedaan. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pl.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pl.properties new file mode 100644 index 0000000..48e1674 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pl.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Copyright (c) 2004-2019, Kohsuke Kawaguchi, Sun Microsystems, Inc., and a number of other of contributors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Name=Nazwa +On=Na +People=Użytkownicy +User\ ID=Identyfikator użytkownika +Last\ Commit\ Activity=Ostatnia zmiana +blurb=Prezentuje wszystkich uwierzytelnionych użytkowników włącznie z identyfikatorem oraz osoby wymienione w opisach zarejestrowanych zmian. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pt_BR.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pt_BR.properties new file mode 100644 index 0000000..98a0c2a --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pt_BR.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Reginaldo L. Russinholi, Cleiber Silva, Fernando Boaglio +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Name=Nome +On=Em +People=Pessoas +All\ People=Todas as pessoas +User\ ID=ID do usuário +blurb=Inclui todos os "usuários" conhecidos, incluindo identidades de usuários as quais o domínio de segurança consegue enumerar, assim como pessoas mencionadas nas mensagens de confirmação nos registros de mudanças gravados. +Last\ Commit\ Activity=Última\ atividade\ de\ confirmação diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pt_PT.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pt_PT.properties new file mode 100644 index 0000000..6594baa --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_pt_PT.properties @@ -0,0 +1,7 @@ +# This file is under the MIT License by authors + +Last\ Active=Ultima Actividade +Name=Nome +On=Ligado +People=Pessoas +User\ ID=Id do Utilizado diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ro.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ro.properties new file mode 100644 index 0000000..ef46912 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ro.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Last\ Active=Activ ultima oară +Name=Nume +On=Pe +People=Contribuitori +User\ ID=Id utilizator diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ru.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ru.properties new file mode 100644 index 0000000..260b37f --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_ru.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Mike Salnikov +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Name=Имя +All\ People=Все пользователи +Last\ Commit\ Activity=Последняя активность +On=Проект +People=Пользователи +User\ Id=Пользователь +blurb=Таблица включает всех известных Jenkins пользователей, включая всех пользователей, которых текущая система аутентификации может перечислить, так же здесь присутствуют все пользователи, упомянутые в сообщениях коммитов в записанных логах изменений. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_sr.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_sr.properties new file mode 100644 index 0000000..3e082c6 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_sr.properties @@ -0,0 +1,9 @@ +# This file is under the MIT License by authors + +People=Корисници +blurb=Табела свих Jenkins корисника, укључујући све кориснике којe систем аутентификације може навести, и корисници наведени у комит-порукама евидентирани у дневникама промена. +User\ ID=Идентификациони број +Name=Име +Last\ Commit\ Activity=Задње активан +On=на +All\ People=Сви корисници diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_sv_SE.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_sv_SE.properties new file mode 100644 index 0000000..dd77a89 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_sv_SE.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +All\ People=Alla Personer +Last\ Active=Senast aktiv +Name=Namn +On=På +People=Personer +User\ ID=Användar-ID +blurb=Alla kända "användare", inklusive identiteter som det aktuella säkerhetsområdet kan numrera samt personer nämnda i kommit-meddelanden i sparade förändringsloggar. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_tr.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_tr.properties new file mode 100644 index 0000000..df2c872 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_tr.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Oguz Dag +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Name=İsim +Last\ Active=Son Aktif +On=Açık +People=Kişiler +User\ ID=Kullanıcı adı diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_uk.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_uk.properties new file mode 100644 index 0000000..64018f4 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_uk.properties @@ -0,0 +1,7 @@ +# This file is under the MIT License by authors + +Last\ Active=Час останньої активності +Name=Ім’я +On=Проект +People=Люди +User\ ID=Логін diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_zh_TW.properties b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_zh_TW.properties new file mode 100644 index 0000000..6e1cf02 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/index_zh_TW.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Copyright (c) 2004-2013, Sun Microsystems, Inc., Chunghwa Telecom Co., Ltd., +# and Pei-Tang Huang +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. +blurb=包含所有已知的「使用者」,涵蓋目前的安全領域可列舉的登入身份,以及變更記錄中提交訊息裡提到的人員。 +People=人員 +User\ ID=使用者 ID +Name=名稱 +Last\ Active=最近一次活動 +On=於 +All\ People=所有人員 +Last\ Commit\ Activity=最後提交動態 diff --git a/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/people-resources.js b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/people-resources.js new file mode 100644 index 0000000..05a000c --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/AsynchPeople/people-resources.js @@ -0,0 +1,57 @@ +window.display = function (data) { + var p = document.getElementById("people"); + p.style.display = ""; + var rootURL = document.head.getAttribute("data-rooturl"); + for (var x = 0; data.length > x; x++) { + var e = data[x]; + var id = "person-" + e.id; + var r = document.getElementById(id); + if (r == null) { + r = document.createElement("tr"); + r.id = id; + p.appendChild(r); + } else { + while (r.firstChild) { + r.removeChild(r.firstChild); + } + } + + var d = document.createElement("td"); + var wrapper = document.createElement("div"); + wrapper.className = "jenkins-table__cell__button-wrapper"; + d.className = "jenkins-table__cell--tight jenkins-table__icon"; + var icon = document.getElementById("person-circle"); + wrapper.innerHTML = icon.children[0].outerHTML; + d.appendChild(wrapper); + r.appendChild(d); + + d = document.createElement("td"); + var a = document.createElement("a"); + a.href = rootURL + "/" + e.url; + a.className = "jenkins-table__link"; + a.appendChild(document.createTextNode(e.id)); + d.appendChild(a); + r.appendChild(d); + + d = document.createElement("td"); + d.appendChild(document.createTextNode(e.fullName)); + r.appendChild(d); + + d = document.createElement("td"); + d.setAttribute("data", e.timeSortKey); + d.appendChild(document.createTextNode(e.lastChangeTimeString)); + r.appendChild(d); + + d = document.createElement("td"); + if (e.projectUrl != null) { + a = document.createElement("a"); + a.href = rootURL + "/" + e.projectUrl; + a.className = "jenkins-table__link model-link inside"; + a.appendChild(document.createTextNode(e.projectFullDisplayName)); + d.appendChild(a); + } + r.appendChild(d); + + ts_refresh(p); + } +}; diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index.jelly b/src/main/resources/io/jenkins/plugins/peopleview/People/index.jelly new file mode 100644 index 0000000..db37b2c --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index.jelly @@ -0,0 +1,37 @@ + + + + + + + + +

${%People}

+

+ ${%Moved to asyncPeople} +

+
+
+
diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index.properties new file mode 100644 index 0000000..be57243 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index.properties @@ -0,0 +1,23 @@ +# The MIT License +# +# Copyright 2014 Harald Albers +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Moved\ to\ asyncPeople=Moved to asynchPeople for performance reasons. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_bg.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_bg.properties new file mode 100644 index 0000000..fb5a0f3 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +People=\ + Потребители +# Moved to asynchPeople for performance reasons. +Moved\ to\ asyncPeople=\ + Преместено в Асинхронни операции върху\ + потребителите за по-добра производителност. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_ca.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_ca.properties new file mode 100644 index 0000000..fda0793 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_ca.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Usuaris diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_cs.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_cs.properties new file mode 100644 index 0000000..410915d --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_cs.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Lidé diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_de.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_de.properties new file mode 100644 index 0000000..08d87a2 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_de.properties @@ -0,0 +1,4 @@ +# This file is under the MIT License by authors + +People=Benutzer +Moved\ to\ asyncPeople=Aus Performancegründen nach asynchPeople verlegt. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_es.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_es.properties new file mode 100644 index 0000000..dea299d --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_es.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Actividad diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_es_AR.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_es_AR.properties new file mode 100644 index 0000000..ffab088 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_es_AR.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Personas diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_et.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_et.properties new file mode 100644 index 0000000..4b75f2f --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_et.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Inimesed diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_fr.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_fr.properties new file mode 100644 index 0000000..04e0a5b --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_fr.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Utilisateurs diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_he.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_he.properties new file mode 100644 index 0000000..d771d8a --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_he.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=אנשים diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_hu.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_hu.properties new file mode 100644 index 0000000..1262a51 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_hu.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Emberek diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_it.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_it.properties new file mode 100644 index 0000000..64e82f2 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_it.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Italian localization plugin for Jenkins +# Copyright © 2020 Alessandro Menti +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +Moved\ to\ asyncPeople=Spostato in \ + asynchPeople per motivi prestazionali. +People=Persone diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_ja.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_ja.properties new file mode 100644 index 0000000..ad2ac98 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_ja.properties @@ -0,0 +1,23 @@ +# The MIT License +# +# Copyright (c) 2012, Seiji Sogabe +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +People=開発者 diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_lt.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_lt.properties new file mode 100644 index 0000000..4268d35 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_lt.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Naudotojai diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_nb_NO.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_nb_NO.properties new file mode 100644 index 0000000..9fe41a3 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_nb_NO.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Personer diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_nl.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_nl.properties new file mode 100644 index 0000000..f58df72 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_nl.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Mensen diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_pl.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_pl.properties new file mode 100644 index 0000000..241f5f3 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_pl.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Osoby diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_pt_BR.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_pt_BR.properties new file mode 100644 index 0000000..fa61837 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_pt_BR.properties @@ -0,0 +1,25 @@ +# The MIT License +# +# Copyright (c) 2004-, Kohsuke Kawaguchi, Sun Microsystems, Inc., and a number of other of contributers +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +People=Pessoas +# Moved to asynchPeople for performance reasons. +Moved\ to\ asyncPeople=Movido para carregamento assíncrono por uma questão de performance. diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_pt_PT.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_pt_PT.properties new file mode 100644 index 0000000..04b1e54 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_pt_PT.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Pessoal diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_ro.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_ro.properties new file mode 100644 index 0000000..27e3e78 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_ro.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Contribuitori diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_ru.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_ru.properties new file mode 100644 index 0000000..b673262 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_ru.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Пользователи diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_sl.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_sl.properties new file mode 100644 index 0000000..45a539b --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_sl.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Uporabniki diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_sr.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_sr.properties new file mode 100644 index 0000000..e2ebac6 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_sr.properties @@ -0,0 +1,4 @@ +# This file is under the MIT License by authors + +People=Корисници +Moved\ to\ asyncPeople=Премешћено на asyncPeople diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_tr.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_tr.properties new file mode 100644 index 0000000..db234bd --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_tr.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Kişiler diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_uk.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_uk.properties new file mode 100644 index 0000000..d9c0e5f --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_uk.properties @@ -0,0 +1,3 @@ +# This file is under the MIT License by authors + +People=Люди diff --git a/src/main/resources/io/jenkins/plugins/peopleview/People/index_zh_TW.properties b/src/main/resources/io/jenkins/plugins/peopleview/People/index_zh_TW.properties new file mode 100644 index 0000000..dd14872 --- /dev/null +++ b/src/main/resources/io/jenkins/plugins/peopleview/People/index_zh_TW.properties @@ -0,0 +1,23 @@ +# The MIT License +# +# Copyright 2014 Harald Albers +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. +Moved\ to\ asyncPeople=因為效能因素,已移動到 asynchPeople。 +People=人員 diff --git a/src/test/java/io/jenkins/plugins/peopleview/AsynchPeopleTest.java b/src/test/java/io/jenkins/plugins/peopleview/AsynchPeopleTest.java new file mode 100644 index 0000000..2ff9bb0 --- /dev/null +++ b/src/test/java/io/jenkins/plugins/peopleview/AsynchPeopleTest.java @@ -0,0 +1,64 @@ +/* + * The MIT License + * + * Copyright 2013 Jesse Glick. + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +package io.jenkins.plugins.peopleview; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import hudson.model.User; +import org.htmlunit.html.DomElement; +import org.htmlunit.html.HtmlPage; +import org.junit.Rule; +import org.junit.Test; +import org.jvnet.hudson.test.For; +import org.jvnet.hudson.test.Issue; +import org.jvnet.hudson.test.JenkinsRule; + +@For(AsynchPeople.class) +public class AsynchPeopleTest { + + @Rule public JenkinsRule j = new JenkinsRule(); + + @Issue("JENKINS-18641") + @Test public void display() throws Exception { + User.getById("bob", true); + JenkinsRule.WebClient wc = j.createWebClient(); + + HtmlPage page = wc.goTo("asynchPeople"); + assertEquals(0, wc.waitForBackgroundJavaScript(120000)); + boolean found = false; + for (DomElement div : page.getElementsByTagName("div")) { + if (div.getAttribute("class").contains("app-progress-bar")) { + found = true; + assertEquals("display: none;", div.getAttribute("style")); + break; + } + } + assertTrue(found); + /* TODO this still fails occasionally, for reasons TBD (I think because User.getAll sometimes is empty): + assertNotNull(page.getElementById("person-bob")); + */ + } + +}