Subversion Repositories SmartDukaan

Rev

Rev 210 | Rev 213 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

<!DOCTYPE html PUBLIC 
    "-//W3C//DTD XHTML 1.1 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Edit Slide - $action.getNewCurrentSlideDefinitionID()</title>
<link type="text/css" href="../jquery/jqueryui/themes/ui-lightness/jquery.ui.all.css" rel="stylesheet" />

<style>

* { font-family: Verdana; font-size: 96%; }
label { width: 10em; float: left; }
label.error { float: none; color: red; padding-left: .5em; vertical-align: top; }
p { clear: both; }
.submit { margin-left: 12em; }
em { font-weight: bold; padding-right: 1em; vertical-align: top; }

a.selected {
  background-color:#1F75CC;
  color:white;
  z-index:100;
}

.pop {
  background-color:#FFFFFF;
  border:1px solid #999999;
  cursor:default;
  display:none;
  margin-top: 15px;
  position:absolute;
  text-align:left;
  width:394px;
  z-index:50;
  padding: 25px 25px 20px;
}

label {
  display: block;
  margin-bottom: 3px;
  padding-left: 15px;
  text-indent: -15px;
}

.pop p, .pop.div {
  border-bottom: 1px solid #EFEFEF;
  margin: 8px 0;
  padding-bottom: 8px;
}
</style>

<script type="text/javascript" src="../jquery/jquery-1.4.2.js"></script>
<script type="text/javascript" src="../jquery/jqueryui/ui/jquery.ui.core.js"></script>
<script type="text/javascript" src="../jquery/jqueryui/ui/jquery.ui.widget.js"></script>
<script type="text/javascript" src="../jquery/jqueryui/ui/jquery.ui.position.js"></script>
<script type="text/javascript" src="../jquery/jqueryui/ui/jquery.ui.autocomplete.js"></script>
<script type="text/javascript" src="../jquery/jqueryui/ui/jquery.ui.dialog.js"></script>
<script type="text/javascript" src="../jquery/validation/jquery.validate.js"></script>

#set ($expslideDef = $action.getExpandedSlideDefinition())
#set ($expslide = $action.getExpandedSlide())
#set ($expSlideFeatureDefs = $expslideDef.getExpandedSlideFeatureDefinitions())

<script>

$(document).ready(function() {
    $('.cancelbutton').click(function(e) {
        window.location.href = '/content/entity';
    });
#if ($expSlideFeatureDefs)
#foreach ($expSlideFeatureDef in $expSlideFeatureDefs)
#set ($expFeatureDef = $expSlideFeatureDef.getExpandedFeatureDefinition())
#set ($featureDefID = $expFeatureDef.getID())
#set ($expBulletDef = $expFeatureDef.getExpandedBulletDefinition())
#if ($expBulletDef.isLearned() && $expBulletDef.isMultivalue()) 
    $('#${featureDefID}_add').click(function(e) {
        //alert($('#${featureDefID}_helper').val());
        $('#${featureDefID}').append('<option>' + $('#${featureDefID}_helper').val() + '</option>');
    });
#end
#end
#end

    $("#editSlideform").validate();
});

