Copyright (c) Perforce Software, Inc., 1997-2010. All rights reserved Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PERFORCE SOFTWARE, INC. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. User contributed content on the Perforce Public Depot is not supported by Perforce, although it may be supported by its author. This applies to all contributions even those submitted by Perforce employees. OVERVIEW ------------------------------------------------------------------------------- This project contains a P4V applet that presents a list of pending integrations for each branch spec owned by the current user. The applet uses the P4JsApi framework introduced in the 2010.1 beta release. The applet normally shows only the first line of the branch view, but the full branch view is available as a tool-tip. The user can filter the displayed branches based on user or branch name, and can specify the maximum number of branches and files to display. Also included is a simple documentation applet. It displays links to current Perforce product documentation. Pending merges are also shown as a list of changelists. Fixed jobs for each changelist are shown as links. Clicking on a job starts a 'promote by job' routine that tries to selectively integrate each changelist fixed by a job, in order. Integrated files are left checked out in the default changelist for resolve and review. MANIFEST ------------------------------------------------------------------------------- README.txt This file applets.css CSS file for applets screen_shot.png Screen shot of 'Pending Integrations' tab in P4V protect.txt Snippet of protections table, showing how to enable centralsettings centralsettings.js Example central settings file, showing how to enable the 'Pending Integrations' tab interchanges.html Integ preview applet HTML file p4docs.html Applet HTML for doc links p4docs.png Screenshot of documentation applet INSTALLATION ------------------------------------------------------------------------------- Refer to the P4JsApi guide (http://www.perforce.com/perforce/r10.1/manuals/p4jsapi/p4jsapi.pdf) for more details. Note that this applet now requires a 2011.1+ version of P4V. 1. Customize the example interchanges.html file to taste, then check in. 2. Create and check in a central settings file. Use the centralsettings.js file in this project as a template. Make sure the depot path for interchanges.html specified in centralsettings.js matches the actual depot path. 3. Enable the centralsettings file for the appropriate users or groups. For example, to enable it for a group called BranchCurators.G, add a protections entry like: list group BranchCurators.G centralsettings //depot/jsapi/centralsettings.js This entry assumes that your central settings file lives at //depot/jsapi/centralsettings.js. 4. To use the applet in P4V, follow the instructions in the P4JsApi guide for enabling applets in P4V. Then, restart P4V and select 'Pending Integrations' from the View menu. The applet will appear as a tab in P4V. FUTURE ENHANCEMENTS ------------------------------------------------------------------------------- - Optionally provide hyperlinks to a P4Web instance.