Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,12 @@
})
public abstract class GWTPropertyDescriptorMixin
{
GWTPropertyDescriptorMixin(@JsonProperty("PHI") StringProperty phi, @JsonProperty("URL") StringProperty url)
GWTPropertyDescriptorMixin(@JsonProperty("PHI") StringProperty phi, @JsonProperty("URL") StringProperty url, @JsonProperty("URLTarget") StringProperty URLTarget)
{ }
@JsonProperty("PHI")
abstract void setPHI(String phi); // rename property on deserialize
@JsonProperty("URL")
abstract void setURL(String url); // rename property on deserialize
@JsonProperty("URLTarget")
abstract void setURLTarget(String urlTarget); // rename property on deserialize
}
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ public class GWTPropertyDescriptor implements IsSerializable
private final BooleanProperty mvEnabled = new BooleanProperty(false);
private final StringProperty importAliases = new StringProperty();
private final StringProperty url = new StringProperty();
private final StringProperty urlTarget = new StringProperty();
private final BooleanProperty shownInInsertView = new BooleanProperty(true);
private final BooleanProperty shownInUpdateView = new BooleanProperty(true);
private final BooleanProperty shownInDetailsView = new BooleanProperty(true);
Expand Down Expand Up @@ -137,6 +138,7 @@ public GWTPropertyDescriptor(GWTPropertyDescriptor s, boolean isNew)
setDefaultDisplayValue(s.getDefaultDisplayValue());
setImportAliases(s.getImportAliases());
setURL(s.getURL());
setURLTarget(s.getURLTarget());
setFacetingBehaviorType(s.getFacetingBehaviorType());
setPHI(s.getPHI());
setExcludeFromShifting(s.isExcludeFromShifting());
Expand Down Expand Up @@ -662,6 +664,16 @@ public void setURL(String url)
this.url.set(url);
}

public String getURLTarget()
{
return urlTarget.toString();
}

public void setURLTarget(String urlTarget)
{
this.urlTarget.set(urlTarget);
}

public String getLookupDescription()
{
if (StringUtils.isEmpty(getLookupSchema()) || StringUtils.isEmpty(getLookupQuery()))
Expand Down
1 change: 1 addition & 0 deletions api/schemas/expTypes.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -529,6 +529,7 @@
<xs:element name="SemanticType" type="string" minOccurs="0" maxOccurs="1"/>
<xs:element name="Format" type="string" minOccurs="0" maxOccurs="1"/>
<xs:element name="URL" type="string" minOccurs="0" maxOccurs="1"/>
<xs:element name="URLTarget" type="string" minOccurs="0" maxOccurs="1"/>
<xs:element name="FK" minOccurs="0">
<xs:annotation>
<xs:documentation>A structure that describes a foreign key relationship between a column in the current table and a target column in another table. </xs:documentation>
Expand Down
4 changes: 2 additions & 2 deletions api/src/org/labkey/api/data/AbstractWrappedColumnInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -566,9 +566,9 @@ public StringExpression getURL()
}

@Override
public String getURLTargetWindow()
public String getURLTarget()
{
return delegate.getURLTargetWindow();
return delegate.getURLTarget();
}

@Override
Expand Down
4 changes: 2 additions & 2 deletions api/src/org/labkey/api/data/BaseColumnInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -559,7 +559,7 @@ public void copyURLFrom(ColumnInfo col, @Nullable FieldKey parent, @Nullable Map
}
setURL(url);
}
setURLTargetWindow(col.getURLTargetWindow());
setURLTarget(col.getURLTarget());
setURLCls(col.getURLCls());
setOnClick(col.getOnClick());
}
Expand Down Expand Up @@ -1166,7 +1166,7 @@ public void loadFromXml(ColumnType xmlCol, boolean merge)
if (xmlCol.isSetUrl())
setURL(StringExpressionFactory.fromXML(xmlCol.getUrl(), false));
if (xmlCol.isSetUrlTarget())
setURLTargetWindow(xmlCol.getUrlTarget());
setURLTarget(xmlCol.getUrlTarget());
if (xmlCol.isSetIsAutoInc())
_isAutoIncrement = xmlCol.getIsAutoInc();
if (xmlCol.isSetHasDbSequence())
Expand Down
2 changes: 1 addition & 1 deletion api/src/org/labkey/api/data/ColumnRenderProperties.java
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ public interface ColumnRenderProperties extends ImportAliasable