$(function() {

    $("#slide_fft_link").click(function(event) {
        $(this).addClass("selected").parent().append($('#slide_fft_controls'));
        $("#slide_fft_controls").slideFadeToggle()
        $("#slide_fft").focus();
        return false;
    });

    $("#slide_image_url_link").click(function(event) {
        $(this).addClass("selected").parent().append($('#slide_image_controls'));
        $("#slide_image_controls").slideFadeToggle()
        $("#slide_image_references").focus();
        return false;
    });

    $("#slide_youtube_url_link").click(function(event) {
        $(this).addClass("selected").parent().append($('#slide_youtube_controls'));
        $("#slide_youtube_controls").slideFadeToggle()
        $("#slide_youtube_references").focus();
        return false;
    });

#if ($expSlideFeatureDefs)
#foreach ($expSlideFeatureDef in $expSlideFeatureDefs)
#set ($expFeatureDef = $expSlideFeatureDef.getExpandedFeatureDefinition())
#set ($featureDefID = $expFeatureDef.getID())
#set ($expBulletDef = $expFeatureDef.getExpandedBulletDefinition())

#if ($expBulletDef.isLearned() && !$expBulletDef.isMultivalue()) 
    var l$featureDefID = [$action.getLearnedValuesString($featureDefID)]
    $("#$featureDefID").autocomplete({
        source: l$featureDefID
    });

#elseif ($expBulletDef.isLearned() && $expBulletDef.isMultivalue()) 
    var l$featureDefID = [$action.getLearnedValuesString($featureDefID)]
    $("#${featureDefID}_helper").autocomplete({
        source: l$featureDefID
    });
#end

    $("#${featureDefID}_fft_link").click(function(event) {
        $(this).addClass("selected").parent().append($('#${featureDefID}_fft_controls'));
        $("#${featureDefID}_fft_controls").slideFadeToggle()
        $("#${featureDefID}_fft").focus();
        return false;
    });

    $("#${featureDefID}_image_url_link").click(function(event) {
        $(this).addClass("selected").parent().append($('#${featureDefID}_image_controls'));
        $("#${featureDefID}_image_controls").slideFadeToggle()
        $("#${featureDefID}_image_references").focus();
        return false;
    });

    $("#${featureDefID}_youtube_url_link").click(function(event) {
        $(this).addClass("selected").parent().append($('#${featureDefID}_youtube_controls'));
        $("#${featureDefID}_youtube_controls").slideFadeToggle()
        $("#${featureDefID}_youtube_references").focus();
        return false;
    });


#end
#end

});

jQuery.fn.slideFadeToggle = function(easing, callback) {
    return this.animate({ opacity: 'toggle', height: 'toggle' }, "fast", easing, callback);
};

    
</script>
<style>
.field_label {
    font-weight:bold;
}
.feature {
    margin-top:20px;
    margin-bottom:20px;
}
</style>
</head>
<body>
    
<div>
<form name="f" id="editSlideform" action="/content/entity/$action.getId()" method="post">
<h2>$expslideDef.getLabel() - $action.getEditorialImportance() ($action.getNewCurrentSlideDefinitionID())</h2>

#if ($expslideDef.getDescription())
<span>$expslideDef.getDescription()</span>
#end
<p/>

#showNavigation()

<p/>
#if ($expslide) 
#set ($slideFFC = $expslide.getFreeformContent() )
## Slide level FFC
#showFreeformControls ( $slideFFC, "slide" )
#end

## Features
#if ($expSlideFeatureDefs)
#foreach ($expSlideFeatureDef in $expSlideFeatureDefs)

#set ($expFeature = "")
    
#set ($expFeatureDef = $expSlideFeatureDef.getExpandedFeatureDefinition())
#set ($expBulletDef = $expFeatureDef.getExpandedBulletDefinition())
#set ($expFeature = $action.getFeature($expFeatureDef.getID()))

<p/>

<div class="feature">
<label class="field_label" for="$expFeatureDef.getID()">#if (!$expFeatureDef.allowsBlank())*#end$expFeatureDef.getLabel():</label>

#showControl ($expFeatureDef, $expBulletDef, $expFeature)&nbsp;
#showUnits ($expFeatureDef.getID(), $expBulletDef, $expFeature )

#set ($featureFFC = $expFeature.getFreeformContent())
## Feature level FFC
#showFreeformControls ( $featureFFC, $expFeatureDef.getID() )
<p/>
<p/>
</div>
#end

#end

<p/>
#showNavigation()

</form>
</div>
</body>
</html>
    

## MACROS ##

#macro ( showNavigation )
<input type="hidden" id="currentslideID" name="currentslideID" value="$action.getNewCurrentSlideDefinitionID()"/>
<input type="hidden" id="prevslideID" name="prevslideID" value="$action.getNewPrevSlideDefinitionID()"/>
<input type="hidden" id="nextslideID" name="nextslideID" value="$action.getNewNextSlideDefinitionID()"/>

<input type="hidden" name="_method" value="put"/>

<input type="button" class="cancelbutton" name="cancel" value="Cancel"/>
<input type="submit" name="save" value="Save & Exit"/>

#if ($action.getNewPrevSlideDefinitionID() && $action.getNewPrevSlideDefinitionID() != 0)
<input type="submit" name="prev" value="<< Save & Prev"/>
#end

#if ($action.getEditorialImportance() != "Mandatory")
<input type="submit" name="skipprev" value="<< Skip & Prev"/>
#end

#if ($action.getNewNextSlideDefinitionID() && $action.getNewNextSlideDefinitionID() != 0)
<input type="submit" name="next" value="Save & Next >>"/>
#end

