| // Copyright 2012 Google Inc. All Rights Reserved. |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| {namespace com.google.gitiles.templates.PathDetail} |
| |
| import * as common from 'com/google/gitiles/templates/Common.soy'; |
| import * as objDetail from 'com/google/gitiles/templates/ObjectDetail.soy'; |
| |
| /** |
| * Detail page for a path within a tree. |
| */ |
| {template pathDetail stricthtml="false"} |
| {@param title: ?} /** human-readable name of this path. */ |
| {@param repositoryName: ?} /** name of this repository. */ |
| {@param? menuEntries: ?} /** menu entries. */ |
| {@param? customVariant: ?} /** variant name for custom styling. */ |
| {@param breadcrumbs: ?} /** breadcrumbs for this page. */ |
| {@param type: ?} /** path type, matching one of the constant names defined in |
| org.eclipse.jgit.lib.FileMode. */ |
| {@param data: ?} /** path data, matching the params for one of .treeDetail, .blobDetail, |
| .symlinkDetail, or .gitlinkDetail as appropriate. */ |
| {@inject staticUrls: ?} |
| {if $type == 'REGULAR_FILE' || $type == 'EXECUTABLE_FILE'} |
| {call common.header data="all"} |
| {param css: [$staticUrls.PRETTIFY_CSS_URL] /} |
| {/call} |
| {elseif $data.readmeHtml} |
| {call common.header data="all"} |
| {param css: [$staticUrls.DOC_CSS_URL, $staticUrls.PRETTIFY_CSS_URL] /} |
| {/call} |
| {else} |
| {call common.header data="all" /} |
| {/if} |
| |
| {switch $type} |
| {case 'TREE'} |
| {call objDetail.treeDetail data="$data" /} |
| {case 'SYMLINK'} |
| {call symlinkDetail data="$data" /} |
| {case 'REGULAR_FILE'} |
| {call objDetail.blobDetail data="$data" /} |
| {case 'EXECUTABLE_FILE'} |
| {call objDetail.blobDetail data="$data" /} |
| {case 'GITLINK'} |
| {call gitlinkDetail data="$data" /} |
| {default} |
| <div class="error"> |
| {msg desc="Error message for an unknown object type"}Object has unknown type.{/msg} |
| </div> |
| {/switch} |
| |
| {call common.footer} |
| {param customVariant: $customVariant /} |
| {/call} |
| {/template} |
| |
| /** |
| * Detail for a symbolic link. |
| */ |
| {template symlinkDetail} |
| {@param target: ?} /** target of this symlink. */ |
| {@param? targetUrl: ?} /** optional URL for the target, if it is within this repo. */ |
| <div class="symlink-detail"> |
| {msg desc="Lead-in text for the symbolic link target."}Symbolic link to{/msg} |
| {sp}{if $targetUrl}<a href="{$targetUrl}">{$target}</a>{else}{$target}{/if} |
| </div> |
| {/template} |
| |
| /** |
| * Detail for a git submodule link. |
| */ |
| {template gitlinkDetail} |
| {@param sha: ?} /** submodule commit SHA. */ |
| {@param remoteUrl: ?} /** URL of the remote repository. */ |
| {@param? httpUrl: ?} /** optional HTTP URL pointing to a web-browser-compatible URL of the remote |
| repository. */ |
| <div class="gitlink-detail"> |
| {msg desc="Lead-in text for the git link URL"}Submodule link to {$sha} of{/msg} |
| {if $remoteUrl} |
| {sp}{if $httpUrl}<a href="{$httpUrl}">{$remoteUrl}</a>{else}{$remoteUrl}{/if} |
| {else} |
| {sp}{msg desc="Text describing an unknown submodule URL"}a submodule with an unknown URL{/msg} |
| {/if} |
| </div> |
| {/template} |