Are some options missing from my team area view? - rtc

When I open my 'Team Area' in rtc I just have 'Overview' & 'Links' tabs :
But reading accepted answer for this question :
Restrict user access at component level within a stream
there are more options available for updating a team area ?
Does my rtc setup need to be configured so these options are viewable ?

No need to modify your RTC setup:
A Team area will by default inherit its process configuration from the parent area (team or project).
You need to click on the section "Process: inherited" (once unfolded, it reads "Process Customization").
You will see a link "Customize the process".
Clicking on it will git you access to the other tabs:
Process Customization
Process Customization Source
The Process Customization section on a Team Area with those tabs will look like:

Related

Login screen for a Ext JS 4.0.7 application

I've developed an Ext JS 4.0.7 app for my company. It has various modules for different team's needs. Now, the company want to make sure only relevant people have access to relevant modules in an app. It's an ERP application which has CRM, MRP, Engineering, HR and Finance modules. Now, respective team members should have access to respective menus and pages and super admin will have access to everything.
I know how to control the menus based on user login. But not sure how to integrate user login screen into my app. I know basics of Ext JS and able to design a Login screen using form panel ...... but not sure how to make it as my app's first screen and upon successful login, let the user in and able to logout from there.
If anyone already developed such functionality, i request to share the solution here. Any pointers or code snippets will be a great help.
Thanks very much in advance.
My application has a header (company logo and app title - horizontal on north) and left menu and content panel.
So, here is how login/logout screen implemented.
When app is loaded, when viewport is loaded, on render, I load menu store and load 'Login' and 'Change Password' menu items in them.
When user enters login/pwd, via ajax call , will call servlet and process login data. Upon login successful, based on user role, respective menu json built in server side and menu store is loaded with this json. This json has 'Logout' menu by default. So, when user logs out, will load Login screen in content panel.
Not sure whether any other best ways to implement the same. But this is working well.

Cumulocity plugin subscription

I would like to know which plugins to subscribe to with my app to be able to have a "Home" tab with the possibility to add widgets on it. So far I tried adding the following:
SCADA Widget (core)
Cockpit Home (cockpit)
Dashboard (cockpit)
Dashboard (core)
As a result a have a home tab with an add widget button as I wanted, however nothing happens when I click on it.
Your list of plugins needed is complete (of course default "Branding: Cumulocity (core)" is also needed). The issue is rather related to other settings of your application.

How to set visibility on a component in RTC source control

The visibility of a component within a stream is 'Project Scoped', this is the view I see when I double click the component from within the stream :
I would like it to be 'Team Private' as 'Project Scoped' means this component is visible just to the team ?
On the stream this component belongs to I have set the 'visibility' to a team area, does this mean that just members of the team will be able to view this component even though at the component level the visibility is 'Project Scoped' ?
When I attempt to 'change' the visibility of this component by clicking 'change' button (in above screenshot) this is the error I receive :
How can I change the visibility to 'Team Private' ?
Update : To change the visibility :
1. expanded the stream tree within 'Team Artifacts'
2. right click the component
3. click 'Change Owner'
4. Change to team that this component is to be private to and ensure 'Restrict to members of this team area and its child team areas'
Following these steps the visibility changed to 'Team Private'
However, changing the component visibility via opening the stream and updating same component from within the stream does not change the 'Visibility' . I think this is RTC inconsistency ?
All the access management possibilities are explained in "Controlling access to source control in Rational Team Control".
The "Read protect some components but give public access to others" is close to what you are looking for.
But you can also protect at the folder level for a specific team area.
Prior to RTC 40, there was no access control on the folder or file level in the repository so keep this in mind when laying out your file system with certain documents that should be hidden. Access control at the file and folder level was added in RTC 4.0.
Regarding the "scoped" notion:
For components owned by the project area, its access is scoped the same way the project area is.
(so only the member of the project area can see/access it)
For components owned by an individual user, the owner can specify how it is scoped.
That is why you get the:
You cannot change the access control on components owned by project area and team area.
They inherit their access control settings from a project area or team area.
You need a component owned by a user in order to change its visibility.

Why is 'Components' tree structure empty - RTC source control

In RTC source control when I expand the Team Area I have this view :
I can see the stream and its components. What decides if components should appear in Components folder ? As can be seen in screenshot this is currently empty. For other developers this is populated with components even though they cannot see the streams ?
You see all components that are visible to you.
In other words, it depends on the ownership for each component.
Any component owned by the project area or your Team Area would be displayed in the Component section.
Any component owned by a single resource (a member of the RTC project area) or another Team Area (that you aren't part of) won't be displayed there.
The same would apply for the streams: check the owner of those streams to understand why a resource doesn't see it.
Whats the point of hiding a stream if the components themselves are not hidden ?
The point (in hiding Stream even though it doesn't hide component) is preventing users to deliver to that stream: they can still work on the same set of component (visible because of the right ownership), but they can no longer see (and deliver to) a given Stream.

How can I add a menu of local Trac projects to templates/site.html?

I have multiple Trac projects with different environments on the same server. I would like to have a list of links to all projects at the top of each project page so I can quickly switch between them with out having to go up to the top level list at /projects/.
The ideal solution would:
not require loading all the Trac environments on every page load.
update automatically when a new project is added.
only require editing the config and/or templates or add a plugin.
work for Trac 0.11.
The NavAddPluggin allows the main trac navigation bar to be customized. You could add menu options for each trac of your projects. To add a new menu item the following is added to the trac.ini file.
[navadd]
add_items = project1
project1.target = mainnav
project1.title = Project One
project1.url = http://webserver/trac_project_1
To sort the order edit the mainnav option in the trac.ini
mainnav = project1,wiki,timeline,roadmap,browser,tickets,newticket,search
To answer the question of how to add a meny using site.html, here is a very basic top header to get you started - paste into the site.html placeholder:
<!--! A top header -->
<py:match path="body" once="True">
<body py:attrs="select('#*')">
<div id="top">
<a py:if="req.href() != '/one'" href="/one">one</a>
<a py:if="req.href() != '/two'" href="/two">two</a>
<a py:if="req.href() != '/three'" href="/three">three</a>
</div>
${select('*|comment()|text()')}
</body>
</py:match>
The example uses very simple logic and just hides the current project . You may want to do it differently, typically using highlighting or similar.
See Trac Layout Recipe for an advanced example. This is the layout in use at edgewall.org to switch between the various projects (Trac, Genshi, Babel, Bitten).
The method described by sudo_o is probably your best bet. It will give you something that is very well integrated into the Trac interface.
However, I wanted to mention a quick-n-dirty alternative that you may find useful. You can configure the logo in the upper-left corner of every Trac page to link to a specific page when clicked. Many Trac installations use this to link back to the start page. The link is configurable, however, and you can make it point to your project listing page. In your trac.ini file:
[header_logo]
src = site/your_logo.png
link = /url/to/projects/page
alt = Click to load projects listing
This method gives you easy access to your projects listing, and doesn't require adding any extra entries to your Trac menus. When you add or remove projects, you don't have to modify every trac.ini file to update the links. The downsides are that it takes an extra click to get to another project and that some users might not find this method as intuitive (setting the alt property helps with this a little).