#if ($action.getEditorialImportance() != "Mandatory")
<input type="submit" name="skipnext" value="Skip & Next >>"/>
#end

#end


#macro ( showUnits, $featureDefID, $expBulletDef, $expFeature )
#set ($unitDefs = $expBulletDef.getUnits())
#if ($unitDefs && $unitDefs != "")
    
#if($expFeature)
#set ($expBullets = $expFeature.getExpandedBullets())
#if($expBullets && $expBullets.size() > 0)
#set ($expBullet = $expBullets.get(0))
#end
#if($expBullet)
#set ($unit = $expBullet.getUnit())
#end
#end

<select name="${featureDefID}_unit" id="${featureDefID}_unit">
#foreach($unitDef in $unitDefs)
    <option #if($unit && ($unit.getID() == $unitDef.getID())) selected="selected" #end value="$unitDef.getID()">$unitDef.getShortForm()</option>
#end
</select>
#set ($unitDefs = "")
#set ($unit = "")
#end
#end

## Show Controls based on datatype
#macro ( showControl $expFeatureDef $expBulletDef $expFeature )

#set ($featureDefID = $expFeatureDef.getID())

#if ($expBulletDef.isEnumerated())
    #showEnumerated ($expFeatureDef, $expBulletDef, $expFeature)
#end

#if ($expBulletDef.isComposite())
    #showComposite ($expFeatureDef, $expBulletDef, $expFeature)
#end

#if ($expBulletDef.isPrimitive())

#if ($expBulletDef.isMultivalue())
    #showPrimitiveMultivalue ($expFeatureDef, $expBulletDef, $expFeature)
#else

#set ($datatypeDef = $expBulletDef.getDatatypeDefinition())
#set ($bulletValue = "")
#if($expFeature)
#set ($expBullets = $expFeature.getExpandedBullets())
#if($expBullets && $expBullets.size() > 0)
#set ($expBullet = $expBullets.get(0))
#if($expBullet)
#set ($bulletValue = $expBullet.getValue())
#end
#end
#end

    #showPrimitive ($featureDefID, $expFeatureDef, $datatypeDef, $bulletValue)
    
#end
#end
#end

#macro (showPrimitiveMultivalue $expFeatureDef $expBulletDef $expFeature)

#set ($featureDefID = $expFeatureDef.getID())

#set ($bulletValues = "")
#set ($learnedValues = "")

#set ($bulletValues = $expFeature.getBulletValues())
#set ($learnedValues = $action.getLearnedValues($featureDefID))

<input type="text" name="${featureDefID}_helper" id="${featureDefID}_helper" value="">
<input type="button" name="${featureDefID}_add" id="${featureDefID}_add" value="+">
<br/>

#if (!$expFeatureDef.allowsBlank())
#set ($required = "required")
#end

<select name="$featureDefID" id="$featureDefID" multiple="multiple" class="$required">
#foreach ($learnedValue in $learnedValues)
    <option #if($bulletValues.contains($learnedValue)) selected="selected" #end>$learnedValue</option>
#end

#foreach ($bulletValue in $bulletValues)
    #if ($bulletValue != "" && !$learnedValues.contains($bulletValue)) 
    <option selected="selected">$bulletValue</option>
    #end
#end
</select>

#end

## Show Enumerated
#macro ( showEnumerated $expFeatureDef $expBulletDef $expFeature)

#set ($featureDefID = $expFeatureDef.getID())
#if($expFeature)
#set ($expBullets = $expFeature.getExpandedBullets())
#if($expBullets && $expBullets.size() > 0)
#set ($expBullet = $expBullets.get(0))
#if($expBullet)
#set ($expEnumDataObject = $expBullet.getExpandedEnumDataObject() )

#set ($value = "")
#if($expEnumDataObject)
#set ($value = $expEnumDataObject.getEnumValueID())
#end
#end
#end
#end

#set ($datatypeDef = $expBulletDef.getDatatypeDefinition())
#set ($enumvalues = $datatypeDef.getEnumValues())

#set ($bulletValues = $expFeature.getBulletValues())
        
<select name="$featureDefID" id="$featureDefID" #if($expBulletDef.isMultivalue())multiple="multiple"#end>
#foreach ($enumvalue in $enumvalues)
    <option #if($bulletValues.contains($enumvalue.getValue()))selected="selected"#end value="$enumvalue.getID()">$enumvalue.getValue()</option>