StringExpression getURL();

String getURLTargetWindow();
String getURLTarget();

String getURLCls();

Expand Down
11 changes: 6 additions & 5 deletions api/src/org/labkey/api/data/ColumnRenderPropertiesImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ public abstract class ColumnRenderPropertiesImpl implements MutableColumnRenderP
protected boolean _shownInDetailsView = true;
protected boolean _shownInLookupView = false;
protected StringExpression _url;
protected String _urlTargetWindow;
protected String _urlTarget;
protected String _urlCls;
protected String _onClick;
// methods use Set<>, but I'm using a List<> here because it is simpler and more thread safe and explicitly preserves order
Expand Down Expand Up @@ -157,6 +157,7 @@ public void copyTo(ColumnRenderPropertiesImpl to)
to._recommendedVariable = _recommendedVariable;
to._defaultScale = _defaultScale;
to._url = _url;
to._urlTarget = _urlTarget;
to._importAliases = copyFixedList(_importAliases);
to._facetingBehaviorType = _facetingBehaviorType;
to._crosstabColumnMember = _crosstabColumnMember;
Expand Down Expand Up @@ -422,16 +423,16 @@ public void setURL(StringExpression url)
}

@Override
public String getURLTargetWindow()
public String getURLTarget()
{
return _urlTargetWindow;
return _urlTarget;
}

@Override
public void setURLTargetWindow(String urlTargetWindow)
public void setURLTarget(String urlTarget)
{
assert _checkLocked();
_urlTargetWindow = urlTargetWindow;
_urlTarget = urlTarget;
}

@Override
Expand Down
2 changes: 1 addition & 1 deletion api/src/org/labkey/api/data/DataColumn.java
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ public DataColumn(ColumnInfo col, boolean withLookups)
StringExpression url = withLookups ? _boundColumn.getEffectiveURL() : _boundColumn.getURL();
if (null != url)
super.setURLExpression(url);
setLinkTarget(_boundColumn.getURLTargetWindow());
setLinkTarget(_boundColumn.getURLTarget());
setLinkCls(_boundColumn.getURLCls());
setOnClick(_boundColumn.getOnClick());
setFormatString(_displayColumn.getFormat());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public interface MutableColumnRenderProperties extends ColumnRenderProperties, M

void setURL(StringExpression url);

void setURLTargetWindow(String urlTargetWindow);
void setURLTarget(String urlTarget);

void setURLCls(String urlCls);

Expand Down
11 changes: 9 additions & 2 deletions api/src/org/labkey/api/data/WrappedColumnInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -392,10 +392,17 @@ public StringExpression getURL()
}

@Override
public void setURLTargetWindow(String urlTargetWindow)
public void setURLTarget(String urlTarget)
{
checkLocked();
throw new UnsupportedOperationException();
delegate = new AbstractWrappedColumnInfo(delegate)
{
@Override
public String getURLTarget()
{
return urlTarget;
}
};
}

@Override
Expand Down
9 changes: 9 additions & 0 deletions api/src/org/labkey/api/exp/ImportTypesHelper.java
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,7 @@ else if (columnXml.isSetKeyVariable())
builder.setInputType(columnXml.isSetInputType() ? columnXml.getInputType() : null);
builder.setHidden(columnXml.getIsHidden());
builder.setUrl(columnXml.getUrl());
builder.setUrlTarget(columnXml.getUrlTarget());

