marklogic-community / demo-cat Goto Github PK
View Code? Open in Web Editor NEWAn application to help SEs find good demos and record bugs and RFEs on them. AngularJS talks to the MarkLogic database via the REST API.
License: Other
An application to help SEs find good demos and record bugs and RFEs on them. AngularJS talks to the MarkLogic database via the REST API.
License: Other
When a comment is added to a demo's detail page, an email should be sent to the maintainer.
On a demo detail, the cancel button simply disables an Editable field. The value in its model has been updated to what the user entered. Cancel should revert back to the prior value. The value in the database is unchanged. A refresh of the page reverts the value back.
As (implicitly) suggested in pull request #36, might be a good idea to try to keep mlRest generic, and keep functional meaning in controllers. Makes mlRest much more easy to reuse in different project..
Should be applied to user profile, login, and logout as well. Maybe more? Check logic of controllers. profile, login, and logout are maybe best put in User data service..
I filed a bug and the alert that showed up had this link: http://localhost:9070/detail?uri=/demos/7928442058292262870.json
Needs to have a link to the actual server where Demo Cat is hosted.
A user must be able to report a bug on a demo. Reporting will be done from the demo's detail page. Record the user who reported the bug. When the bug gets saved, send an email to the demo's maintainer. The form should include:
Add a log in form and a log out link or button.
Right now the create form shows browsers, but they don't get recorded properly and they can't be edited.
Users should be able to pick from a list of browsers, in order to get canonical forms.
Right now the create page lets you specify a set of features that a demo has. They are recorded correctly in the database, but they aren't displayed on the demo's detail page.
Update the detail page to display the list of features present in the demo.
Show pagination control like App Builder's.
Users must be able to request new features from a demo's detail page. Record and display what user requested the feature. When the feature request is saved, send an email to the demo's maintainer.
Would be more intuitive if it would jump back to home at submit, so it shows the results immediately.
It does search in background:
Add a link to a demo script on create/view/edit a demo.
Inserting users makes them appear in search. Additional query in search options can fix that.
returns
<rapi:error xmlns:rapi="http://marklogic.com/rest-api">
rapi:status-code500/rapi:status-code
rapi:statusINTERNAL ERROR/rapi:status
rapi:message-codeXDMP-UNBPRFX/rapi:message-code
rapi:message
XDMP-UNBPRFX: (err:XPST0081) Prefix jbasic has no namespace binding. See the MarkLogic server error log for further detail.
/rapi:message
/rapi:error
Wild guess: is jbasic used in search options perhaps?
For JS/CSS/image resources that aren't expected to change, use Expires headers with far-future expiration dates.
Needs to be added to create, search, detail, and edit. Initial domain set:
Allow users to type in additional values. A user must be able to select zero or more domains.
Lame example, but you get inline json highlight's shown:
xxx
{"highlight":"ml"}
@
{"highlight":"ml"}
After logging in, the upper-right shows the current user and an Account link. Clicking on the link goes to the /profile page. On the profile page, allow the user to specify one or more email addresses associated with his/her account. A user might have multiple, with one being an individual account and another being a group that the user is a part of.
The create view shows a rich-text editor, but the detail page uses a simple text display. That means that we see things like <p>hi there<p>.
demo-cat users (having demo-cat-registered-role) now have to be created outside demo-cat. A sign-up feature would make that easier..
The application will need one or more application administrators, who can approve people signing up. During registration, collect an email address. Email the application administrator; if approved, send an email to the new user to verify the email address. Include a link that will activate the account. If all that works out, then create a MarkLogic-level user with application-appropriate roles.
There's an array indexing error.
Only top section is relevant to demo-cat, remainder is about roxy, which is mostly not very relevant.
Some hints about how to add/run tests etc would be nice as well. In the readme or on a wiki page in demo-cat..
As described here.
A logged-in user must be able to change who a bug is assigned to. The control for doing so should look like the assignment control on GitHub, providing a text box to search users and a list to select from. The current user is to be at the top of the list, unless that user is filtered out by the current user search.
The editable directive allows a user to click on a value, making it switch to an editable form. Improve the affordance by switching to a hover-invitation, showing an edit icon to the right of the field. Clicking the icon will switch to edit mode. Also change the cursor to pointer during hover.
Add support for lists and links.
Revise REST API search options to limit facets to the top 10 values by frequency.
Statuses:
A user must be logged in to change this field. When it is changed, record who changed it, when it was changed, and the start and end statuses as part of the bug history.
I have a report that the username and password boxes aren't appearing in Chrome on Windows.
On the detail page, most information can be edited by clicking. Add a button to the feature display section that lets a user add a feature. On clicking the button, enable a mode similar to how features are added on the create page, where they can be added from a drop-down or typed in.
Try to close a bug. Error message:
Error: invalid json
at parse (/space/projects/demo-cat/node_modules/body-parser/index.js:61:15)
at /space/projects/demo-cat/node_modules/body-parser/index.js:180:18
at IncomingMessage.onEnd (/space/projects/demo-cat/node_modules/body-parser/node_modules/raw-body/index.js:117:7)
at IncomingMessage.g (events.js:180:16)
at IncomingMessage.EventEmitter.emit (events.js:117:20)
at _stream_readable.js:920:16
at process._tickCallback (node.js:415:13)
Provide a "My Tickets" link next to the Accounts link. Clicking the link will display a view with any tickets (bugs/RFEs) assigned to the current user. The list must include the tickets' title, the project, and the current status.
Allow the user to select which statuses he/she wants to see (multi-select: perhaps a drop-menu with check boxes).
Some profile details remain in memory at logout, and appear as profile details of other user at login if that person doesn't have a profile yet.
On attempting to submit a new user profile, a user with a hyphen in the username will get an error:
SyntaxError: Invalid regular expression: //users/[^(demo-cat-user)]+.json/: Range out of order in character class
at new RegExp (<anonymous>)
at Object.handle (/Users/dcassel/git/demo-cat/server.js:177:27)
Need to properly escape hyphens.
Currently the app is serving up 26 separate JavaScript files. Use middleware to consolidate this a much smaller number.
Some demos are only be shown to certain organizations. Add a place to record those restrictions.
Deny default-user for starters, and maybe check for rest-writer role presence. Or even better: for the demo-cat-registered-user role..
For JavaScript, CSS, and other files available from CDNs, use CDNs to improve load time.
Users must be able to leave comments on a demo's detail page. Display most recent comments first. The comment should record who left the comment and when.
There seems to be partial code to show loginError at failure, but it is not showing..
For some fields, if they aren't filled in when a demo is created, then no element is made for them in the document. The attempt to update the document later is done with a PATCH replace, which doesn't find the element, and so it quietly fails.
We started off with a hard-coded list of features, but that needs to be changed such that the list available on the create and edit views get supplemented when users type in new values.
Editable parts should be hidden when nog logged in. Best if updates would check too, but hiding is least..
Currently, you can't edit the "Hosted at" link or the maintainer's email link. Enhance the editable directive to handle displaying links.
The bug list for a demo is getting cluttered now that it contains 5 fields. Spruce up the styling to better delineate fields and make it more readable. Update both open and closed bugs.
Add to create, view, edit.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.