#end
</select>

#end

## Show Composite type
#macro ( showComposite $expFeatureDef $expBulletDef $expFeature)
#set ($value = "")

#set ($featureDefID = $expFeatureDef.getID())

#if ($expFeature != "")
#set ($expBullets = $expFeature.getExpandedBullets())
#if ($expBullets && $expBullets.size() > 0)
#set ($expBullet = $expBullets.get(0))
#end
#end

#if ($expBullet) 
#set ($compDataObject = $expBullet.getDataObject())
#end

#if($compDataObject)
#set ($primitiveDataObjects = $compDataObject.getPrimitiveDataObjects())
#end

#set ($datatypeDef = $expBulletDef.getDatatypeDefinition())
#set ($expCompositePartDefs = $datatypeDef.getExpandedConsitePartDefinitions())

#set ($separator = $datatypeDef.getSeparator()) 
#foreach ($expCompositePartDef in $expCompositePartDefs)
#set ($label = $expCompositePartDef.getLabel())
#set ($datatypeDef = $expCompositePartDef.getDatatypeDefinition())
#set ($fieldID = "${featureDefID}_${velocityCount}")
#set ($value = "")
#if ($primitiveDataObjects) 
#set ($currentIndex = $velocityCount - 1)
#if ($primitiveDataObjects.size() > $currentIndex)
#set ($value = $primitiveDataObjects.get($currentIndex).getValue())
#end
#end
<br/>
<br/>
<label for="$fieldID">$expCompositePartDef.getLabel():</label>
#showPrimitive ($fieldID, $expFeatureDef, $datatypeDef $value) 
#end

#end

## Show Primitive type
#macro ( showPrimitive $ID $expFeatureDef $datatypeDef $value)

#if (!$expFeatureDef.allowsBlank())
#set ($required = "required")
#end

#set ($datatypeDefID = $datatypeDef.getID())

#if ( $datatypeDefID == "70001" )
#set ($datatype = "digits")
#elseif ( $datatypeDefID == "70002" )
#set ($datatype = "number")
#end

## string, integer, decimal
#if($value)
    <input type="text" name="$ID" id="$ID" value="$value" class="$required $datatype">
#else
    <input type="text" name="$ID" id="$ID" value="" class="$required $datatype">
#end

#end

#macro ( showFreeformControls $ffc $ID )

## Weird! 
#set ($allImageRefs = "")
#set ($allYoutubeRefs = "")

#set ($ffTexts = "")
#set ($imageRefs = "")
#set ($youtubeRefs = "")

#set ($ffTexts = $ffc.getFreeformTexts())
#set ($imageRefs = $ffc.getImageRefs())
#set ($youtubeRefs = $ffc.getYoutubeRefs())

#set ($allImageRefs = $action.getMediaLabels("image"))
#set ($allYoutubeRefs = $action.getMediaLabels("youtube"))

<p/>

<span>
<a href="#" id="${ID}_fft_link">Free-form Text</a>&nbsp;
<div id="${ID}_fft_controls" class="pop">
#if ($ffTexts != "")
#foreach ($ffText in $ffTexts)
    <textarea name="${ID}_fft" id="${ID}_fft">$ffText</textarea>
#end
#else
    <textarea name="${ID}_fft" id="${ID}_fft"></textarea>
#end
</div>
</span>

<span>
<a href="#" id="${ID}_image_url_link">Image(s)</a>&nbsp;
<div id="${ID}_image_controls" class="pop">
<select name="${ID}_image_references" id="${ID}_youtube_references" multiple="multiple">
#if($allImageRefs != "")
#foreach($imageRef in $allImageRefs)
    <option #if($imageRefs.contains($imageRef)) selected="selected" #end>$imageRef</option>
#end
#end
</select>
</div>   
</span>


<span>
<a href="#" id="${ID}_youtube_url_link">Youtube Video(s)</a>&nbsp;
<div id="${ID}_youtube_controls" class="pop">
<select name="${ID}_youtube_references" id="${ID}_youtube_references" multiple="multiple">
#if($allYoutubeRefs != "")
#foreach($youtubeRef in $allYoutubeRefs)
    <option #if($youtubeRefs.contains($youtubeRef)) selected="selected" #end>$youtubeRef</option>
#end
#end
</select>
</div>   
</span>

#end