Holger Knublauch

EPIM log progress

...@@ -196,6 +196,44 @@ app:defaultRange ...@@ -196,6 +196,44 @@ app:defaultRange
196 spin:private "true"^^xsd:boolean ; 196 spin:private "true"^^xsd:boolean ;
197 spin:returnType rdfs:Resource . 197 spin:returnType rdfs:Resource .
198 198
199 +app:globalRange
200 + rdf:type spin:Function ;
201 + rdfs:comment "Gets the global range (rdfs:range) of a property. If none is provided, it will walk up super-properties."^^xsd:string ;
202 + rdfs:label "global range"^^xsd:string ;
203 + rdfs:subClassOf app:Functions ;
204 + spin:body
205 + [ rdf:type sp:Select ;
206 + sp:resultVariables ([ sp:varName "range"^^xsd:string
207 + ]) ;
208 + sp:where ([ rdf:type sp:TriplePath ;
209 + sp:object
210 + [ sp:varName "p"^^xsd:string
211 + ] ;
212 + sp:path [ rdf:type sp:ModPath ;
213 + sp:modMax -2 ;
214 + sp:modMin 0 ;
215 + sp:subPath rdfs:subPropertyOf
216 + ] ;
217 + sp:subject
218 + [ sp:varName "property"^^xsd:string
219 + ]
220 + ] [ sp:object
221 + [ sp:varName "range"^^xsd:string
222 + ] ;
223 + sp:predicate rdfs:range ;
224 + sp:subject
225 + [ sp:varName "p"^^xsd:string
226 + ]
227 + ])
228 + ] ;
229 + spin:constraint
230 + [ rdf:type spl:Argument ;
231 + rdfs:comment "The property to get the range of."^^xsd:string ;
232 + spl:predicate arg:property ;
233 + spl:valueType rdf:Property
234 + ] ;
235 + spin:returnType rdfs:Class .
236 +
199 app:googleMapsAPIKey 237 app:googleMapsAPIKey
200 rdf:type spin:Function ; 238 rdf:type spin:Function ;
201 rdfs:comment "Gets the currently registered Google Maps API key."^^xsd:string ; 239 rdfs:comment "Gets the currently registered Google Maps API key."^^xsd:string ;
...@@ -744,7 +782,7 @@ app:localRange ...@@ -744,7 +782,7 @@ app:localRange
744 sp:where ([ rdf:type sp:Bind ; 782 sp:where ([ rdf:type sp:Bind ;
745 sp:expression 783 sp:expression
746 [ rdf:type app:resourceType ; 784 [ rdf:type app:resourceType ;
747 - arg:subject 785 + arg:resource
748 [ sp:varName "subject"^^xsd:string 786 [ sp:varName "subject"^^xsd:string
749 ] 787 ]
750 ] ; 788 ] ;
...@@ -763,11 +801,6 @@ app:localRange ...@@ -763,11 +801,6 @@ app:localRange
763 arg:property 801 arg:property
764 [ sp:varName "predicate"^^xsd:string 802 [ sp:varName "predicate"^^xsd:string
765 ] 803 ]
766 - ] ;
767 - sp:arg3 [ rdf:type app:defaultRange ;
768 - arg:property
769 - [ sp:varName "predicate"^^xsd:string
770 - ]
771 ] 804 ]
772 ] ; 805 ] ;
773 sp:variable 806 sp:variable
...@@ -821,7 +854,7 @@ app:localRange ...@@ -821,7 +854,7 @@ app:localRange
821 854
822 app:localRangeAtClass 855 app:localRangeAtClass
823 rdf:type spin:Function ; 856 rdf:type spin:Function ;
824 - rdfs:comment "Checks (in that order) for declared owl:allValuesFrom restrictions in superclasses, rdfs:range at the property and then spl:valueType in SPIN constraints (spl:Argument and spl:Attribute)."^^xsd:string ; 857 + rdfs:comment "Checks (in that order) for declared owl:allValuesFrom restrictions in superclasses, rdfs:range at the property and then spl:valueType in SPIN constraints (spl:Argument and spl:Attribute). It falls back to app:defaultRange if nothing else is found."^^xsd:string ;
825 rdfs:label "local range at class"^^xsd:string ; 858 rdfs:label "local range at class"^^xsd:string ;
826 rdfs:subClassOf app:Functions ; 859 rdfs:subClassOf app:Functions ;
827 spin:body 860 spin:body
...@@ -835,10 +868,10 @@ app:localRangeAtClass ...@@ -835,10 +868,10 @@ app:localRangeAtClass
835 sp:arg4 [ sp:varName "property"^^xsd:string 868 sp:arg4 [ sp:varName "property"^^xsd:string
836 ] 869 ]
837 ] ; 870 ] ;
838 - sp:arg2 [ rdf:type spl:object ; 871 + sp:arg2 [ rdf:type app:globalRange ;
839 - sp:arg1 [ sp:varName "property"^^xsd:string 872 + arg:property
840 - ] ; 873 + [ sp:varName "property"^^xsd:string
841 - sp:arg2 rdfs:range 874 + ]
842 ] ; 875 ] ;
843 sp:arg3 [ rdf:type spif:walkObjects ; 876 sp:arg3 [ rdf:type spif:walkObjects ;
844 sp:arg1 [ sp:varName "class"^^xsd:string 877 sp:arg1 [ sp:varName "class"^^xsd:string
...@@ -847,6 +880,11 @@ app:localRangeAtClass ...@@ -847,6 +880,11 @@ app:localRangeAtClass
847 sp:arg3 app:splValueTypeFunctor ; 880 sp:arg3 app:splValueTypeFunctor ;
848 sp:arg4 [ sp:varName "property"^^xsd:string 881 sp:arg4 [ sp:varName "property"^^xsd:string
849 ] 882 ]
883 + ] ;
884 + sp:arg4 [ rdf:type app:defaultRange ;
885 + arg:property
886 + [ sp:varName "property"^^xsd:string
887 + ]
850 ] 888 ]
851 ]) ; 889 ]) ;
852 sp:where () 890 sp:where ()
......
...@@ -771,145 +771,141 @@ app:CustomEditForm ...@@ -771,145 +771,141 @@ app:CustomEditForm
771 ui:child 771 ui:child
772 [ rdf:type ui:setContext ; 772 [ rdf:type ui:setContext ;
773 ui:child 773 ui:child
774 - [ rdf:type ui:group ; 774 + [ rdf:type ui:setContext ;
775 ui:child 775 ui:child
776 - [ rdf:type html:Form ; 776 + [ rdf:type app:FormHeader ;
777 - html:class "appForm"^^xsd:string ; 777 + arg:label "Edit"^^xsd:string ;
778 - html:id [ sp:varName "fid"^^xsd:string 778 + arg:resource
779 + [ sp:varName "resource"^^xsd:string
779 ] ; 780 ] ;
780 ui:child 781 ui:child
781 - [ rdf:type ui:setContext ; 782 + [ rdf:type ui:insert ;
782 ui:child 783 ui:child
783 [ rdf:type ui:if ; 784 [ rdf:type ui:if ;
784 ui:child 785 ui:child
785 - [ rdf:type html:Input ; 786 + [ rdf:type app:FormToggleButton ;
786 - html:name "resourceType"^^xsd:string ; 787 + arg:formId
787 - html:type "hidden"^^xsd:string ; 788 + [ sp:varName "fid"^^xsd:string
788 - html:value 789 + ] ;
789 - [ rdf:type app:resourceType 790 + arg:label "Cancel"^^xsd:string ;
791 + arg:modeName "view"^^xsd:string ;
792 + arg:resource
793 + [ sp:varName "resource"^^xsd:string
790 ] ; 794 ] ;
791 ui:childIndex 0 795 ui:childIndex 0
792 ] ; 796 ] ;
793 ui:childIndex 0 ; 797 ui:childIndex 0 ;
794 ui:condition 798 ui:condition
795 - [ rdf:type sp:not ; 799 + [ rdf:type sp:and ;
796 - sp:arg1 [ rdf:type sp:bound ; 800 + sp:arg1 [ sp:varName "switchable"^^xsd:string
801 + ] ;
802 + sp:arg2 [ rdf:type sp:bound ;
797 sp:arg1 [ sp:varName "resource"^^xsd:string 803 sp:arg1 [ sp:varName "resource"^^xsd:string
798 ] 804 ]
799 ] 805 ]
800 ] 806 ]
801 ] ; 807 ] ;
808 + ui:childIndex 0 ;
809 + ui:into "toolBar"^^xsd:string
810 + ] ;
811 + ui:childIndex 0
812 + ] ;
813 + ui:child
814 + [ rdf:type html:Form ;
815 + html:class "appForm ui-layout-content"^^xsd:string ;
816 + html:id [ sp:varName "fid"^^xsd:string
817 + ] ;
818 + ui:child
819 + [ rdf:type ui:if ;
802 ui:child 820 ui:child
803 - [ rdf:type app:FormHeader ; 821 + [ rdf:type html:Input ;
804 - arg:label "Edit"^^xsd:string ; 822 + html:name "resourceType"^^xsd:string ;
805 - arg:resource 823 + html:type "hidden"^^xsd:string ;
806 - [ sp:varName "resource"^^xsd:string 824 + html:value
825 + [ rdf:type app:resourceType
807 ] ; 826 ] ;
827 + ui:childIndex 0
828 + ] ;
829 + ui:childIndex 0 ;
830 + ui:condition
831 + [ rdf:type sp:not ;
832 + sp:arg1 [ rdf:type sp:bound ;
833 + sp:arg1 [ sp:varName "resource"^^xsd:string
834 + ]
835 + ]
836 + ]
837 + ] ;
838 + ui:child
839 + [ rdf:type html:Div ;
840 + html:class "appFormBody"^^xsd:string ;
841 + ui:child
842 + [ rdf:type ui:if ;
808 ui:child 843 ui:child
809 - [ rdf:type ui:insert ; 844 + [ rdf:type ui:resourceView ;
810 - ui:child
811 - [ rdf:type ui:if ;
812 - ui:child
813 - [ rdf:type app:FormToggleButton ;
814 - arg:formId
815 - [ sp:varName "fid"^^xsd:string
816 - ] ;
817 - arg:label "Cancel"^^xsd:string ;
818 - arg:modeName "view"^^xsd:string ;
819 - arg:resource
820 - [ sp:varName "resource"^^xsd:string
821 - ] ;
822 - ui:childIndex 0
823 - ] ;
824 - ui:childIndex 0 ;
825 - ui:condition
826 - [ rdf:type sp:and ;
827 - sp:arg1 [ sp:varName "switchable"^^xsd:string
828 - ] ;
829 - sp:arg2 [ rdf:type sp:bound ;
830 - sp:arg1 [ sp:varName "resource"^^xsd:string
831 - ]
832 - ]
833 - ]
834 - ] ;
835 ui:childIndex 0 ; 845 ui:childIndex 0 ;
836 - ui:into "toolBar"^^xsd:string 846 + ui:resource
847 + [ sp:varName "resource"^^xsd:string
848 + ]
837 ] ; 849 ] ;
838 - ui:childIndex 1 850 + ui:childIndex 0 ;
851 + ui:condition
852 + [ rdf:type sp:bound ;
853 + sp:arg1 [ sp:varName "resource"^^xsd:string
854 + ]
855 + ]
839 ] ; 856 ] ;
840 ui:child 857 ui:child
841 - [ rdf:type html:Div ; 858 + [ rdf:type ui:else ;
842 - html:class "appFormBody"^^xsd:string ;
843 ui:child 859 ui:child
844 - [ rdf:type ui:if ; 860 + [ rdf:type ui:classView ;
845 - ui:child
846 - [ rdf:type ui:resourceView ;
847 - ui:childIndex 0 ;
848 - ui:resource
849 - [ sp:varName "resource"^^xsd:string
850 - ]
851 - ] ;
852 ui:childIndex 0 ; 861 ui:childIndex 0 ;
853 - ui:condition 862 + ui:class
854 - [ rdf:type sp:bound ; 863 + [ rdf:type app:resourceType
855 - sp:arg1 [ sp:varName "resource"^^xsd:string
856 - ]
857 ] 864 ]
858 ] ; 865 ] ;
866 + ui:childIndex 1
867 + ] ;
868 + ui:childIndex 1
869 + ] ;
870 + ui:child
871 + [ rdf:type html:Div ;
872 + html:class "appFormFooter"^^xsd:string ;
873 + ui:child
874 + [ rdf:type ui:if ;
859 ui:child 875 ui:child
860 - [ rdf:type ui:else ; 876 + [ rdf:type html:Input ;
861 - ui:child 877 + html:onclick
862 - [ rdf:type ui:classView ; 878 + [ rdf:type fn:concat ;
863 - ui:childIndex 0 ; 879 + sp:arg1 "appSubmitForm('#"^^xsd:string ;
864 - ui:class 880 + sp:arg2 [ sp:varName "fid"^^xsd:string
865 - [ rdf:type app:resourceType 881 + ] ;
866 - ] 882 + sp:arg3 "')"^^xsd:string
867 ] ; 883 ] ;
868 - ui:childIndex 1 884 + html:type "button"^^xsd:string ;
885 + html:value "Save Changes"^^xsd:string ;
886 + ui:childIndex 0
869 ] ; 887 ] ;
870 - ui:childIndex 2 888 + ui:childIndex 0 ;
889 + ui:condition
890 + [ sp:varName "submittable"^^xsd:string
891 + ]
871 ] ; 892 ] ;
872 ui:child 893 ui:child
873 [ rdf:type html:Div ; 894 [ rdf:type html:Div ;
874 - html:class "appFormFooter"^^xsd:string ;
875 ui:child 895 ui:child
876 - [ rdf:type ui:if ; 896 + [ rdf:type ui:insertionPoint ;
877 - ui:child
878 - [ rdf:type html:Input ;
879 - html:onclick
880 - [ rdf:type fn:concat ;
881 - sp:arg1 "appSubmitForm('#"^^xsd:string ;
882 - sp:arg2 [ sp:varName "fid"^^xsd:string
883 - ] ;
884 - sp:arg3 "')"^^xsd:string
885 - ] ;
886 - html:type "button"^^xsd:string ;
887 - html:value "Save Changes"^^xsd:string ;
888 - ui:childIndex 0
889 - ] ;
890 ui:childIndex 0 ; 897 ui:childIndex 0 ;
891 - ui:condition 898 + ui:pointId "footer"^^xsd:string
892 - [ sp:varName "submittable"^^xsd:string
893 - ]
894 - ] ;
895 - ui:child
896 - [ rdf:type html:Div ;
897 - ui:child
898 - [ rdf:type ui:insertionPoint ;
899 - ui:childIndex 0 ;
900 - ui:pointId "footer"^^xsd:string
901 - ] ;
902 - ui:childIndex 1
903 ] ; 899 ] ;
904 - ui:childIndex 3 900 + ui:childIndex 1
905 ] ; 901 ] ;
906 - ui:childIndex 0 ; 902 + ui:childIndex 2
907 - ui:varName "createLinkFunction"^^xsd:string ;
908 - ui:varValue app:createNewTabLink
909 ] ; 903 ] ;
910 - ui:childIndex 0 904 + ui:childIndex 1
911 ] ; 905 ] ;
912 - ui:childIndex 0 906 + ui:childIndex 0 ;
907 + ui:varName "createLinkFunction"^^xsd:string ;
908 + ui:varValue app:createNewTabLink
913 ] ; 909 ] ;
914 ui:childIndex 0 ; 910 ui:childIndex 0 ;
915 ui:varName 911 ui:varName
...@@ -1744,12 +1740,6 @@ app:HSplitLayout ...@@ -1744,12 +1740,6 @@ app:HSplitLayout
1744 rdfs:subClassOf app:LayoutElements ; 1740 rdfs:subClassOf app:LayoutElements ;
1745 spin:constraint 1741 spin:constraint
1746 [ rdf:type spl:Argument ; 1742 [ rdf:type spl:Argument ;
1747 - rdfs:comment "The height of the overall div, e.g. \"300px\""^^xsd:string ;
1748 - spl:predicate arg:height ;
1749 - spl:valueType xsd:string
1750 - ] ;
1751 - spin:constraint
1752 - [ rdf:type spl:Argument ;
1753 rdfs:comment "The width of the left component, e.g. \"30%\"."^^xsd:string ; 1743 rdfs:comment "The width of the left component, e.g. \"30%\"."^^xsd:string ;
1754 spl:optional "true"^^xsd:boolean ; 1744 spl:optional "true"^^xsd:boolean ;
1755 spl:predicate arg:leftWidth ; 1745 spl:predicate arg:leftWidth ;
...@@ -1757,35 +1747,56 @@ app:HSplitLayout ...@@ -1757,35 +1747,56 @@ app:HSplitLayout
1757 ] ; 1747 ] ;
1758 ui:prototype 1748 ui:prototype
1759 [ rdf:type ui:group ; 1749 [ rdf:type ui:group ;
1750 + let:A [ rdf:type ui:uniqueId
1751 + ] ;
1752 + let:B [ rdf:type ui:uniqueId
1753 + ] ;
1760 let:id [ rdf:type ui:uniqueId 1754 let:id [ rdf:type ui:uniqueId
1761 ] ; 1755 ] ;
1762 ui:child 1756 ui:child
1763 [ rdf:type html:Div ; 1757 [ rdf:type html:Div ;
1758 + html:class "appHSplitLayout"^^xsd:string ;
1764 html:id [ sp:varName "id"^^xsd:string 1759 html:id [ sp:varName "id"^^xsd:string
1765 ] ; 1760 ] ;
1766 - html:style
1767 - [ rdf:type fn:concat ;
1768 - sp:arg1 "height:"^^xsd:string ;
1769 - sp:arg2 [ sp:varName "height"^^xsd:string
1770 - ]
1771 - ] ;
1772 ui:child 1761 ui:child
1773 [ rdf:type html:Div ; 1762 [ rdf:type html:Div ;
1774 - html:class "ui-layout-west"^^xsd:string ; 1763 + html:class "appHSplitLayoutChild"^^xsd:string ;
1764 + html:id [ sp:varName "A"^^xsd:string
1765 + ] ;
1766 + html:style
1767 + [ rdf:type ui:concat ;
1768 + sp:arg1 "float: left; "^^xsd:string ;
1769 + sp:arg2 [ rdf:type sp:if ;
1770 + sp:arg1 [ rdf:type sp:bound ;
1771 + sp:arg1 [ sp:varName "leftWidth"^^xsd:string
1772 + ]
1773 + ] ;
1774 + sp:arg2 [ rdf:type fn:concat ;
1775 + sp:arg1 "width:" ;
1776 + sp:arg2 [ sp:varName "leftWidth"^^xsd:string
1777 + ]
1778 + ] ;
1779 + sp:arg3 [ sp:varName "none"^^xsd:string
1780 + ]
1781 + ]
1782 + ] ;
1775 ui:child 1783 ui:child
1776 [ rdf:type ui:insertionPoint ; 1784 [ rdf:type ui:insertionPoint ;
1777 ui:childIndex 0 ; 1785 ui:childIndex 0 ;
1778 - ui:pointId "left"^^xsd:string 1786 + ui:pointId "1"^^xsd:string
1779 ] ; 1787 ] ;
1780 ui:childIndex 0 1788 ui:childIndex 0
1781 ] ; 1789 ] ;
1782 ui:child 1790 ui:child
1783 [ rdf:type html:Div ; 1791 [ rdf:type html:Div ;
1784 - html:class "ui-layout-center"^^xsd:string ; 1792 + html:class "appHSplitLayoutChild"^^xsd:string ;
1793 + html:id [ sp:varName "B"^^xsd:string
1794 + ] ;
1795 + html:style "float: right"^^xsd:string ;
1785 ui:child 1796 ui:child
1786 [ rdf:type ui:insertionPoint ; 1797 [ rdf:type ui:insertionPoint ;
1787 ui:childIndex 0 ; 1798 ui:childIndex 0 ;
1788 - ui:pointId "right"^^xsd:string 1799 + ui:pointId "2"^^xsd:string
1789 ] ; 1800 ] ;
1790 ui:childIndex 1 1801 ui:childIndex 1
1791 ] ; 1802 ] ;
...@@ -1808,40 +1819,33 @@ app:HSplitLayout ...@@ -1808,40 +1819,33 @@ app:HSplitLayout
1808 ui:child 1819 ui:child
1809 [ rdf:type ui:TextNode ; 1820 [ rdf:type ui:TextNode ;
1810 ui:childIndex 2 ; 1821 ui:childIndex 2 ;
1811 - ui:text """').layout({ 1822 + ui:text """').splitter({
1812 - applyDefaultStyles : true, 1823 + A:$('#"""^^xsd:string
1813 - resizable : true,
1814 - slidable : true"""^^xsd:string
1815 ] ; 1824 ] ;
1816 ui:child 1825 ui:child
1817 - [ rdf:type ui:if ; 1826 + [ rdf:type ui:TextNode ;
1818 - ui:child
1819 - [ rdf:type ui:TextNode ;
1820 - ui:childIndex 0 ;
1821 - ui:text ",west__size:'"^^xsd:string
1822 - ] ;
1823 - ui:child
1824 - [ rdf:type ui:TextNode ;
1825 - ui:childIndex 1 ;
1826 - ui:text [ sp:varName "leftWidth"^^xsd:string
1827 - ]
1828 - ] ;
1829 - ui:child
1830 - [ rdf:type ui:TextNode ;
1831 - ui:childIndex 2 ;
1832 - ui:text "'"^^xsd:string
1833 - ] ;
1834 ui:childIndex 3 ; 1827 ui:childIndex 3 ;
1835 - ui:condition 1828 + ui:text [ sp:varName "A"^^xsd:string
1836 - [ rdf:type sp:bound ;
1837 - sp:arg1 [ sp:varName "leftWidth"^^xsd:string
1838 - ]
1839 ] 1829 ]
1840 ] ; 1830 ] ;
1841 ui:child 1831 ui:child
1842 [ rdf:type ui:TextNode ; 1832 [ rdf:type ui:TextNode ;
1843 ui:childIndex 4 ; 1833 ui:childIndex 4 ;
1844 - ui:text """ 1834 + ui:text """'),
1835 + B:$('#"""^^xsd:string
1836 + ] ;
1837 + ui:child
1838 + [ rdf:type ui:TextNode ;
1839 + ui:childIndex 5 ;
1840 + ui:text [ sp:varName "B"^^xsd:string
1841 + ]
1842 + ] ;
1843 + ui:child
1844 + [ rdf:type ui:TextNode ;
1845 + ui:childIndex 6 ;
1846 + ui:text """'),
1847 + closeableto:0,
1848 + splitVertical: true
1845 }); 1849 });
1846 });"""^^xsd:string 1850 });"""^^xsd:string
1847 ] ; 1851 ] ;
...@@ -3876,41 +3880,41 @@ app:SearchForm ...@@ -3876,41 +3880,41 @@ app:SearchForm
3876 ui:child 3880 ui:child
3877 [ rdf:type ui:setContext ; 3881 [ rdf:type ui:setContext ;
3878 ui:child 3882 ui:child
3879 - [ rdf:type html:Form ; 3883 + [ rdf:type ui:setContext ;
3880 - html:class 3884 + ui:child
3881 - [ rdf:type ui:concat ; 3885 + [ rdf:type app:FormHeader ;
3882 - sp:arg1 "appForm "^^xsd:string ; 3886 + arg:label "Search"^^xsd:string ;
3883 - sp:arg2 [ rdf:type sp:if ; 3887 + ui:childIndex 0
3884 - sp:arg1 [ rdf:type sp:or ; 3888 + ] ;
3885 - sp:arg1 [ rdf:type sp:not ; 3889 + ui:child
3886 - sp:arg1 [ rdf:type sp:bound ; 3890 + [ rdf:type html:Form ;
3887 - sp:arg1 [ sp:varName "noBorder"^^xsd:string 3891 + html:class
3892 + [ rdf:type ui:concat ;
3893 + sp:arg1 "appForm ui-layout-content "^^xsd:string ;
3894 + sp:arg2 [ rdf:type sp:if ;
3895 + sp:arg1 [ rdf:type sp:or ;
3896 + sp:arg1 [ rdf:type sp:not ;
3897 + sp:arg1 [ rdf:type sp:bound ;
3898 + sp:arg1 [ sp:varName "noBorder"^^xsd:string
3899 + ]
3888 ] 3900 ]
3901 + ] ;
3902 + sp:arg2 [ rdf:type sp:eq ;
3903 + sp:arg1 [ sp:varName "noBorder"^^xsd:string
3904 + ] ;
3905 + sp:arg2 "false"^^xsd:boolean
3889 ] 3906 ]
3890 ] ; 3907 ] ;
3891 - sp:arg2 [ rdf:type sp:eq ; 3908 + sp:arg2 " appFormBorder" ;
3892 - sp:arg1 [ sp:varName "noBorder"^^xsd:string 3909 + sp:arg3 ""
3893 - ] ; 3910 + ]
3894 - sp:arg2 "false"^^xsd:boolean 3911 + ] ;
3895 - ] 3912 + html:id [ sp:varName "fid"^^xsd:string
3896 - ] ; 3913 + ] ;
3897 - sp:arg2 " appFormBorder" ; 3914 + let:kp [ rdf:type app:getKeyProperties ;
3898 - sp:arg3 "" 3915 + arg:class
3899 - ] 3916 + [ sp:varName "resourceType"^^xsd:string
3900 - ] ; 3917 + ]
3901 - html:id [ sp:varName "fid"^^xsd:string
3902 - ] ;
3903 - let:kp [ rdf:type app:getKeyProperties ;
3904 - arg:class
3905 - [ sp:varName "resourceType"^^xsd:string
3906 - ]
3907 - ] ;
3908 - ui:child
3909 - [ rdf:type ui:setContext ;
3910 - ui:child
3911 - [ rdf:type app:FormHeader ;
3912 - arg:label "Search"^^xsd:string ;
3913 - ui:childIndex 0
3914 ] ; 3918 ] ;
3915 ui:child 3919 ui:child
3916 [ rdf:type html:Input ; 3920 [ rdf:type html:Input ;
...@@ -3923,7 +3927,7 @@ app:SearchForm ...@@ -3923,7 +3927,7 @@ app:SearchForm
3923 ] ; 3927 ] ;
3924 sp:arg3 ">"^^xsd:string 3928 sp:arg3 ">"^^xsd:string
3925 ] ; 3929 ] ;
3926 - ui:childIndex 1 3930 + ui:childIndex 0
3927 ] ; 3931 ] ;
3928 ui:child 3932 ui:child
3929 [ rdf:type html:Input ; 3933 [ rdf:type html:Input ;
...@@ -3942,7 +3946,7 @@ app:SearchForm ...@@ -3942,7 +3946,7 @@ app:SearchForm
3942 ] 3946 ]
3943 ] 3947 ]
3944 ] ; 3948 ] ;
3945 - ui:childIndex 2 3949 + ui:childIndex 1
3946 ] ; 3950 ] ;
3947 ui:child 3951 ui:child
3948 [ rdf:type html:Input ; 3952 [ rdf:type html:Input ;
...@@ -3953,7 +3957,7 @@ app:SearchForm ...@@ -3953,7 +3957,7 @@ app:SearchForm
3953 sp:arg1 [ rdf:type ui:currentQueryGraph 3957 sp:arg1 [ rdf:type ui:currentQueryGraph
3954 ] 3958 ]
3955 ] ; 3959 ] ;
3956 - ui:childIndex 3 3960 + ui:childIndex 2
3957 ] ; 3961 ] ;
3958 ui:child 3962 ui:child
3959 [ rdf:type ui:if ; 3963 [ rdf:type ui:if ;
...@@ -3994,7 +3998,7 @@ app:SearchForm ...@@ -3994,7 +3998,7 @@ app:SearchForm
3994 ]) 3998 ])
3995 ] 3999 ]
3996 ] ; 4000 ] ;
3997 - ui:childIndex 4 ; 4001 + ui:childIndex 3 ;
3998 ui:condition 4002 ui:condition
3999 [ rdf:type sp:bound ; 4003 [ rdf:type sp:bound ;
4000 sp:arg1 [ sp:varName "kp"^^xsd:string 4004 sp:arg1 [ sp:varName "kp"^^xsd:string
...@@ -4011,51 +4015,51 @@ app:SearchForm ...@@ -4011,51 +4015,51 @@ app:SearchForm
4011 [ rdf:type app:resourceType 4015 [ rdf:type app:resourceType
4012 ] 4016 ]
4013 ] ; 4017 ] ;
4014 - ui:childIndex 5 4018 + ui:childIndex 4
4015 ] ; 4019 ] ;
4020 + ui:childIndex 1
4021 + ] ;
4022 + ui:child
4023 + [ rdf:type html:Div ;
4024 + html:class "appFormFooter"^^xsd:string ;
4016 ui:child 4025 ui:child
4017 - [ rdf:type html:Div ; 4026 + [ rdf:type html:Input ;
4018 - html:class "appFormFooter"^^xsd:string ; 4027 + html:onclick
4019 - ui:child 4028 + [ rdf:type ui:concat ;
4020 - [ rdf:type html:Input ; 4029 + sp:arg1 "appLoadSearchResultsGrid('"^^xsd:string ;
4021 - html:onclick 4030 + sp:arg2 [ sp:varName "fid"^^xsd:string
4022 - [ rdf:type ui:concat ;
4023 - sp:arg1 "appLoadSearchResultsGrid('"^^xsd:string ;
4024 - sp:arg2 [ sp:varName "fid"^^xsd:string
4025 - ] ;
4026 - sp:arg3 "', '"^^xsd:string ;
4027 - sp:arg4 [ sp:varName "resultsId"^^xsd:string
4028 - ] ;
4029 - sp:arg5 "', '"^^xsd:string ;
4030 - sp:arg6 [ rdf:type ui:escapeJSON ;
4031 - sp:arg1 [ sp:varName "onSelect"^^xsd:string
4032 - ]
4033 - ] ;
4034 - sp:arg7 "')"^^xsd:string
4035 ] ; 4031 ] ;
4036 - html:type "button"^^xsd:string ; 4032 + sp:arg3 "', '"^^xsd:string ;
4037 - html:value "Search"^^xsd:string ; 4033 + sp:arg4 [ sp:varName "resultsId"^^xsd:string
4038 - ui:childIndex 0 4034 + ] ;
4035 + sp:arg5 "', '"^^xsd:string ;
4036 + sp:arg6 [ rdf:type ui:escapeJSON ;
4037 + sp:arg1 [ sp:varName "onSelect"^^xsd:string
4038 + ]
4039 + ] ;
4040 + sp:arg7 "')"^^xsd:string
4039 ] ; 4041 ] ;
4040 - ui:child 4042 + html:type "button"^^xsd:string ;
4041 - [ rdf:type ui:TextNode ; 4043 + html:value "Search"^^xsd:string ;
4042 - ui:childIndex 1 ; 4044 + ui:childIndex 0
4043 - ui:text """  4045 + ] ;
4046 + ui:child
4047 + [ rdf:type ui:TextNode ;
4048 + ui:childIndex 1 ;
4049 + ui:text """ 
4044 """^^xsd:string 4050 """^^xsd:string
4045 - ] ;
4046 - ui:child
4047 - [ rdf:type html:Input ;
4048 - html:type "reset"^^xsd:string ;
4049 - html:value "Reset"^^xsd:string ;
4050 - ui:childIndex 2
4051 - ] ;
4052 - ui:childIndex 6
4053 ] ; 4051 ] ;
4054 - ui:childIndex 0 ; 4052 + ui:child
4055 - ui:varName "createLinkFunction"^^xsd:string ; 4053 + [ rdf:type html:Input ;
4056 - ui:varValue app:createNewTabLink 4054 + html:type "reset"^^xsd:string ;
4055 + html:value "Reset"^^xsd:string ;
4056 + ui:childIndex 2
4057 + ] ;
4058 + ui:childIndex 2
4057 ] ; 4059 ] ;
4058 - ui:childIndex 0 4060 + ui:childIndex 0 ;
4061 + ui:varName "createLinkFunction"^^xsd:string ;
4062 + ui:varValue app:createNewTabLink
4059 ] ; 4063 ] ;
4060 ui:childIndex 0 ; 4064 ui:childIndex 0 ;
4061 ui:varName "resourceType"^^xsd:string ; 4065 ui:varName "resourceType"^^xsd:string ;
...@@ -5568,12 +5572,6 @@ app:VSplitLayout ...@@ -5568,12 +5572,6 @@ app:VSplitLayout
5568 rdfs:subClassOf app:LayoutElements ; 5572 rdfs:subClassOf app:LayoutElements ;
5569 spin:constraint 5573 spin:constraint
5570 [ rdf:type spl:Argument ; 5574 [ rdf:type spl:Argument ;
5571 - rdfs:comment "The height of the overall div, e.g. \"300px\""^^xsd:string ;
5572 - spl:predicate arg:height ;
5573 - spl:valueType xsd:string
5574 - ] ;
5575 - spin:constraint
5576 - [ rdf:type spl:Argument ;
5577 rdfs:comment "The height of the top component, e.g. \"30%\"."^^xsd:string ; 5575 rdfs:comment "The height of the top component, e.g. \"30%\"."^^xsd:string ;
5578 spl:optional "true"^^xsd:boolean ; 5576 spl:optional "true"^^xsd:boolean ;
5579 spl:predicate arg:topHeight ; 5577 spl:predicate arg:topHeight ;
...@@ -5581,21 +5579,37 @@ app:VSplitLayout ...@@ -5581,21 +5579,37 @@ app:VSplitLayout
5581 ] ; 5579 ] ;
5582 ui:prototype 5580 ui:prototype
5583 [ rdf:type ui:group ; 5581 [ rdf:type ui:group ;
5582 + let:A [ rdf:type ui:uniqueId
5583 + ] ;
5584 + let:B [ rdf:type ui:uniqueId
5585 + ] ;
5584 let:id [ rdf:type ui:uniqueId 5586 let:id [ rdf:type ui:uniqueId
5585 ] ; 5587 ] ;
5586 ui:child 5588 ui:child
5587 [ rdf:type html:Div ; 5589 [ rdf:type html:Div ;
5590 + html:class "appVSplitLayout"^^xsd:string ;
5588 html:id [ sp:varName "id"^^xsd:string 5591 html:id [ sp:varName "id"^^xsd:string
5589 ] ; 5592 ] ;
5590 - html:style 5593 + html:style "height:100%"^^xsd:string ;
5591 - [ rdf:type fn:concat ;
5592 - sp:arg1 "height:"^^xsd:string ;
5593 - sp:arg2 [ sp:varName "height"^^xsd:string
5594 - ]
5595 - ] ;
5596 ui:child 5594 ui:child
5597 [ rdf:type html:Div ; 5595 [ rdf:type html:Div ;
5598 - html:class "ui-layout-north"^^xsd:string ; 5596 + html:class "appVSplitLayoutChild"^^xsd:string ;
5597 + html:id [ sp:varName "A"^^xsd:string
5598 + ] ;
5599 + html:style
5600 + [ rdf:type sp:if ;
5601 + sp:arg1 [ rdf:type sp:bound ;
5602 + sp:arg1 [ sp:varName "topHeight"^^xsd:string
5603 + ]
5604 + ] ;
5605 + sp:arg2 [ rdf:type fn:concat ;
5606 + sp:arg1 "height:" ;
5607 + sp:arg2 [ sp:varName "topHeight"^^xsd:string
5608 + ]
5609 + ] ;
5610 + sp:arg3 [ sp:varName "none"^^xsd:string
5611 + ]
5612 + ] ;
5599 ui:child 5613 ui:child
5600 [ rdf:type ui:insertionPoint ; 5614 [ rdf:type ui:insertionPoint ;
5601 ui:childIndex 0 ; 5615 ui:childIndex 0 ;
...@@ -5605,7 +5619,9 @@ app:VSplitLayout ...@@ -5605,7 +5619,9 @@ app:VSplitLayout
5605 ] ; 5619 ] ;
5606 ui:child 5620 ui:child
5607 [ rdf:type html:Div ; 5621 [ rdf:type html:Div ;
5608 - html:class "ui-layout-center"^^xsd:string ; 5622 + html:class "appVSplitLayoutChild"^^xsd:string ;
5623 + html:id [ sp:varName "B"^^xsd:string
5624 + ] ;
5609 ui:child 5625 ui:child
5610 [ rdf:type ui:insertionPoint ; 5626 [ rdf:type ui:insertionPoint ;
5611 ui:childIndex 0 ; 5627 ui:childIndex 0 ;
...@@ -5632,40 +5648,33 @@ app:VSplitLayout ...@@ -5632,40 +5648,33 @@ app:VSplitLayout
5632 ui:child 5648 ui:child
5633 [ rdf:type ui:TextNode ; 5649 [ rdf:type ui:TextNode ;
5634 ui:childIndex 2 ; 5650 ui:childIndex 2 ;
5635 - ui:text """').layout({ 5651 + ui:text """').splitter({
5636 - applyDefaultStyles : true, 5652 + A:$('#"""^^xsd:string
5637 - resizable : true,
5638 - slidable : true"""^^xsd:string
5639 ] ; 5653 ] ;
5640 ui:child 5654 ui:child
5641 - [ rdf:type ui:if ; 5655 + [ rdf:type ui:TextNode ;
5642 - ui:child
5643 - [ rdf:type ui:TextNode ;
5644 - ui:childIndex 0 ;
5645 - ui:text ",north__size:'"^^xsd:string
5646 - ] ;
5647 - ui:child
5648 - [ rdf:type ui:TextNode ;
5649 - ui:childIndex 1 ;
5650 - ui:text [ sp:varName "topHeight"^^xsd:string
5651 - ]
5652 - ] ;
5653 - ui:child
5654 - [ rdf:type ui:TextNode ;
5655 - ui:childIndex 2 ;
5656 - ui:text "'"^^xsd:string
5657 - ] ;
5658 ui:childIndex 3 ; 5656 ui:childIndex 3 ;
5659 - ui:condition 5657 + ui:text [ sp:varName "A"^^xsd:string
5660 - [ rdf:type sp:bound ;
5661 - sp:arg1 [ sp:varName "topHeight"^^xsd:string
5662 - ]
5663 ] 5658 ]
5664 ] ; 5659 ] ;
5665 ui:child 5660 ui:child
5666 [ rdf:type ui:TextNode ; 5661 [ rdf:type ui:TextNode ;
5667 ui:childIndex 4 ; 5662 ui:childIndex 4 ;
5668 - ui:text """ 5663 + ui:text """'),
5664 + B:$('#"""^^xsd:string
5665 + ] ;
5666 + ui:child
5667 + [ rdf:type ui:TextNode ;
5668 + ui:childIndex 5 ;
5669 + ui:text [ sp:varName "B"^^xsd:string
5670 + ]
5671 + ] ;
5672 + ui:child
5673 + [ rdf:type ui:TextNode ;
5674 + ui:childIndex 6 ;
5675 + ui:text """'),
5676 + closeableto:0,
5677 + splitHorizontal: true
5669 }); 5678 });
5670 });"""^^xsd:string 5679 });"""^^xsd:string
5671 ] ; 5680 ] ;
...@@ -5690,45 +5699,45 @@ app:ViewForm ...@@ -5690,45 +5699,45 @@ app:ViewForm
5690 [ rdf:type ui:uniqueId 5699 [ rdf:type ui:uniqueId
5691 ] ; 5700 ] ;
5692 ui:child 5701 ui:child
5693 - [ rdf:type html:Form ; 5702 + [ rdf:type ui:setContext ;
5694 - html:class "appForm"^^xsd:string ;
5695 - html:id [ sp:varName "formId"^^xsd:string
5696 - ] ;
5697 ui:child 5703 ui:child
5698 - [ rdf:type ui:setContext ; 5704 + [ rdf:type app:FormHeader ;
5705 + arg:resource
5706 + [ sp:varName "resource"^^xsd:string
5707 + ] ;
5699 ui:child 5708 ui:child
5700 - [ rdf:type app:FormHeader ; 5709 + [ rdf:type ui:insert ;
5701 - arg:resource
5702 - [ sp:varName "resource"^^xsd:string
5703 - ] ;
5704 ui:child 5710 ui:child
5705 - [ rdf:type ui:insert ; 5711 + [ rdf:type ui:if ;
5706 ui:child 5712 ui:child
5707 - [ rdf:type ui:if ; 5713 + [ rdf:type app:FormToggleButton ;
5708 - ui:child 5714 + arg:formId
5709 - [ rdf:type app:FormToggleButton ; 5715 + [ sp:varName "formId"^^xsd:string
5710 - arg:formId
5711 - [ sp:varName "formId"^^xsd:string
5712 - ] ;
5713 - arg:label "Edit"^^xsd:string ;
5714 - arg:modeName "edit"^^xsd:string ;
5715 - arg:resource
5716 - [ sp:varName "resource"^^xsd:string
5717 - ] ;
5718 - ui:childIndex 0
5719 ] ; 5716 ] ;
5720 - ui:childIndex 0 ; 5717 + arg:label "Edit"^^xsd:string ;
5721 - ui:condition 5718 + arg:modeName "edit"^^xsd:string ;
5722 - [ rdf:type app:canEditResource ; 5719 + arg:resource
5723 - arg:resource 5720 + [ sp:varName "resource"^^xsd:string
5724 - [ sp:varName "resource"^^xsd:string 5721 + ] ;
5725 - ] 5722 + ui:childIndex 0
5726 - ]
5727 ] ; 5723 ] ;
5728 ui:childIndex 0 ; 5724 ui:childIndex 0 ;
5729 - ui:into "toolBar"^^xsd:string 5725 + ui:condition
5726 + [ rdf:type app:canEditResource ;
5727 + arg:resource
5728 + [ sp:varName "resource"^^xsd:string
5729 + ]
5730 + ]
5730 ] ; 5731 ] ;
5731 - ui:childIndex 0 5732 + ui:childIndex 0 ;
5733 + ui:into "toolBar"^^xsd:string
5734 + ] ;
5735 + ui:childIndex 0
5736 + ] ;
5737 + ui:child
5738 + [ rdf:type html:Form ;
5739 + html:class "appForm ui-layout-content"^^xsd:string ;
5740 + html:id [ sp:varName "formId"^^xsd:string
5732 ] ; 5741 ] ;
5733 ui:child 5742 ui:child
5734 [ rdf:type html:Div ; 5743 [ rdf:type html:Div ;
...@@ -5740,13 +5749,13 @@ app:ViewForm ...@@ -5740,13 +5749,13 @@ app:ViewForm
5740 [ sp:varName "resource"^^xsd:string 5749 [ sp:varName "resource"^^xsd:string
5741 ] 5750 ]
5742 ] ; 5751 ] ;
5743 - ui:childIndex 1 5752 + ui:childIndex 0
5744 ] ; 5753 ] ;
5745 - ui:childIndex 0 ; 5754 + ui:childIndex 1
5746 - ui:varName "createLinkFunction"^^xsd:string ;
5747 - ui:varValue app:createReplaceViewFormLink
5748 ] ; 5755 ] ;
5749 - ui:childIndex 0 5756 + ui:childIndex 0 ;
5757 + ui:varName "createLinkFunction"^^xsd:string ;
5758 + ui:varValue app:createReplaceViewFormLink
5750 ] ; 5759 ] ;
5751 ui:varName "mode"^^xsd:string ; 5760 ui:varName "mode"^^xsd:string ;
5752 ui:varValue "view"^^xsd:string 5761 ui:varValue "view"^^xsd:string
......
1 @CHARSET "UTF-8"; 1 @CHARSET "UTF-8";
2 2
3 body { 3 body {
4 - font-family: sans-serif; 4 + font-family: Arial, Helvetica, sans-serif;
5 } 5 }
6 6
7 .appAddRowButton { 7 .appAddRowButton {
...@@ -18,8 +18,8 @@ body { ...@@ -18,8 +18,8 @@ body {
18 .appAutoComplete { 18 .appAutoComplete {
19 } 19 }
20 20
21 -.appBaseFont, .appObjectWidget { 21 +.appBaseFont, .appObjectWidget, .appLabeledObjectsLabelTD {
22 - font-size: 14px; 22 + font-size: 12px;
23 } 23 }
24 24
25 .appErrorIndicator { 25 .appErrorIndicator {
...@@ -47,7 +47,6 @@ body { ...@@ -47,7 +47,6 @@ body {
47 } 47 }
48 48
49 .appLabeledObjectsLabelTD { 49 .appLabeledObjectsLabelTD {
50 - font-size: 14px;
51 font-weight: bold; 50 font-weight: bold;
52 padding-bottom: 0px; 51 padding-bottom: 0px;
53 padding-left: 0px; 52 padding-left: 0px;
...@@ -100,7 +99,6 @@ body { ...@@ -100,7 +99,6 @@ body {
100 padding-top: 5px; 99 padding-top: 5px;
101 } 100 }
102 101
103 -
104 .appEditorHiddenField { 102 .appEditorHiddenField {
105 } 103 }
106 104
...@@ -120,8 +118,14 @@ body { ...@@ -120,8 +118,14 @@ body {
120 } 118 }
121 119
122 .appFormFooter { 120 .appFormFooter {
123 - padding: 4px; 121 + border-top-width: 1px;
124 - margin-top: 8px; 122 + border-top-style: solid;
123 + border-top-color: #b0b0b0;
124 + background-color: #f0f0f0;
125 + padding-top: 2px;
126 + padding-left: 4px;
127 + padding-right: 4px;
128 + padding-bottom: 4px;
125 } 129 }
126 130
127 .appFormHeaderLink { 131 .appFormHeaderLink {
...@@ -145,8 +149,10 @@ a:active.appFormHeaderLink { ...@@ -145,8 +149,10 @@ a:active.appFormHeaderLink {
145 } 149 }
146 150
147 .appHeader { 151 .appHeader {
148 - background-color: darkGray; 152 + background-color: #303030;
149 color: white; 153 color: white;
154 + font-size: 15px;
155 + font-weight: bold;
150 padding-left: 4px; 156 padding-left: 4px;
151 padding-top: 2px; 157 padding-top: 2px;
152 padding-bottom: 2px; 158 padding-bottom: 2px;
...@@ -242,14 +248,15 @@ td.appPropertyWidgetObjectTD { ...@@ -242,14 +248,15 @@ td.appPropertyWidgetObjectTD {
242 font-size: 11px; 248 font-size: 11px;
243 } 249 }
244 250
245 -.ui-layout-north { 251 +.ui-layout-content {
246 padding: 0 !important; 252 padding: 0 !important;
247 -} 253 +}
248 254
249 -.ui-layout-west { 255 +.ui-layout-north, .ui-layout-south, .ui-layout-west, .ui-layout-east, .ui-layout-center {
256 + border: 0px !important;
250 padding: 0 !important; 257 padding: 0 !important;
251 } 258 }
252 259
253 -.ui-layout-center { 260 +.jstree {
254 - padding: 0 !important; 261 + font-size: 12px !important;
255 } 262 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -174,8 +174,26 @@ function appLoad(id, args) { ...@@ -174,8 +174,26 @@ function appLoad(id, args) {
174 var p = jQuery.param(c); 174 var p = jQuery.param(c);
175 url = p + "&" + base; 175 url = p + "&" + base;
176 } 176 }
177 + url += '&_snippet=true';
177 appInsertLoadingIndicator(e); 178 appInsertLoadingIndicator(e);
178 - e.load(uispinServlet, url); 179 + // TODO: Error handling may not work yet
180 + e.load(uispinServlet, url, function() {
181 + appLoadPostProcess(e, 'north');
182 + appLoadPostProcess(e, 'east');
183 + appLoadPostProcess(e, 'south');
184 + appLoadPostProcess(e, 'west');
185 + appLoadPostProcess(e, 'center');
186 + });
187 +}
188 +
189 +
190 +// Private function to make sure that the scrollbars are
191 +// updated if a ui:loadable has been loaded into a layout pane
192 +function appLoadPostProcess(e, pane) {
193 + // TODO: Test if this also works for panes that don't have a ui-layout-content
194 + if(e.hasClass('ui-layout-' + pane)) {
195 + e.parent().layout().initContent(pane);
196 + }
179 } 197 }
180 198
181 199
...@@ -221,6 +239,13 @@ function appLoadForm(formId, mode, resourceURI, resourceTypeURI, queryGraphURI) ...@@ -221,6 +239,13 @@ function appLoadForm(formId, mode, resourceURI, resourceTypeURI, queryGraphURI)
221 * @param onSelect the value for onSelect of the generated grid 239 * @param onSelect the value for onSelect of the generated grid
222 */ 240 */
223 function appLoadSearchResultsGrid(formId, targetId, onSelect) { 241 function appLoadSearchResultsGrid(formId, targetId, onSelect) {
242 +
243 + // TODO: jQuery's serialize method has problems with attributes such as
244 + // _base="<http://example.org/>" - it will convert those to something
245 + // like _base=<http://example.org></http:>. There may be other problems
246 + // with special characters etc, but the specific bug above can be
247 + // worked around by not having URIs end with '/'.
248 +
224 var params = $('#' + formId).serialize(); 249 var params = $('#' + formId).serialize();
225 var escaped = '&params=' + escape(params); 250 var escaped = '&params=' + escape(params);
226 if(onSelect) { 251 if(onSelect) {
......
...@@ -53,13 +53,24 @@ ...@@ -53,13 +53,24 @@
53 {= ?onSelect } 53 {= ?onSelect }
54 }, 54 },
55 </ui:if> 55 </ui:if>
56 + autoWidth: true,
57 + height: '100%',
56 rowNum: 10, 58 rowNum: 10,
57 rowList:[5,10,20], 59 rowList:[5,10,20],
58 pager: '#{= ?pagerId }', 60 pager: '#{= ?pagerId }',
59 - viewrecords: true, 61 + shrinkToFit: false,
60 - sortorder: "asc", 62 + sortorder: 'asc',
61 - height: "100%", 63 + viewrecords: true
62 - width: "100%" 64 + //width: '100%'
63 - }).jqGrid('navGrid', '#{= ?pagerId }', { add:false, edit:false, del:false}); 65 + }).jqGrid('navGrid', '#{= ?pagerId }', {
66 + add:false,
67 + del:false,
68 + edit:false,
69 + search: false
70 + });
71 +
72 + $("#{= ?tableId }").parent().resize(function() {
73 + alert('Resized');
74 + });
64 </script> 75 </script>
65 </ui:group> 76 </ui:group>
...\ No newline at end of file ...\ No newline at end of file
......
1 -# baseURI: http://appschema.org/skapp
2 -# imports: http://appschema.org
3 -# imports: http://www.w3.org/2004/02/skos/core
4 -
5 -@prefix app: <http://appschema.org/> .
6 -@prefix arg: <http://spinrdf.org/arg#> .
7 -@prefix default: <http://uispin.org/default#> .
8 -@prefix html: <http://uispin.org/html#> .
9 -@prefix let: <http://uispin.org/let#> .
10 -@prefix letrs: <http://uispin.org/letrs#> .
11 -@prefix owl: <http://www.w3.org/2002/07/owl#> .
12 -@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
13 -@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
14 -@prefix skapp: <http://appschema.org/skapp#> .
15 -@prefix sp: <http://spinrdf.org/sp#> .
16 -@prefix spin: <http://spinrdf.org/spin#> .
17 -@prefix spl: <http://spinrdf.org/spl#> .
18 -@prefix ui: <http://uispin.org/ui#> .
19 -@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
20 -
21 -app:skapp
22 - rdf:type owl:Ontology ;
23 - owl:imports <http://appschema.org> , <http://www.w3.org/2004/02/skos/core> ;
24 - owl:versionInfo "0.1.0"^^xsd:string .
25 -
26 -skapp:ConceptClassTreeDataProvider
27 - rdf:type app:QueryTreeDataProvider ;
28 - rdfs:label "Concept class tree data provider"^^xsd:string ;
29 - arg:childrenQuery
30 - [ rdf:type sp:Select ;
31 - sp:orderBy ([ sp:varName "label"^^xsd:string
32 - ]) ;
33 - sp:resultVariables ([ sp:varName "child"^^xsd:string
34 - ] [ sp:varName "label"^^xsd:string
35 - ] [ sp:varName "leaf"^^xsd:string
36 - ] [ sp:varName "icon"^^xsd:string
37 - ] [ sp:varName "type"^^xsd:string
38 - ]) ;
39 - sp:where ([ sp:object
40 - [ sp:varName "parent"^^xsd:string
41 - ] ;
42 - sp:predicate rdfs:subClassOf ;
43 - sp:subject
44 - [ sp:varName "child"^^xsd:string
45 - ]
46 - ] [ rdf:type sp:Bind ;
47 - sp:expression
48 - [ rdf:type sp:notExists ;
49 - sp:elements ([ sp:object
50 - [ sp:varName "child"^^xsd:string
51 - ] ;
52 - sp:predicate rdfs:subClassOf ;
53 - sp:subject
54 - [ sp:varName "grandChild"^^xsd:string
55 - ]
56 - ])
57 - ] ;
58 - sp:variable
59 - [ sp:varName "leaf"^^xsd:string
60 - ]
61 - ] [ rdf:type sp:Bind ;
62 - sp:expression
63 - [ rdf:type ui:label ;
64 - sp:arg1 [ sp:varName "child"^^xsd:string
65 - ]
66 - ] ;
67 - sp:variable
68 - [ sp:varName "label"^^xsd:string
69 - ]
70 - ] [ rdf:type sp:Bind ;
71 - sp:expression "appIconClass" ;
72 - sp:variable
73 - [ sp:varName "icon"^^xsd:string
74 - ]
75 - ] [ rdf:type sp:Bind ;
76 - sp:expression
77 - [ rdf:type spl:object ;
78 - sp:arg1 [ sp:varName "child"^^xsd:string
79 - ] ;
80 - sp:arg2 rdf:type
81 - ] ;
82 - sp:variable
83 - [ sp:varName "type"^^xsd:string
84 - ]
85 - ])
86 - ] ;
87 - arg:id [ sp:varName "id"^^xsd:string
88 - ] ;
89 - arg:rootsQuery
90 - [ rdf:type sp:Select ;
91 - sp:resultVariables ([ sp:varName "child"^^xsd:string
92 - ] [ sp:varName "label"^^xsd:string
93 - ] [ sp:varName "leaf"^^xsd:string
94 - ] [ sp:varName "icon"^^xsd:string
95 - ]) ;
96 - sp:where ([ rdf:type sp:Bind ;
97 - sp:expression <http://www.w3.org/2004/02/skos/core#Concept> ;
98 - sp:variable
99 - [ sp:varName "child"^^xsd:string
100 - ]
101 - ] [ rdf:type sp:Bind ;
102 - sp:expression "Any Concept" ;
103 - sp:variable
104 - [ sp:varName "label"^^xsd:string
105 - ]
106 - ] [ rdf:type sp:Bind ;
107 - sp:expression "false"^^xsd:boolean ;
108 - sp:variable
109 - [ sp:varName "leaf"^^xsd:string
110 - ]
111 - ] [ rdf:type sp:Bind ;
112 - sp:expression "appIconClass" ;
113 - sp:variable
114 - [ sp:varName "icon"^^xsd:string
115 - ]
116 - ])
117 - ] .
118 -
119 -skapp:ConceptSearchView
120 - rdf:type ui:NodeClass ;
121 - rdfs:comment "A vertical split pane with a search form on top and a search results grid at the bottom."^^xsd:string ;
122 - rdfs:label "Concept search view"^^xsd:string ;
123 - rdfs:subClassOf skapp:Elements ;
124 - ui:prototype
125 - [ rdf:type app:VSplitLayout ;
126 - arg:height "500px"^^xsd:string ;
127 - arg:topHeight "30%"^^xsd:string ;
128 - ui:child
129 - [ rdf:type app:VSplitLayout ;
130 - arg:height "300px"^^xsd:string ;
131 - ui:child
132 - [ rdf:type html:Div ;
133 - ui:child
134 - [ rdf:type app:Header ;
135 - arg:label "Concept Type"^^xsd:string ;
136 - ui:childIndex 0
137 - ] ;
138 - ui:child
139 - [ rdf:type app:Tree ;
140 - arg:dataProvider skapp:ConceptClassTreeDataProvider ;
141 - arg:id "classTree"^^xsd:string ;
142 - arg:onSelect "appLoadWithResource('searchFormDiv', 'resourceType', resource)"^^xsd:string ;
143 - ui:childIndex 1
144 - ] ;
145 - ui:childIndex 0
146 - ] ;
147 - ui:child
148 - [ rdf:type ui:loadable ;
149 - ui:child
150 - [ rdf:type app:SearchForm ;
151 - arg:formId "searchForm"^^xsd:string ;
152 - arg:noBorder "true"^^xsd:boolean ;
153 - arg:onSelect "appLoadWithResource('conceptForm', 'concept', resource)"^^xsd:string ;
154 - arg:resourceType
155 - [ rdf:type sp:coalesce ;
156 - sp:arg1 [ sp:varName "resourceType"^^xsd:string
157 - ] ;
158 - sp:arg2 <http://www.w3.org/2004/02/skos/core#Concept>
159 - ] ;
160 - arg:resultsId "results"^^xsd:string ;
161 - ui:childIndex 0
162 - ] ;
163 - ui:childIndex 1 ;
164 - ui:loadId "searchFormDiv"^^xsd:string
165 - ] ;
166 - ui:childIndex 0
167 - ] ;
168 - ui:child
169 - [ rdf:type html:Div ;
170 - ui:child
171 - [ rdf:type app:Header ;
172 - arg:label "Matching Concepts"^^xsd:string ;
173 - ui:childIndex 0
174 - ] ;
175 - ui:child
176 - [ rdf:type html:Div ;
177 - html:id "results"^^xsd:string ;
178 - ui:childIndex 1
179 - ] ;
180 - ui:childIndex 1
181 - ]
182 - ] .
183 -
184 -skapp:ConceptTreeBrowser
185 - rdf:type ui:NodeClass ;
186 - rdfs:comment "A horizontal split pane with a Concept tree on the left and a form for the selected concept on the right."^^xsd:string ;
187 - rdfs:label "Concept tree browser"^^xsd:string ;
188 - rdfs:subClassOf skapp:Elements ;
189 - ui:prototype
190 - [ rdf:type app:HSplitLayout ;
191 - arg:height "500px"^^xsd:string ;
192 - arg:leftWidth "30%"^^xsd:string ;
193 - ui:child
194 - [ rdf:type html:Div ;
195 - ui:child
196 - [ rdf:type app:Header ;
197 - arg:label "Concept Hierarchy"^^xsd:string ;
198 - ui:childIndex 0
199 - ] ;
200 - ui:child
201 - [ rdf:type app:Tree ;
202 - arg:dataProvider skapp:ConceptTreeDataProvider ;
203 - arg:id "conceptTree"^^xsd:string ;
204 - arg:onSelect "appLoadWithResource('conceptForm', 'concept', resource)"^^xsd:string ;
205 - ui:childIndex 1
206 - ] ;
207 - ui:childIndex 0
208 - ] ;
209 - ui:child
210 - [ rdf:type html:Div ;
211 - ui:child
212 - [ rdf:type ui:loadable ;
213 - ui:child
214 - [ rdf:type ui:if ;
215 - ui:child
216 - [ rdf:type app:ViewForm ;
217 - arg:resource
218 - [ sp:varName "concept"^^xsd:string
219 - ] ;
220 - ui:childIndex 0
221 - ] ;
222 - ui:childIndex 0 ;
223 - ui:condition
224 - [ rdf:type sp:bound ;
225 - sp:arg1 [ sp:varName "concept"^^xsd:string
226 - ]
227 - ]
228 - ] ;
229 - ui:child
230 - [ rdf:type ui:else ;
231 - ui:child
232 - [ rdf:type ui:TextNode ;
233 - ui:childIndex 0 ;
234 - ui:text """
235 - Please select a concept in the tree.
236 - """^^xsd:string
237 - ] ;
238 - ui:childIndex 1
239 - ] ;
240 - ui:childIndex 0 ;
241 - ui:loadId "conceptForm"^^xsd:string
242 - ] ;
243 - ui:childIndex 1
244 - ]
245 - ] .
246 -
247 -skapp:ConceptTreeDataProvider
248 - rdf:type app:QueryTreeDataProvider ;
249 - rdfs:comment "A data provider for a SKOS Concept tree, walking down skos:broader."^^xsd:string ;
250 - rdfs:label "Concept tree data provider"^^xsd:string ;
251 - arg:childrenQuery
252 - [ rdf:type sp:Select ;
253 - sp:orderBy ([ sp:varName "label"^^xsd:string
254 - ]) ;
255 - sp:resultVariables ([ sp:varName "child"^^xsd:string
256 - ] [ sp:varName "label"^^xsd:string
257 - ] [ sp:varName "leaf"^^xsd:string
258 - ] [ sp:varName "icon"^^xsd:string
259 - ] [ sp:varName "type"^^xsd:string
260 - ]) ;
261 - sp:where ([ sp:object
262 - [ sp:varName "parent"^^xsd:string
263 - ] ;
264 - sp:predicate <http://www.w3.org/2004/02/skos/core#broader> ;
265 - sp:subject
266 - [ sp:varName "child"^^xsd:string
267 - ]
268 - ] [ rdf:type sp:Bind ;
269 - sp:expression
270 - [ rdf:type sp:notExists ;
271 - sp:elements ([ sp:object
272 - [ sp:varName "child"^^xsd:string
273 - ] ;
274 - sp:predicate <http://www.w3.org/2004/02/skos/core#broader> ;
275 - sp:subject
276 - [ sp:varName "grandChild"^^xsd:string
277 - ]
278 - ])
279 - ] ;
280 - sp:variable
281 - [ sp:varName "leaf"^^xsd:string
282 - ]
283 - ] [ rdf:type sp:Bind ;
284 - sp:expression
285 - [ rdf:type ui:label ;
286 - sp:arg1 [ sp:varName "child"^^xsd:string
287 - ]
288 - ] ;
289 - sp:variable
290 - [ sp:varName "label"^^xsd:string
291 - ]
292 - ] [ rdf:type sp:Bind ;
293 - sp:expression "appIconConcept" ;
294 - sp:variable
295 - [ sp:varName "icon"^^xsd:string
296 - ]
297 - ] [ rdf:type sp:Bind ;
298 - sp:expression
299 - [ rdf:type spl:object ;
300 - sp:arg1 [ sp:varName "child"^^xsd:string
301 - ] ;
302 - sp:arg2 rdf:type
303 - ] ;
304 - sp:variable
305 - [ sp:varName "type"^^xsd:string
306 - ]
307 - ])
308 - ] ;
309 - arg:id [ sp:varName "id"^^xsd:string
310 - ] ;
311 - arg:rootsQuery
312 - [ rdf:type sp:Select ;
313 - sp:distinct "true"^^xsd:boolean ;
314 - sp:orderBy ([ sp:varName "label"^^xsd:string
315 - ]) ;
316 - sp:resultVariables ([ sp:varName "child"^^xsd:string
317 - ] [ sp:varName "label"^^xsd:string
318 - ] [ sp:varName "leaf"^^xsd:string
319 - ] [ sp:varName "icon"^^xsd:string
320 - ]) ;
321 - sp:where ([ rdf:type sp:TriplePath ;
322 - sp:object <http://www.w3.org/2004/02/skos/core#Concept> ;
323 - sp:path [ rdf:type sp:ModPath ;
324 - sp:modMax -2 ;
325 - sp:modMin 0 ;
326 - sp:subPath rdfs:subClassOf
327 - ] ;
328 - sp:subject
329 - [ sp:varName "type"^^xsd:string
330 - ]
331 - ] [ sp:object
332 - [ sp:varName "type"^^xsd:string
333 - ] ;
334 - sp:predicate rdf:type ;
335 - sp:subject
336 - [ sp:varName "child"^^xsd:string
337 - ]
338 - ] [ rdf:type sp:Filter ;
339 - sp:expression
340 - [ rdf:type sp:notExists ;
341 - sp:elements ([ sp:object
342 - [ sp:varName "parent"^^xsd:string
343 - ] ;
344 - sp:predicate <http://www.w3.org/2004/02/skos/core#broader> ;
345 - sp:subject
346 - [ sp:varName "child"^^xsd:string
347 - ]
348 - ])
349 - ]
350 - ] [ rdf:type sp:Bind ;
351 - sp:expression
352 - [ rdf:type sp:notExists ;
353 - sp:elements ([ sp:object
354 - [ sp:varName "child"^^xsd:string
355 - ] ;
356 - sp:predicate <http://www.w3.org/2004/02/skos/core#broader> ;
357 - sp:subject
358 - [ sp:varName "grandChild"^^xsd:string
359 - ]
360 - ])
361 - ] ;
362 - sp:variable
363 - [ sp:varName "leaf"^^xsd:string
364 - ]
365 - ] [ rdf:type sp:Bind ;
366 - sp:expression
367 - [ rdf:type ui:label ;
368 - sp:arg1 [ sp:varName "child"^^xsd:string
369 - ]
370 - ] ;
371 - sp:variable
372 - [ sp:varName "label"^^xsd:string
373 - ]
374 - ] [ rdf:type sp:Bind ;
375 - sp:expression "appIconConcept" ;
376 - sp:variable
377 - [ sp:varName "icon"^^xsd:string
378 - ]
379 - ])
380 - ] .
381 -
382 -skapp:Elements
383 - rdf:type ui:NodeClass ;
384 - rdfs:comment "Base class of SKOS related SWP elements."^^xsd:string ;
385 - rdfs:label "Elements"^^xsd:string ;
386 - rdfs:subClassOf ui:Element ;
387 - ui:abstract "true"^^xsd:boolean .
388 -
389 -skapp:SearchableConceptTreeBrowser
390 - rdf:type ui:NodeClass ;
391 - rdfs:comment "A horizontal split pane with a search view on the left and a ConceptTreeBrowser on the right."^^xsd:string ;
392 - rdfs:label "Searchable concept tree browser"^^xsd:string ;
393 - rdfs:subClassOf skapp:Elements ;
394 - ui:prototype
395 - [ rdf:type app:HSplitLayout ;
396 - arg:height "500px"^^xsd:string ;
397 - ui:child
398 - [ rdf:type skapp:ConceptSearchView ;
399 - ui:childIndex 0
400 - ] ;
401 - ui:child
402 - [ rdf:type skapp:ConceptTreeBrowser ;
403 - ui:childIndex 1
404 - ]
405 - ] .
...@@ -26,52 +26,56 @@ log:LogBrowser ...@@ -26,52 +26,56 @@ log:LogBrowser
26 rdfs:subClassOf ui:Element ; 26 rdfs:subClassOf ui:Element ;
27 ui:prototype 27 ui:prototype
28 [ rdf:type html:Div ; 28 [ rdf:type html:Div ;
29 - html:style "width:900px"^^xsd:string ; 29 + html:id "logBrowserMainPanel"^^xsd:string ;
30 + html:style "width:880px; height: 500px; border-width: 1px; border-style: solid; border-color: black;"^^xsd:string ;
30 ui:child 31 ui:child
31 - [ rdf:type app:VSplitLayout ; 32 + [ rdf:type html:Div ;
32 - arg:height "500px"^^xsd:string ; 33 + html:class "ui-layout-north"^^xsd:string ;
33 - arg:topHeight "30%"^^xsd:string ; 34 + html:id "logBrowserNorthPanel"^^xsd:string ;
35 + html:style "height: 120px"^^xsd:string ;
34 ui:child 36 ui:child
35 [ rdf:type ui:setContext ; 37 [ rdf:type ui:setContext ;
36 ui:child 38 ui:child
37 - [ rdf:type app:HSplitLayout ; 39 + [ rdf:type html:Div ;
38 - arg:height "200px"^^xsd:string ; 40 + html:class "ui-layout-west"^^xsd:string ;
41 + ui:child
42 + [ rdf:type app:Header ;
43 + arg:label "Event Type"^^xsd:string ;
44 + ui:childIndex 0
45 + ] ;
39 ui:child 46 ui:child
40 [ rdf:type html:Div ; 47 [ rdf:type html:Div ;
41 - ui:child 48 + html:class "ui-layout-content"^^xsd:string ;
42 - [ rdf:type app:Header ;
43 - arg:label "Event Type"^^xsd:string ;
44 - ui:childIndex 0
45 - ] ;
46 ui:child 49 ui:child
47 [ rdf:type app:Tree ; 50 [ rdf:type app:Tree ;
48 arg:dataProvider log:LogEventClassTreeDataProvider ; 51 arg:dataProvider log:LogEventClassTreeDataProvider ;
49 arg:id "classTree"^^xsd:string ; 52 arg:id "classTree"^^xsd:string ;
50 arg:onSelect "appLoadWithResource('form', 'resourceType', resource)"^^xsd:string ; 53 arg:onSelect "appLoadWithResource('form', 'resourceType', resource)"^^xsd:string ;
51 - ui:childIndex 1 54 + ui:childIndex 0
52 ] ; 55 ] ;
53 - ui:childIndex 0 56 + ui:childIndex 1
54 ] ; 57 ] ;
58 + ui:childIndex 0
59 + ] ;
60 + ui:child
61 + [ rdf:type ui:loadable ;
62 + html:class "ui-layout-center"^^xsd:string ;
55 ui:child 63 ui:child
56 - [ rdf:type ui:loadable ; 64 + [ rdf:type app:SearchForm ;
57 - ui:child 65 + arg:formId "searchForm"^^xsd:string ;
58 - [ rdf:type app:SearchForm ; 66 + arg:noBorder "true"^^xsd:boolean ;
59 - arg:formId "searchForm"^^xsd:string ; 67 + arg:queryGraph <http://www.reportinghub.no/graph/logging> ;
60 - arg:noBorder "true"^^xsd:boolean ; 68 + arg:resourceType
61 - arg:queryGraph <http://www.reportinghub.no/graph/logging> ; 69 + [ rdf:type sp:coalesce ;
62 - arg:resourceType 70 + sp:arg1 [ sp:varName "resourceType"^^xsd:string
63 - [ rdf:type sp:coalesce ;
64 - sp:arg1 [ sp:varName "resourceType"^^xsd:string
65 - ] ;
66 - sp:arg2 log:LogEvent
67 ] ; 71 ] ;
68 - arg:resultsId "results"^^xsd:string ; 72 + sp:arg2 log:LogEvent
69 - ui:childIndex 0
70 ] ; 73 ] ;
71 - ui:childIndex 1 ; 74 + arg:resultsId "results"^^xsd:string ;
72 - ui:loadId "form"^^xsd:string 75 + ui:childIndex 0
73 ] ; 76 ] ;
74 - ui:childIndex 0 77 + ui:childIndex 1 ;
78 + ui:loadId "form"^^xsd:string
75 ] ; 79 ] ;
76 ui:childIndex 0 ; 80 ui:childIndex 0 ;
77 ui:queryGraph 81 ui:queryGraph
...@@ -79,21 +83,38 @@ log:LogBrowser ...@@ -79,21 +83,38 @@ log:LogBrowser
79 sp:arg1 <http://www.reportinghub.no/system/schema/logging> 83 sp:arg1 <http://www.reportinghub.no/system/schema/logging>
80 ] 84 ]
81 ] ; 85 ] ;
86 + ui:childIndex 0
87 + ] ;
88 + ui:child
89 + [ rdf:type html:Div ;
90 + html:class "ui-layout-center"^^xsd:string ;
91 + html:style "height: 300px"^^xsd:string ;
92 + ui:child
93 + [ rdf:type app:Header ;
94 + arg:label "Matching Events"^^xsd:string ;
95 + ui:childIndex 0
96 + ] ;
82 ui:child 97 ui:child
83 [ rdf:type html:Div ; 98 [ rdf:type html:Div ;
84 - ui:child 99 + html:class "ui-layout-content"^^xsd:string ;
85 - [ rdf:type app:Header ; 100 + html:id "results"^^xsd:string ;
86 - arg:label "Matching Events"^^xsd:string ;
87 - ui:childIndex 0
88 - ] ;
89 - ui:child
90 - [ rdf:type html:Div ;
91 - html:id "results"^^xsd:string ;
92 - ui:childIndex 1
93 - ] ;
94 ui:childIndex 1 101 ui:childIndex 1
95 ] ; 102 ] ;
96 - ui:childIndex 0 103 + ui:childIndex 1
104 + ] ;
105 + ui:child
106 + [ rdf:type html:Script ;
107 + ui:child
108 + [ rdf:type ui:TextNode ;
109 + ui:childIndex 0 ;
110 + ui:text """$('#logBrowserMainPanel').layout({
111 + applyDefaultStyles: true
112 + });
113 + $('#logBrowserNorthPanel').layout({
114 + applyDefaultStyles: true
115 + });"""^^xsd:string
116 + ] ;
117 + ui:childIndex 2
97 ] 118 ]
98 ] . 119 ] .
99 120
......