IF pkg_id
INCLUDE package_details
- pkg = cstore.retrieve_depository_package( [ cgi.param( 'pkg' ), { flesh = 1, flesh_fields = { dp = ['systems'] } } ] )
+ pkg = cstore.retrieve_depository_package( [ cgi.param( 'pkg' ), { flesh => 1, flesh_fields => { dp => ['systems'] } } ] )
systems = cstore.retrieve_all_depository_source_system();
ELSE
- FOREACH p IN cstore.search_depository_package( [ { author = user.id() }, { flesh = 1, flesh_fields = { dp = ['systems'] } } ] );
+ '[' IF api;
+ FOREACH p IN cstore.search_depository_package( [ { author => user.id() }, { flesh => 1, flesh_fields => { dp => ['systems'] } } ] );
INCLUDE package_summary pkg = p;
+ IF api
+ ',';
+ ELSE
%] <hr/> [%
+ END;
END;
+ ']' IF api;
END;
END %]
[%
+USE JSON ( pretty = 1 )
+
sysnames = [];
-FOREACH s IN systems;
+FOREACH s IN pkg.systems();
sysnames.push(s.name());
END;
+IF api;
+ p = { title => pkg.title(),
+ pkg_version => pkg.pkg_version(),
+ created => pkg.created(),
+ author => pkg.author(),
+ public => pkg.public(),
+ image => pkg.image(),
+ description => pkg.description(),
+ systems => sysnames
+ };
+ p.json;
+ELSE
+
+allsysnames = [];
+FOREACH s IN systems;
+ allsysnames.push(s.name());
+END;
+
%]
<tr>
<th>Systems</th>
<td>
- [% FOREACH s IN sysnames.sort %]
+ [% FOREACH s IN allsysnames.sort %]
<input
name="systems"
type="checkbox"
- value="[% s.name() | html %]"
- [% 'checked="checked"' IF pgk.systems().grep(s) %]
- />[% s.name() | html %]>
+ value="[% s | html %]"
+ [% 'checked="checked"' IF sysnames.grep(s) %]
+ />[% s | html %]>
<br/>
[% END %]
</td>
[%
+USE JSON ( pretty = 1 )
+
sysnames = [];
FOREACH s IN pkg.systems();
sysnames.push(s.name());
END;
+IF api;
+ p = { title => pkg.title(),
+ pkg_version => pkg.pkg_version(),
+ created => pkg.created(),
+ description => pkg.description(),
+ systems => sysnames
+ };
+ p.json;
+ELSE
%]