builder.setValidators(ValidatorKind.convertFromXML(columnXml.getValidators()));
builder.setConditionalFormats(ConditionalFormat.convertFromXML(columnXml.getConditionalFormats()));
Expand Down Expand Up @@ -303,6 +304,7 @@ public static class Builder implements org.labkey.api.data.Builder<PropertyDescr
private String _description;
private String _format;
private StringExpression _url;
private String _urlTarget;
private String _importAliases;
private String _lookupContainer;
private String _lookupSchema;
Expand Down Expand Up @@ -376,6 +378,7 @@ public PropertyDescriptor build()
pd.setDescription(_description);
pd.setFormat(_format);
pd.setURL(_url);
pd.setURLTarget(_urlTarget);
pd.setImportAliases(_importAliases);
pd.setLookupContainer(_lookupContainer);
pd.setLookupSchema(_lookupSchema);
Expand Down Expand Up @@ -515,6 +518,12 @@ public Builder setUrl(StringExpressionType url)
return this;
}

public Builder setUrlTarget(String urlTarget)
{
_urlTarget = urlTarget;
return this;
}

public Builder setImportAliases(String importAliases)
{
_importAliases = importAliases;
Expand Down
3 changes: 2 additions & 1 deletion api/src/org/labkey/api/exp/OntologyManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -2659,7 +2659,7 @@ public static PropertyDescriptor insertOrUpdatePropertyDescriptor(PropertyDescri

static final String parameters = "propertyuri,name,description,rangeuri,concepturi,label," +
"format,container,project,lookupcontainer,lookupschema,lookupquery,defaultvaluetype,hidden," +
"mvenabled,importaliases,url,shownininsertview,showninupdateview,shownindetailsview,measure,dimension,scale," +
"mvenabled,importaliases,url,urltarget,shownininsertview,showninupdateview,shownindetailsview,measure,dimension,scale," +
"sourceontology,conceptimportcolumn,conceptlabelcolumn,principalconceptcode,conceptsubtree," +
"recommendedvariable,derivationdatascope,storagecolumnname,facetingbehaviortype,phi,redactedText," +
"excludefromshifting,mvindicatorstoragecolumnname,defaultscale,scannable";
Expand Down Expand Up @@ -3029,6 +3029,7 @@ public static void updateDomainPropertyFromDescriptor(DomainProperty p, Property
// don't setContainer
p.setDescription(pd.getDescription());
p.setURL((pd.getURL() != null) ? pd.getURL().toString() : null);
p.setURLTarget(pd.getURLTarget());
p.setImportAliasSet(ColumnRenderPropertiesImpl.convertToSet(pd.getImportAliases()));
p.setRequired(pd.isRequired());
p.setHidden(pd.isHidden());
Expand Down
2 changes: 2 additions & 0 deletions api/src/org/labkey/api/exp/property/DomainProperty.java
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,8 @@ public interface DomainProperty extends ImportAliasable, MutableColumnConceptPro
void setImportAliasSet(Set<String> aliases);
void setURL(String url);
String getURL();
void setURLTarget(String urlTarget);
String getURLTarget();

DefaultValueType getDefaultValueTypeEnum();
void setDefaultValueTypeEnum(DefaultValueType defaultValueType);
Expand Down
3 changes: 3 additions & 0 deletions api/src/org/labkey/api/exp/property/DomainUtil.java
Original file line number Diff line number Diff line change
Expand Up @@ -524,6 +524,7 @@ public static GWTPropertyDescriptor getPropertyDescriptor(PropertyDescriptor pro
gwtProp.setImportAliases(prop.getImportAliases());
StringExpression url = prop.getURL();
gwtProp.setURL(url == null ? null : url.toString());
gwtProp.setURLTarget(prop.getURLTarget());
gwtProp.setScale(prop.getScale());
gwtProp.setRedactedText(prop.getRedactedText());
gwtProp.setPrincipalConceptCode(prop.getPrincipalConceptCode());
Expand Down Expand Up @@ -616,6 +617,8 @@ public static GWTPropertyDescriptor getPropertyDescriptor(ColumnType columnXml)
// TODO: Include null value behavior
if (columnXml.isSetUrl())
gwtProp.setURL(columnXml.getUrl().getStringValue());
if (columnXml.isSetUrlTarget())
gwtProp.setURLTarget(columnXml.getUrlTarget());
if (columnXml.isSetShownInInsertView())
gwtProp.setShownInInsertView(columnXml.getShownInInsertView());
if (columnXml.isSetShownInUpdateView())
Expand Down
2 changes: 2 additions & 0 deletions api/src/org/labkey/api/query/MetadataColumnJSON.java
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,8 @@ public Map<String, Object> getAuditRecordMap()
map.put("Format", getFormat());
if (!StringUtils.isEmpty(getURL()))
map.put("URL", getURL());
if (!StringUtils.isEmpty(getURLTarget()))
map.put("URLTarget", getURLTarget());
if (!StringUtils.isEmpty(getPHI()))
map.put("PHI", getPHI());
if (!StringUtils.isEmpty(getDefaultScale()))
Expand Down
8 changes: 4 additions & 4 deletions assay/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion assay/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"clean": "rimraf resources/web/assay/gen && rimraf resources/views/gen && rimraf resources/web/gen"
},
"dependencies": {
"@labkey/components": "7.3.2"
"@labkey/components": "7.7.3-fb-urlTargetWindow503.0"
},
"devDependencies": {
"@labkey/build": "8.7.0",
Expand Down
8 changes: 4 additions & 4 deletions core/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
}
},
"dependencies": {
"@labkey/components": "7.3.2",
"@labkey/components": "7.7.3-fb-urlTargetWindow503.0",
"@labkey/themes": "1.5.0"
},
"devDependencies": {
Expand Down
8 changes: 4 additions & 4 deletions core/src/org/labkey/core/query/ModulesTableInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ public void addColumns()
var nameCol = addWrapColumn(getRealTable().getColumn("Name"));
nameCol.setKeyField(true);
nameCol.setURL(new StringExpressionFactory.URLStringExpression("${URL}"));
nameCol.setURLTargetWindow("_blank");
nameCol.setURLTarget("_blank");

addTextColumn("ReleaseVersion").setScale(255);
var schemaVersionColumn = addWrapColumn(getRealTable().getColumn("SchemaVersion"));
Expand All @@ -88,19 +88,19 @@ public void addColumns()

addTextColumn("Label").setScale(255);
addTextColumn("Description").setScale(4000);
addTextColumn("URL").setURLTargetWindow("_blank");
addTextColumn("URL").setURLTarget("_blank");
addTextColumn("Author");
addTextColumn("Maintainer");
addColumn("ManageVersion", JdbcType.BOOLEAN);

var orgCol = addTextColumn("Organization");
orgCol.setURL(StringExpressionFactory.createURL("${OrganizationURL}"));
orgCol.setURLTargetWindow("_blank");
orgCol.setURLTarget("_blank");
addTextColumn("OrganizationURL").setHidden(true);

var licenseCol = addTextColumn("License");
licenseCol.setURL(StringExpressionFactory.createURL("${LicenseURL}"));
licenseCol.setURLTargetWindow("_blank");
licenseCol.setURLTarget("_blank");
addTextColumn("ActiveFolders").setDisplayColumnFactory(new ExpandableTextDisplayColumnFactory());
addTextColumn("LicenseURL").setHidden(true);
addTextColumn("VcsRevision");
Expand Down
8 changes: 4 additions & 4 deletions experiment/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion experiment/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"test-integration": "cross-env NODE_ENV=test jest --ci --runInBand -c test/js/jest.config.integration.js"
},
"dependencies": {
"@labkey/components": "7.3.2"
"@labkey/components": "7.7.3-fb-urlTargetWindow503.0"
},
"devDependencies": {
"@labkey/build": "8.7.0",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ALTER TABLE exp.PropertyDescriptor ADD COLUMN URLTarget VARCHAR(10) NULL;
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ALTER TABLE exp.PropertyDescriptor ADD URLTarget NVARCHAR(10) NULL;
1 change: 1 addition & 0 deletions experiment/resources/schemas/exp.xml
Original file line number Diff line number Diff line change
Expand Up @@ -524,6 +524,7 @@
<column columnName="DefaultValueType"/>
<column columnName="ImportAliases"/>
<column columnName="URL"/>
<column columnName="URLTarget"/>
<column columnName="ShownInInsertView"/>
<column columnName="ShownInUpdateView"/>
<column columnName="ShownInDetailsView"/>
Expand Down
Loading